diff options
Diffstat (limited to 'src/tests/data/bn/powmod.vec')
-rw-r--r-- | src/tests/data/bn/powmod.vec | 195 |
1 files changed, 195 insertions, 0 deletions
diff --git a/src/tests/data/bn/powmod.vec b/src/tests/data/bn/powmod.vec new file mode 100644 index 000000000..a84659768 --- /dev/null +++ b/src/tests/data/bn/powmod.vec @@ -0,0 +1,195 @@ +[ModExp] +Base = 0x1 +Exponent = 0x0 +Modulus = 0x2 +Output = 0x1 + +Base = 0x2 +Exponent = 0x67 +Modulus = 0x96 +Output = 0x8 + +Base = 0xF53 +Exponent = 0x17C +Modulus = 0xFC1 +Output = 0x1 + +Base = 0x5EBDAA +Exponent = 0x86CA74C +Modulus = 0xAB17B43 +Output = 0x4760F28 + +Base = 0x8466D0C17 +Exponent = 0x67CA63635 +Modulus = 0xCAAD20657 +Output = 0x4484225E9 + +Base = 0x7DF406A87 +Exponent = 0x508DF4A9D +Modulus = 0xFD2785061 +Output = 0x16FAB14EE + +Base = 0x153014C3EDA6813C33 +Exponent = 0x3F015 +Modulus = 0x107A2F9D441C723BD789 +Output = 0x1511E0BE0F7631CF62 + +Base = 0x2 +Exponent = 0x400 +Modulus = 0x77E8F1591092967F286A46030CCDE683 +Output = 0x4C2C52EB1054E501720FDCC043CEB086 + +Base = 0x2 +Exponent = 0x1000 +Modulus = 0x43729A4BE70 +Output = 0x466BDEBE40 + +Base = 0x2 +Exponent = 0x1FFE +Modulus = 0x81E644685F4B7EE718F2E18F84195651CBB7B27 +Output = 0x3EFEF820185A68AEC5F04D44FA3B0906721CD1A + +Base = 0x2 +Exponent = 0x10001 +Modulus = 0x1B63761AFCD7F89A44714FB1ADDFA28668B5808ECAEDFC5930FE44965503F5B517D0430C9612BE6FC1E4EC2275F0FB6A05F729AC0B +Output = 0x175E1C5F2E9B222B6F98898B694DEB7D5F0549130A24850B7A1B4E78D3CC6B791C1F8F2F7934DBEADC3DBAFE3F91A21E7D563269C3 + +Base = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +Exponent = 0x5000000000000000000000074AED6FE50A167FD03000000030000000000000058ABD6FE4C24510367A7E36EECF121FF58ABD6FE186725FF0000000067A7E36E4C24510304CD23FF2000000000000000000000001B98192F0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010001 +Modulus = 0x18000000000000000000000000000007FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001 +Output = 0x11A0D334E187609000A94A5C70A9BE6023C0E37127FB8CB79DD822C3D9969692CA8241937C6A5AE6F818B16056838E58702C4081908C35FA33D9380F2A91B9C943CC8930337EFAA6D146B26030FA7B3FE07D5ECFE08B9F5D0DB25439AC232DED14CCC30CFE06D389B6D9A1B7B9EA0BB1B8A5D3CA15F3006A0D232A3F7CE1C3E9ADE55965C75A896D2F1EBF45E3C3A28D368412AED6E90C0D4E71D882197AFD52C3D22C8ED705AC096E55E3D6EE1E5A6E91C7C0175377E4094589D65201507D6EC493D9B5D807F720CF029EA958EE5B33656DE875E973AC607F9F93E687582A5104DF8FF8EBE247B4B27EA37AAB82989CCEE5126D49D6A9886A8EFFCA57379890504D04FD4D79F539C6D0ABCC44C851EAAC381CACA826487A56D0FDA8824BCC86F96A04C34A07B024B0E1186F2ECE5E24420619836D110AA9C23A917F7978AE9839 + +Base = 0xDF2F1FE817 +Exponent = 0x61FC837F5533B6E7B2EE3F52AB56F5C0589498D2D4B71A7A671167C770C04 +Modulus = 0xDA22C7614016834D35447546DE13EF75CD9FC5DB3C1C288E2AAD327C1CADDB +Output = 0x467902F517D87B73F3E80886FBAD58A2EB5802357332E5E5F2A29A3AA65225 + +Base = 0x3E1 +Exponent = 0x5978AD6F0C41D9E6A18E639644703285F96C10C679486F4D548B82624EAE11 +Modulus = 0x6E8E5805A00D7013542D3E31F8A52B0591C09CD8C8267DB275A667329BC931 +Output = 0x2B31F1B1C994C95C92261D2BF3798E95BC4B3CA33ACD8622622CA200B6F6FB + +Base = 0x16CD +Exponent = 0x1412029F7 +Modulus = 0x74FA74286E240E3DF02A518674E31B66AA1ABE2038C311C437802BD2C4DF30E9 +Output = 0x5B3617148E895F7D63F3216FFE940197D3A564EE652A1B7EE1F84EEC7D84F016 + +Base = 0x2E2C +Exponent = 0x329A5581DDF9C439EE1D22B176255CB7AA672728CFCEA12F531D9889ABEF +Modulus = 0x19DB2CD3ED192BDB3BE14B52A22078F4AE69448B22FB3C47B803A2535B3F762D +Output = 0xAC89E841A0426615B950D0C1CE728E85717E6BF49E9A2BAAC4514E9CC8A6BBD + +Base = 0x138615 +Exponent = 0x2127B4E1C672A6EF82093E16728A170D8A99E179ADE1344572888D783E52 +Modulus = 0x567E4E7DF343DF0314D70D9C43635E4CA8D9FE41BC3901C8EE05C4A4F479 +Output = 0x4F775AAE8BABA7A2AA1A91CA86FC8EC9315F26443D0952F64CECD24B768F + +Base = 0xA96CAEE6F99D9055DDCC9A67E1AAACCCBEB40D2AFA23565D2AAD14A0E696 +Exponent = 0x247 +Modulus = 0xC34845CD0DA4F10377B4C6E5A4623C8EE57203AD6115781D3C5923E974F5 +Output = 0x8EF8B5D459374F77917BF2A7313839A48E2431D19B298338A589CD8EBCED + +Base = 0x1675F91BEA439A713EB30C74808BA9DC66ACA3434F174D2E5FEBBA71AF65CB +Exponent = 0x2D2B8E04C242812E51B344CC0C2A98237007F9ACD0DE78DC468A9CFF2D49BA +Modulus = 0x5F35406DFB34FF909E03EAC32CB6DB15E5CEFA0E59E988865FF1252A58DDCB +Output = 0x5CC3F888B0EE4B4FE58BFA4DB22C208E263D160A61D7525E0BA1A96A6F89D + +Base = 0x16424C11E95C77C77A2BDAFC609AFE148 +Exponent = 0x1234184727EED9852361FAFCAC391BFBE +Modulus = 0x1A16EB76865E864137D7C72C34A3FA2DB +Output = 0x151AE807B0CE712C115FEC5951E7E9F0B + +Base = 0x12051528C4525101CF07EC5E3FE9EF476 +Exponent = 0x3BD6BA22DE280B77FAEDD1A70CE82C2B68BD +Modulus = 0x6E34D5DB17775C0817A89867EBF663ECFA79 +Output = 0x65A6609E9463D28CACEA2E0C8557B93DE15 + +Base = 0x2FB5C95D5702990E91A7F439800C51988530BFB +Exponent = 0x81721C65F5D8F9C6206549E5C8606509 +Modulus = 0x4A98FB939327EE13C11013A1C352F4C047A9D0B4B874D7B387D6BD795BF73BE778A92C5297BAB409F3A14DC993197 +Output = 0x1CEEF3177FFD9880EC503660284939B934A122CD5E92880B36B5E86B7D3D7A6C327FE047CCD74FEA3D444F4340FF7 + +Base = 0xBF791361D54005F624FEB32A5EECAFFD2243C3088F8945569ACE8E0E0D0B00489B4ADA19F5967B82A098DB97 +Exponent = 0xA9F22D3362DA654FBA8F884C4B386ED27D5F419684B8D56C5C95CBE65C05AAB9EA74D8EC41C0D79FC089A86F +Modulus = 0x101F513C66DFB89F1ED0D03E0ED1F2FA3FE1AC6B86DFDB352D2B5979154D2C22C763101997DB94E91D777B3B7 +Output = 0x79998AC2C00348A5C5C166D5948805AFC5F4B7A85C14312842830FF93EC7B678CC59E21DAD6C531BA5E2142C + +Base = 0x2D76D19D8AB4D88E3C1D0286DCE731C4BE9CA39BA0A329256A2BFBC9F6994A061424FCD955AB996196F8BD0DE0344 +Exponent = 0xC428A6F75C999585FBBC7CF9F6926D71D30DEEC76886FEEDF49CCB0D95FF46101C217551278455BD26675CD50E0 +Modulus = 0x796AC6B1AF58EB618DB5C07DF2901A45B07E36FF5AB7E2F531D8F21A337BE4750617CF632BC6360A0B7A9219D3089 +Output = 0xCB92647CAB4D0ECDED534799957780D7617C3EC6C9834B2A829A13CC0E861EFC3529B056CC9FE05CE52F96B851F2 + +Base = 0x1EE84446B082ADEA57DB1981FA4615E5F3 +Exponent = 0xE20B04652F017DC01EBC1C57E6FC598E9E +Modulus = 0xFA7C9F013AFC6FBC7E4A1F3EAF8DFABE8F3DE9292A4E8CCAB4621DDB24E20E25E8289E3D79B484643B1E9ECCC74E79 +Output = 0x70D1913C72834BAFDBBBCBCF7A856DA47D1277359A668891D2022E3DF4A723A8D10ACA7C7D5FF3021EAAF5DD34B02E + +Base = 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +Exponent = 0xB69B09104B6014D160140841309969A4 +Modulus = 0x8DFA80DF945656CAF186B302053E2F1CE6642A2CEC217CC4FB3714CE0EE5E3D11EA777115F24F3F53EEC9A1A18613 +Output = 0x8CC7007D059A8C83BD42518EB540E1218BE0E0F1AAC1687F31A0D1472E16F379C7C1CE0096AD5FB47501426DDBE1A + +Base = 0xAB155850CDCF1D13A6FE80EC25C8D17A4F5 +Exponent = 0x280A08AA00A220AA002A20A0800A0008AA2 +Modulus = 0xB0AF5E718307F0F558FF91A5DC7578F9E2D +Output = 0x9907A436B00B46A54D393E428D2B42E742D + +Base = 0x40147F79DA93E8D3F21A11E66D2F08F445BABB7AB7C3C2EF1B94312E6CBF347DC65831F7C49EE202F8E6F77233FB3EF7E462D5E4D3C81DA2CBC9335F9B1A7F51 +Exponent = 0x2 +Modulus = 0x962EDDCC369CBA8EBB260EE6B6A126D9346E38C5 +Output = 0x51ADA2F6C0DD379DEA6F45A50B91E9A7A3481EA6 + +Base = 0xFFFFF80000000000 +Exponent = 0xBFE01FFFFFFFFFFF +Modulus = 0xFFFFFFFFFFFFFFFF +Output = 0x8735B122788A46DC + +Base = 0x70000000FFFFFFBF02 +Exponent = 0x1FFFFBBFFFFFFFC002 +Modulus = 0x800000000000003FFE +Output = 0x609529A3F5345D0A1A + +Base = 0x3D80000807C000180F +Exponent = 0x7E037FC10007FFFFF80E +Modulus = 0x80007FFFFFF8000007F0 +Output = 0x24F01062C097A00AE0C1 + +Base = 0xBE0000000000000007FFFF +Exponent = 0x7000FFFFF800200000 +Modulus = 0xFFFF8FFF000003FFFFFFFF +Output = 0xD34CC02D9BBB5F1B3FD65E + +Base = 0x7F7FF007FFFFEFFF00000079 +Exponent = 0x8000000000000000003FFFFC +Modulus = 0x807FFFFFFFFFF000FFFFFFFF +Output = 0x3A298451F401ED3F361B3E83 + +Base = 0xFFE0000FFF80003F00000000FF +Exponent = 0x7FF7C00200 +Modulus = 0xFFFFFFC00000000000003FFFFF +Output = 0xCAEB2FF794C6783C4F1F06E684 + +Base = 0x7FFFF8FFFE00FFFBFFE000003FFF +Exponent = 0x3F8FFFE00FFFC00000000006F +Modulus = 0x8000070001FF0003FFFFFFFFC001 +Output = 0xCCAC1B86140C6F650017FE6993A + +Base = 0xFFFF000007FFE00000000003FFFFFF +Exponent = 0x8000000001FFFE0001FFFFFFFFFFFF +Modulus = 0xFFFFFFFFFFFF0000000000000000FF +Output = 0xE6E68CFB5864CC3EC011E84DAD071 + +Base = 0x7EF80009FFFFFFFFFFFFFDFFFE00020 +Exponent = 0x81FFFF000000003FFFFFFFFFFFF3FF3F +Modulus = 0xF8007FFF8000000000000000001FFFE0 +Output = 0xBF5C09CB4AAFFE50A5598A04E403D9E0 + +Base = 0x7BFFFFFFBFF7900003FFFFFE +Exponent = 0xFFFFFFFC0000000007800003FFFBFF +Modulus = 0x800000000003FFFFFFFFF87FFFFC000001 +Output = 0x1729F5569C1B022EBDF418F5A084D6D069 + +Base = 0xF9FFFFF000000FFFFFFFFFFFFFFFC0000000 +Exponent = 0x83FFFF000000000000000003FFFFFFFFFFFF +Modulus = 0xFFE007FFF9F83FFFFF8F000FFFFFFFFFFFFF +Output = 0xA917797602DADCC854BD67D27E86BB1D6575 |