secp256k1 refererer til parametrene for den elliptiske kurve, der bruges i Bitcoins offentlige nøglekryptografi, som er defineret i Standards for Efficient Cryptography (SEC), med henvisning til Certicom Research:Hyperlink-login er synlig.。 I øjeblikket bruges secp256k1- og ECDSA-algoritmerne i Bitcoin. Med oprindelse i applikationen i Bitcoin bruges de fleste blockchain-projekter som Ethereum senere.
Før Bitcoin blev secp256k1 næsten aldrig brugt, men det bliver nu mere og mere populært på grund af dets flere gode funktioner. De mest almindeligt anvendte kurver har en stokastisk struktur, men secp256k1 er konstrueret på en særlig, ikke-tilfældig måde, hvilket muliggør effektive beregninger. Hvis den er fuldt optimeret, er den som regel mere end 30% hurtigere end andre kurver. Derudover vælges konstanterne i secp256k1, i modsætning til de populære NIST-kurver, på en forudsigelig måde, hvilket væsentligt reducerer sandsynligheden for, at kurveskabere indsætter nogen form for bagdørssoftware i kurven.
Digitale signaturer
Kernen i digital signatur er private nøglesignering og verifikation af offentlige nøgler; Signatur er processen med at bruge den private nøgle til at underskrive dataene for at generere signaturværdien, og signaturverifikation er processen med at gendanne den offentlige nøgle fra signaturen. Digitale signaturer har tre anvendelser i Ethereum. For det første beviser signaturen, at ejeren af den private nøgle indebærer, at ejeren af Ethereum-kontoen har godkendt betalingen af ether eller udførelsen af kontrakten. For det andet er beviset for autorisation _ubestrideligt_ (uomtvisteligt). For det tredje beviser signaturen, at transaktionsdataene ikke er blevet og ikke kan ændres af nogen efter transaktionen er underskrevet.
Kryptografien bag de 20 største kryptovalutaer
Adresse:Hyperlink-login er synlig.
C# bruger BouncyCastle.Cryptography til at generere elliptiske kurver SECP256K1 nøglepar
Som vist nedenfor:
Privat nøgle: C66C343A5CD1A1D25B24A47D71047442EFED87DE12933779B1DAD914401776B5 Offentlig nøgle: 04C99FE3CDC4D0025CFA1CC0BC6401FF273ABC4C86EB912F4325D286C5162A2D21D7DF76C3E79CF4F7C2183F0E230D187B26BC8A5FCA2436EA91AC72B8EC0F4651
Koden er som følger:
C# bruger Nethereum.Signer til at generere nøglepar
Koden er som følger:
Anmeldelse:
Henvisning:
Hyperlink-login er synlig.
Hyperlink-login er synlig. |