Bu sayfa salt okunur. Kaynağı görebilirsiniz ama değiştiremezsiniz. Bunun yanlış olduğunu düşünüyorsanız yöneticiye danışın.
<sxh java;highlight:[8,11] ;title:Java & .NET> imza konteyneri yarat SignatureContainer container = SignatureFactory.createContainer(SignatureFormat.CAdES, context); konteyner içinde imza nesnesi oluştur Signature signature = container.createSignature(certificate);
imzalanacak içerik ekle signature.addContent(new SignableFile(file), false); imzala signature.sign(cardSigner);
imzayı yaz container.write(new FileOuputStream(fileName)); </sxh> ==== Zaman damgalı(ES-T) İmza Atma ==== <sxh java;highlight:[11];title:Java & .NET Code> konteyner içinde imza nesnesi oluştur Signature signature = container.createSignature(certificate);
imzayı zaman damgalı imza tipine geliştir signature.upgrade(SignatureType.ES_T); imzayı dosyaya yaz container.write(new FileOuputStream(fileName)); </sxh>
<sxh java; highlight:[8]; title:Java Code> imza konteynerinidosyadan oku SignatureContainer container = SignatureFactory.readContainer(fileInputStream); ilk imzayı al Signature signature = container.getSignatures().get(0);
<sxh csharp; highlight:[8]; title:.NET Code> imza konteynerinidosyadan oku SignatureContainer container = SignatureFactory.readContainer(fileInputStream); ilk imzayı al Signature signature = container.getSignatures()[0];
Doğrulama bilgisini de içinde bulunduran imza tipi olan ES_XL tipinde imza oluşturmak için zaman damgalı imza atma örneklerindeki
<sxh java> imza oluştur … ve geliştir signature.upgrade(SignatureType.ES_T); </sxh>
satırını
<sxh java> geliştir signature.upgrade(SignatureType.ES_XL); </sxh> olarak değiştimek yeterlidir. ==== İmza Doğrulama ==== İmza doğrulamada SignatureContainer içindeki verifyAll() metodu kullanılır. <sxh java; highlight:[6]; title:Java Code> imzayı oku SignatureContainer container = SignatureFactory.readContainer(inputstream); inputstream.close();
SignatureContainer
verifyAll()
imza doğrula ContainerValidationResult cvr = container.verifyAll(); imza yapısı içerisindeki bütün imzalar geçerli mi? assertEquals(ContainerValidationResultType.ALL_VALID, cvr.getResultType()); </sxh>
<sxh csharp; highlight:[6]; title:.NET Code > imzayı oku SignatureContainer container = SignatureFactory.readContainer(inputstream); inputstream.Close(); imza doğrula ContainerValidationResult cvr = container.verifyAll();
imza yapısı içerisindeki bütün imzalar geçerli mi? Assert.AreEqual(ContainerValidationResultType.ALL_VALID, cvr.getResultType()); </sxh>