Bu politikayla ilgili sorularınız varsa lütfen CT Politikası forumuna gönderin: ct-policy@chromium.org
Bir bağlantının Taşıma Katmanı Güvenliği (TLS) sertifikası, Sertifika Şeffaflığı'nı etkinleştiren bir uygulamada doğrulandığında Android Sertifika Şeffaflığı (CT) Politikası'na uygunluk açısından değerlendirilir. Bu Politika'yı karşılayan İmzalı Sertifika Zaman Damgası'nın (SCT) eşlik ettiği sertifikaların CT Uyumlu olduğu söylenir.
CT uygunluğu, sertifika doğrulaması sırasında popüler TLS kitaplıkları (Android'in yerleşik Conscrypt'i dahil) tarafından uygulanan ve bu Politika'da tanımlanan teknik koşulları karşılayan bir sertifika ve eşlik eden SCT'ler ile sağlanır.
CT Günlük Durumları
Android'de CT uygunluğu, CT günlüklerindeki SCT'lerin değerlendirilmesi ve bu günlüklerin kontrol sırasında doğru durumda olduğundan emin olunması ile belirlenir. Bir CT günlüğünün bulunabileceği olası durumlar şunlardır:
Pending
Qualified
Usable
ReadOnly
Retired
Rejected
Android'de CT uyumluluğuyla ilgili şartları anlamanıza yardımcı olmak için bu durumların tanımı, her durumda günlüklerle ilgili şartlar ve bu durumların Android davranışını nasıl etkilediği, Chrome dokümanlarında yer alan CT Günlüğü Yaşam Döngüsü Açıklayıcısı'nda ayrıntılı olarak açıklanmıştır.
CT Uyumlu Sertifikalar
Bir TLS sertifikası, SCT'lerin Android'e nasıl yayınlandığına bağlı olarak, daha sonra tanımlanan ölçütlerden en az birini karşılayan bir SCT grubuyla birlikte gönderiliyorsa CT Uyumlu'dur. Android'in CT'yi zorunlu kıldığı uygulamalarda, herkes tarafından güvenilen tüm TLS sertifikalarının başarılı bir şekilde doğrulanabilmesi için CT uyumlu olması gerekir. Ancak CT'ye kaydedilmeyen veya yetersiz SCT'ye sahip olan sertifikaların yanlış düzenlenmiş olduğu kabul edilmez.
Android, bir sertifikayı CT Uyumluluğu açısından değerlendirirken kaç SCT bulunduğu, SCT'yi veren CT Günlüğünün kim tarafından işletildiği ve hem sertifikanın doğrulandığı sırada hem de SCT'nin CT Günlüğü tarafından oluşturulduğu sırada SCT'yi veren CT Günlüğünün hangi durumda olduğu gibi çeşitli faktörleri dikkate alır.
SCT'lerin Android'e nasıl sunulduğuna bağlı olarak, aşağıdaki ölçütlerden birini karşılayarak CT'ye uygunluk sağlanabilir:
Yerleştirilen SCT'ler:
- Kontrol sırasında
Qualified
,Usable
veyaReadOnly
olan bir CT günlüğünden en az bir yerleştirilmiş SCT ve - En az N farklı CT günlüğünden yerleştirilmiş SCT'ler var. Bu günlükler, kontrol sırasında
Qualified
,Usable
,ReadOnly
veyaRetired
durumundaydı. N, aşağıdaki tabloda tanımlanmıştır. - 2. koşulu karşılayan SCT'ler arasında, Android tarafından tanınan farklı CT Günlüğü Operatörleri tarafından en az iki SCT düzenlenmiş olmalıdır ve
- 2. koşulu karşılayan SCT'ler arasında en az bir SCT, Android tarafından RFC 6962 uyumlu olarak tanınan bir günlükten yayınlanmış olmalıdır.
Sertifika Ömrü | Farklı CT günlüklerindeki SCT'lerin sayısı |
---|---|
<= 180 gün | 2 |
> 180 gün | 3 |
OCSP veya TLS üzerinden yayınlanan SCT'ler:
- Kontrol sırasında
Qualified
,Usable
veyaReadOnly
olan bir CT günlüğünden en az iki SCT ve - 1. koşulu karşılayan SCT'ler arasında, Android tarafından tanınan farklı CT Günlüğü Operatörleri tarafından en az iki SCT yayınlanmış olmalıdır ve
- 1. koşulu karşılayan SCT'ler arasında en az bir SCT, Android tarafından RFC6962 uyumlu olarak tanınan bir CT günlüğünden yayınlanmış olmalıdır.
Hem yerleşik SCT'ler hem de OCSP veya TLS kullanılarak yayınlananlar için günlük operatörü benzersizliği, log_list.json dosyasının operatörler bölümünde ayrı girişlere sahip olmak olarak tanımlanır.
Bir CT günlüğünün kullanım süresi boyunca operatör değiştirmesi nadir bir durumdur. CT günlükleri isteğe bağlı olarak, bu günlüğün önceki operatör tarafından çalıştırıldığı son zaman damgasının eşlik ettiği bir previous_operators
listesi içerir.
Günlük operatörü değişikliklerinin mevcut sertifikaları bozmasını önlemek için her SCT'nin günlük operatörü, SCT zaman damgası mevcutsa previous_operators
zaman damgalarıyla karşılaştırılarak SCT'nin verildiği sıradaki operatör olarak belirlenir.
Önemli notlar
El sıkışma sırasında sunulan SCT'lerin bir kombinasyonuyla önceki CT Uyumluluğu ölçütlerinden biri karşılandığı sürece, ek SCT'ler (SCT'nin durumundan bağımsız olarak) bir sertifikanın CT Uyumluluğu durumunu olumlu veya olumsuz yönde etkilemez.
Bir sertifikanın CT uygunluğuna katkıda bulunabilmesi için, varsa günlükteki Retired
zaman damgasından önce bir SCT yayınlanmış olmalıdır.
Android, CT uyumluluğunu CT Günlüğü Retired
zaman damgalarına göre değerlendirmek için sunulan tüm SCT'ler arasında en erken SCT'yi kullanır.
Bu, sertifika günlük kaydı istekleri gönderilirken CT günlüğünün kullanımdan kaldırıldığı uç durumlar için geçerlidir.
"Yerleşik SCT", sertifikanın içinde SignedCertificateTimestampList
X.509v3 uzantısı kullanılarak yayınlanan bir SCT anlamına gelir. Birçok TLS sunucusu OCSP Stapling'i veya TLS uzantısını desteklemez. Bu nedenle, CA'lar Android'de başarılı bir doğrulama veya EV işlemi sağlamak için SCT'leri verilen sertifikalara yerleştirmeye hazır olmalıdır.
CT günlükleri Android'e nasıl eklenir?
CT günlüklerinin Qualified
haline gelme ölçütleri ve Retired
haline gelmelerine ne gibi koşulların neden olabileceği Chrome CT Günlük Politikası'nda bulunabilir.
CT Yaptırım Süresi Aşımı
Google her gün yeni bir log_list_timestamp
içeren yeni bir CT Günlüğü listesi yayınlar. Android cihazlar, doğrulama amacıyla bu listenin en son sürümünü günde bir kez indirmeyi dener. Cihazda herhangi bir zamanda günlük listesi yoksa veya günlük listesinin zaman damgası 70 günden eskiyse CT yaptırımı devre dışı bırakılır.
Bu zaman aşımı, CT ekosistemine yeni CT günlüklerinin Qualified
olduktan sonra belirli bir süre içinde Kullanılabilir durumuna güvenli bir şekilde geçebileceğine dair kritik bir güvence sağlar.