Skip to main content

Standard curve database

Search

bn446

446-bit prime field Weierstrass curve.
y2x3+ax+by^2 \equiv x^3 + ax + b

Parameters

NameValue
p0x2400000000000000002400000002D00000000D800000021C0000001800000000870000000B0400000057C00000015C000000132000000067
a0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
b0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101
G(0x2400000000000000002400000002D00000000D800000021C0000001800000000870000000B0400000057C00000015C000000132000000066, 0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010)
n0x2400000000000000002400000002D00000000D800000021C00000017A0000000870000000AD400000054C000000156000000126000000061
h0x01

Sources

  • A Family of Implementation-Friendly BN Elliptic Curves

Characteristics

  • j-invariant:
    0
  • Trace of Frobenius:
    10109980000181489923001201093401906549415298505746886291297633566727
  • Discriminant:
    102211695604069718983520304652693874995639508460729604902280098199792736381528662976886082950231100101353700265360419596271313310490295
  • Anomalous:
    false
  • Supersingular:
    false
  • Embedding degree:
    12
  • CM-discriminant:
    -3
  • Conductor:
    10109980000181489923001201093401911741712157040574514822068840693771

SAGE

p = 0x2400000000000000002400000002D00000000D800000021C0000001800000000870000000B0400000057C00000015C000000132000000067
K = GF(p)
a = K(0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000)
b = K(0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101)
E = EllipticCurve(K, (a, b))
G = E(0x2400000000000000002400000002D00000000D800000021C0000001800000000870000000B0400000057C00000015C000000132000000066, 0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010)
E.set_order(0x2400000000000000002400000002D00000000D800000021C00000017A0000000870000000AD400000054C000000156000000126000000061 * 0x01)

PARI/GP

p = 0x2400000000000000002400000002D00000000D800000021C0000001800000000870000000B0400000057C00000015C000000132000000067
a = Mod(0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000, p)
b = Mod(0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101, p)
E = ellinit([a, b])
E[16][1] = 0x2400000000000000002400000002D00000000D800000021C00000017A0000000870000000AD400000054C000000156000000126000000061 * 0x01
G = [Mod(0x2400000000000000002400000002D00000000D800000021C0000001800000000870000000B0400000057C00000015C000000132000000066, p), Mod(0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010, p)]

JSON

{
"name": "bn446",
"desc": "",
"sources": [
{
"name": "A Family of Implementation-Friendly BN Elliptic Curves",
"url": "https://eprint.iacr.org/2010/429"
}
],
"form": "Weierstrass",
"field": {
"type": "Prime",
"p": "0x2400000000000000002400000002D00000000D800000021C0000001800000000870000000B0400000057C00000015C000000132000000067",
"bits": 446
},
"params": {
"a": {
"raw": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
},
"b": {
"raw": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101"
}
},
"generator": {
"x": {
"raw": "0x2400000000000000002400000002D00000000D800000021C0000001800000000870000000B0400000057C00000015C000000132000000066"
},
"y": {
"raw": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010"
}
},
"order": "0x2400000000000000002400000002D00000000D800000021C00000017A0000000870000000AD400000054C000000156000000126000000061",
"cofactor": "0x01",
"characteristics": {
"discriminant": "102211695604069718983520304652693874995639508460729604902280098199792736381528662976886082950231100101353700265360419596271313310490295",
"j_invariant": "0",
"trace_of_frobenius": "10109980000181489923001201093401906549415298505746886291297633566727",
"embedding_degree": "12",
"anomalous": false,
"supersingular": false,
"cm_disc": "-3",
"conductor": "10109980000181489923001201093401911741712157040574514822068840693771"
}
}
JSON

© 2020-2025 Jan Jancar | Built with Dox theme for Gatsby