Solana Keychain zapewnia zunifikowany interfejs do podpisywania transakcji Solana w różnych systemach zarządzania kluczami. Użyj go, aby zintegrować podpisywanie na poziomie korporacyjnym w swoich usługach backendowych.
Dlaczego Keychain?
- Jeden interfejs: Pojedyncza cecha
SolanaSignerdziała ze wszystkimi backendami - Zmiana backendów: Zmieniaj dostawców zarządzania kluczami bez przepisywania kodu
- Abstrakcja bez kosztów: Flagi funkcji włączają tylko to, czego potrzebujesz
Architektura
- Języki: Rust + TypeScript
- Cecha: Zunifikowany interfejs
SolanaSigner - Backendy: Memory, Vault, AWS KMS, GCP KMS, Privy, Turnkey, Fireblocks, CDP, Crossmint, Dfns, Openfort, Para
- Kompatybilność: Kompatybilny z
@solana/kiti@solana/signers(TypeScript) | Kompatybilny zsolana-sdkisolana-sdk-v3(Rust)
Obsługiwane backendy
| Backend | Przypadek użycia | Rust | TypeScript |
|---|---|---|---|
| Memory | Rozwój, testowanie | ✓ | ✓ |
| HashiCorp Vault | Własny HSM | ✓ | ✓ |
| AWS KMS | Natywnie chmurowy (AWS) | ✓ | ✓ |
| GCP KMS | Natywnie chmurowy (GCP) | ✓ | ✓ |
| Privy | Wbudowane portfele | ✓ | ✓ |
| Turnkey | Bez przechowywania | ✓ | ✓ |
| Fireblocks | Instytucjonalny MPC | ✓ | ✓ |
| CDP | Coinbase Developer Platform | ✓ | ✓ |
| Crossmint | Zarządzane portfele Crossmint | ✓ | ✓ |
| Dfns | Infrastruktura portfeli Dfns | ✓ | ✓ |
| Openfort | Wbudowane portfele Openfort | ✓ | ✓ |
| Para | Portfele MPC Para | ✓ | ✓ |
Szybki start
Rust
Zainstaluj pakiet Rust:
cargo add solana-keychain
Podstawowe użycie:
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?;
- Przewodnik Rust - Pełna instalacja i konfiguracja backendu
- Crates.io - Pakiet Rust
TypeScript
Zainstaluj pakiet TypeScript:
pnpm add @solana/keychain
Podstawowe użycie:
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);
- Przewodnik TypeScript -
Pakiety
@solana/keychain - Pakiet npm - Pakiet npm
Inne zasoby
- Dodawanie niestandardowych signerów - Integracja nowych backendów
- Wydania na GitHub - Historia wydań
Źródło
Zbudowane i utrzymywane przez Solana Foundation.
Licencjonowane na podstawie MIT. Zobacz LICENSE, aby uzyskać szczegółowe informacje.
Is this page helpful?