Bu sayfanın seçili sürümü ile mevcut sürümü arasındaki farkları gösterir.
esya:cmszarf:cozuculer [2013/07/22 13:39] Beytullah Yiğit created |
esya:cmszarf:cozuculer [2013/08/28 08:37] (mevcut) Beytullah Yiğit |
||
---|---|---|---|
Satır 1: | Satır 1: | ||
- | 6.4 Çözücüler | + | ===== Çözücüler ===== |
- | Kullanılacak çözücülerin IDecryptorStore arayüzünden türemis olmaları gerekmektedir. IDecryptorStore arayüzünün iki metodu bulunmaktadır. getEncryptionCertificates() metodu çözücünün çözebilecegi sertifikaları verir. decrypt(...) metoduna, hangi sertifika ile sifre çözme yapılması isteniyorsa o sertifika ve çözülmek istenen veri parametre olarak verilir; metot çözülmüs veriyi geri döner. Bu arayüze uyacak sekilde kendi çözücünüzü de yazabilirsiniz. | + | |
- | CMS Envelope kütüphanesinde hali hazırda akıllı kartta, bellekte ve Microsoft sertifika deposu üzerinden çözme islemlerini yapan çözücüler bulunmaktadır. | + | Kullanılacak çözücülerin ''IDecryptorStore'' arayüzünden türemiş olmaları gerekmektedir. ''IDecryptorStore'' arayüzünün iki metodu bulunmaktadır. ''getEncryptionCertificates()'' metodu çözücünün çözebilecegi sertifikaları verir. ''decrypt(...)'' metoduna, hangi sertifika ile şifre çözme yapılması isteniyorsa o sertifika ve çözülmek istenen veri parametre olarak verilir. Metot çözülmüs veriyi geri döner. Bu arayüze uyacak şekilde kendi çözücünüzü de yazabilirsiniz. |
- | 6.4.1 Akıllı Kart Çözücü | + | |
- | Enter topic text here.Akıllı kart ile çözme islemleri için SCDecryptor sınıfı kullanılmalıdır. Bu sınıf akıllı kart islemlerini yapacagı SmartCard nesnesini ve oturum numarasını parametre olarak alır. Verinin akıllı kart ile çözülebilmesi için akıllı karta giris (login) yapılması gerekmektedir. | + | CMS Envelope kütüphanesinde akıllı kart, bellek ve Microsoft sertifika deposu üzerinde çözme işlemlerini yapan çözücüler hali hazırda bulunmaktadır. |
- | Akıllı kart islemleri hakkında daha genis bilgi almak için "ESYA API SmartCard Kullanım Kılavuzu"na bakınız. | + | |
- | Asağıda örnek bir çözücünün yaratılısı vardır. | + | ==== Akıllı Kart Çözücü ==== |
- | Java | + | |
+ | Akıllı kart ile çözme işlemleri için ''SCDecryptor'' sınıfı kullanılmalıdır. Bu sınıf akıllı kart işlemlerini yapacağı SmartCard nesnesini ve oturum numarasını parametre olarak alır. Verinin akıllı kart ile çözülebilmesi için akıllı karta giris (login) yapılması gerekmektedir. | ||
+ | |||
+ | Akıllı kart islemleri hakkında daha genis bilgi almak için [[esya:smartcard:akıllı-kart|ESYA API SmartCard Kullanım Kılavuzuna]] bakınız. | ||
+ | Asağıdaki örnekte bir akıllı kart çözücü oluşturulmaktadır. | ||
+ | <sxh java;title:Java> | ||
ByteArrayOutputStream decryptedOutputStream = new ByteArrayOutputStream(); | ByteArrayOutputStream decryptedOutputStream = new ByteArrayOutputStream(); | ||
Satır 15: | Satır 20: | ||
IDecryptorStore decryptor = new SCDecryptor(sc, session); | IDecryptorStore decryptor = new SCDecryptor(sc, session); | ||
- | + | </sxh> | |
- | C# | + | <sxh csharp;title:C#> |
MemoryStream decryptedOutputStream = new MemoryStream(); | MemoryStream decryptedOutputStream = new MemoryStream(); | ||
Satır 25: | Satır 30: | ||
IDecryptorStore decryptor = new SCDecryptor(sc, session); | IDecryptorStore decryptor = new SCDecryptor(sc, session); | ||
- | 6.4.2 Bellekte Çözücü | + | </sxh> |
- | Eger sertifika ve özel anahtara ulasılabiliniyorsa, sifrelenmis dosyalar bellekte de çözülebilir. Bu islem için MemoryDecryptor sınıfı kullanılmalıdır. Nesne yaratılırken sertifika ve özel anahtar çiftleri parametre olarak geçilir. | + | ==== Bellekte Çözücü ==== |
- | Java | + | |
+ | Eğer sertifika ve özel anahtara ulaşılabiliniyorsa, şifrelenmis dosyalar bellekte de çözülebilir. Bu işlem için ''MemoryDecryptor'' sınıfı kullanılmalıdır. Nesne yaratılırken sertifika ve özel anahtar çiftleri parametre olarak geçilir. | ||
+ | <sxh java;title:Java> | ||
ECertificate cert = getCertificate(); | ECertificate cert = getCertificate(); | ||
PrivateKey key = getPrivKey(); | PrivateKey key = getPrivKey(); | ||
MemoryDecryptor md = new MemoryDecryptor(new Pair<ECertificate, | MemoryDecryptor md = new MemoryDecryptor(new Pair<ECertificate, | ||
PrivateKey>(cert,key)); | PrivateKey>(cert,key)); | ||
- | + | </sxh> | |
- | + | <sxh csharp;title:C#> | |
- | + | ||
- | C# | + | |
ECertificate cert = getCertificate(); | ECertificate cert = getCertificate(); | ||
IPrivateKey key = getPrivKey(); | IPrivateKey key = getPrivKey(); | ||
MemoryDecryptor md = new MemoryDecryptor(new Pair<ECertificate, | MemoryDecryptor md = new MemoryDecryptor(new Pair<ECertificate, | ||
IPrivateKey>(cert,key)); | IPrivateKey>(cert,key)); | ||
+ | </sxh> | ||
+ | ==== Microsoft Sertifika Deposundan Çözücü ==== | ||
- | 6.4.3 Microsoft Sertifika Deposundan Çözücü | + | Microsoft sertifika deposundaki anahtar kullanılarak şifreli veri çözülmeye çalısılır. Herhangi bir parametreye ihtiyaç duymaz. Yalnız kullanıcının sertifika deposuna erisim hakkı olması gerekmektedir. |
- | Microsoft sertifika deposundaki anahtar kullanılarak sifreli veri çözülmeye çalısılır. Herhangi bir parametreye ihtiyaç duymaz. Yalnız kullanıcının sertifika deposuna erisim hakkı olması gerekmektedir. | + | |