Skip to main content

Standard curve database

Search

secp160k1

160-bit prime field Weierstrass curve.

A Koblitz curve.


Also known as: ansip160k1
y2x3+ax+by^2 \equiv x^3 + ax + b

Parameters

NameValue
p0xfffffffffffffffffffffffffffffffeffffac73
a0x0000000000000000000000000000000000000000
b0x0000000000000000000000000000000000000007
G(0x3b4c382ce37aa192a4019e763036f4f5dd4d7ebb, 0x938cf935318fdced6bc28286531733c3f03c4fee)
n0x0100000000000000000001b8fa16dfab9aca16b6b3
h0x1

Characteristics

  • OID:
    1.3.132.0.9
  • j-invariant:
    0
  • Trace of Frobenius:
    -2082454586705745521609279
  • Discriminant:
    1461501637330902918203684832716283019651637533123
  • Anomalous:
    false
  • Supersingular:
    false
  • Embedding degree:
    730750818665451459101843457585434862698579581785
  • CM-discriminant:
    5846006549323611672814741413319718784352071826443
  • Conductor:
    1

SAGE

p = 0xfffffffffffffffffffffffffffffffeffffac73
K = GF(p)
a = K(0x0000000000000000000000000000000000000000)
b = K(0x0000000000000000000000000000000000000007)
E = EllipticCurve(K, (a, b))
G = E(0x3b4c382ce37aa192a4019e763036f4f5dd4d7ebb, 0x938cf935318fdced6bc28286531733c3f03c4fee)
E.set_order(0x0100000000000000000001b8fa16dfab9aca16b6b3 * 0x1)

PARI/GP

p = 0xfffffffffffffffffffffffffffffffeffffac73
a = Mod(0x0000000000000000000000000000000000000000, p)
b = Mod(0x0000000000000000000000000000000000000007, p)
E = ellinit([a, b])
E[16][1] = 0x0100000000000000000001b8fa16dfab9aca16b6b3 * 0x1
G = [Mod(0x3b4c382ce37aa192a4019e763036f4f5dd4d7ebb, p), Mod(0x938cf935318fdced6bc28286531733c3f03c4fee, p)]

JSON

{
"name": "secp160k1",
"desc": "A Koblitz curve.",
"oid": "1.3.132.0.9",
"form": "Weierstrass",
"field": {
"type": "Prime",
"p": "0xfffffffffffffffffffffffffffffffeffffac73",
"bits": 160
},
"params": {
"a": {
"raw": "0x0000000000000000000000000000000000000000"
},
"b": {
"raw": "0x0000000000000000000000000000000000000007"
}
},
"generator": {
"x": {
"raw": "0x3b4c382ce37aa192a4019e763036f4f5dd4d7ebb"
},
"y": {
"raw": "0x938cf935318fdced6bc28286531733c3f03c4fee"
}
},
"order": "0x0100000000000000000001b8fa16dfab9aca16b6b3",
"cofactor": "0x1",
"aliases": [
"x963/ansip160k1"
],
"characteristics": {
"j_invariant": "0",
"anomalous": false,
"cm_disc": "5846006549323611672814741413319718784352071826443",
"conductor": "1",
"discriminant": "1461501637330902918203684832716283019651637533123",
"embedding_degree": "730750818665451459101843457585434862698579581785",
"torsion_degrees": [
{
"full": 3,
"least": 3,
"r": 2
},
{
"full": 6,
"least": 2,
"r": 3
},
{
"full": 6,
"least": 6,
"r": 5
},
{
"full": 2,
"least": 2,
"r": 7
},
{
"full": 15,
"least": 15,
"r": 11
},
{
"full": 6,
"least": 2,
"r": 13
}
],
"supersingular": false,
"trace_of_frobenius": "-2082454586705745521609279"
}
}

© 2020 Jan Jancar | Built with Dox theme for Gatsby