Dalam RSA kunci publik kriptografi, kunci privat dan publik dalam suatu pasangan secara matematis terkait dalam hal mereka berbagi modulus yang sama. Panjang modulus, dinyatakan dalam bit, adalah panjang kunci.
Untuk mengonfirmasi bahwa kunci pribadi tertentu cocok dengan kunci publik yang terkandung dalam permintaan penandatanganan sertifikat (CSR) dan sertifikat, seseorang harus mengonfirmasi bahwa moduli dari kedua tombol identik. Ini bisa dilakukan dengan mudah OpenSSL di Linux / Unix, macOS, atau Windows (dengan Subsistem Linux Windows 10 or Cygwin), sebagai berikut:
Untuk melihat hash md5 dari modulus kunci privat:
$ openssl rsa -tidak ada -modulus -in mykey.key | openssl md5
Untuk melihat hash md5 dari modulus of CSR:
$ openssl req -noout -modulus -di sayacsr.csr | opensl md5
Untuk melihat hash md5 dari modulus sertifikat:
$ openssl x509 -tidak ada -modulus -dalam mycert.crt | openssl md5
Jika ketiga hash cocok, maka CSR, sertifikat, dan kunci pribadi kompatibel. Anda dapat menggunakan diff3
untuk membandingkan moduli dari ketiga file sekaligus:
$ openssl req -noout -modulus -di sayacsr.csr > csr-mod.txt $ openssl x509 -noout -modulus -in mycert.crt> cert-mod.txt $ openssl rsa -noout -modulus -in mykey.key> privkey-mod.txt $ diff3 csr-mod.txt sertifikat-mod.txt privkey-mod.txt
Jika ketiga file itu identik, diff3
tidak akan menghasilkan output. Jika Anda hanya ingin membandingkan dua file (mis. Sertifikat dan kunci pribadi), Anda bisa menggunakannya diff
:
$ diff cert-mod.txt privkey-mod.txt
Lagi, diff
tidak akan menghasilkan output jika file identik.