From 0552f7ad51882ec364320df6226d266a44d09729 Mon Sep 17 00:00:00 2001 From: timemarkovqtum Date: Tue, 8 Aug 2023 14:16:46 +0200 Subject: [PATCH] Add qtum libs --- .gitmodules | 3 + src/cryptopp/3way.cpp | 143 + src/cryptopp/3way.h | 68 + src/cryptopp/Doxyfile | 2375 +++++ src/cryptopp/Filelist.txt | 432 + src/cryptopp/GNUmakefile | 804 ++ src/cryptopp/GNUmakefile-cross | 268 + src/cryptopp/Install.txt | 185 + src/cryptopp/License.txt | 51 + src/cryptopp/Readme.txt | 633 ++ src/cryptopp/TestScripts/coverity-linux.txt | 32 + src/cryptopp/TestScripts/coverity-macosx.txt | 36 + src/cryptopp/TestScripts/coverity-windows.txt | 30 + src/cryptopp/TestScripts/cryptdll-windows.cmd | 18 + src/cryptopp/TestScripts/cryptest-android.sh | 44 + .../TestScripts/cryptest-coverity.cpp | 13 + src/cryptopp/TestScripts/cryptest-ios.sh | 40 + src/cryptopp/TestScripts/cryptest-symbols.sh | 355 + src/cryptopp/TestScripts/cryptest-windows.pl | 41 + src/cryptopp/TestScripts/cryptest.sh | 5762 +++++++++++ src/cryptopp/TestScripts/make-benchmarks.sh | 166 + src/cryptopp/TestScripts/master-merge.sh | 63 + src/cryptopp/TestScripts/setenv-android.sh | 402 + src/cryptopp/TestScripts/setenv-embedded.sh | 142 + src/cryptopp/TestScripts/setenv-ios.sh | 293 + src/cryptopp/TestVectors/Readme.txt | 85 + src/cryptopp/TestVectors/aes.txt | 241 + src/cryptopp/TestVectors/all.txt | 41 + src/cryptopp/TestVectors/blake2.txt | 4 + src/cryptopp/TestVectors/blake2b.txt | 439 + src/cryptopp/TestVectors/blake2s.txt | 223 + src/cryptopp/TestVectors/camellia.txt | 8646 +++++++++++++++++ src/cryptopp/TestVectors/ccm.txt | 240 + src/cryptopp/TestVectors/chacha.txt | 120 + src/cryptopp/TestVectors/cmac.txt | 38 + src/cryptopp/TestVectors/dlies.txt | 542 ++ src/cryptopp/TestVectors/dsa.txt | 397 + src/cryptopp/TestVectors/dsa_1363.txt | 553 ++ src/cryptopp/TestVectors/dsa_rfc6979.txt | 662 ++ src/cryptopp/TestVectors/eax.txt | 75 + src/cryptopp/TestVectors/esign.txt | 93 + src/cryptopp/TestVectors/gcm.txt | 168 + src/cryptopp/TestVectors/hkdf.txt | 175 + src/cryptopp/TestVectors/hmac.txt | 281 + src/cryptopp/TestVectors/keccak.txt | 861 ++ src/cryptopp/TestVectors/mars.txt | 66 + src/cryptopp/TestVectors/nr.txt | 615 ++ src/cryptopp/TestVectors/panama.txt | 76 + src/cryptopp/TestVectors/rsa_oaep.txt | 1765 ++++ src/cryptopp/TestVectors/rsa_pkcs1_1_5.txt | 89 + src/cryptopp/TestVectors/rsa_pss.txt | 2083 ++++ src/cryptopp/TestVectors/rw.txt | 166 + src/cryptopp/TestVectors/salsa.txt | 463 + src/cryptopp/TestVectors/seal.txt | 137 + src/cryptopp/TestVectors/seed.txt | 19 + src/cryptopp/TestVectors/sha.txt | 59 + .../TestVectors/sha1_160_fips_180.txt | 519 + src/cryptopp/TestVectors/sha1_fips_180.txt | 3 + .../TestVectors/sha2_224_fips_180.txt | 519 + .../TestVectors/sha2_256_fips_180.txt | 519 + .../TestVectors/sha2_384_fips_180.txt | 1031 ++ .../TestVectors/sha2_512_fips_180.txt | 1031 ++ src/cryptopp/TestVectors/sha2_fips_180.txt | 6 + .../TestVectors/sha3_224_fips_202.txt | 983 ++ .../TestVectors/sha3_256_fips_202.txt | 951 ++ .../TestVectors/sha3_384_fips_202.txt | 823 ++ .../TestVectors/sha3_512_fips_202.txt | 695 ++ src/cryptopp/TestVectors/sha3_fips_202.txt | 6 + src/cryptopp/TestVectors/shacal2.txt | 5123 ++++++++++ src/cryptopp/TestVectors/siphash.txt | 3849 ++++++++ src/cryptopp/TestVectors/sosemanuk.txt | 25 + src/cryptopp/TestVectors/tea.txt | 711 ++ src/cryptopp/TestVectors/tls_chacha.txt | 37 + src/cryptopp/TestVectors/ttmac.txt | 40 + src/cryptopp/TestVectors/vmac.txt | 77 + src/cryptopp/TestVectors/wake.txt | 10 + src/cryptopp/TestVectors/whrlpool.txt | 39 + src/cryptopp/adhoc.cpp.proto | 42 + src/cryptopp/adler32.cpp | 82 + src/cryptopp/adler32.h | 34 + src/cryptopp/aes.h | 23 + src/cryptopp/algebra.cpp | 341 + src/cryptopp/algebra.h | 453 + src/cryptopp/algparam.cpp | 77 + src/cryptopp/algparam.h | 515 + src/cryptopp/arc4.cpp | 122 + src/cryptopp/arc4.h | 91 + src/cryptopp/argnames.h | 95 + src/cryptopp/asn.cpp | 619 ++ src/cryptopp/asn.h | 575 ++ src/cryptopp/authenc.cpp | 180 + src/cryptopp/authenc.h | 66 + src/cryptopp/base32.cpp | 42 + src/cryptopp/base32.h | 96 + src/cryptopp/base64.cpp | 89 + src/cryptopp/base64.h | 162 + src/cryptopp/basecode.cpp | 247 + src/cryptopp/basecode.h | 142 + src/cryptopp/bds10.zip | Bin 0 -> 6812 bytes src/cryptopp/bench.h | 13 + src/cryptopp/bench1.cpp | 400 + src/cryptopp/bench2.cpp | 384 + src/cryptopp/bfinit.cpp | 277 + src/cryptopp/blake2.cpp | 5074 ++++++++++ src/cryptopp/blake2.h | 314 + src/cryptopp/blowfish.cpp | 99 + src/cryptopp/blowfish.h | 57 + src/cryptopp/blumshub.cpp | 64 + src/cryptopp/blumshub.h | 59 + src/cryptopp/camellia.cpp | 540 + src/cryptopp/camellia.h | 51 + src/cryptopp/cast.cpp | 296 + src/cryptopp/cast.h | 109 + src/cryptopp/casts.cpp | 545 ++ src/cryptopp/cbcmac.cpp | 62 + src/cryptopp/cbcmac.h | 56 + src/cryptopp/ccm.cpp | 140 + src/cryptopp/ccm.h | 122 + src/cryptopp/chacha.cpp | 153 + src/cryptopp/chacha.h | 91 + src/cryptopp/channels.cpp | 313 + src/cryptopp/channels.h | 134 + src/cryptopp/cmac.cpp | 126 + src/cryptopp/cmac.h | 67 + src/cryptopp/config.h | 916 ++ src/cryptopp/cpu.cpp | 759 ++ src/cryptopp/cpu.h | 617 ++ src/cryptopp/crc.cpp | 365 + src/cryptopp/crc.h | 75 + src/cryptopp/cryptdll.vcxproj | 322 + src/cryptopp/cryptdll.vcxproj.filters | 393 + src/cryptopp/cryptest.nmake | 169 + src/cryptopp/cryptest.sh | 5762 +++++++++++ src/cryptopp/cryptest.sln | 89 + src/cryptopp/cryptest.vcxproj | 325 + src/cryptopp/cryptest.vcxproj.filters | 377 + src/cryptopp/cryptlib.cpp | 950 ++ src/cryptopp/cryptlib.h | 2976 ++++++ src/cryptopp/cryptlib.vcxproj | 488 + src/cryptopp/cryptlib.vcxproj.filters | 852 ++ src/cryptopp/cryptopp-config.cmake | 1 + src/cryptopp/cryptopp.rc | 104 + src/cryptopp/datatest.cpp | 852 ++ src/cryptopp/default.cpp | 302 + src/cryptopp/default.h | 314 + src/cryptopp/des.cpp | 463 + src/cryptopp/des.h | 171 + src/cryptopp/dessp.cpp | 88 + src/cryptopp/dh.cpp | 21 + src/cryptopp/dh.h | 275 + src/cryptopp/dh2.cpp | 24 + src/cryptopp/dh2.h | 70 + src/cryptopp/dll.cpp | 162 + src/cryptopp/dll.h | 73 + src/cryptopp/dlltest.cpp | 209 + src/cryptopp/dlltest.vcxproj | 133 + src/cryptopp/dmac.h | 107 + src/cryptopp/drbg.h | 410 + src/cryptopp/dsa.cpp | 66 + src/cryptopp/dsa.h | 42 + src/cryptopp/eax.cpp | 59 + src/cryptopp/eax.h | 109 + src/cryptopp/ec2n.cpp | 294 + src/cryptopp/ec2n.h | 126 + src/cryptopp/eccrypto.cpp | 791 ++ src/cryptopp/eccrypto.h | 659 ++ src/cryptopp/ecp.cpp | 476 + src/cryptopp/ecp.h | 143 + src/cryptopp/ecpoint.h | 149 + src/cryptopp/elgamal.cpp | 19 + src/cryptopp/elgamal.h | 149 + src/cryptopp/emsa2.cpp | 35 + src/cryptopp/emsa2.h | 88 + src/cryptopp/eprecomp.cpp | 114 + src/cryptopp/eprecomp.h | 87 + src/cryptopp/esign.cpp | 221 + src/cryptopp/esign.h | 164 + src/cryptopp/factory.h | 183 + src/cryptopp/fhmqv.h | 302 + src/cryptopp/files.cpp | 258 + src/cryptopp/files.h | 176 + src/cryptopp/filters.cpp | 1164 +++ src/cryptopp/filters.h | 1396 +++ src/cryptopp/fips140.cpp | 88 + src/cryptopp/fips140.h | 113 + src/cryptopp/fipsalgt.cpp | 1295 +++ src/cryptopp/fipstest.cpp | 649 ++ src/cryptopp/fltrimpl.h | 85 + src/cryptopp/gcm.cpp | 1090 +++ src/cryptopp/gcm.h | 132 + src/cryptopp/gf256.cpp | 34 + src/cryptopp/gf256.h | 72 + src/cryptopp/gf2_32.cpp | 99 + src/cryptopp/gf2_32.h | 73 + src/cryptopp/gf2n.cpp | 915 ++ src/cryptopp/gf2n.h | 378 + src/cryptopp/gfpcrypt.cpp | 304 + src/cryptopp/gfpcrypt.h | 957 ++ src/cryptopp/gost.cpp | 123 + src/cryptopp/gost.h | 69 + src/cryptopp/gzip.cpp | 99 + src/cryptopp/gzip.h | 101 + src/cryptopp/hex.cpp | 47 + src/cryptopp/hex.h | 52 + src/cryptopp/hkdf.h | 109 + src/cryptopp/hmac.cpp | 86 + src/cryptopp/hmac.h | 75 + src/cryptopp/hmqv.h | 310 + src/cryptopp/hrtimer.cpp | 174 + src/cryptopp/hrtimer.h | 67 + src/cryptopp/ida.cpp | 423 + src/cryptopp/ida.h | 185 + src/cryptopp/idea.cpp | 191 + src/cryptopp/idea.h | 68 + src/cryptopp/integer.cpp | 4737 +++++++++ src/cryptopp/integer.h | 730 ++ src/cryptopp/iterhash.cpp | 165 + src/cryptopp/iterhash.h | 182 + src/cryptopp/keccak.cpp | 290 + src/cryptopp/keccak.h | 108 + src/cryptopp/lubyrack.h | 139 + src/cryptopp/luc.cpp | 215 + src/cryptopp/luc.h | 325 + src/cryptopp/mars.cpp | 154 + src/cryptopp/mars.h | 59 + src/cryptopp/marss.cpp | 140 + src/cryptopp/md2.cpp | 120 + src/cryptopp/md2.h | 46 + src/cryptopp/md4.cpp | 110 + src/cryptopp/md4.h | 35 + src/cryptopp/md5.cpp | 120 + src/cryptopp/md5.h | 36 + src/cryptopp/mdc.h | 79 + src/cryptopp/mersenne.h | 212 + src/cryptopp/misc.cpp | 272 + src/cryptopp/misc.h | 2407 +++++ src/cryptopp/modarith.h | 316 + src/cryptopp/modes.cpp | 271 + src/cryptopp/modes.h | 479 + src/cryptopp/modexppc.h | 39 + src/cryptopp/mqueue.cpp | 174 + src/cryptopp/mqueue.h | 105 + src/cryptopp/mqv.cpp | 29 + src/cryptopp/mqv.h | 221 + src/cryptopp/nbtheory.cpp | 1125 +++ src/cryptopp/nbtheory.h | 202 + src/cryptopp/network.cpp | 554 ++ src/cryptopp/network.h | 234 + src/cryptopp/nr.h | 6 + src/cryptopp/oaep.cpp | 98 + src/cryptopp/oaep.h | 44 + src/cryptopp/oids.h | 135 + src/cryptopp/osrng.cpp | 272 + src/cryptopp/osrng.h | 267 + src/cryptopp/ossig.h | 124 + src/cryptopp/panama.cpp | 521 + src/cryptopp/panama.h | 163 + src/cryptopp/pch.cpp | 1 + src/cryptopp/pch.h | 30 + src/cryptopp/pkcspad.cpp | 154 + src/cryptopp/pkcspad.h | 106 + src/cryptopp/poly1305.cpp | 266 + src/cryptopp/poly1305.h | 170 + src/cryptopp/polynomi.cpp | 577 ++ src/cryptopp/polynomi.h | 467 + src/cryptopp/pssr.cpp | 161 + src/cryptopp/pssr.h | 98 + src/cryptopp/pubkey.cpp | 170 + src/cryptopp/pubkey.h | 2172 +++++ src/cryptopp/pwdbased.h | 252 + src/cryptopp/queue.cpp | 574 ++ src/cryptopp/queue.h | 161 + src/cryptopp/rabin.cpp | 222 + src/cryptopp/rabin.h | 137 + src/cryptopp/randpool.cpp | 74 + src/cryptopp/randpool.h | 71 + src/cryptopp/rc2.cpp | 118 + src/cryptopp/rc2.h | 95 + src/cryptopp/rc5.cpp | 80 + src/cryptopp/rc5.h | 61 + src/cryptopp/rc6.cpp | 97 + src/cryptopp/rc6.h | 59 + src/cryptopp/rdrand-masm.cmd | 117 + src/cryptopp/rdrand-nasm.sh | 24 + src/cryptopp/rdrand.S | 596 ++ src/cryptopp/rdrand.asm | 571 ++ src/cryptopp/rdrand.cpp | 497 + src/cryptopp/rdrand.h | 199 + src/cryptopp/rdtables.cpp | 165 + src/cryptopp/regtest.cpp | 195 + src/cryptopp/resource.h | 15 + src/cryptopp/rijndael.cpp | 1363 +++ src/cryptopp/rijndael.h | 87 + src/cryptopp/ripemd.cpp | 803 ++ src/cryptopp/ripemd.h | 65 + src/cryptopp/rng.cpp | 163 + src/cryptopp/rng.h | 111 + src/cryptopp/rsa.cpp | 308 + src/cryptopp/rsa.h | 272 + src/cryptopp/rw.cpp | 290 + src/cryptopp/rw.h | 145 + src/cryptopp/safer.cpp | 157 + src/cryptopp/safer.h | 107 + src/cryptopp/salsa.cpp | 626 ++ src/cryptopp/salsa.h | 88 + src/cryptopp/seal.cpp | 220 + src/cryptopp/seal.h | 58 + src/cryptopp/secblock.h | 813 ++ src/cryptopp/seckey.h | 456 + src/cryptopp/seed.cpp | 104 + src/cryptopp/seed.h | 46 + src/cryptopp/serpent.cpp | 125 + src/cryptopp/serpent.h | 57 + src/cryptopp/serpentp.h | 434 + src/cryptopp/setenv-android.sh | 403 + src/cryptopp/setenv-embedded.sh | 143 + src/cryptopp/setenv-ios.sh | 294 + src/cryptopp/sha.cpp | 1411 +++ src/cryptopp/sha.h | 91 + src/cryptopp/sha3.cpp | 290 + src/cryptopp/sha3.h | 93 + src/cryptopp/shacal2.cpp | 140 + src/cryptopp/shacal2.h | 59 + src/cryptopp/shark.cpp | 163 + src/cryptopp/shark.h | 76 + src/cryptopp/sharkbox.cpp | 4166 ++++++++ src/cryptopp/simple.cpp | 13 + src/cryptopp/simple.h | 361 + src/cryptopp/siphash.h | 306 + src/cryptopp/skipjack.cpp | 202 + src/cryptopp/skipjack.h | 72 + src/cryptopp/smartptr.h | 321 + src/cryptopp/socketft.cpp | 660 ++ src/cryptopp/socketft.h | 227 + src/cryptopp/sosemanuk.cpp | 717 ++ src/cryptopp/sosemanuk.h | 64 + src/cryptopp/square.cpp | 187 + src/cryptopp/square.h | 63 + src/cryptopp/squaretb.cpp | 582 ++ src/cryptopp/stdcpp.h | 80 + src/cryptopp/strciphr.cpp | 252 + src/cryptopp/strciphr.h | 635 ++ src/cryptopp/tea.cpp | 167 + src/cryptopp/tea.h | 163 + src/cryptopp/test.cpp | 1016 ++ src/cryptopp/tftables.cpp | 323 + src/cryptopp/tiger.cpp | 278 + src/cryptopp/tiger.h | 30 + src/cryptopp/tigertab.cpp | 525 + src/cryptopp/trap.h | 146 + src/cryptopp/trdlocal.cpp | 106 + src/cryptopp/trdlocal.h | 44 + src/cryptopp/trunhash.h | 52 + src/cryptopp/ttmac.cpp | 338 + src/cryptopp/ttmac.h | 46 + src/cryptopp/twofish.cpp | 169 + src/cryptopp/twofish.h | 64 + src/cryptopp/validat0.cpp | 1891 ++++ src/cryptopp/validat1.cpp | 2462 +++++ src/cryptopp/validat2.cpp | 1441 +++ src/cryptopp/validat3.cpp | 1869 ++++ src/cryptopp/validate.h | 144 + src/cryptopp/vc60.zip | Bin 0 -> 7884 bytes src/cryptopp/vmac.cpp | 924 ++ src/cryptopp/vmac.h | 92 + src/cryptopp/vs2005.zip | Bin 0 -> 12395 bytes src/cryptopp/wait.cpp | 483 + src/cryptopp/wait.h | 235 + src/cryptopp/wake.cpp | 114 + src/cryptopp/wake.h | 78 + src/cryptopp/whrlpool.cpp | 720 ++ src/cryptopp/whrlpool.h | 21 + src/cryptopp/winpipes.cpp | 227 + src/cryptopp/winpipes.h | 146 + src/cryptopp/words.h | 120 + src/cryptopp/x64dll.asm | 1968 ++++ src/cryptopp/x64masm.asm | 1565 +++ src/cryptopp/xtr.cpp | 103 + src/cryptopp/xtr.h | 221 + src/cryptopp/xtrcrypt.cpp | 112 + src/cryptopp/xtrcrypt.h | 56 + src/cryptopp/zdeflate.cpp | 815 ++ src/cryptopp/zdeflate.h | 177 + src/cryptopp/zinflate.cpp | 637 ++ src/cryptopp/zinflate.h | 157 + src/cryptopp/zlib.cpp | 93 + src/cryptopp/zlib.h | 60 + src/evmone | 1 + src/libff/AUTHORS | 10 + src/libff/CMakeLists.txt | 232 + src/libff/LICENSE | 24 + src/libff/README.md | 113 + src/libff/depends/CMakeLists.txt | 11 + src/libff/libff/CMakeLists.txt | 149 + .../algebra/curves/alt_bn128/alt_bn128_g1.cpp | 523 + .../algebra/curves/alt_bn128/alt_bn128_g1.hpp | 93 + .../algebra/curves/alt_bn128/alt_bn128_g2.cpp | 504 + .../algebra/curves/alt_bn128/alt_bn128_g2.hpp | 95 + .../curves/alt_bn128/alt_bn128_init.cpp | 275 + .../curves/alt_bn128/alt_bn128_init.hpp | 57 + .../curves/alt_bn128/alt_bn128_pairing.cpp | 547 ++ .../curves/alt_bn128/alt_bn128_pairing.hpp | 93 + .../algebra/curves/alt_bn128/alt_bn128_pp.cpp | 58 + .../algebra/curves/alt_bn128/alt_bn128_pp.hpp | 50 + .../libff/algebra/curves/bn128/bn128_g1.cpp | 519 + .../libff/algebra/curves/bn128/bn128_g1.hpp | 94 + .../libff/algebra/curves/bn128/bn128_g2.cpp | 502 + .../libff/algebra/curves/bn128/bn128_g2.hpp | 91 + .../libff/algebra/curves/bn128/bn128_gt.cpp | 70 + .../libff/algebra/curves/bn128/bn128_gt.hpp | 57 + .../libff/algebra/curves/bn128/bn128_init.cpp | 226 + .../libff/algebra/curves/bn128/bn128_init.hpp | 47 + .../algebra/curves/bn128/bn128_pairing.cpp | 212 + .../algebra/curves/bn128/bn128_pairing.hpp | 53 + .../libff/algebra/curves/bn128/bn128_pp.cpp | 75 + .../libff/algebra/curves/bn128/bn128_pp.hpp | 51 + .../libff/algebra/curves/bn128/bn_utils.hpp | 23 + .../libff/algebra/curves/bn128/bn_utils.tcc | 40 + .../libff/algebra/curves/curve_utils.hpp | 22 + .../libff/algebra/curves/curve_utils.tcc | 37 + .../algebra/curves/edwards/edwards_g1.cpp | 412 + .../algebra/curves/edwards/edwards_g1.hpp | 95 + .../algebra/curves/edwards/edwards_g2.cpp | 413 + .../algebra/curves/edwards/edwards_g2.hpp | 98 + .../algebra/curves/edwards/edwards_init.cpp | 270 + .../algebra/curves/edwards/edwards_init.hpp | 61 + .../curves/edwards/edwards_pairing.cpp | 776 ++ .../curves/edwards/edwards_pairing.hpp | 123 + .../algebra/curves/edwards/edwards_pp.cpp | 58 + .../algebra/curves/edwards/edwards_pp.hpp | 50 + .../libff/algebra/curves/mnt/mnt4/mnt4_g1.cpp | 504 + .../libff/algebra/curves/mnt/mnt4/mnt4_g1.hpp | 106 + .../libff/algebra/curves/mnt/mnt4/mnt4_g2.cpp | 495 + .../libff/algebra/curves/mnt/mnt4/mnt4_g2.hpp | 108 + .../algebra/curves/mnt/mnt4/mnt4_init.cpp | 265 + .../algebra/curves/mnt/mnt4/mnt4_init.hpp | 67 + .../algebra/curves/mnt/mnt4/mnt4_pairing.cpp | 741 ++ .../algebra/curves/mnt/mnt4/mnt4_pairing.hpp | 148 + .../libff/algebra/curves/mnt/mnt4/mnt4_pp.cpp | 105 + .../libff/algebra/curves/mnt/mnt4/mnt4_pp.hpp | 80 + .../libff/algebra/curves/mnt/mnt46_common.cpp | 21 + .../libff/algebra/curves/mnt/mnt46_common.hpp | 30 + .../libff/algebra/curves/mnt/mnt6/mnt6_g1.cpp | 503 + .../libff/algebra/curves/mnt/mnt6/mnt6_g1.hpp | 106 + .../libff/algebra/curves/mnt/mnt6/mnt6_g2.cpp | 502 + .../libff/algebra/curves/mnt/mnt6/mnt6_g2.hpp | 108 + .../algebra/curves/mnt/mnt6/mnt6_init.cpp | 277 + .../algebra/curves/mnt/mnt6/mnt6_init.hpp | 69 + .../algebra/curves/mnt/mnt6/mnt6_pairing.cpp | 753 ++ .../algebra/curves/mnt/mnt6/mnt6_pairing.hpp | 148 + .../libff/algebra/curves/mnt/mnt6/mnt6_pp.cpp | 106 + .../libff/algebra/curves/mnt/mnt6/mnt6_pp.hpp | 75 + .../libff/algebra/curves/public_params.hpp | 103 + .../algebra/curves/tests/test_bilinearity.cpp | 139 + .../algebra/curves/tests/test_groups.cpp | 179 + .../algebra/exponentiation/exponentiation.hpp | 31 + .../algebra/exponentiation/exponentiation.tcc | 53 + src/libff/libff/algebra/fields/bigint.hpp | 63 + src/libff/libff/algebra/fields/bigint.tcc | 229 + .../libff/algebra/fields/field_utils.hpp | 57 + .../libff/algebra/fields/field_utils.tcc | 197 + src/libff/libff/algebra/fields/fp.hpp | 184 + src/libff/libff/algebra/fields/fp.tcc | 808 ++ .../libff/algebra/fields/fp12_2over3over2.hpp | 117 + .../libff/algebra/fields/fp12_2over3over2.tcc | 412 + src/libff/libff/algebra/fields/fp2.hpp | 121 + src/libff/libff/algebra/fields/fp2.tcc | 257 + src/libff/libff/algebra/fields/fp3.hpp | 123 + src/libff/libff/algebra/fields/fp3.tcc | 259 + src/libff/libff/algebra/fields/fp4.hpp | 104 + src/libff/libff/algebra/fields/fp4.tcc | 245 + src/libff/libff/algebra/fields/fp6_2over3.hpp | 108 + src/libff/libff/algebra/fields/fp6_2over3.tcc | 274 + src/libff/libff/algebra/fields/fp6_3over2.hpp | 105 + src/libff/libff/algebra/fields/fp6_3over2.tcc | 216 + src/libff/libff/algebra/fields/fp_aux.tcc | 389 + .../algebra/fields/tests/test_fields.cpp | 248 + .../scalar_multiplication/multiexp.hpp | 133 + .../scalar_multiplication/multiexp.tcc | 719 ++ .../multiexp_profile.cpp | 128 + .../algebra/scalar_multiplication/wnaf.hpp | 43 + .../algebra/scalar_multiplication/wnaf.tcc | 125 + .../libff/common/default_types/ec_pp.hpp | 62 + src/libff/libff/common/double.cpp | 195 + src/libff/libff/common/double.hpp | 74 + src/libff/libff/common/profiling.cpp | 399 + src/libff/libff/common/profiling.hpp | 51 + src/libff/libff/common/rng.hpp | 26 + src/libff/libff/common/rng.tcc | 76 + src/libff/libff/common/serialization.hpp | 106 + src/libff/libff/common/serialization.tcc | 205 + src/libff/libff/common/template_utils.hpp | 26 + src/libff/libff/common/utils.cpp | 129 + src/libff/libff/common/utils.hpp | 62 + src/libff/libff/common/utils.tcc | 23 + src/secp256k1/Makefile.am | 2 +- src/secp256k1/include/secp256k1_sha256.h | 51 + src/secp256k1/src/hash.h | 41 - src/secp256k1/src/hash_impl.h | 22 +- .../src/modules/ellswift/main_impl.h | 2 +- .../src/modules/schnorrsig/main_impl.h | 2 +- src/secp256k1/src/selftest.h | 2 +- src/secp256k1/src/testrand_impl.h | 2 +- 503 files changed, 181880 insertions(+), 57 deletions(-) create mode 100644 .gitmodules create mode 100644 src/cryptopp/3way.cpp create mode 100644 src/cryptopp/3way.h create mode 100644 src/cryptopp/Doxyfile create mode 100644 src/cryptopp/Filelist.txt create mode 100755 src/cryptopp/GNUmakefile create mode 100755 src/cryptopp/GNUmakefile-cross create mode 100644 src/cryptopp/Install.txt create mode 100644 src/cryptopp/License.txt create mode 100644 src/cryptopp/Readme.txt create mode 100644 src/cryptopp/TestScripts/coverity-linux.txt create mode 100644 src/cryptopp/TestScripts/coverity-macosx.txt create mode 100644 src/cryptopp/TestScripts/coverity-windows.txt create mode 100755 src/cryptopp/TestScripts/cryptdll-windows.cmd create mode 100755 src/cryptopp/TestScripts/cryptest-android.sh create mode 100644 src/cryptopp/TestScripts/cryptest-coverity.cpp create mode 100755 src/cryptopp/TestScripts/cryptest-ios.sh create mode 100755 src/cryptopp/TestScripts/cryptest-symbols.sh create mode 100755 src/cryptopp/TestScripts/cryptest-windows.pl create mode 100755 src/cryptopp/TestScripts/cryptest.sh create mode 100755 src/cryptopp/TestScripts/make-benchmarks.sh create mode 100755 src/cryptopp/TestScripts/master-merge.sh create mode 100755 src/cryptopp/TestScripts/setenv-android.sh create mode 100755 src/cryptopp/TestScripts/setenv-embedded.sh create mode 100755 src/cryptopp/TestScripts/setenv-ios.sh create mode 100644 src/cryptopp/TestVectors/Readme.txt create mode 100644 src/cryptopp/TestVectors/aes.txt create mode 100644 src/cryptopp/TestVectors/all.txt create mode 100644 src/cryptopp/TestVectors/blake2.txt create mode 100644 src/cryptopp/TestVectors/blake2b.txt create mode 100644 src/cryptopp/TestVectors/blake2s.txt create mode 100644 src/cryptopp/TestVectors/camellia.txt create mode 100644 src/cryptopp/TestVectors/ccm.txt create mode 100644 src/cryptopp/TestVectors/chacha.txt create mode 100644 src/cryptopp/TestVectors/cmac.txt create mode 100644 src/cryptopp/TestVectors/dlies.txt create mode 100644 src/cryptopp/TestVectors/dsa.txt create mode 100644 src/cryptopp/TestVectors/dsa_1363.txt create mode 100644 src/cryptopp/TestVectors/dsa_rfc6979.txt create mode 100644 src/cryptopp/TestVectors/eax.txt create mode 100644 src/cryptopp/TestVectors/esign.txt create mode 100644 src/cryptopp/TestVectors/gcm.txt create mode 100644 src/cryptopp/TestVectors/hkdf.txt create mode 100644 src/cryptopp/TestVectors/hmac.txt create mode 100644 src/cryptopp/TestVectors/keccak.txt create mode 100644 src/cryptopp/TestVectors/mars.txt create mode 100644 src/cryptopp/TestVectors/nr.txt create mode 100644 src/cryptopp/TestVectors/panama.txt create mode 100644 src/cryptopp/TestVectors/rsa_oaep.txt create mode 100644 src/cryptopp/TestVectors/rsa_pkcs1_1_5.txt create mode 100644 src/cryptopp/TestVectors/rsa_pss.txt create mode 100644 src/cryptopp/TestVectors/rw.txt create mode 100644 src/cryptopp/TestVectors/salsa.txt create mode 100644 src/cryptopp/TestVectors/seal.txt create mode 100644 src/cryptopp/TestVectors/seed.txt create mode 100644 src/cryptopp/TestVectors/sha.txt create mode 100644 src/cryptopp/TestVectors/sha1_160_fips_180.txt create mode 100644 src/cryptopp/TestVectors/sha1_fips_180.txt create mode 100644 src/cryptopp/TestVectors/sha2_224_fips_180.txt create mode 100644 src/cryptopp/TestVectors/sha2_256_fips_180.txt create mode 100644 src/cryptopp/TestVectors/sha2_384_fips_180.txt create mode 100644 src/cryptopp/TestVectors/sha2_512_fips_180.txt create mode 100644 src/cryptopp/TestVectors/sha2_fips_180.txt create mode 100644 src/cryptopp/TestVectors/sha3_224_fips_202.txt create mode 100644 src/cryptopp/TestVectors/sha3_256_fips_202.txt create mode 100644 src/cryptopp/TestVectors/sha3_384_fips_202.txt create mode 100644 src/cryptopp/TestVectors/sha3_512_fips_202.txt create mode 100644 src/cryptopp/TestVectors/sha3_fips_202.txt create mode 100644 src/cryptopp/TestVectors/shacal2.txt create mode 100644 src/cryptopp/TestVectors/siphash.txt create mode 100644 src/cryptopp/TestVectors/sosemanuk.txt create mode 100644 src/cryptopp/TestVectors/tea.txt create mode 100644 src/cryptopp/TestVectors/tls_chacha.txt create mode 100644 src/cryptopp/TestVectors/ttmac.txt create mode 100644 src/cryptopp/TestVectors/vmac.txt create mode 100644 src/cryptopp/TestVectors/wake.txt create mode 100644 src/cryptopp/TestVectors/whrlpool.txt create mode 100644 src/cryptopp/adhoc.cpp.proto create mode 100644 src/cryptopp/adler32.cpp create mode 100644 src/cryptopp/adler32.h create mode 100644 src/cryptopp/aes.h create mode 100644 src/cryptopp/algebra.cpp create mode 100644 src/cryptopp/algebra.h create mode 100644 src/cryptopp/algparam.cpp create mode 100644 src/cryptopp/algparam.h create mode 100644 src/cryptopp/arc4.cpp create mode 100644 src/cryptopp/arc4.h create mode 100644 src/cryptopp/argnames.h create mode 100644 src/cryptopp/asn.cpp create mode 100644 src/cryptopp/asn.h create mode 100644 src/cryptopp/authenc.cpp create mode 100644 src/cryptopp/authenc.h create mode 100644 src/cryptopp/base32.cpp create mode 100644 src/cryptopp/base32.h create mode 100644 src/cryptopp/base64.cpp create mode 100644 src/cryptopp/base64.h create mode 100644 src/cryptopp/basecode.cpp create mode 100644 src/cryptopp/basecode.h create mode 100644 src/cryptopp/bds10.zip create mode 100644 src/cryptopp/bench.h create mode 100644 src/cryptopp/bench1.cpp create mode 100644 src/cryptopp/bench2.cpp create mode 100644 src/cryptopp/bfinit.cpp create mode 100644 src/cryptopp/blake2.cpp create mode 100644 src/cryptopp/blake2.h create mode 100644 src/cryptopp/blowfish.cpp create mode 100644 src/cryptopp/blowfish.h create mode 100644 src/cryptopp/blumshub.cpp create mode 100644 src/cryptopp/blumshub.h create mode 100644 src/cryptopp/camellia.cpp create mode 100644 src/cryptopp/camellia.h create mode 100644 src/cryptopp/cast.cpp create mode 100644 src/cryptopp/cast.h create mode 100644 src/cryptopp/casts.cpp create mode 100644 src/cryptopp/cbcmac.cpp create mode 100644 src/cryptopp/cbcmac.h create mode 100644 src/cryptopp/ccm.cpp create mode 100644 src/cryptopp/ccm.h create mode 100644 src/cryptopp/chacha.cpp create mode 100644 src/cryptopp/chacha.h create mode 100644 src/cryptopp/channels.cpp create mode 100644 src/cryptopp/channels.h create mode 100644 src/cryptopp/cmac.cpp create mode 100644 src/cryptopp/cmac.h create mode 100644 src/cryptopp/config.h create mode 100644 src/cryptopp/cpu.cpp create mode 100644 src/cryptopp/cpu.h create mode 100644 src/cryptopp/crc.cpp create mode 100644 src/cryptopp/crc.h create mode 100644 src/cryptopp/cryptdll.vcxproj create mode 100644 src/cryptopp/cryptdll.vcxproj.filters create mode 100644 src/cryptopp/cryptest.nmake create mode 100755 src/cryptopp/cryptest.sh create mode 100644 src/cryptopp/cryptest.sln create mode 100644 src/cryptopp/cryptest.vcxproj create mode 100644 src/cryptopp/cryptest.vcxproj.filters create mode 100644 src/cryptopp/cryptlib.cpp create mode 100644 src/cryptopp/cryptlib.h create mode 100644 src/cryptopp/cryptlib.vcxproj create mode 100644 src/cryptopp/cryptlib.vcxproj.filters create mode 100644 src/cryptopp/cryptopp-config.cmake create mode 100644 src/cryptopp/cryptopp.rc create mode 100644 src/cryptopp/datatest.cpp create mode 100644 src/cryptopp/default.cpp create mode 100644 src/cryptopp/default.h create mode 100644 src/cryptopp/des.cpp create mode 100644 src/cryptopp/des.h create mode 100644 src/cryptopp/dessp.cpp create mode 100644 src/cryptopp/dh.cpp create mode 100644 src/cryptopp/dh.h create mode 100644 src/cryptopp/dh2.cpp create mode 100644 src/cryptopp/dh2.h create mode 100644 src/cryptopp/dll.cpp create mode 100644 src/cryptopp/dll.h create mode 100644 src/cryptopp/dlltest.cpp create mode 100644 src/cryptopp/dlltest.vcxproj create mode 100644 src/cryptopp/dmac.h create mode 100644 src/cryptopp/drbg.h create mode 100644 src/cryptopp/dsa.cpp create mode 100644 src/cryptopp/dsa.h create mode 100644 src/cryptopp/eax.cpp create mode 100644 src/cryptopp/eax.h create mode 100644 src/cryptopp/ec2n.cpp create mode 100644 src/cryptopp/ec2n.h create mode 100644 src/cryptopp/eccrypto.cpp create mode 100644 src/cryptopp/eccrypto.h create mode 100644 src/cryptopp/ecp.cpp create mode 100644 src/cryptopp/ecp.h create mode 100644 src/cryptopp/ecpoint.h create mode 100644 src/cryptopp/elgamal.cpp create mode 100644 src/cryptopp/elgamal.h create mode 100644 src/cryptopp/emsa2.cpp create mode 100644 src/cryptopp/emsa2.h create mode 100644 src/cryptopp/eprecomp.cpp create mode 100644 src/cryptopp/eprecomp.h create mode 100644 src/cryptopp/esign.cpp create mode 100644 src/cryptopp/esign.h create mode 100644 src/cryptopp/factory.h create mode 100644 src/cryptopp/fhmqv.h create mode 100644 src/cryptopp/files.cpp create mode 100644 src/cryptopp/files.h create mode 100644 src/cryptopp/filters.cpp create mode 100644 src/cryptopp/filters.h create mode 100644 src/cryptopp/fips140.cpp create mode 100644 src/cryptopp/fips140.h create mode 100644 src/cryptopp/fipsalgt.cpp create mode 100644 src/cryptopp/fipstest.cpp create mode 100644 src/cryptopp/fltrimpl.h create mode 100644 src/cryptopp/gcm.cpp create mode 100644 src/cryptopp/gcm.h create mode 100644 src/cryptopp/gf256.cpp create mode 100644 src/cryptopp/gf256.h create mode 100644 src/cryptopp/gf2_32.cpp create mode 100644 src/cryptopp/gf2_32.h create mode 100644 src/cryptopp/gf2n.cpp create mode 100644 src/cryptopp/gf2n.h create mode 100644 src/cryptopp/gfpcrypt.cpp create mode 100644 src/cryptopp/gfpcrypt.h create mode 100644 src/cryptopp/gost.cpp create mode 100644 src/cryptopp/gost.h create mode 100644 src/cryptopp/gzip.cpp create mode 100644 src/cryptopp/gzip.h create mode 100644 src/cryptopp/hex.cpp create mode 100644 src/cryptopp/hex.h create mode 100644 src/cryptopp/hkdf.h create mode 100644 src/cryptopp/hmac.cpp create mode 100644 src/cryptopp/hmac.h create mode 100644 src/cryptopp/hmqv.h create mode 100644 src/cryptopp/hrtimer.cpp create mode 100644 src/cryptopp/hrtimer.h create mode 100644 src/cryptopp/ida.cpp create mode 100644 src/cryptopp/ida.h create mode 100644 src/cryptopp/idea.cpp create mode 100644 src/cryptopp/idea.h create mode 100644 src/cryptopp/integer.cpp create mode 100644 src/cryptopp/integer.h create mode 100644 src/cryptopp/iterhash.cpp create mode 100644 src/cryptopp/iterhash.h create mode 100644 src/cryptopp/keccak.cpp create mode 100644 src/cryptopp/keccak.h create mode 100644 src/cryptopp/lubyrack.h create mode 100644 src/cryptopp/luc.cpp create mode 100644 src/cryptopp/luc.h create mode 100644 src/cryptopp/mars.cpp create mode 100644 src/cryptopp/mars.h create mode 100644 src/cryptopp/marss.cpp create mode 100644 src/cryptopp/md2.cpp create mode 100644 src/cryptopp/md2.h create mode 100644 src/cryptopp/md4.cpp create mode 100644 src/cryptopp/md4.h create mode 100644 src/cryptopp/md5.cpp create mode 100644 src/cryptopp/md5.h create mode 100644 src/cryptopp/mdc.h create mode 100644 src/cryptopp/mersenne.h create mode 100644 src/cryptopp/misc.cpp create mode 100644 src/cryptopp/misc.h create mode 100644 src/cryptopp/modarith.h create mode 100644 src/cryptopp/modes.cpp create mode 100644 src/cryptopp/modes.h create mode 100644 src/cryptopp/modexppc.h create mode 100644 src/cryptopp/mqueue.cpp create mode 100644 src/cryptopp/mqueue.h create mode 100644 src/cryptopp/mqv.cpp create mode 100644 src/cryptopp/mqv.h create mode 100644 src/cryptopp/nbtheory.cpp create mode 100644 src/cryptopp/nbtheory.h create mode 100644 src/cryptopp/network.cpp create mode 100644 src/cryptopp/network.h create mode 100644 src/cryptopp/nr.h create mode 100644 src/cryptopp/oaep.cpp create mode 100644 src/cryptopp/oaep.h create mode 100644 src/cryptopp/oids.h create mode 100644 src/cryptopp/osrng.cpp create mode 100644 src/cryptopp/osrng.h create mode 100644 src/cryptopp/ossig.h create mode 100644 src/cryptopp/panama.cpp create mode 100644 src/cryptopp/panama.h create mode 100644 src/cryptopp/pch.cpp create mode 100644 src/cryptopp/pch.h create mode 100644 src/cryptopp/pkcspad.cpp create mode 100644 src/cryptopp/pkcspad.h create mode 100644 src/cryptopp/poly1305.cpp create mode 100644 src/cryptopp/poly1305.h create mode 100644 src/cryptopp/polynomi.cpp create mode 100644 src/cryptopp/polynomi.h create mode 100644 src/cryptopp/pssr.cpp create mode 100644 src/cryptopp/pssr.h create mode 100644 src/cryptopp/pubkey.cpp create mode 100644 src/cryptopp/pubkey.h create mode 100644 src/cryptopp/pwdbased.h create mode 100644 src/cryptopp/queue.cpp create mode 100644 src/cryptopp/queue.h create mode 100644 src/cryptopp/rabin.cpp create mode 100644 src/cryptopp/rabin.h create mode 100644 src/cryptopp/randpool.cpp create mode 100644 src/cryptopp/randpool.h create mode 100644 src/cryptopp/rc2.cpp create mode 100644 src/cryptopp/rc2.h create mode 100644 src/cryptopp/rc5.cpp create mode 100644 src/cryptopp/rc5.h create mode 100644 src/cryptopp/rc6.cpp create mode 100644 src/cryptopp/rc6.h create mode 100755 src/cryptopp/rdrand-masm.cmd create mode 100755 src/cryptopp/rdrand-nasm.sh create mode 100644 src/cryptopp/rdrand.S create mode 100644 src/cryptopp/rdrand.asm create mode 100644 src/cryptopp/rdrand.cpp create mode 100644 src/cryptopp/rdrand.h create mode 100644 src/cryptopp/rdtables.cpp create mode 100644 src/cryptopp/regtest.cpp create mode 100644 src/cryptopp/resource.h create mode 100644 src/cryptopp/rijndael.cpp create mode 100644 src/cryptopp/rijndael.h create mode 100644 src/cryptopp/ripemd.cpp create mode 100644 src/cryptopp/ripemd.h create mode 100644 src/cryptopp/rng.cpp create mode 100644 src/cryptopp/rng.h create mode 100644 src/cryptopp/rsa.cpp create mode 100644 src/cryptopp/rsa.h create mode 100644 src/cryptopp/rw.cpp create mode 100644 src/cryptopp/rw.h create mode 100644 src/cryptopp/safer.cpp create mode 100644 src/cryptopp/safer.h create mode 100644 src/cryptopp/salsa.cpp create mode 100644 src/cryptopp/salsa.h create mode 100644 src/cryptopp/seal.cpp create mode 100644 src/cryptopp/seal.h create mode 100644 src/cryptopp/secblock.h create mode 100644 src/cryptopp/seckey.h create mode 100644 src/cryptopp/seed.cpp create mode 100644 src/cryptopp/seed.h create mode 100644 src/cryptopp/serpent.cpp create mode 100644 src/cryptopp/serpent.h create mode 100644 src/cryptopp/serpentp.h create mode 100755 src/cryptopp/setenv-android.sh create mode 100755 src/cryptopp/setenv-embedded.sh create mode 100755 src/cryptopp/setenv-ios.sh create mode 100644 src/cryptopp/sha.cpp create mode 100644 src/cryptopp/sha.h create mode 100644 src/cryptopp/sha3.cpp create mode 100644 src/cryptopp/sha3.h create mode 100644 src/cryptopp/shacal2.cpp create mode 100644 src/cryptopp/shacal2.h create mode 100644 src/cryptopp/shark.cpp create mode 100644 src/cryptopp/shark.h create mode 100644 src/cryptopp/sharkbox.cpp create mode 100644 src/cryptopp/simple.cpp create mode 100644 src/cryptopp/simple.h create mode 100644 src/cryptopp/siphash.h create mode 100644 src/cryptopp/skipjack.cpp create mode 100644 src/cryptopp/skipjack.h create mode 100644 src/cryptopp/smartptr.h create mode 100644 src/cryptopp/socketft.cpp create mode 100644 src/cryptopp/socketft.h create mode 100644 src/cryptopp/sosemanuk.cpp create mode 100644 src/cryptopp/sosemanuk.h create mode 100644 src/cryptopp/square.cpp create mode 100644 src/cryptopp/square.h create mode 100644 src/cryptopp/squaretb.cpp create mode 100644 src/cryptopp/stdcpp.h create mode 100644 src/cryptopp/strciphr.cpp create mode 100644 src/cryptopp/strciphr.h create mode 100644 src/cryptopp/tea.cpp create mode 100644 src/cryptopp/tea.h create mode 100644 src/cryptopp/test.cpp create mode 100644 src/cryptopp/tftables.cpp create mode 100644 src/cryptopp/tiger.cpp create mode 100644 src/cryptopp/tiger.h create mode 100644 src/cryptopp/tigertab.cpp create mode 100644 src/cryptopp/trap.h create mode 100644 src/cryptopp/trdlocal.cpp create mode 100644 src/cryptopp/trdlocal.h create mode 100644 src/cryptopp/trunhash.h create mode 100644 src/cryptopp/ttmac.cpp create mode 100644 src/cryptopp/ttmac.h create mode 100644 src/cryptopp/twofish.cpp create mode 100644 src/cryptopp/twofish.h create mode 100644 src/cryptopp/validat0.cpp create mode 100644 src/cryptopp/validat1.cpp create mode 100644 src/cryptopp/validat2.cpp create mode 100644 src/cryptopp/validat3.cpp create mode 100644 src/cryptopp/validate.h create mode 100644 src/cryptopp/vc60.zip create mode 100644 src/cryptopp/vmac.cpp create mode 100644 src/cryptopp/vmac.h create mode 100644 src/cryptopp/vs2005.zip create mode 100644 src/cryptopp/wait.cpp create mode 100644 src/cryptopp/wait.h create mode 100644 src/cryptopp/wake.cpp create mode 100644 src/cryptopp/wake.h create mode 100644 src/cryptopp/whrlpool.cpp create mode 100644 src/cryptopp/whrlpool.h create mode 100644 src/cryptopp/winpipes.cpp create mode 100644 src/cryptopp/winpipes.h create mode 100644 src/cryptopp/words.h create mode 100644 src/cryptopp/x64dll.asm create mode 100644 src/cryptopp/x64masm.asm create mode 100644 src/cryptopp/xtr.cpp create mode 100644 src/cryptopp/xtr.h create mode 100644 src/cryptopp/xtrcrypt.cpp create mode 100644 src/cryptopp/xtrcrypt.h create mode 100644 src/cryptopp/zdeflate.cpp create mode 100644 src/cryptopp/zdeflate.h create mode 100644 src/cryptopp/zinflate.cpp create mode 100644 src/cryptopp/zinflate.h create mode 100644 src/cryptopp/zlib.cpp create mode 100644 src/cryptopp/zlib.h create mode 160000 src/evmone create mode 100755 src/libff/AUTHORS create mode 100755 src/libff/CMakeLists.txt create mode 100755 src/libff/LICENSE create mode 100755 src/libff/README.md create mode 100755 src/libff/depends/CMakeLists.txt create mode 100755 src/libff/libff/CMakeLists.txt create mode 100755 src/libff/libff/algebra/curves/alt_bn128/alt_bn128_g1.cpp create mode 100755 src/libff/libff/algebra/curves/alt_bn128/alt_bn128_g1.hpp create mode 100755 src/libff/libff/algebra/curves/alt_bn128/alt_bn128_g2.cpp create mode 100755 src/libff/libff/algebra/curves/alt_bn128/alt_bn128_g2.hpp create mode 100755 src/libff/libff/algebra/curves/alt_bn128/alt_bn128_init.cpp create mode 100755 src/libff/libff/algebra/curves/alt_bn128/alt_bn128_init.hpp create mode 100755 src/libff/libff/algebra/curves/alt_bn128/alt_bn128_pairing.cpp create mode 100755 src/libff/libff/algebra/curves/alt_bn128/alt_bn128_pairing.hpp create mode 100755 src/libff/libff/algebra/curves/alt_bn128/alt_bn128_pp.cpp create mode 100755 src/libff/libff/algebra/curves/alt_bn128/alt_bn128_pp.hpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_g1.cpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_g1.hpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_g2.cpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_g2.hpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_gt.cpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_gt.hpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_init.cpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_init.hpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_pairing.cpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_pairing.hpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_pp.cpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn128_pp.hpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn_utils.hpp create mode 100755 src/libff/libff/algebra/curves/bn128/bn_utils.tcc create mode 100755 src/libff/libff/algebra/curves/curve_utils.hpp create mode 100755 src/libff/libff/algebra/curves/curve_utils.tcc create mode 100755 src/libff/libff/algebra/curves/edwards/edwards_g1.cpp create mode 100755 src/libff/libff/algebra/curves/edwards/edwards_g1.hpp create mode 100755 src/libff/libff/algebra/curves/edwards/edwards_g2.cpp create mode 100755 src/libff/libff/algebra/curves/edwards/edwards_g2.hpp create mode 100755 src/libff/libff/algebra/curves/edwards/edwards_init.cpp create mode 100755 src/libff/libff/algebra/curves/edwards/edwards_init.hpp create mode 100755 src/libff/libff/algebra/curves/edwards/edwards_pairing.cpp create mode 100755 src/libff/libff/algebra/curves/edwards/edwards_pairing.hpp create mode 100755 src/libff/libff/algebra/curves/edwards/edwards_pp.cpp create mode 100755 src/libff/libff/algebra/curves/edwards/edwards_pp.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt4/mnt4_g1.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt4/mnt4_g1.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt4/mnt4_g2.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt4/mnt4_g2.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt4/mnt4_init.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt4/mnt4_init.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt4/mnt4_pairing.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt4/mnt4_pairing.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt4/mnt4_pp.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt4/mnt4_pp.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt46_common.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt46_common.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt6/mnt6_g1.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt6/mnt6_g1.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt6/mnt6_g2.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt6/mnt6_g2.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt6/mnt6_init.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt6/mnt6_init.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt6/mnt6_pairing.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt6/mnt6_pairing.hpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt6/mnt6_pp.cpp create mode 100755 src/libff/libff/algebra/curves/mnt/mnt6/mnt6_pp.hpp create mode 100755 src/libff/libff/algebra/curves/public_params.hpp create mode 100755 src/libff/libff/algebra/curves/tests/test_bilinearity.cpp create mode 100755 src/libff/libff/algebra/curves/tests/test_groups.cpp create mode 100755 src/libff/libff/algebra/exponentiation/exponentiation.hpp create mode 100755 src/libff/libff/algebra/exponentiation/exponentiation.tcc create mode 100755 src/libff/libff/algebra/fields/bigint.hpp create mode 100755 src/libff/libff/algebra/fields/bigint.tcc create mode 100755 src/libff/libff/algebra/fields/field_utils.hpp create mode 100755 src/libff/libff/algebra/fields/field_utils.tcc create mode 100755 src/libff/libff/algebra/fields/fp.hpp create mode 100755 src/libff/libff/algebra/fields/fp.tcc create mode 100755 src/libff/libff/algebra/fields/fp12_2over3over2.hpp create mode 100755 src/libff/libff/algebra/fields/fp12_2over3over2.tcc create mode 100755 src/libff/libff/algebra/fields/fp2.hpp create mode 100755 src/libff/libff/algebra/fields/fp2.tcc create mode 100755 src/libff/libff/algebra/fields/fp3.hpp create mode 100755 src/libff/libff/algebra/fields/fp3.tcc create mode 100755 src/libff/libff/algebra/fields/fp4.hpp create mode 100755 src/libff/libff/algebra/fields/fp4.tcc create mode 100755 src/libff/libff/algebra/fields/fp6_2over3.hpp create mode 100755 src/libff/libff/algebra/fields/fp6_2over3.tcc create mode 100755 src/libff/libff/algebra/fields/fp6_3over2.hpp create mode 100755 src/libff/libff/algebra/fields/fp6_3over2.tcc create mode 100755 src/libff/libff/algebra/fields/fp_aux.tcc create mode 100755 src/libff/libff/algebra/fields/tests/test_fields.cpp create mode 100755 src/libff/libff/algebra/scalar_multiplication/multiexp.hpp create mode 100755 src/libff/libff/algebra/scalar_multiplication/multiexp.tcc create mode 100644 src/libff/libff/algebra/scalar_multiplication/multiexp_profile.cpp create mode 100755 src/libff/libff/algebra/scalar_multiplication/wnaf.hpp create mode 100755 src/libff/libff/algebra/scalar_multiplication/wnaf.tcc create mode 100755 src/libff/libff/common/default_types/ec_pp.hpp create mode 100755 src/libff/libff/common/double.cpp create mode 100755 src/libff/libff/common/double.hpp create mode 100755 src/libff/libff/common/profiling.cpp create mode 100755 src/libff/libff/common/profiling.hpp create mode 100755 src/libff/libff/common/rng.hpp create mode 100755 src/libff/libff/common/rng.tcc create mode 100755 src/libff/libff/common/serialization.hpp create mode 100755 src/libff/libff/common/serialization.tcc create mode 100755 src/libff/libff/common/template_utils.hpp create mode 100755 src/libff/libff/common/utils.cpp create mode 100755 src/libff/libff/common/utils.hpp create mode 100755 src/libff/libff/common/utils.tcc create mode 100644 src/secp256k1/include/secp256k1_sha256.h delete mode 100644 src/secp256k1/src/hash.h diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000000..b030c6a358 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "src/evmone"] + path = src/evmone + url = https://github.com/qtumproject/qtum-evmone diff --git a/src/cryptopp/3way.cpp b/src/cryptopp/3way.cpp new file mode 100644 index 0000000000..60bd0e13b3 --- /dev/null +++ b/src/cryptopp/3way.cpp @@ -0,0 +1,143 @@ +// 3way.cpp - modifed by Wei Dai from Joan Daemen's 3way.c +// The original code and all modifications are in the public domain. + +#include "pch.h" +#include "3way.h" +#include "misc.h" + +NAMESPACE_BEGIN(CryptoPP) + +#if defined(CRYPTOPP_DEBUG) && !defined(CRYPTOPP_DOXYGEN_PROCESSING) +void ThreeWay_TestInstantiations() +{ + ThreeWay::Encryption x1; + ThreeWay::Decryption x2; +} +#endif + +namespace +{ + const word32 START_E = 0x0b0b; // round constant of first encryption round + const word32 START_D = 0xb1b1; // round constant of first decryption round +} + +static inline word32 reverseBits(word32 a) +{ + a = ((a & 0xAAAAAAAA) >> 1) | ((a & 0x55555555) << 1); + a = ((a & 0xCCCCCCCC) >> 2) | ((a & 0x33333333) << 2); + return ((a & 0xF0F0F0F0) >> 4) | ((a & 0x0F0F0F0F) << 4); +} + +#define mu(a0, a1, a2) \ +{ \ + a1 = reverseBits(a1); \ + word32 t = reverseBits(a0); \ + a0 = reverseBits(a2); \ + a2 = t; \ +} + +#define pi_gamma_pi(a0, a1, a2) \ +{ \ + word32 b0, b2; \ + b2 = rotlFixed(a2, 1U); \ + b0 = rotlFixed(a0, 22U); \ + a0 = rotlFixed(b0 ^ (a1|(~b2)), 1U); \ + a2 = rotlFixed(b2 ^ (b0|(~a1)), 22U);\ + a1 ^= (b2|(~b0)); \ +} + +// thanks to Paulo Barreto for this optimized theta() +#define theta(a0, a1, a2) \ +{ \ + word32 b0, b1, c; \ + c = a0 ^ a1 ^ a2; \ + c = rotlFixed(c, 16U) ^ rotlFixed(c, 8U); \ + b0 = (a0 << 24) ^ (a2 >> 8) ^ (a1 << 8) ^ (a0 >> 24); \ + b1 = (a1 << 24) ^ (a0 >> 8) ^ (a2 << 8) ^ (a1 >> 24); \ + a0 ^= c ^ b0; \ + a1 ^= c ^ b1; \ + a2 ^= c ^ (b0 >> 16) ^ (b1 << 16); \ +} + +#define rho(a0, a1, a2) \ +{ \ + theta(a0, a1, a2); \ + pi_gamma_pi(a0, a1, a2); \ +} + +void ThreeWay::Base::UncheckedSetKey(const byte *uk, unsigned int length, const NameValuePairs ¶ms) +{ + AssertValidKeyLength(length); + + m_rounds = GetRoundsAndThrowIfInvalid(params, this); + + for (unsigned int i=0; i<3; i++) + m_k[i] = (word32)uk[4*i+3] | ((word32)uk[4*i+2]<<8) | ((word32)uk[4*i+1]<<16) | ((word32)uk[4*i]<<24); + + if (!IsForwardTransformation()) + { + theta(m_k[0], m_k[1], m_k[2]); + mu(m_k[0], m_k[1], m_k[2]); + m_k[0] = ByteReverse(m_k[0]); + m_k[1] = ByteReverse(m_k[1]); + m_k[2] = ByteReverse(m_k[2]); + } +} + +void ThreeWay::Enc::ProcessAndXorBlock(const byte *inBlock, const byte *xorBlock, byte *outBlock) const +{ + typedef BlockGetAndPut Block; + + word32 a0, a1, a2; + Block::Get(inBlock)(a0)(a1)(a2); + + word32 rc = START_E; + + for(unsigned i=0; i Block; + + word32 a0, a1, a2; + Block::Get(inBlock)(a0)(a1)(a2); + + word32 rc = START_D; + + mu(a0, a1, a2); + for(unsigned i=0; i, public FixedKeyLength<12>, public VariableRounds<11> +{ + CRYPTOPP_STATIC_CONSTEXPR const char* StaticAlgorithmName() {return "3-Way";} +}; + +//! \class ThreeWay +//! \brief ThreeWay block cipher +//! \sa 3-Way +class ThreeWay : public ThreeWay_Info, public BlockCipherDocumentation +{ + //! \class Base + //! \brief Class specific implementation and overrides used to operate the cipher. + //! \details Implementations and overrides in \p Base apply to both \p ENCRYPTION and \p DECRYPTION directions + class CRYPTOPP_NO_VTABLE Base : public BlockCipherImpl + { + public: + void UncheckedSetKey(const byte *key, unsigned int length, const NameValuePairs ¶ms); + + protected: + unsigned int m_rounds; + FixedSizeSecBlock m_k; + }; + + //! \class Enc + //! \brief Class specific methods used to operate the cipher in the forward direction. + //! \details Implementations and overrides in \p Enc apply to \p ENCRYPTION. + class CRYPTOPP_NO_VTABLE Enc : public Base + { + public: + void ProcessAndXorBlock(const byte *inBlock, const byte *xorBlock, byte *outBlock) const; + }; + + //! \class Dec + //! \brief Class specific methods used to operate the cipher in the reverse direction. + //! \details Implementations and overrides in \p Dec apply to \p DECRYPTION. + class CRYPTOPP_NO_VTABLE Dec : public Base + { + public: + void ProcessAndXorBlock(const byte *inBlock, const byte *xorBlock, byte *outBlock) const; + }; + +public: + typedef BlockCipherFinal Encryption; + typedef BlockCipherFinal Decryption; +}; + +typedef ThreeWay::Encryption ThreeWayEncryption; +typedef ThreeWay::Decryption ThreeWayDecryption; + +NAMESPACE_END + +#endif diff --git a/src/cryptopp/Doxyfile b/src/cryptopp/Doxyfile new file mode 100644 index 0000000000..2da79690b5 --- /dev/null +++ b/src/cryptopp/Doxyfile @@ -0,0 +1,2375 @@ +# Doxyfile 1.8.9 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project. +# +# All text after a double hash (##) is considered a comment and is placed in +# front of the TAG it is preceding. +# +# All text after a single hash (#) is considered a comment and will be ignored. +# The format is: +# TAG = value [value, ...] +# For lists, items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (\" \"). +# +# The file can be upgraded to the latest version of Doxygen with `doxygen -u