Solana Keychain, birden fazla anahtar yönetim arka ucu genelinde Solana işlemlerini imzalamak için birleşik bir arayüz sunar. Bellek içi bir anahtarla yerel ortamda geliştirin, ardından imzalama kodunuzu yeniden yazmadan üretim ortamında kurumsal anahtar yönetimine, bulut HSM'lerine veya yönetilen cüzdan hizmetlerine geçin.
Neden Keychain?
- Tek Arayüz: Tüm arka uçlarda çalışan tek bir
SolanaSignertrait - Arka Uç Değiştirme: Anahtar yönetim sağlayıcılarını kod değil, yapılandırma yoluyla değiştirin
- Sıfır Maliyetli Soyutlama: Özellik bayrakları yalnızca ihtiyaç duyduklarınızı içerir
- Denetlenmiş: Accretion tarafından güvenlik incelemesinden geçirilmiştir
Mimari
- Diller: Rust + TypeScript, tam eşlik ile
- Trait: Birleşik
SolanaSignerarayüzü - Arka Uçlar: Memory, Vault, AWS KMS, GCP KMS, Privy, Turnkey, Fireblocks, CDP, Crossmint, Dfns, Openfort, Para, Utila
- Uyumluluk:
@solana/kitve@solana/signersuyumlu (TypeScript) |solana-sdkvesolana-sdk-v3uyumlu (Rust)
Desteklenen Altyapılar
Arka uçlar yerel geliştirme, kendi kendine barındırılan ve bulut tabanlı anahtar yönetimi ile yönetilen veya MPC cüzdan hizmetlerini kapsamaktadır. Velayet modellerini karşılaştırmak ve en uygun olanı seçmek için Arka uç seçimi sayfasına bakın.
| Arka Uç | Kullanım Durumu | Rust | TypeScript |
|---|---|---|---|
| Memory | Geliştirme, test | ✓ | ✓ |
| HashiCorp Vault | Kendi barındırmalı anahtar yönetimi | ✓ | ✓ |
| AWS KMS | Bulut tabanlı (AWS) | ✓ | ✓ |
| GCP KMS | Bulut tabanlı (GCP) | ✓ | ✓ |
| Privy | Gömülü cüzdanlar | ✓ | ✓ |
| Turnkey | Vedasiz anahtar yönetimi | ✓ | ✓ |
| Fireblocks | Kurumsal saklama | ✓ | ✓ |
| CDP | Coinbase Developer Platform | ✓ | ✓ |
| Crossmint | Crossmint yönetilen cüzdanlar | ✓ | ✓ |
| Dfns | Dfns cüzdan altyapısı | ✓ | ✓ |
| Openfort | Openfort arka uç cüzdanları | ✓ | ✓ |
| Para | Para MPC cüzdanları | ✓ | ✓ |
| Utila | Utila MPC saklama | ✓ | ✓ |
Hızlı Başlangıç
Rust
Rust crate'ini yükleyin:
cargo add solana-keychain
Temel kullanım:
use solana_keychain::{Signer, SolanaSigner};// Create a signer from any backendlet signer = Signer::from_memory("base58_private_key")?;// All signers share the same interfacelet pubkey = signer.pubkey();let signature = signer.sign_transaction(&mut tx).await?;
- Rust Kılavuzu - Tam kurulum ve arka uç yapılandırması
- Crates.io - Rust crate
TypeScript
TypeScript paketini yükleyin:
pnpm add @solana/keychain
Temel kullanım:
import { createKeychainSigner } from "@solana/keychain";import { signTransactionWithSigners } from "@solana/signers";// Create any signer via the unified factoryconst signer = await createKeychainSigner({backend: "vault",vaultAddr: "https://vault.example.com:8200",vaultToken: "hvs.xxxxx",keyName: "my-solana-key",publicKey: "base58_public_key"});// Sign an already-compiled transactionconst signedTx = await signTransactionWithSigners([signer],compiledTransaction);
- TypeScript Kılavuzu -
@solana/keychainpaketleri - npm Paketi - npm paketi
Sonraki Adımlar
Rust kılavuzu
Crate'i yükleyin ve her arka ucu yapılandırın.
TypeScript kılavuzu
Paketleri yükleyin ve her arka ucu yapılandırın.
Arka uç seçimi
Saklama modellerini karşılaştırın ve doğru imzalama arka ucunu seçin.
Üretim ortamı en iyi uygulamaları
İmzalamayı güvenli şekilde yönetin: sıcak/soğuk ayrımı, rotasyon, izleme.
Özel imzalayıcı ekleme
Yeni bir anahtar yönetim arka ucu entegre edin.
Kaynak
Solana Foundation tarafından geliştirilmekte ve sürdürülmektedir. MIT lisansı altında yayımlanmıştır.
Is this page helpful?