Ist Secp256k1 Prime Prime?
Das Bitcoin-Protokoll basiert für seine kryptografische Sicherheit auf der elliptischen Kurve secp256k1 . Zu diesem Zweck die Ganzzahl$p = 2^{256}-2^{32}-977$muss prim sein. Woher wissen sie das?$p$ist eigentlich Prime? Ich meine, welcher Primalitätstest kann verwendet werden, um dies zu beweisen?
Antworten
Wie in den Kommentaren ausgeführt, ist dies keine große Zahl, die mit modernen Methoden berücksichtigt werden muss.
Der Magma Online-Rechner http://magma.maths.usyd.edu.au/calc/ überprüft, ob es sich um eine Primzahl handelt, wenn Sie aufgefordert werden, sie zu berücksichtigen, fast sofort.
Zeitfaktorisierung (2 ^ 256-2 ^ 32-977);
kehrt zurück
[<115792089237316195423570985008687907853269984665640564039457584007908834671663, 1>] Zeit: 0,070
als Faktorisierung in Potenzen von Primzahlen; die Nummer$2^{256}-2^{32}-977$ ist eine einzelne Primzahl für die Macht $1$. Es dauert 0,07 Sekunden, um dieses Ergebnis zu erhalten.
Primalitätstests sind ebenfalls konsistent.
Zeit IsPrime (2 ^ 256-2 ^ 32-977);
ergibt
wahre Zeit: 0,060