Generasi Kunci RSA
Panduan Generasi Kunci RSA
Pasangan kunci RSA (Rivest-Shamir-Adleman) sangat penting untuk komunikasi API yang aman dengan SmilePayz. Panduan ini menjelaskan cara generate dan mengelola kunci RSA Anda untuk lingkungan sandbox dan produksi.
🔐 Tipe Kunci
Private Key
- Penggunaan: Digunakan untuk menandatangani request API
- Penyimpanan: Harus disimpan dengan aman oleh merchant
- Keamanan: Jangan pernah bagikan atau ekspos private key Anda
- Format: Format PEM (Base64 encoded)
Public Key
- Penggunaan: Diupload ke SmilePayz untuk verifikasi request
- Format: Harus tanpa prefix dan suffix
- Penyimpanan: Disimpan dengan aman di server SmilePayz
Praktik Terbaik Keamanan
Untuk keamanan yang ditingkatkan, gunakan pasangan kunci yang berbeda untuk lingkungan sandbox dan produksi untuk mencegah akses cross-environment.
🚀 Proses Generasi
Langkah 1: Akses Backend Merchant
- Navigasi ke Backend Merchant
- Login dengan kredensial merchant Anda
- Temukan bagian Configuration
Langkah 2: Generate Kunci RSA
- Temukan tombol "Generate RSA Keys"
- Klik tombol untuk memulai generasi kunci
- Browser akan otomatis mengunduh file pasangan kunci
- Public key akan otomatis diisi di field input
Langkah 3: Simpan Konfigurasi
- Review public key yang dihasilkan
- Klik "Save" untuk menyimpan public key di server SmilePayz
- Simpan file yang diunduh yang berisi private key Anda dengan aman
📁 Struktur File Kunci
File yang diunduh berisi:
-----BEGIN PRIVATE KEY-----
[Konten Private Key Anda]
-----END PRIVATE KEY-----
-----BEGIN PUBLIC KEY-----
[Konten Public Key Anda]
-----END PUBLIC KEY-----
🔧 Contoh Implementasi
Lingkungan Sandbox
Lingkungan Produksi
📹 Tutorial Video
Untuk panduan visual, lihat Tutorial Video Pengaturan.
⚠️ Persyaratan Keamanan
Peringatan Keamanan Kritis
Kunci RSA dengan kurang dari 2048 bit tidak lagi dianggap aman untuk enkripsi atau tanda tangan digital. Selalu gunakan kunci RSA 2048-bit atau lebih tinggi.
Checklist Keamanan
- ✅ Gunakan kunci RSA 2048-bit atau lebih tinggi
- ✅ Simpan private key dengan aman (terenkripsi saat istirahat)
- ✅ Gunakan kunci berbeda untuk sandbox dan produksi
- ✅ Jangan pernah bagikan private key
- ✅ Rotasi kunci secara berkala (direkomendasikan: tahunan)
- ✅ Pantau penggunaan kunci dan log akses
🔍 Validasi Kunci
Persyaratan Private Key
- Algoritma: RSA
- Ukuran Kunci: Minimum 2048 bit
- Format: PEM (Privacy Enhanced Mail)
- Encoding: Base64
Persyaratan Public Key
- Algoritma: RSA
- Ukuran Kunci: Minimum 2048 bit
- Format: PEM tanpa header/footer
- Konten: Hanya konten kunci, tanpa karakter tambahan
🛠️ Troubleshooting
Masalah Umum
Masalah | Solusi |
---|---|
Ukuran kunci terlalu kecil | Generate kunci baru 2048-bit atau lebih tinggi |
Format tidak valid | Pastikan format PEM tanpa karakter tambahan |
Upload gagal | Periksa format public key dan hapus prefix |
Error tanda tangan API | Verifikasi private key disimpan dengan benar |
Pesan Error
{
"code": "INVALID_RSA_KEY",
"message": "Format kunci RSA tidak valid atau ukuran kunci tidak cukup",
"data": null
}
📋 Praktik Terbaik
Manajemen Kunci
- Backup: Simpan backup aman dari private key Anda
- Rotasi: Rencanakan rotasi kunci berkala
- Kontrol Akses: Batasi akses ke private key
- Pemantauan: Pantau penggunaan kunci yang tidak sah
Workflow Pengembangan
- Generate kunci sandbox untuk pengujian
- Uji secara menyeluruh dengan kunci sandbox
- Generate kunci produksi untuk deployment langsung
- Jangan pernah gunakan kunci sandbox di produksi
Catatan: Generasi kunci RSA adalah proses setup satu kali. Setelah dikonfigurasi dengan benar, kunci Anda akan digunakan untuk semua komunikasi API dengan SmilePayz.