Birisi belirli bir dijital sertifikanın (SSL sertifikası gibi) "bir anahtarla imzalandığını" söylediğinde, bu ne anlama gelir? Bu, sertifikanın daha sonraki mesaj alışverişi için kullanılması gereken bir anahtar içerdiği anlamına mı geliyor? Bu, sertifikanın kendisinin şifrelenmiş olduğu ve sadece bu anahtarla şifresinin çözülebileceği anlamına mı geliyor? Başka bir şey ifade ediyor mu? Şimdiden teşekkürler.
İdeal olarak, birinin sertifikaya baktığı ve sertifikanın doğru ve meşru olduğuna karar verdiği anlamına gelir. Bunu yaptıktan sonra, insanlara "Hey, bu sertifikanın iyi olduğunu doğruladım. Ben güven ona" demek istiyorlar. Bunu yapmak için, imzalama anahtarını sertifikayı imzalamak için kullanırlar.
Aslında imza muhtemelen ne tür bir sertifika olduğuna bağlıdır. Bence bu yararlı bir okuma .
Dijital sertifika üç şeyden oluşur:
- Ortak anahtar.
- Sertifika bilgisi. (Kullanıcı hakkında ad, kullanıcı kimliği vb. Gibi "kimlik" bilgileri.)
- Bir veya daha fazla dijital imza.
Genellikle "daha dijital imzalardan biri" bölümü, sertifikanın şifrelenmiş karma kümelerini listeleyerek yapılır. Bu nedenle, bir sertifikayı imzalamak istediğinizde, sertifikanın karmasını hesaplar, özel imza anahtarınızı kullanarak şifreler ve dijital imzalar listesine eklersiniz.
İşte bir X.509 sertifikası yapısı:
Certificate ::= SEQUENCE { tbsCertificate TBSCertificate, signatureAlgorithm AlgorithmIdentifier, signatureValue BIT STRING } TBSCertificate ::= SEQUENCE { version [0] EXPLICIT Version DEFAULT v1, serialNumber CertificateSerialNumber, signature AlgorithmIdentifier, issuer Name, validity Validity, subject Name, subjectPublicKeyInfo SubjectPublicKeyInfo, issuerUniqueID [1] IMPLICIT UniqueIdentifier OPTIONAL, -- If present, version MUST be v2 or v3 subjectUniqueID [2] IMPLICIT UniqueIdentifier OPTIONAL, -- If present, version MUST be v2 or v3 extensions [3] EXPLICIT Extensions OPTIONAL -- If present, version MUST be v3 }
Sertifikanın kendisinde bulunan veriler
TBSCertificate kısmıdır: ortak anahtarı (SubjectPublicKeyInfo) bir tanımlayıcıya (konu) ve diğer çeşitli özellik uzantılarına bağlar.
Daha sonra bu,
Certificate yapısı oluşturmak için imza ile birleştirilir. İmza algoritması bunun nasıl yapılacağını belirler.
Temel olarak,
TBSCertificate (tipik olarak SHA-1) bir özeti hesaplanır ve daha sonra imzalayanın özel anahtarı (X.509 terimlerindeki yayıncı) ile imzalanır.
TBSCertificate içeriğinin en ufak bir değişikliği, özeti değiştirmelidir, bu da imzayı geçersiz kılmalıdır.
RSA anahtarları kullanılarak, özel anahtar kullanılarak özetin imzalanması matematiksel olarak ortak anahtar kullanılarak şifreleme için ne yapılacağına çok benzer. Ancak bu kavramsal olarak aynı değildir ve örneğin DSA'nın bu karşılıklılığı yoktur.
Yapının farklı olmasına rağmen, ilke diğer sertifika türleri için aynıdır. PGP ortak anahtarlarının aslında sertifikalar olduğu göz önüne alındığında, bu sorularla da ilgilenebilirsiniz:
Birisi belirli bir dijital sertifikanın (SSL sertifikası gibi) "bir anahtarla imzalandığını" söylediğinde, bu ne anlama gelir?
Bu anahtara sahip olan kuruluşun sertifikadaki bilgilerin doğruluğu için kefil olduğunu ve sertifikaya kefil olunmasını sağlayan bilgileri eklediğini ima eder.
Bu, sertifikanın daha sonraki mesaj alışverişi için kullanılması gereken bir anahtar içerdiği anlamına mı geliyor?
Hayır. Sertifikalar yalnızca kimliği kanıtlar.
Bu, sertifikanın kendisinin şifrelenmiş olduğu ve sadece bu anahtarla şifresinin çözülebileceği anlamına mı geliyor?
Hayır. Sertifikaları şifrelemek için bir neden yoktur, yalnızca kamuya açık bilgiler içerirler.
Başka bir şey ifade ediyor mu?
Bu anahtarın sahibinin sertifikadaki bilgilere kefil olduğunu ima eder. Tipik bir SSL sertifikası için, sertifikadaki bilgiler ortak anahtar ile ortak ad arasında bir bağdır.
Örneğin, tarayıcınızı
https://www.Amazon.com/ Amazon'un sunucusu size bir sertifika gönderecektir. Bu sertifika belirli bir ortak anahtarı
www.Amazon.com. Tarayıcınız gerçek Amazon ile konuştuğunu bilmek için üç şeyi onaylar:
Sunucu, güvendiği bir anahtarla geçerli ve imzalanmış bir sertifika sundu.
Sertifika "www.Amazon.com" kimliğini bağlar.
Sunucu, sertifikaya karşılık gelen özel anahtara sahip olduğunu kanıtlar.
Bu nedenle, sertifika imzasının amacı, imzalama aracısının güvenilirliğini, temelde "bu adam bu anahtarın sahibi" olan sertifikadaki bilgilerin arkasına koymaktır.