E-imza Doğrulama İşlemleri Nasıl Yapılır?

Sertifika Doğrulama İşlemi

Sertifikalar kısaca bir PKI anahtar çifti ile herhangi bir bilgiyi (kimlik bilgisi , yetki, rol vb.), kriptografik olarak ispatlanabilir ve inkar edilemez bir şekilde birbirine bağlayan veri yapılarıdır. Bu anahtar çifti ile veri imzalama, şifreleme, kimlik doğrulama gibi temel PKI işlemleri gerçekleştirilebilmektedir. Bir sertifikanın güvenilirliği, seritifikanın güvenilir bir makam (yayıncı kuruluş) tarafından taklit edilemez bir şekilde imzalanmış olmasından kaynaklanmaktadır. Bu imza sertifikanın üzerinde yer almaktadır ve açık anahtar altyapısının doğası gereği istenildiğinde rahatlıkla doğrulanabilmektedir. Yayıncı kuruluşlar doğrudan güvenin kaynağı olabileceği gibi kendileri de bir başka güvenilir kaynaktan sertifika yayınlama sertifikası almış olabilirler. Birinci durumdaki kuruluşlara kök sertifika makamı(KSM) , ikinci durumdaki ara makamlara ise sertifika makamı(SM) denilmektedir. Kök sertifika makamları, güveni kendisinden var olan ve kendi sertifikasını kendisi imzalayan son derece güvenilir olduğu düşünülen kuruluşlardır. Sertifika imzalama fonksiyonu olmayan diğer amaçlarla kullanılan sertifikalara kullanıcı sertifikası denilir. Bir kullanıcı sertifikası için o sertifikadan başlayan sertifika imzalama (sertifika yayınlama) ilişkisi ile oluşan ve kök sertifika makamına kadar giden sertifika listesine sertifika zinciri denir. Bir kullanıcı sertifikasına güvenilebilmesi için herşeyden once bu sertifikanın güvenilen bir SM ya da KSM sertifikasında sonlanan bir sertifika zincirine sahip olması gerekir. Bir sertifikanın güvenilir olup olmadığının ve dolayısıyla kullanılmakta olduğu iş (imzalama, şifreleme, kimlik doğrulama vb.) için uygun olup olmadığının bütün yönleriyle kontrol edildiği işlemler bütünü sertifika doğrulama işlemi olarak isimlendirilmektedir.

Bütün dünyada farklı SM'lerin farklı amaçlarla yayınladığı sertifikaların ortak bir yapısı olması amacıyla bir takım standartlar tanımlanmıştır. X509 bu anlamda dünyaca kabul gören bir açık anahtar altyapısı (PKI) standartıdır. Bu standartta açık anahtar altyapısının en temel nesneleri olan , sertifikalar ve bu sertifikaların iptal durumlarının raporlandığı SİL'ler yapısal detaylarıyla tanımlanmıştır. X.509 standardına uyumlu sertifika ve SİL'lerin yapısı ve doğrulama adımları RFC 5280'de yer almaktadır.

Sertifika yayınlayan kuruluşlar sertifika oluşturmanın yanı sıra, çeşitli sebeplerden ötürü yayınlamış olduğu sertifikaların geçerliliklerini iptal edebilirler. Bu durumda bu sertifikalar geçersiz, başka bir ifade ile güvenilmez olurlar. Örneğin bir sertifikaya ilişkin özel anahtarın istenmeyen kişiler tarafından ele geçirilmesi sebebiyle, sertifika sahibinin yayıncı SM'ye bildirmesi sonucu SM tarafından bu sertifikanın iptali işlemi gerçekleştirilir. Kullanıcı sertifikalarının doğrulanmaya ihtiyaç duyulduğu yerlerde güvenli bir şekilde doğrulanabilmesi için bu sertifika iptal bilgilerinin güvenli ve kolay bir şekilde ulaşılabilir olması gerekmektedir. Bu işlem için iki yöntem kullanılmaktadır. Sertifikaların iptal durumlarının çevrimiçi yollarla gerçek zamanlı olarak sorgulandığı Çevrimiçi Sertifika Durum Protokolü(ÇİSDUP) ve iptal edilmiş sertifikaların iptal bilgilerinin bir veri yapısı oluşturularak dosya tabanlı olarak yayınlandığı SİL'ler. Bu iki yöntem de yine bütün dünyada aynı şekilde uygulanması ve uyumluluk amacıyla belirli standartlar çerçevesinde gerçekleştirilir.

