Solana Keychain tarjoaa yhtenäisen rajapinnan Solana-transaktioiden allekirjoittamiseen useiden avaintenhallintajärjestelmien kautta. Käytä sitä integroimaan yritystason allekirjoitus backend-palveluihisi.
Miksi Keychain?
- Yksi rajapinta: Yksi
SolanaSigner-traitti toimii kaikissa järjestelmissä - Vaihda järjestelmiä: Vaihda avaintenhallintapalveluntarjoajaa kirjoittamatta koodia uudelleen
- Nollakuluinen abstraktio: Ominaisuusliput sisällyttävät vain tarvitsemasi
Arkkitehtuuri
- Kielet: Rust + TypeScript
- Traitti: Yhtenäinen
SolanaSigner-rajapinta - Järjestelmät: Memory, Vault, AWS KMS, GCP KMS, Privy, Turnkey, Fireblocks, CDP, Crossmint, Dfns, Openfort, Para
- Yhteensopivuus:
@solana/kit- ja@solana/signers-yhteensopiva (TypeScript) |solana-sdk- jasolana-sdk-v3-yhteensopiva (Rust)
Tuetut järjestelmät
| Järjestelmä | Käyttötarkoitus | Rust | TypeScript |
|---|---|---|---|
| Memory | Kehitys, testaus | ✓ | ✓ |
| HashiCorp Vault | Itse ylläpidetty HSM | ✓ | ✓ |
| AWS KMS | Pilvinatiivi (AWS) | ✓ | ✓ |
| GCP KMS | Pilvinatiivi (GCP) | ✓ | ✓ |
| Privy | Upotetut lompakot | ✓ | ✓ |
| Turnkey | Ei-säilytettävä | ✓ | ✓ |
| Fireblocks | Institutionaalinen MPC | ✓ | ✓ |
| CDP | Coinbase Developer Platform | ✓ | ✓ |
| Crossmint | Crossmint-hallitut lompakot | ✓ | ✓ |
| Dfns | Dfns-lompakkoinfrastruktuuri | ✓ | ✓ |
| Openfort | Openfort-upotetut lompakot | ✓ | ✓ |
| Para | Para MPC-lompakot | ✓ | ✓ |
Pika-aloitus
Rust
Asenna Rust-crate:
cargo add solana-keychain
Peruskäyttö:
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?;
TypeScript
Asenna TypeScript-paketti:
pnpm add @solana/keychain
Peruskäyttö:
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-opas -
@solana/keychainpaketit - npm-paketti - npm-paketti
Muut resurssit
- Mukautettujen allekirjoittajien lisääminen - Integroi uusia backendejä
- GitHub-julkaisut - Julkaisuhistoria
Lähde
Rakennettu ja ylläpidetty Solana Foundationin toimesta.
Lisensoitu MIT-lisenssillä. Katso LICENSE lisätiedoista.
Is this page helpful?