Terminologi Keamanan yang Penting

Dua rintangan yang dihadapi developer saat bermigrasi ke HTTPS adalah konsep dan terminologi. Panduan ini memberikan ringkasan singkat mengenai keduanya.

Chris Palmer
Chris Palmer

Ringkasan

  • Menggunakan kunci publik/pribadi untuk menandatangani dan mendekripsi pesan antara browser dan server.
  • Otoritas sertifikat (CA) adalah organisasi yang menjamin pemetaan antara kunci publik dan nama DNS publik (seperti "www.foobar.com").
  • Permintaan penandatanganan sertifikat (CSR) adalah format data yang memaketkan kunci publik bersama beberapa metadata tentang entitas yang memiliki kunci

Apa yang dimaksud dengan pasangan kunci publik dan pribadi?

Pasangan kunci publik/pribadi adalah sepasang angka yang sangat besar yang digunakan sebagai kunci enkripsi dan dekripsi, serta memiliki hubungan matematis khusus. Sistem umum untuk pasangan kunci adalah sistem kripto RSA. Kunci publik digunakan untuk mengenkripsi pesan, dan pesan hanya dapat didekripsi dengan mudah menggunakan kunci pribadi yang terkait. Server web Anda mengiklankan kunci publiknya ke seluruh dunia, dan klien (seperti browser web) menggunakannya untuk mem-bootstrap saluran yang aman ke server Anda.

Apa yang dimaksud dengan otoritas sertifikat?

Otoritas sertifikasi (CA) adalah organisasi yang menjamin pemetaan antara kunci publik dan nama DNS publik (seperti "www.foobar.com"). Misalnya, bagaimana cara klien mengetahui bahwa kunci publik tertentu adalah kunci publik true untuk www.foobar.com? Sebelum itu, tidak ada cara untuk mengetahuinya. CA menjamin kunci tertentu sebagai kunci yang benar untuk situs tertentu dengan menggunakan kunci pribadinya sendiri untuk menandatangani secara kriptografi kunci publik situs tersebut. Tanda tangan ini tidak layak secara komputasi untuk dipalsukan. Browser (dan klien lainnya) mengelola penyimpanan anchor kepercayaan yang berisi kunci publik yang dimiliki oleh CA terkenal, dan menggunakan kunci publik tersebut untuk memverifikasi secara kriptografi tanda tangan CA.

Sertifikat X.509 adalah format data yang memaketkan kunci publik dengan beberapa metadata tentang entity yang memiliki kunci tersebut. Pada kasus web, pemilik kunci adalah operator situs, dan metadata penting adalah nama DNS server web. Saat klien terhubung ke server web HTTPS, server web akan menyajikan sertifikatnya untuk diverifikasi oleh klien. Klien akan memverifikasi bahwa masa berlaku sertifikat belum berakhir, nama DNS cocok dengan nama server yang ingin dihubungkan dengan klien, dan bahwa CA trust anchor yang dikenal telah menandatangani sertifikat. Pada umumnya, CA tidak langsung menandatangani sertifikat server web; biasanya, ada rantai sertifikat yang menautkan trust anchor ke penanda tangan perantara atau penanda tangan, dan terakhir ke sertifikat server web itu sendiri (entitas akhir).

Apa yang dimaksud dengan permintaan penandatanganan sertifikat?

Permintaan penandatanganan sertifikat (CSR) adalah format data yang, seperti sertifikat, memaketkan kunci publik dengan beberapa metadata tentang entitas yang memiliki kunci. Namun, klien tidak menafsirkan CSR; CA melakukannya. Jika Anda ingin mendapatkan jaminan CA untuk kunci publik server web, kirimkan CSR kepada CA tersebut. CA memvalidasi informasi dalam CSR dan menggunakannya untuk membuat sertifikat. CA kemudian mengirimkan sertifikat akhir, dan Anda menginstal sertifikat tersebut (atau, kemungkinan, rantai sertifikat) dan kunci pribadi Anda di server web.