Skip to main content

Standard curve database

Search

M-383

383-bit prime field Montgomery curve.

Curve from https://eprint.iacr.org/2013/647.pdf


By2x3+Ax2+xBy^2 \equiv x^3 + Ax^2 + x

Parameters

NameValue
p0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45
a0x1f82fe
b0x01
G(0x0c, 0x1ec7ed04aaf834af310e304b2da0f328e7c165f0e8988abd3992861290f617aa1f1b2e7d0b6e332e969991b62555e77e)
n0x10000000000000000000000000000000000000000000000006C79673AC36BA6E7A32576F7B1B249E46BBC225BE9071D7
h0x08


SAGE

p = 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45
K = GF(p)
A = K(0x1f82fe)
B = K(0x01)
E = EllipticCurve(K, ((3 - A^2)/(3 * B^2), (2 * A^3 - 9 * A)/(27 * B^3)))
def to_weierstrass(A, B, x, y):
return (x/B + A/(3*B), y/B)
def to_montgomery(A, B, u, v):
return (B * (u - A/(3*B)), B*v)
G = E(*to_weierstrass(A, B, K(0x0c), K(0x1ec7ed04aaf834af310e304b2da0f328e7c165f0e8988abd3992861290f617aa1f1b2e7d0b6e332e969991b62555e77e)))
E.set_order(0x10000000000000000000000000000000000000000000000006C79673AC36BA6E7A32576F7B1B249E46BBC225BE9071D7 * 0x08)
# This curve is a Weierstrass curve (SAGE does not support Montgomery curves) birationally equivalent to the intended curve.
# You can use the to_weierstrass and to_montgomery functions to convert the points.


JSON

{
"name": "M-383",
"desc": "Curve from https://eprint.iacr.org/2013/647.pdf",
"form": "Montgomery",
"field": {
"type": "Prime",
"p": "0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF45",
"bits": 383
},
"params": {
"a": {
"raw": "0x1f82fe"
},
"b": {
"raw": "0x01"
}
},
"generator": {
"x": {
"raw": "0x0c"
},
"y": {
"raw": "0x1ec7ed04aaf834af310e304b2da0f328e7c165f0e8988abd3992861290f617aa1f1b2e7d0b6e332e969991b62555e77e"
}
},
"order": "0x10000000000000000000000000000000000000000000000006C79673AC36BA6E7A32576F7B1B249E46BBC225BE9071D7",
"cofactor": "0x08"
}

© 2020 Jan Jancar | Built with Dox theme for Gatsby