Dekoder CSR
Sebelum sebuah Otoritas Sertifikat menandatangani sertifikat TLS, Anda menyerahkan Certificate Signing Request (CSR), yaitu blok base64 yang berisi subjek yang Anda inginkan pada sertifikat dan kunci publik Anda, ditambah tanda tangan yang membuktikan bahwa Anda memegang kunci pribadi yang cocok. Dekoder ini menerima CSR berenkode PEM dan menampilkan kolom subjek serta parameter kunci publiknya, sehingga Anda dapat memeriksa nama umum, organisasi, dan ukuran kunci sebelum menyerahkannya ke CA.
Cara mendekode CSR
-
1
Tempel CSR
Sertakan penanda `-----BEGIN CERTIFICATE REQUEST-----` dan `-----END CERTIFICATE REQUEST-----`. Spasi kosong dimaklumi.
-
2
Jalankan dekoder
Permintaan diurai dan kolom subjek serta kunci publiknya dibaca.
-
3
Periksa keluarannya
Periksa kolom subjek seperti nama umum dan organisasi, serta algoritma dan ukuran kunci.
-
4
Tindak lanjuti hasilnya
Jika subjek atau kuncinya tampak salah, buat ulang CSR sebelum menyerahkannya ke CA.
Apa yang ditampilkan dekoder
CSR adalah struktur ASN.1 (PKCS #10). Dekoder membaca dua hal darinya:
- Subjek: kolom Nama Terhormat (Distinguished Name) yang diminta, biasanya negara (C), organisasi (O), unit organisasi (OU), lokalitas (L), provinsi (ST), dan nama umum (CN).
- Kunci publik: algoritma (RSA, EC, DSA) dan ukuran kunci dalam bit.
Tanda tangan di dalam CSR adalah yang membuktikan kepada CA bahwa pengirim memegang kunci pribadi yang cocok. Dekoder ini tidak menampilkannya; CA yang memverifikasinya saat memproses permintaan.
Contoh keluaran
Untuk permintaan sertifikat domain yang umum, keluarannya terlihat seperti ini:
Subject: commonName=www.example.com, organizationName=Example Inc., countryName=US
Key bits: 2048
Key type: RSA
Nama atribut yang tepat pada subjek bergantung pada cara permintaan dibuat.
Bidang untuk pemeriksaan ulang
- Nama Umum (CN): harus merupakan nama host utama. Browser modern mengabaikan nilai CN dan hanya memeriksa informasi SAN, namun banyak CA masih menuntut adanya nilai CN yang valid.
- Nama Alternatif Subjek (SANs): daftarkan semua nama host dan simbol wildcard yang akan dilindungi oleh sertifikat tersebut. Peramban membandingkan data berdasarkan SANs, bukan berdasarkan CN.
- Negara (C): Kode ISO berupa dua huruf (US, GB, DE), bukan nama lengkap. CA menolak kode yang salah.
- Ukuran kunci: RSA 2048 merupakan ukuran minimum yang dianjurkan; untuk keamanan lebih tinggi, gunakan 3072 atau 4096 bit. ECDSA P-256 merupakan alternatif modern yang baik dan menghasilkan sertifikat dengan ukuran yang lebih kecil.
- Algoritma penandatanganan: SHA-256 atau yang lebih baik. SHA-1 telah lama tidak digunakan lagi dan akan ditolak.
Tentang Nama Alternatif Subjek (SAN)
Dekoder menampilkan subjek permintaan, tetapi bukan ekstensi SAN. Browser mencocokkan sertifikat berdasarkan SAN, bukan berdasarkan CN; jika sertifikat perlu mencakup nama host tambahan, sertakan saat membuat permintaan, misalnya:
openssl req -new -newkey rsa:2048 -nodes -keyout example.key -out example.csr -addext "subjectAltName=DNS:example.com,DNS:www.example.com"
Saat dekoder tidak dapat mengurai CSR
Penyebab paling umum adalah blok PEM yang terpotong atau rusak:
- Teks terpotong: tempel kembali blok lengkap beserta kedua penandanya.
- Ada pemisah baris tambahan: tempel blok persis seperti saat dibuat.
- Isi yang salah: kunci publik, sertifikat, atau kunci pribadi yang tertempel karena keliru tidak akan diurai sebagai CSR.
Membuat kunci yang sesuai
CSR selalu dihasilkan bersamaan dengan kunci pribadi. Perintah umumnya adalah:
openssl req -new -newkey rsa:2048 -nodes -keyout example.key -out example.csr
Atau untuk ECDSA:
openssl req -new -newkey ec:<(openssl ecparam -name prime256v1) -nodes -keyout example.key -out example.csr
Lindungi kunci privat; jika kunci tersebut bocor, sertifikat harus dicabut.
Pertanyaan yang Sering Diajukan
CSR hanya berisi informasi publik (kunci publik, subjek, dan SAN), ditambah dengan tanda tangan; oleh karena itu dapat dibagikan secara aman kepada CA atau dilekatkan ke dalam decoder. Yang harus tetap dirahasiakan adalah kunci pribadi yang sesuai.
Tidak. Dekoder ini mengharapkan bentuk teks PEM dengan penanda BEGIN/END CERTIFICATE REQUEST. Untuk permintaan DER biner, ubah dulu ke PEM, misalnya dengan openssl req -in request.der -inform DER -out request.pem.
Tidak. Sebagian besar CA publik (seperti Let’s Encrypt, DigiCert, dan Sectigo) hanya memerlukan informasi CN dan SAN; mereka mengabaikan elemen O, OU, L, ST, dan C pada sertifikat yang telah divalidasi berdasarkan domain. Sementara itu, sertifikat yang divalidasi berdasarkan organisasi maupun sertifikat dengan validasi tambahan akan memverifikasi elemen-elemen tersebut secara terpisah.
Paling sering karena teks yang ditempel terpotong atau diberi pemisah baris, atau karena kunci atau sertifikat tertempel sebagai pengganti CSR. Tempel kembali blok lengkap di antara kedua penanda.
Alat Terkait
Referensi Tabel ASCII
Tabel ASCII lengkap dari 0 sampai 127 dengan desimal, heksadesimal, oktal, biner, dan referensi karakter numerik HTML untuk setiap karakter, termasuk kode kontrol seperti NUL, LF, dan DEL.
Referensi Karakter HTML
Daftar entitas HTML yang dapat dicari, beserta kode bernama dan kode numeriknya, serta fitur salin dengan satu klik untuk karakter khusus dan simbol.
Referensi pintasan papan ketik
Cari pintasan bawaan terdokumentasi untuk VS Code, Chrome, dan Bash dengan GNU Readline di macOS, Windows, dan Linux.
Penghitung FPS
Ukur FPS browser dengan requestAnimationFrame: penghalusan, frame rate minimum dan maksimum, ambang peringatan, dan grafik opsional. Berjalan lokal, tanpa unggahan dan tanpa API.
Generator Warna Acak
Buat 1 hingga 50 warna HEX acak dengan contoh warna yang bisa dipratinjau, disalin, dan dipakai di CSS, pengujian, atau eksplorasi palet.
Pemilih Warna HEX
Pilih atau masukkan warna HEX untuk mendapatkan RGB, HSL, perkiraan CMYK, luminans relatif, serta kontras terhadap putih dan hitam.