Keychain

Solana Keychain bietet eine einheitliche Schnittstelle zur Signierung von Solana-Transaktionen über mehrere Schlüsselverwaltungs-Backends hinweg. Nutzen Sie es, um Signierung auf Unternehmensniveau in Ihre Backend-Dienste zu integrieren.

Warum Keychain?

  • Einheitliche Schnittstelle: Ein SolanaSigner-Trait funktioniert über alle Backends hinweg
  • Backend-Wechsel: Ändern Sie Schlüsselverwaltungsanbieter ohne Code-Umschreibung
  • Null-Kosten-Abstraktion: Feature-Flags binden nur das ein, was Sie benötigen

Architektur

  • Sprachen: Rust + TypeScript
  • Trait: Einheitliche SolanaSigner-Schnittstelle
  • Backends: Memory, Vault, AWS KMS, GCP KMS, Privy, Turnkey, Fireblocks, CDP, Crossmint, Dfns, Openfort, Para
  • Kompatibilität: @solana/kit- und @solana/signers-kompatibel (TypeScript) | solana-sdk- und solana-sdk-v3-kompatibel (Rust)

Unterstützte Backends

BackendAnwendungsfallRustTypeScript
MemoryEntwicklung, Tests
HashiCorp VaultSelbst gehostetes HSM
AWS KMSCloud-nativ (AWS)
GCP KMSCloud-nativ (GCP)
PrivyEingebettete Wallets
TurnkeyNicht verwahrend
FireblocksInstitutionelles MPC
CDPCoinbase-Entwicklerplattform
CrossmintCrossmint-verwaltete Wallets
DfnsDfns-Wallet-Infrastruktur
OpenfortOpenfort-eingebettete Wallets
ParaPara-MPC-Wallets

Schnellstart

Rust

Installieren Sie die Rust-Crate:

cargo add solana-keychain

Grundlegende Verwendung:

use solana_keychain::{Signer, SolanaSigner};
// Create a signer from any backend
let signer = Signer::from_memory("base58_private_key")?;
// All signers share the same interface
let pubkey = signer.pubkey();
let signature = signer.sign_transaction(&mut tx).await?;

TypeScript

Installieren Sie das TypeScript-Paket:

pnpm add @solana/keychain

Grundlegende Verwendung:

import { createKeychainSigner } from "@solana/keychain";
import { signTransactionWithSigners } from "@solana/signers";
// Create any signer via the unified factory
const 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 transaction
const signedTx = await signTransactionWithSigners(
[signer],
compiledTransaction
);

Weitere Ressourcen

Quelle

GitHub-Repository

Entwickelt und gewartet von der Solana Foundation.

Lizenziert unter MIT. Siehe LICENSE für Details.

Is this page helpful?

Inhaltsverzeichnis

Seite bearbeiten

Verwaltet von

© 2026 Solana Foundation.
Alle Rechte vorbehalten.
Verbinden Sie sich