secp256k1 se nanaša na parametre eliptične krivulje, uporabljene v Bitcoinovi kriptografiji z javnim ključem, ki je opredeljena v Standardih za učinkovito kriptografijo (SEC), s sklicevanjem na Certicom Research:Prijava do hiperpovezave je vidna.。 Trenutno se algoritma secp256k1 in ECDSA uporabljata v Bitcoinu. Večina blockchain projektov, kot je Ethereum, izvira iz aplikacije v Bitcoinu, pa se uporablja kasneje.
Pred Bitcoinom se secp256k1 skoraj nikoli ni uporabljal, zdaj pa postaja vse bolj priljubljen zaradi številnih odličnih funkcij. Najpogosteje uporabljene krivulje imajo stohastično strukturo, vendar je secp256k1 sestavljen na poseben, nenaključen način, kar omogoča učinkovite izračune. Če je popolnoma optimizirana, je običajno več kot 30 % hitrejša od drugih krivulj. Poleg tega, za razliko od priljubljenih krivulj NIST, so konstante secp256k1 izbrane na predvidljiv način, kar bistveno zmanjša verjetnost, da bi ustvarjalci krivulj vstavili kakršnokoli programsko opremo za stranska vrata v krivuljo.
Digitalni podpisi
Jedro digitalnega podpisa je podpisovanje zasebnega ključa in preverjanje javnega ključa; Podpis je postopek uporabe zasebnega ključa za podpis podatkov za generiranje vrednosti podpisa, preverjanje podpisa pa postopek obnove javnega ključa iz podpisa. Digitalni podpisi imajo v Ethereumu tri uporabe. Prvič, podpis dokazuje, da lastnik zasebnega ključa nakazuje, da je lastnik Ethereum računa odobril plačilo etra ali izvedbo pogodbe. Drugič, dokaz avtorizacije je _neizpodbiten_(neizpodbiten). Tretjič, podpis dokazuje, da podatki o transakciji niso bili in jih nihče ne more spremeniti po podpisu transakcije.
Kriptografija za 20 največjimi kriptovalutami
Naslov:Prijava do hiperpovezave je vidna.
C# uporablja BouncyCastle.Cryptography za generiranje eliptične krivulje SECP256K1 parov ključev
Kot je prikazano spodaj:
Zasebni ključ: C66C343A5CD1A1D25B24A47D71047442EFED87DE12933779B1DAD914401776B5 Javni ključ: 04C99FE3CDC4D0025CFA1CC0BC6401FF273ABC4C86EB912F4325D286C5162A2D21D7DF76C3E79CF4F7C2183F0E230D187B26BC8A5FCA2436EA91AC72B8EC0F4651
Koda je naslednja:
C# uporablja Nethereum.Signer za generiranje parov ključev
Koda je naslednja:
Pregled:
Referenčni:
Prijava do hiperpovezave je vidna.
Prijava do hiperpovezave je vidna. |