c2pnb163v2 163-bit binary field Weierstrass curve.y 2 + x y ≡ x 3 + a x 2 + b y^2 + xy \equiv x^3 + ax^2 + b y 2 + x y ≡ x 3 + a x 2 + b Parameters Name Value m 163f(x) x^163 + x^8 + x^2 + x^1 + 1a 0x0108b39e77c4b108bed981ed0e890e117c511cf072b 0x0667aceb38af4e488c407433ffae4f1c811638df20G (0x0024266e4eb5106d0a964d92c4860e2671db9b6cc5, 0x079f684ddf6684c5cd258b3890021b2386dfd19fc5)n 0x03fffffffffffffffffffdf64de1151adbb78f10a7h 0x2
SAGE F . < x > = GF ( 2 ) [ ]
K = GF ( 2 ^ 163 , name = "x" , modulus = x ^ 163 + x ^ 8 + x ^ 2 + x ^ 1 + 1 )
E = EllipticCurve ( K , ( 1 , K . from_integer ( 0x0108b39e77c4b108bed981ed0e890e117c511cf072 ) , 0 , 0 , K . from_integer ( 0x0667aceb38af4e488c407433ffae4f1c811638df20 ) ) )
E . set_order ( 0x03fffffffffffffffffffdf64de1151adbb78f10a7 * 0x2 )
G = E ( K . from_integer ( 0x0024266e4eb5106d0a964d92c4860e2671db9b6cc5 ) , K . from_integer ( 0x079f684ddf6684c5cd258b3890021b2386dfd19fc5 ) )
JSON {
"name" : "c2pnb163v2" ,
"desc" : "" ,
"oid" : "1.2.840.10045.3.0.2" ,
"form" : "Weierstrass" ,
"field" : {
"type" : "Binary" ,
"bits" : 163 ,
"degree" : 163 ,
"poly" : [
{
"coeff" : "0x01" ,
"power" : 163
} ,
{
"coeff" : "0x01" ,
"power" : 8
} ,
{
"coeff" : "0x01" ,
"power" : 2
} ,
{
"coeff" : "0x01" ,
"power" : 1
} ,
{
"coeff" : "0x01" ,
"power" : 0
}
] ,
"basis" : "poly"
} ,
"params" : {
"a" : {
"raw" : "0x0108b39e77c4b108bed981ed0e890e117c511cf072"
} ,
"b" : {
"raw" : "0x0667aceb38af4e488c407433ffae4f1c811638df20"
}
} ,
"generator" : {
"x" : {
"raw" : "0x0024266e4eb5106d0a964d92c4860e2671db9b6cc5"
} ,
"y" : {
"raw" : "0x079f684ddf6684c5cd258b3890021b2386dfd19fc5"
}
} ,
"order" : "0x03fffffffffffffffffffdf64de1151adbb78f10a7" ,
"cofactor" : "0x2" ,
"characteristics" : {
"seed" : "53814C050D44D696E67687561517580CA4E29FFD"
}
}