curveParamDataOld.h   [plain text]


/*
 * curveParamDataOld.h - prototype FEE curve parameters (obsolete as of 4/9/2001)
 */
#warning Using obsolete curveParam data!
/*
 * q = 31   k = 1,  Weierstrass
 * a = 7    b = 1   c = 0
 */
static arrayDigit ga_w31_1_a[] = {1, 7};
static arrayDigit ga_w31_1_x1Plus[]   =
	{2,15438,14404};
	/* 943995982 */
static arrayDigit ga_w31_1_x1Minus[]  =
	{2, 10400, 19905};
	/* 1304504480 */
static arrayDigit ga_w31_1_plusOrder[]  =
	{2, 3848, 32769};
	/* 2147553032 */
static arrayDigit ga_w31_1_minusOrder[]  =
	{2, 61688, 32766 };
	/* 2147414264 */
static arrayDigit ga_w31_1_x1OrderPlus[] =
	{2, 8673, 4096};
	/* 268444129 */
static arrayDigit ga_w31_1_x1OrderMinus[]  =
	{2, 56863, 4095 };
	/* 268426783 */
static arrayDigit ga_w31_1_x1OrderPlusRecip[]  =
	{2, 30845, 16383};
static arrayDigit ga_w31_1_lesserX1OrderRecip[]  =
	{2, 8673, 4096};

/*
 * q = 31   k = 1,  Montgomery
 * a = 1    b = 0   c = 666
 */
static arrayDigit ga_m31_1_x1Plus[]   =
	{2, 61780, 6237};
	/* 408809812 */
static arrayDigit ga_m31_1_x1Minus[]  =
	{2,12973,30585};
	/* 2004431533 */
static arrayDigit ga_m31_1_plusOrder[]  =
	{2, 25928, 32768 };
	/* 2147509576 */
static arrayDigit ga_m31_1_minusOrder[]  =
	{2, 39608, 32767 };
	/* 2147457720 */
static arrayDigit ga_m31_1_x1OrderPlus[] =
	{2, 3241, 4096};
	/* 268438697 */
static arrayDigit ga_m31_1_x1OrderMinus[]  =
	{2, 4153, 273};
	/* 17895481 */
static arrayDigit ga_m31_1_x1OrderPlusRecip[]  =
	{2, 52572, 16383};
static arrayDigit ga_m31_1_lesserX1OrderRecip[]  =
	{2, 759, 960};

/*
 * q = 31   k = 1,  Montgomery, prime curve orders
 * a = 5824692    b = 2067311435   c = 0
 */
static arrayDigit ga_31_1P_x1Plus[]   =
	{1, 6 };
static arrayDigit ga_31_1P_x1Minus[]  =
	{1, 7 };
static arrayDigit ga_31_1P_plusOrder[]  =
	{2,59003,32766 };
	/* 2147411579 */
static arrayDigit ga_31_1P_minusOrder[]  =
	{2,6533,32769 };
	/* 2147555717 */
static arrayDigit ga_31_1P_x1OrderPlus[] =
	{2,59003,32766};
	/* 2147411579 */
static arrayDigit ga_31_1P_x1OrderMinus[]  =
	{2,6533,32769};
	/* 2147555717 */
static arrayDigit ga_31_1P_x1OrderPlusRecip[]  =
	{2, 6535, 32769};

static arrayDigit ga_31_1P_a[]  =
	{2,57524,88};
	/* 5824692 */
static arrayDigit ga_31_1P_b[]  =
	{2,43851,31544};
	/* 2067311435 */

/*
 * q = 40   k = 213,  Weierstrass
 * a = 1627500953    b = 523907505   c = 0
 */
static arrayDigit ga_40_213_x1Plus[]   =
	{1, 1 };
static arrayDigit ga_40_213_x1Minus[]  =
	{1, 2 };
static arrayDigit ga_40_213_plusOrder[]  =
	{3,11655,25,256};
	/* 1099513277831 */
static arrayDigit ga_40_213_minusOrder[]  =
	{3,53457,65510,255};
	/* 1099509977297 */
