Memilih backend

Keychain menyediakan satu antarmuka dasar SolanaSigner di setiap backend, sehingga untuk sebagian besar backend, pilihan ini bersifat operasional, bukan arsitektural: Anda dapat mengubahnya nanti melalui konfigurasi. Pengecualiannya adalah bentuk transaksi. Crossmint dan mode auto native Fordefi menandatangani dan menyiarkan (broadcast) di sisi server, dan mode manual native Fordefi menulis ulang transaksi sebelum menandatanganinya, sehingga berpindah ke atau dari salah satu dari keduanya mengubah cara Anda memanggil signer. Karena itu, mulailah dari kebutuhan Anda, bukan dari produk. Dua pertanyaan menentukan sebagian besar keputusan ini: di mana kunci privat disimpan, dan siapa yang berhak mengotorisasi tanda tangan dengannya?

Setiap backend kecuali Ledger tersedia dalam keempat bahasa (Rust, TypeScript, Python, dan Go). Ledger hanya tersedia untuk Rust, di balik fitur opt-in ledger.

Tidak ada satu backend yang terbaik. Masing-masing lebih cocok untuk serangkaian kendala tertentu: cloud yang sudah Anda gunakan, apakah Anda ingin mengoperasikan infrastruktur kunci sendiri, dan kontrol kustodi serta persetujuan apa yang wajib Anda miliki. Alur di bawah ini memetakan kendala-kendala tersebut ke sebuah backend.

Panduan ini membahas penandatanganan backend (sisi server). Jika pengguna akhir Anda menandatangani transaksi mereka sendiri di browser, gunakan wallet melalui Wallet Standard sebagai gantinya. Lihat Signing in Production.

Alur keputusan

Choosing a Keychain backend

Pengembangan lokal dan pengujian tidak memerlukan semua ini: gunakan backend Memory untuk prototipe, lalu beralihlah ke salah satu backend produksi di atas melalui konfigurasi.

Telusuri pertanyaan-pertanyaan

Apakah Anda menandatangani untuk aplikasi Anda sendiri, atau untuk pengguna akhir?

Jika Anda menyediakan wallet yang dimiliki dan dioperasikan oleh pengguna akhir (aplikasi konsumen, alur onboarding), gunakan backend wallet embedded / terkelola: Privy, Turnkey, CDP, Crossmint, atau Openfort. Backend ini mengelola wallet per pengguna beserta autentikasinya untuk Anda.

Jika Anda menandatangani sebagai aplikasi Anda sendiri (fee payer, treasury, otomatisasi backend), lanjutkan ke bawah.

Apakah Anda memerlukan persetujuan multipihak, kustodi institusional, atau kontrol regulasi?

Jika tanda tangan harus melewati kebijakan persetujuan, batas pengeluaran, atau alur kerja kepatuhan sebelum dibuat, atau Anda memerlukan kustodian teregulasi yang memegang kunci, gunakan backend MPC / kustodi institusional: Fireblocks, Dfns, Para, Utila, atau Fordefi. Backend ini membagi atau menyimpan kunci dalam kustodi dan menandatangani bersama sesuai kebijakan Anda.

Jika Anda hanya memerlukan kunci yang menandatangani sesuai permintaan, lanjutkan ke bawah.

Apakah Anda ingin memegang kunci sendiri, atau menyerahkannya kepada penyedia?

Jika penyedia cloud sebaiknya memegang kunci di 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 yang menjalankan dan mengauditnya; kunci tetap berada di dalam Transit engine dan menandatangani sesuai permintaan.

Model kustodi

Backend dikelompokkan ke dalam enam model kustodi. Alur di atas akan mengarahkan Anda ke salah satunya.

  • Self-custody (in-process): aplikasi Anda memegang kunci privat mentah. Praktis untuk pengembangan, tetapi tidak cocok untuk produksi. Backend: Memory.
  • Self-custody (hardware wallet): kunci tidak pernah meninggalkan perangkat Ledger, dan seseorang mengonfirmasi setiap tanda tangan pada layarnya. Cocok untuk penandatanganan operator interaktif, bukan layanan tanpa pengawasan. Hanya Rust, opt-in, dan tidak tercakup dalam audit. Backend: Ledger.
  • Manajemen kunci self-hosted: Anda mengoperasikan infrastruktur kunci; kunci tetap berada di dalamnya dan menandatangani sesuai permintaan. Backend: HashiCorp Vault.
  • Cloud KMS / HSM: penyedia cloud menyimpan kunci di 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 dibagi atau disimpan dalam kustodi oleh penyedia, yang menandatangani bersama sesuai kebijakan Anda (persetujuan, batas). Backend: Fireblocks, Dfns, Para, Utila, Fordefi.
  • Wallet embedded & terkelola: penyedia mengelola wallet untuk Anda, sering kali untuk onboarding pengguna akhir. Backend: Privy, Turnkey, CDP, Crossmint, Openfort.

