Secp256k1
- Source:
- InefficientEcc.scala
Type members
Inherited classlikes
Inherited types
Value members
Concrete fields
The elliptic curve domain parameters over F_p associated with a Koblitz curve secp256k1 are specified by the sextuple T = (p,a,b,G,n,h) where the finite field Fp is defined by:
The elliptic curve domain parameters over F_p associated with a Koblitz curve secp256k1 are specified by the sextuple T = (p,a,b,G,n,h) where the finite field Fp is defined by:
p = FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE FFFFFC2F = 2256 - 232 - 29 - 28 - 27 - 26 - 24 - 1 The curve E: y2 = x3+ax+b over Fp is defined by:
a = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 b = 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000007 The base point G in compressed form is:
G = 02 79BE667E F9DCBBAC 55A06295 CE870B07 029BFCDB 2DCE28D9 59F2815B 16F81798 and in uncompressed form is:
G = 04 79BE667E F9DCBBAC 55A06295 CE870B07 029BFCDB 2DCE28D9 59F2815B 16F81798 483ADA77 26A3C465 5DA4FBFC 0E1108A8 FD17B448 A6855419 9C47D08F FB10D4B8
Finally the order n of G and the cofactor are: n = FFFFFFFF FFFFFFFF FFFFFFFF FFFFFFFE BAAEDCE6 AF48A03B BFD25E8C D0364141 h = 01
Helpful description of the difference between the prime modulus p, and _n, the order of G: https://crypto.stackexchange.com/questions/86328/secp256k1-prime-modulus-vs-order
- Source:
- InefficientEcc.scala