Soru Zorluk şifresi nedir?


Bir Ubuntu sunucusunda SSL kuruyorum. CSR'yi kurmanın bir parçası olarak istediği alanlardan biri de bir "deneme şifresi" dir. O nedir? Varsayılan boş. Bir tane girmem gerekiyor mu?


155
2018-05-04 14:34


Menşei




Cevaplar:


CSR nesnesinin bir parçası olarak talep edilen "şifre şifresi", gizli anahtarı şifrelemek için kullanılan paroladan farklıdır (anahtar oluşturma süresinde veya bir düz metin anahtarı daha sonra şifrelendiğinde istendi ve daha sonra bunu kullanan SSL etkin hizmet her başlatıldığında yeniden başlatılır.).

İşte oluşturulan bir anahtar ve oluşturulan anahtarın başlangıcı:

$ openssl genpkey -algorithm rsa -out foo.key
............++++++
...++++++

$ head -3 foo.key
-----BEGIN PRIVATE KEY-----
MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAJ9jNAG4Noy//r/S
eeK/gEgGOV0BZm0CYmgSQGj4P6N3cJsPlGsG80qKTxTFwoEiXnM3BVeBpDdXhGKt

Bu anahtarda hiç şifre yok. Yaratılışta bir tane istemedim ve bir tane girmedim. Şimdi şifrelenmiş bir anahtar oluşturalım:

$ openssl genpkey -algorithm rsa -des3 -out bar.key
...........................................++++++
.....................................++++++
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:

$ head -3 bar.key
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIICxjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQInfwj1iv3icMCAggA
MBQGCCqGSIb3DQMHBAizMHBklBexiwSCAoDtRKf1WtMiVMH7HraGTIG0rlQS6Xuj

Bu yüzden şifrelenmiş bir özel anahtarın (hangi apache'nin ya da başka bir SSL-etkin sunucunun, başladığında onun için kilitlenmesine ihtiyaç duyacağı) ve bir düz metin özel anahtarının (hizmet başlangıç ​​saatinde kilit açma gerektirmeyen) özel olarak ne olması gerektiği açık olmalıdır. . Şimdi bir CSR oluşturacağım ile bir meydan okuma şifresi şifresiz anahtar:

$ openssl req -new -key foo.key
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:
State or Province Name (full name) []:
Locality Name (eg, city) [Default City]:
Organization Name (eg, company) [Default Company Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:
Email Address []:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:asdfasdf
An optional company name []:
-----BEGIN CERTIFICATE REQUEST-----
MIIBmzCCAQQCAQAwQjELMAkGA1UEBhMCWFgxFTATBgNVBAcMDERlZmF1bHQgQ2l0
eTEcMBoGA1UECgwTRGVmYXVsdCBDb21wYW55IEx0ZDCBnzANBgkqhkiG9w0BAQEF
AAOBjQAwgYkCgYEAn2M0Abg2jL/+v9J54r+ASAY5XQFmbQJiaBJAaPg/o3dwmw+U
awbzSopPFMXCgSJeczcFV4GkN1eEYq2Cmam3tH6t8mVDh0/UryJSWBsaFm9mh9RF
gIpP0hEkYZTf/0X+X06ukt9S/Id9Z/tVgPsZA3TcNjNhJfVaTm81/4ykq8UCAwEA
AaAZMBcGCSqGSIb3DQEJBzEKDAhhc2RmYXNkZjANBgkqhkiG9w0BAQUFAAOBgQCa
ivuDRBlHOhBjg6wPbH9NvCnvEnxeEAkYi0Sl/Grdo/WCk17e+sv9wgqEW1QSIdbV
XzMeWidurv4AtcATwhfk9tBcYBCTxANkTONzhJG7Yk9OAz8g8Ljo8EEvPf4oHqpw
tBg10DCD2op0lCwL2LBdPO3RG20f/HD6fEXPVxZdOQ==
-----END CERTIFICATE REQUEST-----

Ve sadece anahtarın sihirli bir şekilde şifrelenmediğini göstermek için:

$ head -3 foo.key
-----BEGIN PRIVATE KEY-----
MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBAJ9jNAG4Noy//r/S
eeK/gEgGOV0BZm0CYmgSQGj4P6N3cJsPlGsG80qKTxTFwoEiXnM3BVeBpDdXhGKt

Bu yüzden tekrar söylüyorum: KSS oluşumunun bir parçası olarak talep edilen "şifre şifresi" değil gizli anahtarı şifrelemek için kullanılan bir parola ile aynı şey. "Deneme şifresi" temelde, siz ve yayıncı tarafından gerekli olan kimlik doğrulamasını yapmak için kullanabileceğimiz, SSL sertifikası veren kuruluş (aka Sertifika Yetkilisi veya CA) arasındaki gizli gizli bir paylaşımdır. Bazı SSL sertifikası veren kuruluşlar, diğerlerinden daha nettir; bak bu sayfanın alt kısmında Şifre sormak için nerede ihtiyaç duyduklarını görmek için değil apache'yi yeniden başlattığınızda:

Bir saldırı şifresi girmeyi ve kullanmayı seçerseniz, ihtiyacınız olacak   Bu şifreyi güvenli bir yerde sakladığınızdan emin olmak için. Eğer sen   Sertifikanızı herhangi bir nedenle yeniden yüklemeniz gerekecek,   Bu şifreyi girmek için gerekli.


138
2018-05-04 15:29



Bir "SSL Verici" ile bir CA (Sertifika Yetkilisi) arasında bir fark var mı? - Jonathan
Teknik olarak SSL protokolünün kendisini değil, SSL uyumlu bir sertifika yayınlıyorlar. SSL yayıncısının daha az açık olduğunu hissediyorum. SSL Sertifikası Düzenleyicisi, benim düşünceme göre açık olacaktır. - Jonathan
İhtiyaç duyulmadığında (çok) tam cevap, IMHO. Sorulan soruyu temel alarak, '' '' '' şifre '' parolası temelde paylaşılan-gizli bir ... '' dışında kalan tüm cevabınızı ortadan kaldırabilirsiniz. Bunun, daha az dikkat dağıtıcı bilgi içermeyen bilgilerle birlikte tamamen sorulan soruya cevap vereceğine inanıyorum. - joe
@joe teşekkürler! Göremediğin şey (çünkü temsilcisi yok), çok yüksek puan alan bir kullanıcı tarafından silinen bir önceki cevaba cevap verdiğim (bu durumda maalesef, yanlış olan) bu yüzden noktadan noktaya çürütücü. Yazarı tarafından yapılmayan sonraki silinmesi, benimki biraz tuhaf görünmekle birlikte, şu ana kadar durmasına izin vermeyi seçtim. Eğer başkaları yorumunuzu destekleyerek bakış açınızı destekliyorsa, cevabımı değiştireceğim. - MadHatter
Bu aynı sorudan şaşırdım ve bu cevabı konuyla ilgili sınırlı anlayışım için yararlı olmadı (yazılan yoldan dolayı), ama neyse ki cevabımı security.stackexchange.com/a/77082/67048 - zagrimsan