Eine Transaktion wird nur ausgeführt, wenn sie eine gültige
Signatur von jedem
erforderlichen Signer trägt. Während der lokalen Entwicklung hält man diesen Key
in der Regel als Keypair und
signiert direkt. In der Produktion stellt sich eine andere wichtige Frage: Wo
liegt der private Key, und wer ist berechtigt, eine Signatur damit zu
autorisieren?
Bette private Keys niemals in clientseitigem Code ein, bündele sie nicht in einem Frontend und committe sie nicht in die Versionskontrolle. Wer einen Key erlangt, erhält die vollständige Kontrolle über die Mittel des jeweiligen Konten.
Signing-Ansätze
| Ansatz | Wo der Key liegt | Wer signiert | Am besten geeignet für |
|---|---|---|---|
| Lokales keypair | Eine Datei oder Umgebungsvariable auf dem Rechner | Dein Code, direkt | Lokale Entwicklung, Tests, CI |
| Browser-Wallet | Das Wallet des Endbenutzers (z. B. Phantom, Solflare) | Der Endbenutzer, pro Transaktion | Frontend-dApps, bei denen Benutzer ihre eigenen Transaktionen signieren |
| Cloud KMS / HSM | Ein hardwaregestützter Key-Dienst (AWS KMS, GCP KMS, Vault) | Dein Backend fordert eine Signatur vom Dienst an | Backend-Dienste, Treasury-Operationen, regulierte Umgebungen |
| Verwaltete / MPC-Wallets | Aufgeteilt oder verwahrt in der Infrastruktur eines Anbieters | Der Anbieter co-signiert gemäß deiner Richtlinie | Eingebettete Wallets, Genehmigungs-Workflows, institutionelle Verwahrung |
Das lokale keypair ist der einzige Ansatz, bei dem rohes Schlüsselmaterial direkt in Ihrer Anwendung gespeichert wird. Jeder produktionsreife Ansatz bewahrt den Schlüssel in dedizierter Infrastruktur auf und lässt diese Infrastruktur in Ihrem Auftrag signieren.
Backend-Signierung
Wenn ein Server signieren muss – um Fee zu bezahlen, Programmtransaktionen zu
senden oder eine Treasury zu verwalten – verwenden Sie ein dediziertes
Key-Management-Backend anstelle eines rohen keypair. Die Solana Foundation
pflegt Keychain, eine einheitliche Signing-Bibliothek
(Rust und TypeScript), die eine SolanaSigner-Schnittstelle für alle oben
aufgeführten Backends bereitstellt: Memory, HashiCorp Vault, AWS KMS, GCP KMS,
Fireblocks, Privy, Turnkey, CDP, Crossmint, Dfns, Para, Openfort und Utila.
Da die Schnittstelle über alle Backends hinweg identisch ist, können Sie lokal
mit einem In-Memory-Schlüssel entwickeln und durch eine einfache
Konfigurationsänderung auf ein Produktions-Backend wechseln – ohne den
Anwendungscode neu schreiben zu müssen. Keychain ist kompatibel mit
@solana/kit und dem
Rust SDK.
Keychain
Einheitliche Signierung für lokale Schlüssel, KMS, HSM und verwaltete Wallet-Backends.
Ein Backend auswählen
Vergleichen Sie Custody-Modelle und wählen Sie das passende Signing-Backend für Ihre App.
Die vollständige Produktions-Checkliste – Key Management, RPC-Sicherheit und Monitoring – finden Sie unter Production Readiness.
Is this page helpful?