Een transactie wordt alleen uitgevoerd als deze een geldige
handtekening bevat van elke
vereiste ondertekenaar. Tijdens lokale ontwikkeling houd je die sleutel doorgaans bij als een
Keypair en onderteken je rechtstreeks. In
productie is de belangrijke vraag anders: waar bevindt de privésleutel
zich, en wie is gemachtigd om er een handtekening mee te autoriseren?
Sluit nooit privésleutels in aan de clientzijde, bundel ze niet in een frontend, en bewaar ze niet in versiebeheer. Iedereen die een sleutel verkrijgt, krijgt volledige controle over de fondsen van dat account.
Ondertekeningsbenaderingen
| Benadering | Waar de sleutel zich bevindt | Wie ondertekent | Geschikt voor |
|---|---|---|---|
| Lokaal keypair | Een bestand of omgevingsvariabele op de machine | Jouw code, rechtstreeks | Lokale ontwikkeling, tests, CI |
| Browserwallet | De wallet van de eindgebruiker (bijv. Phantom, Solflare) | De eindgebruiker, per transactie | Frontend-dApps waarbij gebruikers hun eigen transacties ondertekenen |
| Cloud KMS / HSM | Een op hardware gebaseerde sleuteldienst (AWS KMS, GCP KMS, Vault) | Jouw backend vraagt een handtekening op bij de dienst | Backendservices, treasurybeheer, gereguleerde omgevingen |
| Beheerde / MPC-wallets | Verdeeld of in bewaring bij de infrastructuur van een provider | De provider ondertekent mee conform jouw beleid | Embedded wallets, goedkeuringsworkflows, institutionele bewaring |
Het lokale keypair is de enige benadering waarbij onbewerkt sleutelmateriaal in jouw applicatie terechtkomt. Elke productiebenadering bewaart de sleutel in toegewijde infrastructuur en vraagt die infrastructuur namens jou te ondertekenen.
Backend-ondertekening
Wanneer een server moet ondertekenen — voor het betalen van kosten, het verzenden van programmatransacties of
het beheren van een treasury — gebruik dan een toegewijde sleutelbeheerbackend in plaats van een onbewerkt
keypair. De Solana Foundation onderhoudt Keychain, een
geünificeerde ondertekeningsbibliotheek (Rust en TypeScript) die één SolanaSigner-interface
biedt voor elke backend in de bovenstaande tabel: Memory, HashiCorp Vault, AWS
KMS, GCP KMS, Fireblocks, Privy, Turnkey, CDP, Crossmint, Dfns, Para, Openfort
en Utila.
Omdat de interface identiek is voor alle backends, kun je lokaal ontwikkelen met
een in-memory sleutel en via configuratie overschakelen naar een productiebackend,
zonder applicatiecode te herschrijven. Keychain is compatibel met
@solana/kit en de
Rust SDK.
Keychain
Geünificeerde ondertekening voor lokale sleutels, KMS, HSM en beheerde walletbackends.
Een backend kiezen
Vergelijk bewaarmodellen en kies de juiste ondertekeningsbackend voor jouw app.
Voor de volledige productiechecklist — sleutelbeheer, RPC-beveiliging en monitoring — zie Productiegereedheid.
Is this page helpful?