Perbandingan Backend

BackendModel kustodiTerbaik untukCatatan
MemoryKustodi mandiri (in-process)Pengembangan lokal, pengujian, CIKunci mentah di dalam proses; jangan gunakan di produksi
LedgerSelf-custody (hardware wallet)Penandatanganan operator interaktif dari tool RustHanya Rust, fitur opt-in ledger, belum diaudit; setiap tanda tangan dikonfirmasi di perangkat
HashiCorp VaultManajemen kunci self-hostedTim yang menjalankan infrastruktur kunci sendiriMesin Transit; Anda mengoperasikan dan mengauditnya
AWS KMSCloud KMS / HSMBackend yang berjalan di AWSKunci tidak pernah meninggalkan KMS; IAM mengontrol penandatanganan
GCP KMSCloud KMS / HSMBackend yang berjalan di GCPKunci tidak pernah meninggalkan KMS; IAM mengontrol penandatanganan
FireblocksKustodi MPC / institusionalTreasury, bursa, kustodi teregulasiMesin kebijakan dan alur kerja persetujuan
DfnsInfrastruktur wallet MPCWallet terprogram dengan kontrol kebijakanPenandatanganan Ed25519
ParaWallet MPCAplikasi yang menginginkan wallet berbasis MPCKunci API + ID wallet
UtilaKustodi MPC + co-signerWallet Solana yang dikelola UtilasignMessage tidak didukung; Anda menyiarkan tx
FordefiKustodi MPC / institusionalPenyimpanan institusional dengan kontrol kebijakanBlack box: Anda yang mengirim. Native auto: Fordefi menulis ulang dan mengirim. Native manual: Fordefi menulis ulang, Anda mengirim hasilnya
PrivyWallet tertanamAplikasi konsumen yang onboarding pengguna ke walletWallet tertanam yang dikelola aplikasi
TurnkeyManajemen kunci non-kustodialPenandatanganan terprogram dengan gerbang kebijakanManajemen kunci non-kustodial
CDPWallet terkelola (Coinbase)Aplikasi di Coinbase Developer PlatformsignMessage hanya menerima payload UTF-8
CrossmintWallet terkelolaMarketplace dan aplikasi wallet terkelolaHanya pengiriman: menyiarkan di sisi server, dapat menulis ulang untuk sponsor gas; signMessage tidak didukung
OpenfortWallet backend tertanamWallet sisi serverKunci tersimpan di TEE

Bentuk kapabilitas

Selain kustodi, setiap backend memiliki satu bentuk transaksi, dan bentuk itulah yang menentukan cara Anda memanggil signer:

  • Sign: penyedia menandatangani byte yang Anda susun dan Anda yang menyiarkannya. Sebagian besar backend, termasuk Ledger dan mode black box Fordefi.
  • Rewrite and sign: penyedia menulis ulang transaksi, lalu menandatanganinya tanpa menyiarkan. Lanjutkan dari transaksi yang dikembalikan. Mode native manual Fordefi.
  • Sign and broadcast: penyedia menandatangani dan menyiarkan di sisi server, sehingga kegagalan tidak berarti tidak ada yang masuk. Crossmint dan mode native auto Fordefi.

Tabel kapabilitas signer di README setiap bahasa mencantumkan bentuk dari setiap backend; model keamanan menjelaskan apa yang dijamin oleh setiap bentuk.

Skenario enterprise

Satu aplikasi sering kali membutuhkan lebih dari satu backend sekaligus. Karena antarmukanya sama, Anda dapat menjalankan backend yang berbeda untuk setiap peran tanpa mengubah titik pemanggilan, selama backend tersebut memiliki bentuk kapabilitas yang sama.

  • 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?

© 2026 Yayasan Solana. Semua hak dilindungi.