static arrayDigit ga_40_213_x1OrderPlus[] =
	{3,11655,25,256};
	/* 1099513277831 */
static arrayDigit ga_40_213_x1OrderMinus[]  =
	{3,53457,65510,255};
	/* 1099509977297 */
static arrayDigit ga_40_213_x1OrderPlusRecip[]  =
	{3, 18925, 65435, 1023};
static arrayDigit ga_40_213_lesserX1OrderRecip[]  =
	{3, 12081, 25, 256};

static arrayDigit ga_40_213_a[]  =
	{2,45465,24833};
	/* 1627500953 */
static arrayDigit ga_40_213_b[]  =
	{2,12721,7994};
	/* 523907505 */

/*
 * q = 127  k = 1
 * a = 1    b = 0  c = 666
 */
static arrayDigit ga_127_1_x1Plus[]  =
	{8,     24044, 39922, 11050,
	 24692, 34049, 9793,  1228, 31562};
	/* 163879370753099435779911346846180728300 */
static arrayDigit ga_127_1_x1Minus[] =
	{8,49015,6682,26772,63672,45560,46133,24769,8366};
	/* 43440717976631899041527862406676135799 */
static arrayDigit ga_127_1_plusOrder[]  =
	{ 8,     14612, 61088, 34331,
	  32354, 65535, 65535, 65535,
	  32767};
	/* 170141183460469231722347548493196835092 */
static arrayDigit ga_127_1_minusOrder[] =
	{ 8,     50924, 4447, 31204,
	  33181, 0,     0,    0,
	  32768 };
	/* 170141183460469231741027058938571376364 */
static arrayDigit ga_127_1_x1OrderPlus[] =
	{6,     8201,  61942, 37082,
	 53787, 49605, 7887 };
	/* 9535713005180210505588285449 */
static arrayDigit ga_127_1_x1OrderMinus[] =
	{6,    14659, 1977,16924,
	 7446, 49030, 1};
	/* 2113371777483973234080067 */
static arrayDigit ga_127_1_x1OrderPlusRecip[]  =
	{6, 21911, 8615, 0, 40960, 64107, 8507};
static arrayDigit ga_127_1_lesserX1OrderRecip[]  =
	{6, 44759, 65533, 17695, 61560, 18883, 2};

/*
 * This is only used for the FEE_DEPTH_127_GEN (FPT_General) case.
 */
static arrayDigit ga_127_1_bp[] =
	{8, 65535, 65535, 65535, 65535, 65535, 65535, 65535, 32767};

/*
 * q = 127  k = 1,  Weierstrass
 * a = 666  b = 1   c = 0
 */
static arrayDigit ga_127_1W_x1Plus[]  =
	{8,     8152,  12974, 29415,
	 29630, 64916, 34821, 65368,
	 29317};
	/* 152227746030289977478827896983637598168 */
static arrayDigit ga_127_1W_x1Minus[] =
	{8,     33297, 13207, 15262,
	 22815, 21569, 49926, 18455,
	 22807};
	/* 118422176668700242826570137796135584273 */
static arrayDigit ga_127_1W_plusOrder[]  =
	{8,     7568,  62409, 28235,
	 47403, 65534, 65535, 65535,
	 32767 };
	/* 170141183460469231708136695161971875216
           = 2 * 2 * 2 * 2 * 11 * 17 * 47 * 103 * 10861 *
             1081540940469355570836125423 */
static arrayDigit ga_127_1W_minusOrder[] =
	{8, 57968, 3126,37300, 18132, 1, 0, 0, 32768  };
	/* 170141183460469231755237912269796336240
           = 2 * 2 * 2 * 2 * 3 * 5 * 19 * 34267 *
             1088851169917897274673487152937 */
static arrayDigit ga_127_1W_x1OrderPlus[] =
	{ 6, 46831, 48825, 15584, 56652, 41267, 894 };
	/* 1081540940469355570836125423 */
static arrayDigit ga_127_1W_x1OrderMinus[] =
	{7, 1833, 34556, 10366, 60186, 37860, 48708, 13};
	/* 1088851169917897274673487152937 */
