ESYAE-imza Kütüphaneleri

User Tools

Site Tools


esya:ortakimza:imza-api-kullanim

Bu, dökümanın eski bir sürümüdür!


Kütüphane Kullanımı

İmza Atma

// 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));

Zaman damgalı(ES-T) İmza Atma

// 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ı zaman damgalı imza tipine geliştir
signature.upgrade(SignatureType.ES_T);

// imzayı dosyaya yaz
container.write(new FileOuputStream(fileName));

Basit (ES-BES) İmzayı Zaman Damgalı İmzaya Çevirme

// imza konteynerinidosyadan oku
SignatureContainer container = SignatureFactory.readContainer(fileInputStream);

// ilk imzayı al
Signature signature = container.getSignatures().get(0);

// imzayı zaman damgalı imza tipine geliştir
signature.upgrade(SignatureType.ES_T);

// imzayı dosyaya yaz
container.write(new FileOuputStream(fileName));

// imza konteynerinidosyadan oku
SignatureContainer container = SignatureFactory.readContainer(fileInputStream);

// ilk imzayı al
Signature signature = container.getSignatures()[0];

// imzayı zaman damgalı imza tipine geliştir
signature.upgrade(SignatureType.ES_T);

// imzayı dosyaya yaz
container.write(new FileOuputStream(fileName));

Gelişmiş (ES-XL) imza

Doğrulama bilgisini de içinde bulunduran imza tipi olan ES_XL tipinde imza oluşturmak için zaman damgalı imza atma örneklerindeki

// imza oluştur
...
// ve geliştir
signature.upgrade(SignatureType.ES_T);

satırını

// geliştir
signature.upgrade(SignatureType.ES_XL);

olarak değiştimek yeterlidir.

İmza Doğrulama

İmza doğrulamada SignatureContainer içindeki verifyAll() metodu kullanılır.

// 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?
assertEquals(ContainerValidationResultType.ALL_VALID, cvr.getResultType());

// 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());

esya/ortakimza/imza-api-kullanim.1373887602.txt.gz · Son değiştirilme: 2013/07/15 11:26 Değiştiren: Ahmet Yetgin