Standartlarda belirtilen tiplerde imza atma örnekleri verilmiştir. Tipler hakkında bilgi almak için İmza Tipleri bölümüne göz atabilirsiniz.
Kodları tr.gov.tubitak.uekae.esya.api.xades.example.formats
paketinin altında bulabilirsiniz.
BES
sınıfına göz atabilirsiniz.
// create context with working directory Context context = createContext(); // create signature according to context, // with default type (XADES_BES) XMLSignature signature = new XMLSignature(context); // add document as reference, but do not embed it // into the signature (embed=false) signature.addDocument("./sample.txt", "text/plain", false); signature.getSignedInfo().setSignatureMethod(SignatureMethod.RSA_SHA256); // false-true gets non-qualified certificates while true-false gets qualified ones X509Certificate cert = JSmartCardManager.getInstance().getSignatureCertificate(true, false); // add certificate to show who signed the document signature.addKeyInfo(new ECertificate(cert.getEncoded())); // now sign it by using smart card signature.sign(JSmartCardManager.getInstance().getSigner(PIN, cert)); signature.write(new FileOutputStream(BASE_DIR + SIGNATURE_FILENAME));
T
sınıfına göz atabilirsiniz.
// create context with working directory Context context = createContext(); // create signature according to context, // with default type (XADES_BES) XMLSignature signature = new XMLSignature(context); // add document as reference, but do not embed it // into the signature (embed=false) signature.addDocument("./sample.txt", "text/plain", false); signature.getSignedInfo().setSignatureMethod(SignatureMethod.RSA_SHA256); // false-true gets non-qualified certificates while true-false gets qualified ones X509Certificate cert = JSmartCardManager.getInstance().getSignatureCertificate(true, false); // add certificate to show who signed the document signature.addKeyInfo(new ECertificate(cert.getEncoded())); // now sign it by using smart card signature.sign(JSmartCardManager.getInstance().getSigner(PIN, cert)); // upgrade to T signature.upgrade(SignatureType.ES_T); signature.write(new FileOutputStream(BASE_DIR + SIGNATURE_FILENAME));
C
sınıfına göz atabilirsiniz.
Farklı olarak geliştirme satırında C tipi seçilir.
// upgrade to C signature.upgrade(SignatureType.ES_C);
X1
sınıfına göz atabilirsiniz.
Farklı olarak geliştirme satırında X1 tipi seçilir.
// upgrade to X1 signature.upgrade(SignatureType.ES_X_Type1);
X2
sınıfına göz atabilirsiniz.
Farklı olarak geliştirme satırında X2 tipi seçilir.
// upgrade to X2 signature.upgrade(SignatureType.ES_X_Type2);
XL
sınıfına göz atabilirsiniz.
Farklı olarak geliştirme satırında X2 tipi seçilir.
// upgrade to XL signature.upgrade(SignatureType.ES_XL);
A
sınıfına göz atabilirsiniz.
Farklı olarak geliştirme satırında A tipi seçilir.
// upgrade to A signature.upgrade(SignatureType.ES_A);