Berbeda dengan kunci simetris, kunci asimetris digunakan untuk memverifikasi tanda tangan digital atau mengenkripsi informasi sensitif antara sistem dengan tingkat kepercayaan yang berbeda.
Sepasang kunci asimetris terdiri dari kunci publik dan kunci privat yang secara kriptografis saling terkait. Kunci publik dapat digunakan oleh semua orang, sedangkan kunci privat harus disimpan dengan aman dan hanya digunakan oleh pengguna tepercaya. Alibaba Cloud mendukung algoritma kunci asimetris populer serta menyediakan kekuatan keamanan yang cukup untuk memastikan keamanan data terenkripsi dan tanda tangan digital.
Key Management Service (KMS) menghasilkan file permintaan penandatanganan sertifikat (CSR) untuk kunci master pelanggan asimetris (CMK). Pemohon sertifikat mengirimkan file CSR ke otoritas sertifikat (CA), yang kemudian mengembalikan sertifikat digital yang ditandatangani menggunakan kunci privat CA. Sertifikat digital ini dapat digunakan untuk memastikan keamanan email, terminal, penandatanganan kode, layanan situs web tepercaya, dan sistem manajemen otorisasi identitas.
Jenis-jenis kunci asimetris
| Algoritma | Jenis kunci | Deskripsi | Tujuan |
| RSA |
| Sistem kriptografi asimetris RSA |
|
| ECC |
| Kriptografi kurva eliptik (ECC) | Menghasilkan tanda tangan digital. |
| SM2 | EC_SM2 | ECC yang didefinisikan oleh GB/T 32918 |
|
Enkripsi data
- Penerima informasi mendistribusikan kunci publik kepada pemancar.
- Pemancar menggunakan kunci publik untuk mengenkripsi informasi sensitif.
- Pemancar mengirimkan ciphertext hasil enkripsi informasi sensitif kepada penerima informasi.
- Penerima informasi menggunakan kunci privat untuk mendekripsi ciphertext.
Kunci privat hanya dapat digunakan oleh penerima informasi, sehingga memastikan bahwa plaintext dari informasi sensitif tidak dapat dicegat dan didekripsi oleh pihak yang tidak berwenang selama transmisi. Metode enkripsi ini banyak digunakan dalam pertukaran kunci, seperti pertukaran kunci sesi dalam jabat tangan Transport Layer Security (TLS) dan ekspor/impor kunci enkripsi antara modul keamanan perangkat keras (HSM).
Untuk informasi lebih lanjut, lihat Enkripsi dan Dekripsi Data Menggunakan CMK Asimetris.
Tanda tangan digital
- Memverifikasi integritas data. Jika data tidak sesuai dengan tanda tangannya, data mungkin telah dirusak.
- Memverifikasi keaslian pesan. Jika pesan tidak sesuai dengan tanda tangannya, pengirim pesan tidak memiliki kunci privat.
- Memberikan non-repudiasi untuk tanda tangan. Jika data sesuai dengan tanda tangannya, penandatangan tidak dapat menyangkal tanda tangan tersebut.
- Penandatangan mengirimkan kunci publik kepada penerima.
- Penandatangan menggunakan kunci privat yang sesuai dengan kunci publik untuk menandatangani data.
- Penandatangan mengirimkan data dan tanda tangan kepada penerima pesan.
- Setelah data dan tanda tangan diterima, penerima menggunakan kunci publik untuk memverifikasi tanda tangan.
Tanda tangan digital banyak digunakan untuk melawan pemalsuan data dan mengotentikasi identitas.
- Kasus 1: Anda dapat menggunakan tanda tangan digital untuk melindungi integritas kode biner Anda dan memverifikasi bahwa kode tersebut tidak dimanipulasi, membantu menyediakan lingkungan eksekusi tepercaya.
- Kasus 2: Tanda tangan digital juga dapat digunakan dalam sistem sertifikat digital. Dalam sistem seperti itu, CA memberikan tanda tangan untuk sertifikat digital untuk mensertifikasi informasi entitas, informasi kunci publik dan privat, tujuan kunci, tanggal kedaluwarsa, dan penerbit. Pemegang kunci privat sertifikat menggunakan kunci privat untuk menandatangani pesan. Penerima pesan menggunakan kunci publik yang terkandung dalam sertifikat untuk memverifikasi tanda tangan pesan dan menggunakan kunci publik penerbit sertifikat untuk memverifikasi sertifikat.
Untuk informasi lebih lanjut, lihat Menghasilkan dan Memverifikasi Tanda Tangan Digital Menggunakan CMK Asimetris.
Versi kunci
KMS tidak mendukung rotasi otomatis CMK asimetris karena batasan kunci publik dan privat. Anda dapat memanggil operasi CreateKeyVersion untuk membuat versi kunci dalam CMK tertentu dan menghasilkan pasangan kunci publik dan privat baru. Jika Anda menggunakan versi kunci baru untuk menghasilkan tanda tangan digital atau mengenkripsi data, Anda juga harus mendistribusikan versi baru kunci publik.
Selain itu, tidak seperti CMK simetris, CMK asimetris tidak memiliki versi kunci utama. Oleh karena itu, Anda harus menentukan ID CMK atau alias CMK yang sesuai dan versi kunci jika Anda perlu memanggil operasi terkait CMK asimetris di KMS.
Operasi kunci publik
Dalam kebanyakan kasus, Anda dapat memanggil operasi GetPublicKey untuk mendapatkan kunci publik dan mendistribusikannya kepada pengguna untuk enkripsi atau verifikasi. Kemudian, pengguna dapat menggunakan pustaka kriptografi seperti OpenSSL dan Java Cryptography Extension (JCE) untuk melakukan perhitungan dalam sistem bisnis mereka.
Anda juga dapat memanggil operasi AsymmetricEncrypt atau AsymmetricVerify untuk melakukan operasi kunci publik. KMS mencatat log panggilan dan memungkinkan Anda menggunakan Resource Access Management (RAM) untuk membatasi penggunaan kunci publik. Dibandingkan dengan perhitungan dalam sistem bisnis, KMS menawarkan fitur fleksibel yang lebih sesuai dengan kebutuhan Anda.
Operasi kunci privat
Anda hanya dapat memanggil operasi AsymmetricDecrypt atau AsymmetricSign untuk menggunakan kunci privat mendekripsi data atau menghasilkan tanda tangan digital.