Added predefined ECDSA stuff for other curves to the speed test.

This commit is contained in:
Ken MacKay
2013-06-05 22:54:05 -07:00
parent cf54aab3f5
commit 6945498f26
+188
View File
@@ -71,6 +71,68 @@ EccPoint g_public[10] = {
{0x80EE6E22, 0xF184553A, 0xBD4E27F1, 0x121DC4BF}},
};
EccPoint g_dsa_public[10] = {
{{0x3BF40ACD, 0x47C43515, 0x7EF7776C, 0x4A1A56BD},
{0x86C456C4, 0x7D5452B3, 0x5A71CB1C, 0x557E7DBA}},
{{0xBB2C4BC5, 0x92A6F258, 0x698C4132, 0x77EBD4F6},
{0x0DFCE2BE, 0x1E9F38D1, 0x1F1672BB, 0xE48AD5A6}},
{{0xC53665DE, 0xF796CDF3, 0xAE0165D2, 0x75CBA47E},
{0x7336153C, 0xCEE54F1A, 0x243001D7, 0x08C56FA2}},
{{0xAC487684, 0x989A06FF, 0x5812CF70, 0x418451C5},
{0xA092267D, 0xDB28AC7B, 0x79D772FA, 0x9898EE91}},
{{0xB7AA3ED1, 0x6DD68A8B, 0xB796926D, 0xA45256A1},
{0xE5D12EB9, 0xF56CE706, 0x9FA9840D, 0xE665F35E}},
{{0xDB11B8C2, 0x9A78D801, 0x523A90D2, 0xBACAB029},
{0x6C5C3F33, 0x34327C0D, 0x452020CC, 0x82BAE8A2}},
{{0xB72B7EC5, 0x2AF6DAAD, 0x1E3440C1, 0xDB15D156},
{0x04A0C7AF, 0xA262862B, 0xE9657086, 0x8196A8C9}},
{{0xA561E856, 0x3E9712FC, 0x38B4EC8D, 0x2ADD982A},
{0x3C45ECCB, 0xAD94F662, 0xDBA7EB71, 0xE50148A0}},
{{0x0CA79470, 0x34C49E8E, 0xB6C5D67B, 0xE548B400},
{0x219B9423, 0x2B1666AF, 0x8103E95D, 0xBA982BA1}},
{{0x1FC73855, 0xDEE2951E, 0xD7B2EA31, 0x8D5198A5},
{0x65463BE4, 0x91C22AED, 0xEBC4C954, 0xAC0F17CA}}
};
uint32_t g_dsa_hash[10][NUM_ECC_DIGITS] = {
{0x7EDFA046, 0xEDEF56B0, 0x204E9405, 0x6C221091},
{0x2F0A9913, 0xC0EBE74B, 0xFBF876BF, 0x5D85FC5A},
{0xE14B6614, 0xCA6DFFFB, 0x9A6C4C2E, 0x2B29E976},
{0xC8B0C1A0, 0x584FAC6D, 0xABC7A29C, 0x76B006BB},
{0xB68F9E9E, 0xC71ED804, 0x4EE9D024, 0x5DF1E934},
{0x2720E130, 0xCEC81D28, 0x34A948A3, 0xBB25B8AD},
{0x9790D3F2, 0xAEB49860, 0x0A225C6F, 0x2A359D47},
{0x3754231C, 0xDEAFB3C3, 0xEFD7EE61, 0x6D94A3CA},
{0xBDCAB305, 0xF54F6A93, 0x3EF92B4B, 0xE677CE89},
{0x2CD46627, 0xC8FEE21B, 0xF1C61AB0, 0x551DBF80}
};
uint32_t g_dsa_r[10][NUM_ECC_DIGITS] = {
{0x5A790759, 0xEDE0720D, 0xAC4E0253, 0x3E801589},
{0x78A47EC5, 0x7B1AD158, 0xE6477BCE, 0x3C60A807},
{0xEB15FA62, 0x7A0FB1E5, 0x9D54F52A, 0xB71DED39},
{0x7486F11C, 0x37278B55, 0x27BDB806, 0xB1DBC394},
{0xE4CF5A49, 0xE8BB70CF, 0x464327BF, 0x353F859D},
{0x7853BA1B, 0xDA416B63, 0x77E428D0, 0x16633DD3},
{0xAABEAEC1, 0x102ECA60, 0x72D40FC5, 0x31D4D6F5},
{0x79B42218, 0xA163F4E9, 0xF61B9347, 0x3966758B},
{0x26864C41, 0x13166783, 0x14040893, 0xBEEF727E},
{0x341E5A36, 0x1FB97317, 0x421F9268, 0xC93B8C3C}
};
uint32_t g_dsa_s[10][NUM_ECC_DIGITS] = {
{0xDE092D94, 0x416B7122, 0xA4E4BBF1, 0x76780756},
{0xDFC20351, 0x5D24542C, 0x387EF72C, 0x3CD22E7F},
{0xFAE39822, 0x6DE6BB76, 0x8D0DBF2B, 0x31148CAF},
{0xE07C437A, 0xECAD8CC0, 0xFB419885, 0xD391133D},
{0xCD64EFD6, 0xC7104127, 0xC5F5DC9E, 0x04433A75},
{0x3514A666, 0x0FDD88A3, 0x9D44DCD1, 0xC0852A04},
{0xB4D1F036, 0xBF91D4F3, 0x70E95E03, 0x0343B7AE},
{0x27A62A2B, 0x861B2FC3, 0x3411861F, 0xDA664A5F},
{0x168DED9E, 0x47C10A41, 0x88DF9A30, 0xB30EE524},
{0x7A19D7C2, 0x51AE91C0, 0x318DBAD9, 0xE520A100}
};
#elif (ECC_CURVE == secp192r1)
uint32_t g_private[10][NUM_ECC_DIGITS] = {
{0x8A8590BC, 0xF8FC6B96, 0x216D16F6, 0x5D471999, 0x77B54115, 0xA1C40C96},
@@ -209,6 +271,68 @@ EccPoint g_public[10] = {
{0x0DDC16BF, 0xC42D11FB, 0x68BA6066, 0xD25FF9C3, 0xCFAC0568, 0x0409A896, 0x5A644927, 0xC0A34E8C}},
};
EccPoint g_dsa_public[10] = {
{{0x18D873EA, 0x39AE8F76, 0x0D9DDF14, 0xFDF96E18, 0xD18C8DE2, 0x8135BB79, 0x15566888, 0x891E0DAF},
{0x777D39B7, 0x98A90AD4, 0x7F216E61, 0x3E0F34E6, 0xF72D42FB, 0x1DEE8A56, 0x10673174, 0x9B611C5E}},
{{0x75A2BC0F, 0x98885827, 0x3EB9B05E, 0xFC6CBDDB, 0xAB2BBB4E, 0x1EF5B0EF, 0xE352FEE3, 0x31103A4A},
{0xE9E02511, 0xC6933F71, 0xF91CB770, 0x0BB32241, 0x8A3610A6, 0x5181CCFC, 0x7BF2B528, 0xC65EE328}},
{{0x8E8FDA96, 0xD4940B61, 0x730FB48C, 0x8414D506, 0xC0FDE5D4, 0x76288DC2, 0x7E6CFD98, 0x74115202},
{0xEAB8055B, 0xB8A30A36, 0x96A2B0FF, 0x9653526A, 0x51AC810D, 0xA15D5E20, 0x04F62D6E, 0xD0964AEF}},
{{0xAD5584F7, 0xE5168460, 0x18CB97C5, 0x8CFD31E9, 0x43BC25DD, 0x95E892BB, 0x7D0D700B, 0xC6F56A48},
{0xB82D1C29, 0x8D7A3CF4, 0x0895D559, 0xEEFC6253, 0xAE76FFB9, 0xD64AF148, 0x702581E6, 0x71F20602}},
{{0x2BD179B3, 0xEA6394AE, 0xCC36D78C, 0xFA6C4C01, 0xFF80AB88, 0xF7822505, 0xA105C824, 0x264C601F},
{0xFFA138F2, 0xD6A50FD5, 0x68C8E24E, 0x893BF859, 0xBE85ABE6, 0x1A18A545, 0x402DFC68, 0x97DECCA1}},
{{0x989D70B9, 0xB9BC0F5A, 0xD254C3DE, 0xCFD676DC, 0x79036C40, 0xAFAE0328, 0x9C6D6FDE, 0x8AFD68EB},
{0xDE7906E9, 0x5827CB3A, 0xE0ADF5D1, 0x4A15A28B, 0xCF578F38, 0x51BD9D84, 0x169D7BDF, 0xD6CD966C}},
{{0xCED12835, 0x98FD1157, 0x982B6ABD, 0xC5598F07, 0x9470FA53, 0xAD15E384, 0xF4B2975E, 0x18823BD7},
{0x4EF0A284, 0xCEBFE692, 0xF3AAE784, 0xDE44E1A6, 0x9D9C4C6B, 0x985B4D15, 0xEF9832E9, 0xC9B158F5}},
{{0xA513F7BE, 0x228B5956, 0x17B8A7A1, 0x4BD679FA, 0x720039A2, 0xB8CCF1B0, 0xC3F6C90C, 0x59FCE442},
{0x82C1C024, 0x8FE7418B, 0x262AB509, 0xDCCD9F8C, 0x0FF58433, 0x570A90C9, 0x7F74A949, 0xB14A8D63}},
{{0x858B58D9, 0x9A050E73, 0x10C81CA4, 0x6D735E00, 0xD139EBCD, 0x0864A8A8, 0x485DFD2F, 0xE26D5883},
{0x52450736, 0x225DEE93, 0x4650B225, 0x5BDAD103, 0x2E0125AF, 0x38E99BAF, 0x71564A8A, 0x2B50F076}},
{{0x086EC167, 0x59A6A4FA, 0xB89841C8, 0x0155D1FF, 0xC99C16B3, 0xB540D0C4, 0x5E8667BA, 0xF2A38BE0},
{0xC2DB84F9, 0xC3901B10, 0x384CCD24, 0x4F567D3A, 0x05EB2115, 0x81543E6E, 0x27327C2F, 0x2AA9F064}}
};
uint32_t g_dsa_hash[10][NUM_ECC_DIGITS] = {
{0xE6728E95, 0xD3651B3C, 0xF6F7AC25, 0x75BAAF50, 0x47225E32, 0x107CB058, 0x5AC1BB66, 0xED8946C5},
{0xC90D7661, 0x26F96DB3, 0xDD46904B, 0x9D034D54, 0x17837A40, 0x8CC03EB1, 0xA77AB5C7, 0x7D98F3F7},
{0x045F5866, 0x4B889E18, 0x5C3F3A60, 0xE51B7A46, 0x8211110A, 0xB0A391D3, 0xF093DD69, 0x8B89ABAB},
{0xD14CF5FB, 0x1908D2A1, 0x46AF8825, 0x3C328E6B, 0xEFAC82B1, 0x0C8EFC5B, 0xFF4B7A96, 0xF79CAD6C},
{0xE1A0377D, 0xF7CC552F, 0xF1A77C9B, 0x970F2B2B, 0x8C0C941D, 0x4416C2E5, 0x43289FAE, 0x195709CE},
{0x9BB76089, 0x58927F12, 0x6D34DE46, 0x049DA7D8, 0x7FD185B1, 0xE1623BF1, 0x4D6F114F, 0xBB46C8B1},
{0x17C46C3D, 0xC8A78387, 0x5511FEFA, 0x663A06BB, 0x804D9C13, 0x8A7B4852, 0x0C216330, 0x47BC2C0D},
{0x7BEE0A02, 0xB1EA6297, 0x1F833451, 0x38C46969, 0x8E1B57FA, 0x619E8010, 0x97E7CA3A, 0x852EFAC6},
{0xCCB0A0BE, 0x002DD2B8, 0x5EC1E0C8, 0x902ADB5D, 0xEE61B6C2, 0xDC338B4D, 0x8971169B, 0xA025468F},
{0xC25040D7, 0xEFA05D26, 0x06FD4164, 0x01685417, 0x65B26C18, 0xE507C63C, 0x78151835, 0xF21A1C81}
};
uint32_t g_dsa_r[10][NUM_ECC_DIGITS] = {
{0x752CEDD6, 0x3ACF03F5, 0x7047C8DC, 0x666BB1F6, 0x5EF004A3, 0x43563063, 0xB0EC477F, 0x10D6DCFF},
{0xB4E00247, 0xDA76FBD7, 0x0BBE6FE6, 0xA8AD335C, 0x3F310230, 0xE33435ED, 0x6E63988B, 0xAB21C237},
{0x9D5D47B0, 0xF88F8750, 0x777F81FB, 0xDA43CF7E, 0x03C7747D, 0xD71F4EAE, 0xEB29DF0F, 0xA0463A84},
{0x47B2CAB8, 0x1A63B65E, 0x9E51C28E, 0x2B498C62, 0x6393F35B, 0x7F8C0E6A, 0x54EF3E42, 0x00285CCE},
{0x68B00F6A, 0x2D427150, 0x94A8EB56, 0xBF3889AE, 0x4F881BBD, 0x7FE09B9B, 0x5DF92E49, 0x691F937D},
{0x24FDEA59, 0x11DD1413, 0x140FBE19, 0xAB93E6A8, 0x1CA4E023, 0x3FE40149, 0x66829974, 0x9B3DE3AC},
{0x307C6772, 0xA23E25C8, 0xCA804A84, 0xBC79112D, 0xA9B93122, 0xBDC343D8, 0x7DD7AA62, 0xE9D627A0},
{0xE2B9C6E2, 0x3E2968B9, 0xE521C4C6, 0x560D0118, 0x0108A120, 0x85D5A3F9, 0xA493E4DF, 0x8E343389},
{0x6195BCCC, 0x5B8BFD58, 0x36AFEB2B, 0xD436795A, 0xBD5C703A, 0x632B17EF, 0x0C7CAB66, 0xD37543BC},
{0xD366ED64, 0x52D4262B, 0xD5257578, 0x64148E33, 0xFE70C3A2, 0x918D6343, 0x7373D477, 0xEBB23764}
};
uint32_t g_dsa_s[10][NUM_ECC_DIGITS] = {
{0x8689DA3C, 0x1AA06D96, 0x3BEF8370, 0x2AD62D8F, 0x496E16D6, 0xBF7DF354, 0xBD32DBD4, 0xD86CBAD6},
{0x185F288B, 0x9576CB4D, 0xFE3B3177, 0xB5268219, 0x25D85B59, 0xA514D68B, 0x52A1B30F, 0xBCBE9ED0},
{0x17FB6595, 0x8AEF955A, 0x17A6AFED, 0x7E875B5C, 0x6F87DF65, 0xB7C3180D, 0xBCA28436, 0x918D3C39},
{0xEACB0CF3, 0x2704FA24, 0xB5C7188F, 0xBA98BE5E, 0x203568F4, 0xC0BA9C8F, 0xF9C2BC33, 0xF91ECE84},
{0x33E76D6B, 0x3CA6435B, 0x3A7DF607, 0x8D2FD7A9, 0x82D90875, 0x5B878C00, 0xE4B1A979, 0x2B091507},
{0x5BE25154, 0xB40EEEA1, 0x600EA30C, 0xC9B60488, 0x334A7F03, 0x357F9AE5, 0xD56BB833, 0x97229A95},
{0xC06289E2, 0xD2E5DC74, 0x22510AD6, 0x8C8B2F7A, 0x22042D5D, 0x22380F73, 0x89F906E7, 0x81BAF5F4},
{0x3CB28206, 0x6D5D9C9F, 0x1CDE19FC, 0x19127450, 0x495A1B0C, 0xFB477AE1, 0xA06B2169, 0x1CCB184D},
{0xCA5A1EC4, 0x4FBF6CCD, 0x24CCAE61, 0x75C49C41, 0xCFA28FB5, 0xBA5D70BB, 0xB0D80AD5, 0x2A8E7A28},
{0xAFC08C0C, 0x949EF819, 0xB80751E5, 0x9E77D36C, 0x2338ADBF, 0xD3F84E20, 0x10E30B97, 0x617F0EF3}
};
#elif (ECC_CURVE == secp384r1)
uint32_t g_private[10][NUM_ECC_DIGITS] = {
@@ -223,6 +347,7 @@ uint32_t g_private[10][NUM_ECC_DIGITS] = {
{0x97401DB7, 0x470838F2, 0xA19A58D3, 0xF076BF50, 0xDFF21694, 0x1B8F8455, 0x653549B0, 0x1CCE5CFD, 0x66F90BBA, 0x09BF73AA, 0x1D01275D, 0xCEEB698B},
{0xB86CA4E0, 0x64F504D2, 0x5E2B318E, 0x7AD31C33, 0x3F293C53, 0xA0346206, 0x2ACA2DD4, 0x5BC53F6B, 0x3BB83FC2, 0xFC7DD83D, 0xC9CDD04A, 0x15DF8AD8},
};
EccPoint g_public[10] = {
{{0x65E712A5, 0xEDE6358A, 0xD8832C43, 0xE219F022, 0x38407198, 0xC5B58725, 0x14422FF2, 0x7D30DD2E, 0xCF59C6A9, 0x63B30AEF, 0x0EEBE494, 0x1E47A816},
{0x1E1CF55A, 0xDCC29967, 0xE59976B8, 0x5B6BDB4E, 0x52FF2D3F, 0x9C479240, 0xD14CA6B6, 0x2347BBFC, 0x7699F6E7, 0x0982F63D, 0xCE4805FC, 0x7D812D30}},
@@ -246,6 +371,69 @@ EccPoint g_public[10] = {
{0x577A106E, 0xC7AB93CD, 0x0E7A178A, 0x4B0A2242, 0xE3BAF83D, 0xEF4007E5, 0x24EF7AAF, 0x28B60061, 0xB7651BAA, 0xA8828076, 0x19A7406E, 0xAF38A8A1}},
};
EccPoint g_dsa_public[10] = {
{{0xD3E332D6, 0x249BC077, 0x5CC755C3, 0x5714B8F4, 0xBA7E8953, 0x97290E56, 0x3BFF7465, 0x0B981E65, 0x71112CF6, 0x62DA4A20, 0x1DE6428E, 0x73473E2B},
{0xDF4CBE72, 0x8B6D03F3, 0x449085DD, 0x76EF3C92, 0xF36EFCF8, 0x36D3BB2C, 0x660A2C2C, 0x61F0B283, 0x036BB8A4, 0x5BEF3386, 0xA02F73A0, 0xB971631A}},
{{0xBD6E7E57, 0xC66B19FA, 0x33B3D43B, 0x1FE2B670, 0x01DC9E93, 0x0EBCA2F4, 0xC784EBC7, 0x5C1017AC, 0xB3E22FCE, 0x858DC71D, 0x04107B20, 0xD9382A43},
{0xA24499FB, 0xCF6E973B, 0x7213CA47, 0x26F94F9F, 0x33C98928, 0x2669C8A4, 0x98A5F156, 0x722E9762, 0x90F895A0, 0x07C91FA6, 0x6C10228A, 0x6E5962FA}},
{{0x98B83820, 0x581A5DC9, 0x96E67A9D, 0xAE3C0A49, 0x00F20767, 0x1D4A5A00, 0xEC9E121B, 0xFBF82B11, 0xAA294108, 0x7EDD30D4, 0xE7E205A6, 0x46728FD4},
{0x710DCCFE, 0x0967BEC8, 0x232B4CBA, 0x3C923D5D, 0xA7803894, 0xCB2CE7B4, 0xBAB4E953, 0xFA0AEC5C, 0x4E0B974E, 0x528C95A9, 0x93CB093A, 0x25A69559}},
{{0x8C298594, 0x86DCBD37, 0x90901637, 0xD1B5BF43, 0x9CE73447, 0x9E7F53FA, 0xD555BC6D, 0xC23D2FDE, 0x2168A205, 0xE588FBB5, 0xD28D8173, 0x6A18E61D},
{0x48150D1D, 0xDB0BA409, 0xD231EA18, 0xFD066737, 0x9F9D9550, 0x1D0B0D54, 0xB5DBEA82, 0xA10DC099, 0xA544E10C, 0x7F8EED96, 0xA0FBAE6F, 0xCF0AEAFA}},
{{0xF796D9C5, 0x676FF98A, 0x794B1693, 0xE58B9181, 0x21002760, 0x37FC8101, 0x3AD7D6CD, 0x59B2719E, 0xB752C203, 0x15A9EF4F, 0x6E74B535, 0x30C0272F},
{0xA527EBA2, 0xFB4906B4, 0xF5A845CB, 0xD577692F, 0xDAEA139C, 0xE0EB23FA, 0xD41F46F1, 0xA8B81F21, 0x6AF0D9D7, 0x87DFE401, 0x8D4EB99A, 0xA797FB32}},
{{0xF28F1939, 0x390B87A7, 0xDF8391F6, 0x02F5F9CE, 0xA5701A81, 0x11733E37, 0xA6CF238C, 0x641599F3, 0xE9004778, 0x944548CE, 0x994D666E, 0x1F7726B8},
{0x9F1A4BA5, 0x9985A635, 0x77349744, 0x4C9CF84F, 0xF1C4B6C6, 0x95B1CEC8, 0xA01F1C30, 0xF6DAFDE3, 0xE02FB7B9, 0x549ACB11, 0x52AB9288, 0x485BD2B3}},
{{0xA4EE4886, 0x02DA346B, 0x9D58309C, 0xAC1E23A8, 0x9F472A1B, 0x2D6F238C, 0x75F2AC35, 0x746A689A, 0x919F3BBE, 0x6E915DD8, 0x8E69BFB9, 0xA2330A06},
{0x4A7206D6, 0x635611FD, 0x081C57B0, 0xD029A092, 0x9C861819, 0xFA113644, 0xCAC2C818, 0x8EBA15E4, 0x98C40CE4, 0x8165AFB7, 0x4289F7A1, 0x0B0BC00E}},
{{0x59499ABC, 0x4C4B3D84, 0xCFFDE2BB, 0x9A27FC9F, 0xD78EF2A4, 0xFA72A4C6, 0xA5DC64A9, 0x3CEE8356, 0x2FBA35CA, 0x5102CD08, 0xFA02E5FA, 0x29677349},
{0xA47BB38B, 0x3AE49D7F, 0xA18710D8, 0x5F693329, 0x01DC684D, 0xA33610C6, 0xD793A15C, 0x706240E2, 0x38430722, 0xCD0E8AB0, 0x6BB63B9C, 0x7DA17853}},
{{0xA9445022, 0xFB15F156, 0xB34825A6, 0x25BACE3B, 0x23AA8A17, 0x7C8C8EF0, 0xEA1B80B7, 0xB12938CB, 0x72C48D94, 0x0DBFE460, 0xF8F22405, 0x99EF1308},
{0xBAB95A43, 0xED9F7D5C, 0xE74CA167, 0xC11C03C3, 0x8B1C8A9A, 0xDC57E167, 0x77C237D1, 0x57148113, 0x77662710, 0x6FEB3110, 0x793FCCD7, 0x97CAF133}},
{{0xB4ACB0CD, 0xA3E6D45F, 0x96B9BFD6, 0x4AA18709, 0xAAABB349, 0x647F5A48, 0x15501AFB, 0xB4F8A65F, 0xF159AFD6, 0x25049E5E, 0xAE5BBFE0, 0x96940F8E},
{0xEC5DB2D0, 0x46484E71, 0x165E1430, 0x73F67EDF, 0x6D2AEE73, 0x8569DDAD, 0x76FF3CF2, 0x6A689B9B, 0x75D1D488, 0x8B587217, 0xD9B66858, 0x54258587}}
};
uint32_t g_dsa_hash[10][NUM_ECC_DIGITS] = {
{0x8EBD48C2, 0x4AE57927, 0x10A7AED7, 0x7DCB1F1D, 0x20953C48, 0x9D6762FF, 0x452DC8D6, 0xB9F93326, 0xEBB72C61, 0xC0034A87, 0x9D3642DF, 0x274A5C6E},
{0xED73018B, 0x1658F842, 0x2099D3EE, 0x6896C47E, 0x67FA1296, 0x5C6B9EB2, 0x3BCCDBC8, 0xF09C92B0, 0x8801852A, 0x3BE1F99D, 0xAF65FAB0, 0x13B6BD40},
{0xD1149608, 0xF41D6D9D, 0xB72403C6, 0x357A8FE7, 0x3F903381, 0xFEE74F7D, 0x2568B1C2, 0xC549A3AC, 0x109BCB14, 0x0E76F529, 0x37504740, 0x60BD6DF0},
{0x7D0EFBA7, 0x150EA6A3, 0xF6E62E78, 0x942F865C, 0x31E01B91, 0x7D143B36, 0x62760D9A, 0x70FEC370, 0x569FEEF9, 0x42FC0C7A, 0x8624F694, 0x99F8B104},
{0x4B690BBA, 0x72E1E9B2, 0x7ED8FCD8, 0x72751DF7, 0xF906A1D7, 0xE6B1C6A8, 0xDCAE9E22, 0x9B206351, 0x44263C5D, 0x698E29A8, 0x09E5ECA3, 0xCC868050},
{0x2A95C1C6, 0x40360467, 0x84FBFD3A, 0x02A7A88A, 0xB67BD9A7, 0x8F08763B, 0xA0F6E62C, 0x3D8FECB0, 0x87589B7A, 0xB379F745, 0x265EA359, 0x7E51F51E},
{0xF5D87CC8, 0x8C6D3159, 0x5CAC6D42, 0xAAE00C8A, 0x71A9B06B, 0xB6E992A0, 0xCA7BC049, 0x5D027928, 0xE32960E1, 0x6D1DA473, 0xF989FC99, 0x001125A6},
{0x0E9A59C1, 0x73667DD9, 0x38B91627, 0x5944E309, 0xC390D21C, 0xB7509C44, 0x772DFD29, 0x5894EC25, 0xAAA303EC, 0xA188B876, 0xE66A1B1A, 0x3AA4D54C},
{0x30DD559B, 0x7EAAEDCA, 0x987A72BE, 0x294C98B6, 0xB5C4DB7D, 0x6E638132, 0x753DC9B6, 0x86EA89BA, 0x9AB70A04, 0x00E9796F, 0xA56C97F5, 0x83F51149},
{0xBC39D992, 0x8BFE66FA, 0x36F4F688, 0x167129D1, 0x2D23177C, 0xA0E8F937, 0x43F718C8, 0xDDEC9037, 0x2E7A36D2, 0xA77FA995, 0xE8717D8D, 0x11A91DFD}
};
uint32_t g_dsa_r[10][NUM_ECC_DIGITS] = {
{0xC026C2A5, 0xEDE697E4, 0x32C917D1, 0x7C5E5712, 0xCC5E08A5, 0x02055E5A, 0xD445BFF3, 0xB766A9A6, 0x0470A3EB, 0x7F2C4DD6, 0xE939CF6C, 0xB2D0B984},
{0xDF066CB1, 0x53CFD07D, 0x784B473F, 0x91F8D082, 0x7555AFDC, 0x4E9B2D44, 0x53EBC293, 0xAB5F20F8, 0xD5DBBD43, 0xCE38EF93, 0x9C3E02CD, 0xBD4B054A},
{0x4BD6EFA0, 0x5F6837AC, 0xDA378B30, 0x8BE2015E, 0xA4E38575, 0x9757B18F, 0x8128FA93, 0x58DDC246, 0x14DC7C50, 0xEE78BA84, 0x5DF2987E, 0xB3E59779},
{0xBBF99F45, 0xCAA25920, 0xBFC3D5C5, 0x8B84E558, 0x7E815ABE, 0x02CEA18A, 0x2B13BC25, 0x5452BFDD, 0xDBD717C9, 0x0EF61393, 0x25AA51FA, 0x4A6C36B7},
{0xAD6ACE59, 0xB15D6911, 0x40477030, 0x919C542F, 0xACB43FFB, 0x1D410C28, 0x369ECBCB, 0x8D4D4459, 0xEBA14D13, 0x02563F3B, 0x33B58A1B, 0xC559D457},
{0x18B568E7, 0x45450917, 0xCAF4509D, 0x624D8FEB, 0x35DE782D, 0x503FD2F2, 0xD21D270B, 0x071E7ACB, 0x986E277B, 0x3EBE5C2E, 0x59CB49AB, 0xA898B4D8},
{0xF59DE399, 0x88B2B5D3, 0x66DE64AB, 0x2FC4B1F1, 0xAAF8A2A1, 0x77D97A3C, 0x739C6ACA, 0x249DBC99, 0x1B1DE447, 0x9F36C9E5, 0xA6BEA84D, 0xBC24A822},
{0x882BE6B7, 0x22FE63DD, 0xA55884D5, 0x93B040AE, 0xA660F93F, 0x011C187C, 0x09EFD7A8, 0x50CC8062, 0xB2502F8E, 0x149A4E6F, 0xD573B1D7, 0x0E281B44},
{0x51E23E6F, 0x1ACACF54, 0x4AA16CA7, 0x2698EEB0, 0xAAB8011B, 0x7A91FE9C, 0xE9C10D66, 0xC8D2E920, 0x6572CBE6, 0x4CE3D7E3, 0x2DADEFCA, 0xA6CBF357},
{0x6E1BA624, 0xEE319BA9, 0x23E55296, 0x9136FB3D, 0x6ADCB514, 0x765FCC58, 0xA07E4612, 0xA985A564, 0x012FD81A, 0xAD094F72, 0x3C1832F6, 0x4CE2096F}
};
uint32_t g_dsa_s[10][NUM_ECC_DIGITS] = {
{0xD00CBA5E, 0x591A9330, 0x765422ED, 0x823C6714, 0x2499AC43, 0x9E1DF897, 0xE9E91EAD, 0xCA709622, 0xECFEE776, 0xCD83AC59, 0xB04487E2, 0x086749F5},
{0xD72CB12C, 0xDD75FCF1, 0x702A8481, 0x5394D6F8, 0x93524A7F, 0x7D8BA760, 0x98BC3A01, 0x071F4E07, 0xCED4C4F3, 0x999A91AE, 0x4748B3AA, 0x05740D77},
{0x19AC533E, 0x2CB86358, 0x1293DA0B, 0x37BD79D6, 0xB9CE58F4, 0x6093CAB8, 0x9E2A96BA, 0xF9339815, 0x1C18117D, 0x895EACF9, 0xF1F78304, 0x3D52CCF6},
{0xB6D4385A, 0x3F8143B0, 0x61B54B1E, 0x3EE8A6E1, 0x918D1608, 0xE27D18AE, 0x9D2BB489, 0x28692E2D, 0x294ADBCF, 0xB1A1FEF6, 0xB992E240, 0x108C2E02},
{0x267E8A43, 0x2701D68C, 0xD5C8C949, 0x572C8A36, 0x87F85B18, 0x0A2A1E6E, 0x25627357, 0xAB738EB7, 0x8ED7C835, 0x5E013069, 0x281B3568, 0x238F8304},
{0x2EA963E5, 0x01A2A985, 0x2066A5FC, 0x6BF120D5, 0x3D18EEEE, 0x5AAF3865, 0xF6A0C084, 0xDEC73F42, 0x1365C42B, 0x9F173115, 0xE4C243C3, 0x5966782D},
{0x8E605B5D, 0x6745F7C4, 0x632FEBF0, 0xD77637A7, 0x9B8664B7, 0xB2BE7CC0, 0xF145537F, 0xC070A49C, 0x9888D86C, 0x551D2E4B, 0x88BE3CE2, 0x85EAA64D},
{0x9EDB17EB, 0xCE352939, 0xE7693C1A, 0xC5828FAA, 0x9ABC94FE, 0x645421AF, 0x0EC1CACB, 0x0A9594AC, 0xA5BEA008, 0x05B637DA, 0x1138AB32, 0x37D5C00B},
{0x85348E58, 0x13F9D8B4, 0xA4689940, 0xAA6594C6, 0xBBF82A70, 0x154090CB, 0xFA33B2B7, 0xF75D1D82, 0x2F5EB370, 0x95F8CBED, 0xB54DAFFC, 0x44E01249},
{0x01977D39, 0x691F5683, 0xCB0B32CC, 0x1A199DEB, 0x929A049F, 0xADDB297E, 0xC3F34E59, 0xA7276C0D, 0x18EA86EB, 0x2BCB655A, 0x104B963A, 0xE650D5A0}
};
#endif
int main()