Çevrimiçi Sertifika Durum Protokolü [ÇİSDUP] (OCSP)

RFC 2560'da tanımlı protokole uygun olarak bir veya daha fazla sertifikanın iptal durumunun bir sunucu vasıtasıyla çevrimiçi olarak sorgulanması yöntemidir. İngilizce kısaltmasıyla (OCSP) daha yaygın bilinen bu yöntemde, temel olarak bir OCSP sorgusuna karşın sunucunun cevap olarak gönderdiği bir OCSP cevabı söz konusudur. Bu cevapta sertifikanın geçerlilik durumu yeralmaktadır. Bu sorgu geçerlilik süresi dolmuş sertifikalar için yapılamaz. Protokolün detayları ilgili RFC'de yer almaktadır.

SİL Dosyaları (CRL)

Yine X509 standardında sertifika iptal bilgilerinin listelendiği SİL dosyalarının yapısal özellikleri detaylı olarak tanımlanmıştır. SİL dosyaları temel olarak iptal edilmiş sertifikaların listesi ve bu listenin SM tarafından ya da SM tarafından yetkilendirilmiş başka bir makam tarafından oluşturulmuş imzasından oluşur. Bu listede geçerlilik süresi dolmuş sertifikalar bulunmaz. Bir sertifikanın iptal durumu kontrol edilirken bir SİL'e başvurulduğunda öncelikle bu SİL'in de X509'a uygunluğu ve geçerliliği kontrol edilmelidir. SİL için yapılması gereken bu kontroller bütününe de SİL doğrulama denilir. SİL dosyalarının yapısal detayları RFC 5280'de yer almaktadır.

X509 Sertifika ve SİL Doğrulama

Sertifika ve SİL doğrulama işlemi sertifikanın ya da SİL'in güvenilir bir yetkili makam sertifikasına kadar uzanan sertifika zincirinin oluşturulması (path building ) ve bu zincir üzerindeki bütün sertifikaların ve zincir ilişkisinin doğrulanmasından oluşan (path validation) iki alt kısımda incelenebilir.

Zincir doğrulama işlemi, zincir üzerindeki sertifikaların doğrulanması (yapısal doğrulama) ve zincir ilişkisinin doğrulanması (zincir doğrulama) şeklinde iki temel bölümden oluşur. Yapısal doğrulamada sertifika veya SİL'in X509'da belirtilen yapısal özellikler karşılayıp karşılamadığına bakılır. Başka bir ifadeyle Sertifika veya SİL'in üzerinde yer alan bilgilerin standarda uygunluğu ve standarda gore geçerliliği kontrol edilir. Örneğin sertifikada seri numarası alanının olup olmadığına ve bu alanın pozitif bir sayı olup olmadığına bakılır. Ya da bir sertifikanın üzerinde yazan, geçerlilik başlangıç ve bitiş tarihlerinin doğrulama zamanını kapsayıp kapsamadığı yapısal bir doğrulama adımıdır.

Esya Sertifika Doğrulama Kütüphanesi yapısal doğrulama kapsamında RFC 5280'de tanımlı bütün yapısal özellikleri kontrol eder. Zincir oluşturma algoritması olarak RFC 4158'de tanımlı zincir oluşturma algoritmasını ve zincir doğrulama algoritması olarak yine RFC 5280'de tanımlanmış zincir doğrulama algoritmasını gerçekler.