Bu sayfanın seçili sürümü ile mevcut sürümü arasındaki farkları gösterir.
en:esya:sertifika:dogrulama-kutuphane [2013/08/23 12:15] Dindar Öz |
en:esya:sertifika:dogrulama-kutuphane [2013/08/23 12:49] (mevcut) Dindar Öz |
||
---|---|---|---|
Satır 254: | Satır 254: | ||
==== Certificate/CRL Status Info ==== | ==== Certificate/CRL Status Info ==== | ||
- | Esya Sertifika Doğrulama Kütüphanesi sertifika ve SİL doğrulama işlemi sonucunda Sertifika Durum Bilgisi (CertificateStatusInfo) ve SİL Durum Bilgisi (CRLStatusInfo) sınıflarından bir nesne oluşturur. Bu sınıf içerisinde ayrıntılı kontrol detayları , oluşturulmuş ve doğrulanmaya çalışılan farklı sertifika zincirleri doğrulanma sonuçlarıyla birlikte detaylı olarak saklanır. Bu sınıfın nesnesinin kullanımı, örnek kodlarla birlikte [[esya:cades:eimza-cades-kutuphanesi|CAdES İmza Kütüphanesi]] bölümünde daha detaylı olarak görülebilir. | + | ESYA Certificate Validation API creates an object of CertificateStatusInfo or CRLStatusInfo classes after the validation of certificate or crl accordingly. In this object, detailed validation information such as invalid certificate chains found during validation can be found. The usage of CertificateStatusInfo and CRLStatusInfo classes with sample codes can be found in [[en:esya:cades:eimza-cades-kutuphanesi|CAdES Signature API]] |
===== Local Certificate Store ===== | ===== Local Certificate Store ===== | ||
- | Sertifika deposu, güvenilir olduğu kabul edilen yayıncı sertifikalarının saklanabileceği bir kök sertifika deposu olarak geliştirilmiştir. | + | Certificate Store is a file-based database and designed as a storage for the certificates of the trusted issuers. It also plays a cache role for the issuer certificates, crls and OCSP Responses in the certificate validation process. Once those resources are retrieved from a remote source then they are stored in the local certificate store and used upon further demand by other validation operations. |
- | Sertifika deposu aynı zamanda doğrulama işlemi sırasında bulunması gereken yayıncı sertifikası, SİL, OCSP cevabı gibi verilerin sürekli uzak kaynaklardan çekilmesini engellemek için bu verilerin yerelde saklanabilmesinden sorumludur. | + | The default location of the certificate store, is the ".sertifikadeposu" folder located in the user's home directory. The default name for the certificate store file is "SertifikaDeposu.svt". If a different name and location is used for the certificate store then these parameters must be defined in the certificate validation policy file by specifying the parameter named as "storepath". |
- | Sertifika deposunun varsayılan yeri, kullanıcının ana klasörünün(user home directory) altındaki ".sertifikadeposu" klasörünün içidir. Varsayılan dosya ismi ise "SertifikaDeposu.svt"dir. Eğer farklı bir dosya yolu ve dosya ismi kullanılması isteniyorsa, sertifika doğrulama politika dosyasında belirtilmelidir. Bunun için storepath parametresi kullanılmalıdır. | + | ESYA Certificate Validation API trusts the certificates that are defined as trusted rood certificates in the certificate store. |
- | + | ||
- | Esya Sertifika Doğrulama API'si yerel sertifika deposunda güvenilir kök sertifikası olarak tanımlanmış seritikaları güvenilir olarak kabul eder ve doğrulama sırasında oluşturduğu sertifika zincirlerinin bu sertifikalardan biriyle sonlanmasını bekler. API'deki yerel sertifika deposundan sertifika ve sil bulucular kullanılarak doğrulama verileri istenildiğinde yerel depodan bulunabilir. | + | |
<sxh xml> | <sxh xml> | ||
Satır 272: | Satır 270: | ||
</sxh> | </sxh> | ||
- | Test sertifikalarıyla çalışırken sertifikanın doğrulanması sırasında PATH_VALIDATION_FAILURE hatası alabilirsiniz. Bu durumun muhtemel sebebi, test sertifikaların köklerinin sertifika deposunda güvenilir sertifika olarak tanımlanmamasıdır. Bu kök sertifikaları dosya yoluyla belirtebilirsiniz. Yalnız bu kullanım sadece test amacıyla yapılmalıdır. | + | You can have PATH_VALIDATION_FAILURE error during the validation of the test certificates.Most probably the reason is that the issuer of the test certificates is not defined as trusted root in your certificate store. |
+ | You can make this issuer certificates trusted by te API by using TrustedCertificateFinderFromFile class, which is only recommended for testing purposes. | ||
+ | |||
<sxh xml> | <sxh xml> | ||
<class name="("tr.gov.tubitak.uekae.esya.api.certificate.validation.find.certificate.trusted.TrustedCertificateFinderFromFileSystem"> | <class name="("tr.gov.tubitak.uekae.esya.api.certificate.validation.find.certificate.trusted.TrustedCertificateFinderFromFileSystem"> | ||
Satır 280: | Satır 279: | ||
</sxh> | </sxh> | ||
- | ===== XML Sertifika Deposu ===== | + | ===== XML Certificate Store ===== |
- | Dosya sistemine herhangi bir şekilde erişimin olmadığı durumlarda kullanılması için XML tabanlı sertifika deposu dosyası geliştirilmiştir. Bu şekilde internet üzerindeki bir depo ile çalışabilmek mümkün olmaktadır. | + | In cases, where the usage of file-based certificate store is not available, an XML-based certificate store is created. Thus, you can work with a certificate store that is located on Internet. |
- | Sertifika doğrulama konfigürasyon dosyasında XML depodan güvenilir sertifika bulucu aşağıdaki gibi tanımlanır: | + | In the certificate validation policy file, you can define the trusted certificate finder class finding trusted certificates from an XML certificate store as follows: |
<sxh xml> | <sxh xml> | ||
Satır 290: | Satır 289: | ||
<param name="storepath" value="http://www.kamusm.gov.tr/depo/xml/XmlDepo.xml"/> | <param name="storepath" value="http://www.kamusm.gov.tr/depo/xml/XmlDepo.xml"/> | ||
</class> | </class> | ||
- | Yine xml depodan sertifika bulucu aşağıdaki şekilde tanımlanır: | + | |
+ | A certificate finder from an XML store is also defined as follows: | ||
<class name="tr.gov.tubitak.uekae.esya.api.certificate.validation.find.certificate.CertificateFinderFromXml"> | <class name="tr.gov.tubitak.uekae.esya.api.certificate.validation.find.certificate.CertificateFinderFromXml"> | ||
<param name="storepath" value="http://www.kamusm.gov.tr/depo/xml/XmlDepo.xml"/> | <param name="storepath" value="http://www.kamusm.gov.tr/depo/xml/XmlDepo.xml"/> | ||
Satır 296: | Satır 296: | ||
</sxh> | </sxh> | ||
- | XML depodan güvenilir sertifika bulucu parametre olarak bir URL almaktadır. Performans arttırmak için yerel ağlarda bu dosyanın bir kopyasını bulundurmak ve onunla çalışmak faydalı olur. | + | TrustedCertificateFinderFromXml takes a URL parameter for the location of the XML store.To increase the performance locating the XML store on the local network should be pereferred if possible. |
- | Bunun yanında xml sertifika deposu sadece ESYA sertifika doğrulama kütüphanesi ile kullanılmalıdır. Aksi taktirde man-in-the-midle saldırısına kapı açılmış olur. ESYA Kütüphanesi bu dosyadaki güvenilir sertifikalar için imza kontrolü yapmaktadır. | + | Besides, XML certificate store must only be used with ESYA Certificate Validation API, which performs signature verification on the trusted certificates. Otherwise, you can not be sure that the store is not altered by any man-in-the-middle attack. |
- | Bir diğer göz önünde bulundurulması gereken konu performanstır. Yerel sertifika deposu kullanılırken imza doğrulamada kullanılan iptal listeleri depoya kaydedilip tekrar kullanılabilirken, xml sertifika deposu sadece okuma özellikli olduğu için bu avantajdan mahrumdur. Bu yüzden iptal listeleri her doğrulamada tekrar indirilmek zorunda kalınacaktır. Bu da ciddi performans kaybına yol açar. | + | One more thing to be mentioned is about the performance degradation caused by using XML store instead of local certificate store. This happens because you can not save the CRL files found at remote location during certificate validation if you are using XML store as XML store is a read-only source. Thus, you must repeatedly retrieve the same crls from remote locations whenever they are needed. |