static arrayDigit ga_127_1W_x1OrderPlusRecip[]  =
	{6, 48506, 2992, 0, 28160, 5127, 1172};

/*
 * q = 160   k = 57
 * a = c = 0      b = 3
 */
static arrayDigit ga_160_57_x1Plus[] =
	{10,12520,51433,52060,51310,41288,18467,39861,56172,11574,31757};
	/* 708208703989516599321256243677211664634713026792 */
static arrayDigit ga_160_57_x1Minus[] =
	{10,40240,19544,56125,45242,10556,34052,10700,5155,57632,13213};
	/* 294679357488322649182890242541447794429265485104 */
static arrayDigit ga_160_57_plusOrder[] =
	{11,62853,63609,4196,64365,22452,1,0,0,0,0,1};
	/* 1461501637330902918203686455826517732113793021317 */
static arrayDigit ga_160_57_minusOrder[] =
	{10,2571,1926,61339,1170,43083,65534,65535,65535,65535,65535};
	/* 1461501637330902918203683209606048307198072064523 */
static arrayDigit ga_160_57_x1OrderPlus[] =
	{5,171,21451,35098,934,63868};
	/* 1178156913548056058331307 */
static arrayDigit ga_160_57_x1OrderMinus[] =
	{7,255,39523,10835,12387,25442,37088,9774};
	/* 774420897524543052406523561181439 */
static arrayDigit ga_160_57_x1OrderPlusRecip[] =
	{6, 49805, 35001, 38758, 35853, 1711, 1};
static arrayDigit ga_160_57_b[] = {1, 3};		/* b = (giant)3 */

/*
 * This is only used for the FEE_DEPTH_160_GEN (FPT_General) case.
 */
static arrayDigit ga_160_57_bp[] =
	{10,65479,65535,65535,65535,65535,65535,65535,65535,65535,65535};
	/* 1461501637330902918203684832716283019655932542919 */


/*
 * q = 192  k = 1425
 * a = 0   b = -11  c = 0
 */
static arrayDigit ga_192_1425_x1Plus[]  =
	{12,    44344, 60264, 44908,
	 24163, 37728, 58781, 45290,
	 62313, 45939, 59670, 20046,
	 8781};
	/* 841082007613983662909216085212018592355989658924032240952 */
static arrayDigit ga_192_1425_x1Minus[] =
	{12,32855,61817,23700,48262,13770,23791,31597,23825,7973,37638,
	 62245,25400};
	/* 2432927643133372385673335524462623851522707126886260637783 */
static arrayDigit ga_192_1425_plusOrder[]  =
	{13,    7615,  52517, 60178,
	 40906, 43135, 27853, 1,
	 0, 0, 0, 0, 0, 1};
	/* 6277101735386680763835789423320567585182165941785488334271 */
static arrayDigit ga_192_1425_minusOrder[] =
	{12,    55073, 13018, 5357,
	 24629, 22400, 37682, 65534,
	 65535, 65535, 65535, 65535,
	 65535};
	/* 6277101735386680763835789423094765247022544947142580688673 */
static arrayDigit ga_192_1425_x1OrderPlus[]  =
	{11,    55217, 35908, 19375,
	 13869, 14836, 18343, 39323,
	 50251, 7215,  49984, 21171};
	/* 30942565846835947234516838572438382480699614724151217 */
static arrayDigit ga_192_1425_x1OrderMinus[] =
	{12,    42525, 5637,  42463,
	 55864, 53758, 3234,  41914,
	 27439, 9168,  44294, 64393, 2};
	/* 285673405333212613836790125294441598644816135581967901 */
static arrayDigit ga_192_1425_x1OrderPlusRecip[]  =
	{11, 31243, 31728, 18067,
	 25698, 58801, 65534, 65535,
	 65535, 65535, 49151, 50715};
static arrayDigit ga_192_1425_b[] =    {-1, 11};	/* b = (giant)(-11) */

/*
 * q = 192  k = -529891
 * a = -152   b = 722     c = 0
 */
