Keychain mengekspos satu antarmuka SolanaSigner di setiap backend, sehingga
pilihannya bersifat operasional, bukan arsitektural — Anda bisa menggantinya
nanti melalui konfigurasi. Karena itu, mulailah dari kebutuhan Anda, bukan
dari suatu produk. Dua pertanyaan menentukan sebagian besar hal ini: di mana
kunci privat berada, dan siapa yang diizinkan untuk mengotorisasi tanda tangan
dengannya?
Tidak ada backend terbaik yang tunggal. Masing-masing lebih cocok untuk sekumpulan batasan tertentu — cloud yang sudah Anda gunakan, apakah Anda ingin mengoperasikan infrastruktur kunci, dan kontrol custody serta persetujuan apa yang Anda butuhkan. Alur di bawah ini memetakan batasan tersebut ke suatu backend.
Panduan ini mencakup penandatanganan sisi server (backend). Saat pengguna akhir Anda menandatangani transaksi mereka sendiri di browser, gunakan dompet melalui Wallet Standard sebagai gantinya — lihat Penandatanganan dalam Produksi.
Alur keputusan
Pengembangan lokal dan pengujian tidak memerlukan semua ini — gunakan backend Memory untuk prototipe, lalu beralih ke salah satu backend produksi di atas melalui konfigurasi.
Telusuri pertanyaan-pertanyaan
Apakah Anda menandatangani untuk aplikasi Anda sendiri, atau untuk pengguna akhir Anda?
Jika Anda menyediakan dompet yang dimiliki dan dioperasikan oleh pengguna akhir (aplikasi konsumen, alur orientasi), gunakan backend dompet tertanam / terkelola — Privy, Turnkey, CDP, Crossmint, atau Openfort. Layanan ini mengelola dompet per pengguna dan autentikasi atas nama Anda.
Jika Anda menandatangani sebagai aplikasi Anda sendiri — pembayar biaya, treasury, otomatisasi backend — lanjutkan di bawah ini.
Apakah Anda memerlukan persetujuan multi-pihak, kustodi institusional, atau kontrol regulasi?
Jika tanda tangan harus melewati kebijakan persetujuan, batas pengeluaran, atau alur kerja kepatuhan sebelum dihasilkan — atau Anda memerlukan kustodian teregulasi yang menyimpan kunci — gunakan backend MPC / kustodi institusional: Fireblocks, Dfns, Para, atau Utila. Layanan ini memisahkan atau mengkustodikan kunci dan menandatangani bersama sesuai kebijakan Anda.
Jika Anda hanya memerlukan kunci yang menandatangani sesuai permintaan, lanjutkan di bawah ini.
Apakah Anda ingin menyimpan kunci sendiri, atau membiarkan penyedia menyimpannya?
Jika penyedia cloud harus menyimpan kunci dalam infrastruktur berbasis perangkat keras dan kebijakan IAM Anda mengontrol siapa yang dapat menandatangani, gunakan KMS dari cloud tersebut:
- Berjalan di AWS → AWS KMS
- Berjalan di GCP → GCP KMS
Jika Anda ingin mengoperasikan infrastruktur kunci sendiri — atau Anda menggunakan multi-cloud atau on-prem — gunakan HashiCorp Vault. Anda menjalankan dan mengauditnya; kunci tetap berada di dalam mesin Transit dan menandatangani sesuai permintaan.
Model kustodi
Backend dikelompokkan ke dalam lima model kustodi. Alur di atas akan membawa Anda ke salah satunya.
- Kustodi mandiri (dalam proses) — aplikasi Anda menyimpan kunci privat mentah. Praktis untuk pengembangan, tetapi tidak cocok untuk produksi. Backend: Memory.
- Manajemen kunci yang dihosting sendiri — Anda mengoperasikan infrastruktur kunci; kunci tetap berada di dalamnya dan menandatangani sesuai permintaan. Backend: HashiCorp Vault.
- Cloud KMS / HSM — penyedia cloud menyimpan kunci dalam infrastruktur berbasis perangkat keras; kunci tidak pernah meninggalkan layanan dan kebijakan IAM Anda mengontrol siapa yang dapat menandatangani. Backend: AWS KMS, GCP KMS.
- MPC & kustodi institusional — kunci dipisah atau dikustodikan melalui penyedia, yang menandatangani bersama sesuai kebijakan Anda (persetujuan, batas). Backend: Fireblocks, Dfns, Para, Utila.
- Dompet tertanam & terkelola — penyedia mengelola dompet atas nama Anda, sering kali untuk orientasi pengguna akhir. Backend: Privy, Turnkey, CDP, Crossmint, Openfort.
Perbandingan Backend
| Backend | Model kustodi | Terbaik untuk | Catatan |
|---|---|---|---|
| Memory | Kustodi mandiri (in-process) | Pengembangan lokal, pengujian, CI | Kunci mentah dalam proses — jangan gunakan di produksi |
| HashiCorp Vault | Manajemen kunci self-hosted | Tim yang menjalankan infrastruktur kunci sendiri | Mesin Transit; Anda mengoperasikan dan mengauditnya |
| AWS KMS | Cloud KMS / HSM | Backend yang berjalan di AWS | Kunci tidak pernah meninggalkan KMS; IAM mengontrol penandatanganan |
| GCP KMS | Cloud KMS / HSM | Backend yang berjalan di GCP | Kunci tidak pernah meninggalkan KMS; IAM mengontrol penandatanganan |
| Fireblocks | Kustodi MPC / institusional | Treasury, bursa, kustodi teregulasi | Mesin kebijakan dan alur kerja persetujuan |
| Dfns | Infrastruktur wallet MPC | Wallet terprogram dengan kontrol kebijakan | Penandatanganan Ed25519 |
| Para | Wallet MPC | Aplikasi yang menginginkan wallet berbasis MPC | Kunci API + ID wallet |
| Utila | Kustodi MPC + co-signer | Wallet Solana yang dikelola Utila | signMessage tidak didukung; Anda menyiarkan tx |
| Privy | Wallet tertanam | Aplikasi konsumen yang onboarding pengguna ke wallet | Wallet tertanam yang dikelola aplikasi |
| Turnkey | Manajemen kunci non-kustodial | Penandatanganan terprogram dengan gerbang kebijakan | Manajemen kunci non-kustodial |
| CDP | Wallet terkelola (Coinbase) | Aplikasi di Coinbase Developer Platform | signMessage hanya menerima payload UTF-8 |
| Crossmint | Wallet terkelola | Marketplace dan aplikasi wallet terkelola | Wallet smart dan mpc; signMessage tidak didukung |
| Openfort | Wallet backend tertanam | Wallet sisi server | Kunci tersimpan di TEE |
Skenario enterprise
Satu aplikasi sering kali membutuhkan lebih dari satu hal ini sekaligus. Karena antarmukanya identik, Anda dapat menjalankan backend yang berbeda per peran tanpa mengubah call site.
- Operasi treasury — pisahkan penanda tangan "hot" operasional dari penanda tangan treasury "cold". Dukung treasury dengan MPC custody atau cloud HSM dan wajibkan kebijakan persetujuan sebelum tanda tangan bernilai tinggi.
- Alur kerja persetujuan — backend MPC dan custody (mis. Fireblocks) menerapkan persetujuan multi-pihak sebelum tanda tangan dihasilkan.
- Kepatuhan dan audit — cloud KMS (AWS/GCP) dan Vault menghasilkan log audit penandatanganan; kustodian institusional menambahkan penegakan kebijakan dan pelaporan.
- Lingkungan yang diatur — simpan materi kunci dalam HSM, KMS, atau kustodian institusional agar kunci mentah tidak pernah menyentuh aplikasi Anda.
Lihat Praktik terbaik produksi untuk mengoperasikan backend ini dengan aman.
Is this page helpful?