Yusuf UYANIK – BLOG

SSL Sertifikaları ve Chain Yapısı

SSL/TLS sertifikaları bir güven zinciri (chain of trust) oluşturur ve bu zincir, bir sertifikanın geçerliliğini doğrulamak için kullanılır. İşte bu zincirin nasıl çalıştığı ve sertifikaların birbirlerinin geçerliliğini nasıl anladığına dair bir açıklama:

  1. Sertifika Zinciri (Certificate Chain) Kurulumu:
    • Site Sertifikası (Leaf Certificate): Bu, elinizdeki SSL sertifikasıdır ve genellikle bir web sunucusunda kurulu olan sertifikadır.
    • Ara Sertifika (Intermediate Certificate): Bu sertifika, site sertifikasını imzalayan ve root sertifikasına bağlı olan sertifikadır.
    • Kök Sertifika (Root Certificate): Bu, en üst düzeydeki sertifikadır ve bir sertifika otoritesi (CA) tarafından imzalanmıştır. Bu sertifika genellikle işletim sistemleri ve tarayıcılar tarafından güvenilir olarak kabul edilir.
  2. Zincirin Doğrulanması (Chain Validation):
    • İmzaların Doğrulanması (Signature Verification): Her sertifika, bir üst düzey sertifika tarafından dijital olarak imzalanmıştır. Bu imza, sertifikanın değişmediğini ve geçerli olduğunu doğrular.
      • Örneğin, sitenizin SSL sertifikası, bir ara sertifika tarafından imzalanmıştır. Ara sertifika, bu imzayı doğrular.
      • Ara sertifika da kök sertifika tarafından imzalanmıştır. Bu şekilde, kök sertifika ara sertifikayı ve ara sertifika da site sertifikasını doğrular.
    • Kök Sertifikanın Güvenilirliği (Root Certificate Trust): Kök sertifika, işletim sisteminiz veya tarayıcınız tarafından güvenilir olarak kabul edilmiştir. Güvenilir kök sertifikalar genellikle önceden yüklenmiş olarak gelir.
    • Sertifika Zincirinin Kurulması (Building the Chain): Tarayıcı veya istemci, sunulan sertifikaları kullanarak bir zincir oluşturur. Bu zincir, kök sertifikaya kadar izlenir.
    • Geçerlilik Süresi ve İptal Durumu (Validity Period and Revocation Status): Her sertifika belirli bir geçerlilik süresine sahiptir ve aynı zamanda iptal edilip edilmediği kontrol edilir. Bu, Sertifika İptal Listesi (CRL) veya Çevrimiçi Sertifika Durumu Protokolü (OCSP) ile yapılır.
  3. Zincir Tamamlanması (Completing the Chain):
    • Tarayıcı veya istemci, sunulan sertifikaları kök sertifikaya kadar izler.
    • Her adımda, bir sertifikanın bir üst sertifika tarafından imzalandığını doğrular.
    • En üst düzeyde, kök sertifika güvenilir olarak kabul edildiği için tüm zincir geçerli kabul edilir.

Örnek Zincir:

1. Site Sertifikası (www.example.com)
|
V
2. Ara Sertifika (Intermediate CA)
|
V
3. Kök Sertifika (Root CA)

Zincirin Doğrulama Adımları:

  1. www.example.com sertifikası, Intermediate CA tarafından imzalanmış mı? Evet ise, geçerli.
  2. Intermediate CA sertifikası, Root CA tarafından imzalanmış mı? Evet ise, geçerli.
  3. Root CA sertifikası, tarayıcı veya işletim sistemi tarafından güvenilir olarak kabul edilmiş mi? Evet ise, zincir tamamlanmış ve geçerlidir.

Bu süreçte, her sertifika kendi üst sertifikası tarafından imzalanmış olduğundan ve en üstteki kök sertifika güvenilir olduğundan, tüm zincir geçerli kabul edilir. Bu şekilde, SSL/TLS sertifikaları birbirlerinin geçerliliğini anlar ve güven zincirini tamamlar.