static arrayDigit ga_192_M529891_x1Plus[]  =
	{12,   27752, 118,   22193,
	28093, 63505, 16219, 38086,
	5777,  13552, 56652, 28149,
	56180};
	/* 5381016108938327910020782805833379575685074837329310805096 */
static arrayDigit ga_192_M529891_x1Minus[] =
	{12,    20031,  4376, 4872,
	 24519, 24047, 14628, 60533,
	 27380, 49464, 20541, 38806,
	 59062};
	/* 5657072442654455186533371860713762559076927475376430009919 */
static arrayDigit ga_192_M529891_plusOrder[]  =
	{13,    5604,  8,     0,
	 0,     0,     0,     2,
	 0,     0,     0,     0,
	 0,     1};
	/* 6277101735386680763835789423366122741130884119651122943460 */
static arrayDigit ga_192_M529891_minusOrder[] =
	{12,    5604,  8,     0,
	 0,     0,     0,     65534,
	 65535, 65535, 65535, 65535,
	 65535};
	/* 6277101735386680763835789423049210091073826769276947142116 */
static arrayDigit ga_192_M529891_x1OrderPlus[]  =
	{12,    28623, 26214, 26214,
	 26214, 26214, 58982, 16681,
	 4766,  10724, 40513, 58386,
	 297};
	/* 28532280615394003471980861015300557914231291452959649743 */
static arrayDigit ga_192_M529891_x1OrderMinus[] =
	{11,    18083, 10335, 12214,
	 61896, 30741, 14099, 7255,
	 33291, 27015, 23037, 196};
	/* 286968072376896521631921223217092198374509106906787 */
static arrayDigit ga_192_M529891_x1OrderPlusRecip[]  =
	{12, 58420, 65535, 65535,
	 65535, 65535, 63775, 65535,
	 65535, 65535, 65535, 65535, 879};
static arrayDigit ga_192_M529891_lesserX1OrderRecip[]  =
	{11, 65535, 65535, 65535, 35223,
	 667, 0, 0, 0, 0, 50380, 333};
static arrayDigit ga_192_M529891_a[] =    {-1, 152};	/* a = -152 */
static arrayDigit ga_192_M529891_b[] =    { 1, 722};	/* b = 722 */

/*
 * FPT_General, 161 bits
 */
static arrayDigit ga_161_gen_bp[] =
	{11,41419,58349,36408,14563,25486,9098,29127,50972,7281,8647,1};
	/* baseprime = 1654338658923174831024422729553880293604080853451 */
static arrayDigit ga_161_gen_x1Plus[] =
	{10,59390,38748,49144,50217,32781,46057,53816,62856,18968,55868};
	/* 1245904487553815885170631576005220733978383542270 */
static arrayDigit ga_161_gen_x1Minus[] =
	{10,62588,37264,57758,58571,20023,11302,61317,50155,46534,18610};
	/* 415032703104741702601157337572231150005648422012 */
static arrayDigit ga_161_gen_plusOrder[] =
	{11,41420,58349,36408,14563,25486,9100,29127,50972,7281,8647,1};
	/* 1654338658923174831024425147405519522862430265804 */
static arrayDigit ga_161_gen_minusOrder[] =
	{11,41420,58349,36408,14563,25486,9096,29127,50972,7281,8647,1};
	/* 1654338658923174831024420311702241064345731441100 */
static arrayDigit ga_161_gen_x1OrderPlus[] =
	{8,59671,64703,58305,55887,34170,37971,15627,197};
	/* 1024120625531724089187207582052247831 */
static arrayDigit ga_161_gen_x1OrderMinus[] =
	{10,49675,56911,64364,6281,5543,59511,52057,44604,37151,2};
	/* 57243552211874561627142571339177891499852299 */
static arrayDigit ga_161_gen_x1OrderPlusRecip[] =
	{8, 7566, 37898, 14581, 2404, 52670, 23839, 17554, 332};

static arrayDigit ga_161_gen_a[] =    {-1, 152};	/* a = -152 */
static arrayDigit ga_161_gen_b[] =    { 1, 722};	/* b = 722 */