DigestInfo tidak ada di CSR ketika SHA-1 yang digunakan dalam algoritma tanda tangan

PENTING: Artikel ini diterjemahkan oleh perangkat lunak penerjemahan mesin Microsoft, dan mungkin telah diedit oleh Masyarakat Microsoft melalui teknologi CTF dan bukan oleh seorang penerjemah profesional. Microsoft menawarkan baik artikel yang diterjemahkan oleh manusia maupun artikel hasil editan terjemahan oleh mesin/komunitas, sehingga Anda dapat mengakses semua artikel di Sentra Pengetahuan yang kami miliki dalam berbagai bahasa. Namun artikel hasil editan mesin atau bahkan komunitas tidak selalu sempurna. Artikel ini dapat mengandung kesalahan dalam hal kosa kata, sintaksis atau tatabahasa, sangat mirip dengan penutur asing yang membuat kekeliruan ketika berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab atas ketidakakuratan, kesalahan atau kerugian apa pun akibat dari kekeliruan dalam penerjemahan isi atau penggunaannya oleh pelanggan kami. Microsoft juga akan senantiasa memperbarui perangkat lunak penerjemahan mesin dan alat untuk menyempurnakan Editan Hasil Penerjemahan Mesin.

Klik disini untuk melihat versi Inggris dari artikel ini: 3080171
Gejala
Ketika Anda menggunakan alat certutil.exe untuk memverifikasi sertifikat penandatanganan permintaan (CSRs), certutil.exe gulung balik pesan berikut ini, meskipun CSRs berisi onlya ditandatangani nilai hash (tanpa struktur DigestInfo ASN.1):
Tanda tangan cocok dengan bukti kunci publik

Catatan
  • Certutil.exe tidak akan memvalidasi CSRs dengan hanya nilai hash ditandatangani, karena struktur DigestInfo ASN.1 diharapkan berisi lebih dari hanya hash data.
  • Alat lain, seperti openssl, tandai CSRs sebagai tidak valid.
Masalah ini terjadi ketika SHA-1 yang digunakan dalam algoritma tanda tangan, seperti "1.2.840.113549.1.1.5 sha1RSA."

Ketika CSR ditandatangani dengan menggunakan SHA-2, seperti dalam "1.2.840.113549.1.1.11 sha256RSA," certutil.exe gulung balik diharapkan galat berikut ini:

0XC000A000 (NT: 0XC000A000 STATUS_INVALID_SIGNATURE)

Catatan Masalah ini dibatasi tanda tangan yang dibuat oleh SHA-1.
Penyebab
Masalah ini terjadi karena berbagai metode yang CAPI2uses untuk berinteraksi dengan komponen dasar di tumpukan CryptoAPI. Metode meliputi berikut ini:
  • CAPI 2 menggunakan warisan kriptografi API 1 (CAPI 1) untuk SHA-1, dan CAPI 1allows DigestInfo akan hilang.
  • CAPI 2 menggunakan kriptografi API berikutnya generasi (CNG) SHA-2, dan CNG tidak mengizinkan DigestInfo akan hilang.
Catatan Meskipun artikel ini menjelaskan hanya masalah yang terjadi saat certutil.exe digunakan, aplikasi yang menggunakan CryptoAPI akan bekerja persis seperti halnya certutil.exe.
Informasi lebih lanjut

Memverifikasi CSR yang ditandai dengan "1.2.840.113549.1.1.5 sha1RSA" dan tanpa DigestInfo:

PKCS10 Certificate Request: Version: 1 Subject: CN=Test User Signature Algorithm: Algorithm ObjectId: 1.2.840.113549.1.1.5 sha1RSA Algorithm Parameters: 05 00 Signature: UnusedBits=0 0000 88 fc ea 9b cb 35 17 b8 3c 4a be e1 c9 94 23 e3 00f0 71 5c 8f 81 5f 24 bd af 4b 00 ea e2 b4 08 6f 3f Signature matches Public Key Key Id Hash(rfc-sha1): b3 1c 76 1c d9 67 d2 8d 62 15 4a 1c 47 4d dd a6 65 03 9d 5d Key Id Hash(sha1): fb b1 8f 14 39 5c fb 63 81 90 56 e8 37 e1 9b bd e2 a6 79 64 CertUtil: -dump command completed successfully. 

Memverifikasi CSR yang ditandai dengan "1.2.840.113549.1.1.11 sha256RSA" dan tanpa DigestInfo:

PKCS10 Certificate Request: Version: 1 Subject: CN=Test User Signature Algorithm: Algorithm ObjectId: 1.2.840.113549.1.1.11 sha256RSA Algorithm Parameters: 05 00 Signature: UnusedBits=0 0000 2c 23 b3 36 f4 10 10 94 99 02 95 8f 64 1d 71 0c 00f0 6c f4 13 ae 0e 6b b1 ef c4 1e 10 c0 1f 34 4d 16 Signature does not match Public key: c000a000 Cannot decode object: The cryptographic signature is invalid. 0xc000a000 (NT: 0xc000a000 STATUS_INVALID_SIGNATURE) CertUtil: -dump command FAILED: 0xc000a000 (NT: 0xc000a000 STATUS_INVALID_SIGNATURE) CertUtil: The cryptographic signature is invalid. 


Peringatan: Artikel ini telah diterjemahkan secara otomatis

Properti

ID Artikel: 3080171 - Tinjauan Terakhir: 12/03/2015 10:32:00 - Revisi: 2.0

Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Standard, Windows Server 2012 R2 Foundation, Windows Server 2012 R2 Essentials, Windows 8.1 Enterprise, Windows 8.1 Pro, Windows 8.1

  • kbsurveynew kbexpertiseadvanced kbprb kbtshoot kbmt KB3080171 KbMtid
Tanggapan