Tapahtuma suoritetaan vain, jos se sisältää kelvollisen
allekirjoituksen jokaiselta
vaaditulta allekirjoittajalta. Paikallisessa kehityksessä pidät yleensä avaimen
Keypair-oliona ja allekirjoitat suoraan. Tuotantoympäristössä tärkeä kysymys on erilainen: missä yksityinen avain sijaitsee ja kenellä on oikeus valtuuttaa sillä allekirjoitus?
Älä koskaan upota yksityisiä avaimia asiakaspuolen koodiin, niputa niitä frontendiin tai tallenna niitä versionhallintaan. Jokainen avaimen hankkiva taho saa täyden hallinnan kyseisen tilin varoihin.
Allekirjoitustavat
| Tapa | Missä avain sijaitsee | Kuka allekirjoittaa | Sopii parhaiten |
|---|---|---|---|
| Paikallinen keypair | Tiedosto tai ympäristömuuttuja koneella | Koodisi, suoraan | Paikallinen kehitys, testit, CI |
| Selainlompakko | Loppukäyttäjän lompakko (esim. Phantom, Solflare) | Loppukäyttäjä, tapahtuma kerrallaan | Frontend-dApit, joissa käyttäjät allekirjoittavat omat tapahtumansa |
| Pilvi-KMS / HSM | Laitteistopohjainen avainpalvelu (AWS KMS, GCP KMS, Vault) | Taustajärjestelmäsi pyytää allekirjoituksen palvelulta | Taustajärjestelmät, kassatoiminnot, säännellyt ympäristöt |
| Hallitut / MPC-lompakot | Jaettu tai säilytettynä palveluntarjoajan infrastruktuurissa | Palveluntarjoaja allekirjoittaa yhdessä käytäntösi mukaisesti | Upotetut lompakot, hyväksymistyönkulut, institutionaalinen säilytys |
Paikallinen keypair on ainoa tapa, joka sijoittaa raakaavainmateriaalin suoraan sovellukseesi. Jokainen tuotantotapa pitää avaimen erillisessä infrastruktuurissa ja pyytää tätä infrastruktuuria allekirjoittamaan puolestasi.
Taustajärjestelmän allekirjoittaminen
Kun palvelin tarvitsee allekirjoittaa (maksaakseen maksuja, lähettääkseen ohjelmatransaktioita tai hallinnoidakseen kassaa), käytä omistettua avaintenhallinnan taustajärjestelmää raakaa keypair-oliota sijaan. Solana Foundation ylläpitää Keychain-kirjastoa, yhtenäistä allekirjoituskirjastoa (Rust, TypeScript, Python ja Go), joka tarjoaa yhden SolanaSigner-rajapinnan kaikille yllä olevan taulukon taustajärjestelmille: Memory, HashiCorp Vault, AWS KMS, GCP KMS, Fireblocks, Privy, Turnkey, CDP, Crossmint, Dfns, Para, Openfort, Utila ja Fordefi.
Koska rajapinta on yhteinen kaikille taustajärjestelmille, voit kehittää paikallisesti muistissa olevalla avaimella ja siirtyä tuotantotaustajärjestelmään konfiguraation kautta ilman sovelluskoodin uudelleenkirjoittamista (taustajärjestelmiä, jotka lähettävät transaktion verkkoon puolestasi, kuten Crossmint, kutsutaan sen sijaan allekirjoita-ja-lähetä-polun kautta). Keychain on yhteensopiva seuraavien kanssa: @solana/kit, Rust SDK, solders (Python) ja solana-go v2 (Go).
Keychain
Yhtenäinen allekirjoittaminen paikallisilla avaimilla, KMS:llä, HSM:llä ja hallituilla lompakkotaustajärjestelmillä.
Taustajärjestelmän valinta
Vertaile säilytysmalleja ja valitse sovelluksellesi sopiva allekirjoitustaustajärjestelmä.
Täydellinen tuotantotarkistuslista — avaintenhallinta, RPC-suojaus ja seuranta — löytyy täältä: Tuotantovalmius.
Is this page helpful?