Site sertifikası (leaf certificate) ile ara sertifika (intermediate certificate) arasındaki ilişkinin doğrulanması sadece CN (Common Name) eşleştirmesi ile değil, sertifikaların içerdiği çeşitli alanlar ve dijital imzaların kontrol edilmesi ile sağlanır. İşte bu ilişkinin nasıl kurulduğuna dair daha ayrıntılı açıklama:

Sertifika Yapısı ve Alanlar

  1. Subject ve Issuer Alanları:
    • Subject: Sertifikanın sahibi hakkında bilgi içerir. Site sertifikasında bu, web sitesinin adı (CN – Common Name) ve diğer detayları içerebilir.
    • Issuer: Sertifikayı imzalayan otoritenin bilgilerini içerir. Site sertifikasında bu, ara sertifikayı imzalayan CA’nın adı olur.
  2. Dijital İmzalar:
    • Her sertifika, bir üst düzey sertifika (ara sertifika veya kök sertifika) tarafından dijital olarak imzalanmıştır. Bu dijital imza, sertifikanın bütünlüğünü ve kaynağının doğruluğunu garanti eder.

Doğrulama Adımları

  1. Issuer ve Subject Alanlarının Kontrolü:
    • Site sertifikasının “Issuer” alanı, ara sertifikanın “Subject” alanı ile eşleşmelidir. Bu, ara sertifikanın gerçekten site sertifikasını imzaladığını gösterir.
  2. Dijital İmzanın Doğrulanması:
    • Site sertifikası, ara sertifika tarafından dijital olarak imzalanmıştır. Bu imza, ara sertifikanın özel anahtarı ile yapılmıştır. Site sertifikasını doğrulayan tarayıcı veya istemci, ara sertifikanın açık anahtarını kullanarak bu imzayı doğrular.
    • Eğer imza geçerliyse, bu site sertifikasının ara sertifika tarafından gerçekten imzalandığını ve değişmediğini kanıtlar.

Ek Kontroller

  1. Sertifika Zincirinin Tamamlanması:
    • Tarayıcı veya istemci, ara sertifikanın da geçerli olduğunu ve kök sertifika tarafından imzalandığını doğrular.
    • Kök sertifikanın güvenilir bir CA tarafından verildiğini ve tarayıcı/işletim sistemi tarafından güvenilir olarak kabul edildiğini kontrol eder.
  2. Geçerlilik Süresi ve İptal Durumu:
    • Sertifikaların geçerlilik süreleri içinde olup olmadıkları ve iptal edilip edilmedikleri kontrol edilir.

Örnekle Açıklama:

Site Sertifikası (www.example.com):

Subject: CN = www.example.com
Issuer: CN = Intermediate CA

Ara Sertifika (Intermediate CA):

Subject: CN = Intermediate CA
Issuer: CN = Root CA

Kök Sertifika (Root CA):

Subject: CN = Root CA
Issuer: CN = Root CA (self-signed)

Doğrulama Adımları:

  1. Issuer-Subject Eşleşmesi:
    • Site sertifikasının “Issuer” alanı, ara sertifikanın “Subject” alanı ile eşleşir: CN = Intermediate CA.
  2. Dijital İmza Doğrulaması:
    • Site sertifikası, ara sertifika tarafından dijital olarak imzalanmıştır. Tarayıcı, ara sertifikanın açık anahtarı ile bu imzayı doğrular.
  3. Ara Sertifika Doğrulaması:
    • Ara sertifika, kök sertifika tarafından imzalanmıştır ve tarayıcı kök sertifikanın güvenilir olduğunu onaylar.
  4. Geçerlilik ve İptal Kontrolü:
    • Sertifikaların geçerlilik süreleri kontrol edilir ve iptal edilip edilmediği CRL veya OCSP ile doğrulanır.

Bu süreçte, her adımda dijital imzalar ve sertifika alanları kontrol edilerek, güven zincirinin geçerliliği ve bütünlüğü sağlanır. Bu sayede site sertifikası ile ara sertifika ve ara sertifika ile kök sertifika arasındaki ilişkiler doğru bir şekilde kurulmuş olur.

Exit mobile version