You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@milagro.apache.org by br...@apache.org on 2019/01/15 15:19:56 UTC
[51/51] [partial] incubator-milagro-crypto git commit: update code
update code
Project: http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/commit/1add7560
Tree: http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/tree/1add7560
Diff: http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/diff/1add7560
Branch: refs/heads/master
Commit: 1add756065bc30f21dc32a317ad9b17f19aa346f
Parents: 70e3a3a
Author: Brian Spector <br...@Brians-MacBook-Air-2018.local>
Authored: Tue Jan 15 15:11:57 2019 +0000
Committer: Brian Spector <br...@Brians-MacBook-Air-2018.local>
Committed: Tue Jan 15 15:11:57 2019 +0000
----------------------------------------------------------------------
LICENSE-2.0.TXT | 202 --
NOTICE.txt | 5 -
readme.txt | 41 -
version22/amcl22.pdf | Bin 419918 -> 0 bytes
version22/bigtobig.cpp | 292 ---
version22/blsgen.cpp | 194 --
version22/bngen.cpp | 251 ---
version22/c/CARSK.pem | 54 -
version22/c/aes.c | 702 -------
version22/c/amcl.h | 2935 ---------------------------
version22/c/arch.h | 119 --
version22/c/benchtest_ec.c | 212 --
version22/c/benchtest_pair.c | 257 ---
version22/c/big.c | 1525 --------------
version22/c/build_ec | 22 -
version22/c/build_ec.bat | 22 -
version22/c/build_pair | 27 -
version22/c/build_pair.bat | 27 -
version22/c/ca.crt | 23 -
version22/c/eccert.pem | 17 -
version22/c/ecdh.c | 751 -------
version22/c/ecdh.h | 206 --
version22/c/ecp.c | 1176 -----------
version22/c/ecp2.c | 696 -------
version22/c/faster.c | 98 -
version22/c/faster.txt | 25 -
version22/c/ff.c | 1150 -----------
version22/c/fp.c | 608 ------
version22/c/fp12.c | 727 -------
version22/c/fp2.c | 435 ----
version22/c/fp4.c | 651 ------
version22/c/gcm.c | 411 ----
version22/c/hash.c | 422 ----
version22/c/maxstack.c | 62 -
version22/c/mpin.c | 1212 -----------
version22/c/mpin.h | 408 ----
version22/c/oct.c | 428 ----
version22/c/pair.c | 828 --------
version22/c/rand.c | 172 --
version22/c/randapi.c | 15 -
version22/c/randapi.h | 20 -
version22/c/readme.txt | 77 -
version22/c/rom.c | 1206 -----------
version22/c/rsa.c | 394 ----
version22/c/rsa.h | 99 -
version22/c/testecdh.c | 207 --
version22/c/testmpin.c | 313 ---
version22/c/testrsa.c | 104 -
version22/c/x509.c | 1079 ----------
version22/c/x509.h | 113 --
version22/check.cpp | 100 -
version22/cs/readme.txt | 36 -
version22/ecgen.cpp | 125 --
version22/go/AES.go | 634 ------
version22/go/BIG.go | 850 --------
version22/go/BenchtestEC.go | 154 --
version22/go/BenchtestPAIR.go | 206 --
version22/go/DBIG.go | 256 ---
version22/go/ECDH.go | 547 -----
version22/go/ECP.go | 893 --------
version22/go/ECP2.go | 568 ------
version22/go/FF.go | 905 ---------
version22/go/FP.go | 279 ---
version22/go/FP12.go | 551 -----
version22/go/FP2.go | 300 ---
version22/go/FP4.go | 479 -----
version22/go/GCM.go | 337 ---
version22/go/HASH256.go | 192 --
version22/go/HASH384.go | 204 --
version22/go/HASH512.go | 204 --
version22/go/MPIN.go | 769 -------
version22/go/PAIR.go | 641 ------
version22/go/RAND.go | 153 --
version22/go/ROM32.go | 825 --------
version22/go/ROM64.go | 826 --------
version22/go/RSA.go | 363 ----
version22/go/TestECDH.go | 164 --
version22/go/TestMPIN.go | 241 ---
version22/go/TestRSA.go | 98 -
version22/go/readme.txt | 50 -
version22/java/AES.java | 695 -------
version22/java/BIG32.java | 1016 ----------
version22/java/BIG64.java | 1040 ----------
version22/java/BenchtestEC.java | 160 --
version22/java/BenchtestPAIR.java | 208 --
version22/java/DBIG32.java | 308 ---
version22/java/DBIG64.java | 306 ---
version22/java/ECDH.java | 581 ------
version22/java/ECP.java | 917 ---------
version22/java/ECP2.java | 624 ------
version22/java/FF.java | 941 ---------
version22/java/FP.java | 345 ----
version22/java/FP12.java | 641 ------
version22/java/FP2.java | 393 ----
version22/java/FP4.java | 584 ------
version22/java/GCM.java | 374 ----
version22/java/HASH256.java | 216 --
version22/java/HASH384.java | 227 ---
version22/java/HASH512.java | 229 ---
version22/java/MPIN.java | 853 --------
version22/java/PAIR.java | 685 -------
version22/java/RAND.java | 161 --
version22/java/ROM32.java | 714 -------
version22/java/ROM64.java | 703 -------
version22/java/RSA.java | 362 ----
version22/java/TestECDH.java | 179 --
version22/java/TestMPIN.java | 270 ---
version22/java/TestRSA.java | 92 -
version22/java/readme.txt | 61 -
version22/java/rsa_private_key.java | 13 -
version22/java/rsa_public_key.java | 11 -
version22/js/AES.js | 634 ------
version22/js/BIG.js | 1037 ----------
version22/js/BenchtestEC.html | 162 --
version22/js/BenchtestPAIR.html | 226 ---
version22/js/DBIG.js | 284 ---
version22/js/ECDH.js | 585 ------
version22/js/ECP.js | 903 --------
version22/js/ECP2.js | 604 ------
version22/js/FF.js | 947 ---------
version22/js/FP.js | 360 ----
version22/js/FP12.js | 558 -----
version22/js/FP2.js | 321 ---
version22/js/FP4.js | 501 -----
version22/js/GCM.js | 305 ---
version22/js/HASH256.js | 180 --
version22/js/HASH384.js | 238 ---
version22/js/HASH512.js | 236 ---
version22/js/MPIN.js | 933 ---------
version22/js/PAIR.js | 650 ------
version22/js/RAND.js | 148 --
version22/js/ROM.js | 716 -------
version22/js/RSA.js | 392 ----
version22/js/TestECDH.html | 143 --
version22/js/TestMPIN.html | 330 ---
version22/js/TestRSA.html | 115 --
version22/js/UInt64.js | 54 -
version22/js/readme.txt | 41 -
version22/rust/.gitignore | 5 -
version22/rust/Cargo.toml | 24 -
version22/rust/readme.txt | 56 -
version22/rust/src/aes.rs | 628 ------
version22/rust/src/big.rs | 1227 -----------
version22/rust/src/dbig.rs | 249 ---
version22/rust/src/ecdh.rs | 585 ------
version22/rust/src/ecp.rs | 955 ---------
version22/rust/src/ecp2.rs | 677 ------
version22/rust/src/ff.rs | 944 ---------
version22/rust/src/fp.rs | 354 ----
version22/rust/src/fp12.rs | 628 ------
version22/rust/src/fp2.rs | 366 ----
version22/rust/src/fp4.rs | 563 -----
version22/rust/src/gcm.rs | 356 ----
version22/rust/src/hash256.rs | 182 --
version22/rust/src/hash384.rs | 188 --
version22/rust/src/hash512.rs | 189 --
version22/rust/src/lib.rs | 36 -
version22/rust/src/mpin.rs | 768 -------
version22/rust/src/pair.rs | 674 ------
version22/rust/src/rand.rs | 147 --
version22/rust/src/rom32.rs | 349 ----
version22/rust/src/rom64.rs | 348 ----
version22/rust/src/rsa.rs | 372 ----
version22/rust/tests/benchtest_ec.rs | 185 --
version22/rust/tests/benchtest_pair.rs | 245 ---
version22/rust/tests/test_ecdh.rs | 180 --
version22/rust/tests/test_mpin.rs | 217 --
version22/rust/tests/test_rsa.rs | 109 -
version22/swift/BenchtestEC.swift | 161 --
version22/swift/BenchtestPAIR.swift | 206 --
version22/swift/TestECDH.swift | 167 --
version22/swift/TestMPIN.swift | 259 ---
version22/swift/TestRSA.swift | 100 -
version22/swift/aes.swift | 639 ------
version22/swift/big.swift | 1169 -----------
version22/swift/dbig.swift | 265 ---
version22/swift/ecdh.swift | 587 ------
version22/swift/ecp.swift | 923 ---------
version22/swift/ecp2.swift | 618 ------
version22/swift/ff.swift | 927 ---------
version22/swift/fp.swift | 309 ---
version22/swift/fp12.swift | 584 ------
version22/swift/fp2.swift | 329 ---
version22/swift/fp4.swift | 517 -----
version22/swift/gcm.swift | 326 ---
version22/swift/hash256.swift | 188 --
version22/swift/hash384.swift | 198 --
version22/swift/hash512.swift | 198 --
version22/swift/main.swift | 13 -
version22/swift/mpin.swift | 833 --------
version22/swift/pair.swift | 592 ------
version22/swift/rand.swift | 131 --
version22/swift/readme.txt | 135 --
version22/swift/rom32.swift | 645 ------
version22/swift/rom64.swift | 258 ---
version22/swift/rsa.swift | 400 ----
version3/amcl3.pdf | Bin 299401 -> 0 bytes
version3/bestpair.cpp | 623 ------
version3/bigtobig.cpp | 292 ---
version3/c/aes.c | 704 -------
version3/c/amcl.h | 590 ------
version3/c/arch.h | 129 --
version3/c/benchtest_all.c | 1019 ----------
version3/c/big.c | 1535 --------------
version3/c/big.h | 610 ------
version3/c/config16.py | 367 ----
version3/c/config32.py | 645 ------
version3/c/config64.py | 639 ------
version3/c/config_big.h | 38 -
version3/c/config_curve.h | 44 -
version3/c/config_ff.h | 38 -
version3/c/config_field.h | 34 -
version3/c/ecdh.c | 424 ----
version3/c/ecdh.h | 146 --
version3/c/ecdh_support.c | 352 ----
version3/c/ecdh_support.h | 114 --
version3/c/ecp.c | 1468 --------------
version3/c/ecp.h | 314 ---
version3/c/ecp2.c | 912 ---------
version3/c/ecp2.h | 220 --
version3/c/ecp4.c | 1068 ----------
version3/c/ecp4.h | 232 ---
version3/c/ecp8.c | 1311 ------------
version3/c/ecp8.h | 246 ---
version3/c/faster.c | 97 -
version3/c/faster.txt | 29 -
version3/c/fastest.c | 59 -
version3/c/fastest.txt | 28 -
version3/c/ff.c | 1155 -----------
version3/c/ff.h | 296 ---
version3/c/fp.c | 878 --------
version3/c/fp.h | 245 ---
version3/c/fp12.c | 984 ---------
version3/c/fp12.h | 216 --
version3/c/fp16.c | 693 -------
version3/c/fp16.h | 260 ---
version3/c/fp2.c | 489 -----
version3/c/fp2.h | 240 ---
version3/c/fp24.c | 1123 ----------
version3/c/fp24.h | 196 --
version3/c/fp4.c | 800 --------
version3/c/fp4.h | 305 ---
version3/c/fp48.c | 1385 -------------
version3/c/fp48.h | 196 --
version3/c/fp8.c | 795 --------
version3/c/fp8.h | 294 ---
version3/c/gcm.c | 411 ----
version3/c/hash.c | 607 ------
version3/c/mpin.c | 995 ---------
version3/c/mpin.h | 345 ----
version3/c/mpin192.c | 975 ---------
version3/c/mpin192.h | 339 ----
version3/c/mpin256.c | 998 ---------
version3/c/mpin256.h | 339 ----
version3/c/newhope.c | 513 -----
version3/c/newhope.h | 51 -
version3/c/oct.c | 429 ----
version3/c/pair.c | 1027 ----------
version3/c/pair.h | 103 -
version3/c/pair192.c | 752 -------
version3/c/pair192.h | 77 -
version3/c/pair256.c | 864 --------
version3/c/pair256.h | 77 -
version3/c/pbc_support.c | 180 --
version3/c/pbc_support.h | 96 -
version3/c/rand.c | 172 --
version3/c/randapi.c | 15 -
version3/c/randapi.h | 46 -
version3/c/readme.txt | 75 -
version3/c/rom_curve_ANSSI.c | 33 -
version3/c/rom_curve_BLS24.c | 67 -
version3/c/rom_curve_BLS381.c | 62 -
version3/c/rom_curve_BLS383.c | 62 -
version3/c/rom_curve_BLS461.c | 59 -
version3/c/rom_curve_BLS48.c | 88 -
version3/c/rom_curve_BN254.c | 80 -
version3/c/rom_curve_BN254CX.c | 81 -
version3/c/rom_curve_BRAINPOOL.c | 36 -
version3/c/rom_curve_C25519.c | 27 -
version3/c/rom_curve_C41417.c | 35 -
version3/c/rom_curve_ED25519.c | 45 -
version3/c/rom_curve_FP256BN.c | 86 -
version3/c/rom_curve_FP512BN.c | 87 -
version3/c/rom_curve_GOLDILOCKS.c | 37 -
version3/c/rom_curve_HIFIVE.c | 37 -
version3/c/rom_curve_NIST256.c | 37 -
version3/c/rom_curve_NIST384.c | 36 -
version3/c/rom_curve_NIST521.c | 35 -
version3/c/rom_curve_NUMS256E.c | 43 -
version3/c/rom_curve_NUMS256W.c | 34 -
version3/c/rom_curve_NUMS384E.c | 34 -
version3/c/rom_curve_NUMS384W.c | 34 -
version3/c/rom_curve_NUMS512E.c | 33 -
version3/c/rom_curve_NUMS512W.c | 34 -
version3/c/rom_curve_SECP256K1.c | 39 -
version3/c/rom_field_25519.c | 33 -
version3/c/rom_field_256PME.c | 28 -
version3/c/rom_field_256PMW.c | 26 -
version3/c/rom_field_384PM.c | 25 -
version3/c/rom_field_512PM.c | 25 -
version3/c/rom_field_ANSSI.c | 25 -
version3/c/rom_field_BLS24.c | 32 -
version3/c/rom_field_BLS381.c | 30 -
version3/c/rom_field_BLS383.c | 30 -
version3/c/rom_field_BLS461.c | 31 -
version3/c/rom_field_BLS48.c | 32 -
version3/c/rom_field_BN254.c | 37 -
version3/c/rom_field_BN254CX.c | 38 -
version3/c/rom_field_BRAINPOOL.c | 25 -
version3/c/rom_field_C41417.c | 25 -
version3/c/rom_field_FP256BN.c | 36 -
version3/c/rom_field_FP512BN.c | 38 -
version3/c/rom_field_GOLDILOCKS.c | 30 -
version3/c/rom_field_HIFIVE.c | 27 -
version3/c/rom_field_NIST256.c | 27 -
version3/c/rom_field_NIST384.c | 27 -
version3/c/rom_field_NIST521.c | 25 -
version3/c/rom_field_SECP256K1.c | 28 -
version3/c/rsa.c | 162 --
version3/c/rsa.h | 110 -
version3/c/rsa_support.c | 237 ---
version3/c/rsa_support.h | 62 -
version3/c/testall.c | 1627 ---------------
version3/c/testnhs.c | 71 -
version3/c/x509.c | 1097 ----------
version3/c/x509.h | 109 -
version3/check.cpp | 108 -
version3/cpp/aes.cpp | 706 -------
version3/cpp/amcl.h | 585 ------
version3/cpp/arch.h | 98 -
version3/cpp/benchtest_all.cpp | 973 ---------
version3/cpp/big.cpp | 1508 --------------
version3/cpp/big.h | 595 ------
version3/cpp/config16.py | 370 ----
version3/cpp/config32.py | 641 ------
version3/cpp/config64.py | 641 ------
version3/cpp/config_big.h | 12 -
version3/cpp/config_curve.h | 47 -
version3/cpp/config_ff.h | 13 -
version3/cpp/config_field.h | 15 -
version3/cpp/ecdh.cpp | 435 ----
version3/cpp/ecdh.h | 154 --
version3/cpp/ecdh_support.cpp | 351 ----
version3/cpp/ecdh_support.h | 84 -
version3/cpp/ecp.cpp | 1467 -------------
version3/cpp/ecp.h | 293 ---
version3/cpp/ecp2.cpp | 922 ---------
version3/cpp/ecp2.h | 203 --
version3/cpp/ecp4.cpp | 1074 ----------
version3/cpp/ecp4.h | 243 ---
version3/cpp/ecp8.cpp | 1318 ------------
version3/cpp/ecp8.h | 253 ---
version3/cpp/ff.cpp | 1181 -----------
version3/cpp/ff.h | 276 ---
version3/cpp/fp.cpp | 878 --------
version3/cpp/fp.h | 229 ---
version3/cpp/fp12.cpp | 1005 ---------
version3/cpp/fp12.h | 194 --
version3/cpp/fp16.cpp | 697 -------
version3/cpp/fp16.h | 264 ---
version3/cpp/fp2.cpp | 486 -----
version3/cpp/fp2.h | 219 --
version3/cpp/fp24.cpp | 1126 ----------
version3/cpp/fp24.h | 200 --
version3/cpp/fp4.cpp | 808 --------
version3/cpp/fp4.h | 286 ---
version3/cpp/fp48.cpp | 1389 -------------
version3/cpp/fp48.h | 199 --
version3/cpp/fp8.cpp | 800 --------
version3/cpp/fp8.h | 301 ---
version3/cpp/gcm.cpp | 413 ----
version3/cpp/hash.cpp | 599 ------
version3/cpp/mpin.cpp | 1012 ---------
version3/cpp/mpin.h | 340 ----
version3/cpp/mpin192.cpp | 985 ---------
version3/cpp/mpin192.h | 340 ----
version3/cpp/mpin256.cpp | 1006 ---------
version3/cpp/mpin256.h | 340 ----
version3/cpp/newhope.cpp | 515 -----
version3/cpp/newhope.h | 54 -
version3/cpp/oct.cpp | 431 ----
version3/cpp/pair.cpp | 983 ---------
version3/cpp/pair.h | 80 -
version3/cpp/pair192.cpp | 758 -------
version3/cpp/pair192.h | 80 -
version3/cpp/pair256.cpp | 878 --------
version3/cpp/pair256.h | 80 -
version3/cpp/pbc_support.cpp | 179 --
version3/cpp/pbc_support.h | 66 -
version3/cpp/rand.cpp | 174 --
version3/cpp/randapi.cpp | 17 -
version3/cpp/randapi.h | 24 -
version3/cpp/readme.txt | 61 -
version3/cpp/rom_curve_ANSSI.cpp | 42 -
version3/cpp/rom_curve_BLS24.cpp | 78 -
version3/cpp/rom_curve_BLS381.cpp | 64 -
version3/cpp/rom_curve_BLS383.cpp | 68 -
version3/cpp/rom_curve_BLS461.cpp | 69 -
version3/cpp/rom_curve_BLS48.cpp | 95 -
version3/cpp/rom_curve_BN254.cpp | 89 -
version3/cpp/rom_curve_BN254CX.cpp | 83 -
version3/cpp/rom_curve_BRAINPOOL.cpp | 43 -
version3/cpp/rom_curve_C25519.cpp | 36 -
version3/cpp/rom_curve_C41417.cpp | 42 -
version3/cpp/rom_curve_ED25519.cpp | 54 -
version3/cpp/rom_curve_FP256BN.cpp | 86 -
version3/cpp/rom_curve_FP512BN.cpp | 88 -
version3/cpp/rom_curve_GOLDILOCKS.cpp | 43 -
version3/cpp/rom_curve_HIFIVE.cpp | 43 -
version3/cpp/rom_curve_NIST256.cpp | 44 -
version3/cpp/rom_curve_NIST384.cpp | 42 -
version3/cpp/rom_curve_NIST521.cpp | 42 -
version3/cpp/rom_curve_NUMS256E.cpp | 53 -
version3/cpp/rom_curve_NUMS256W.cpp | 44 -
version3/cpp/rom_curve_NUMS384E.cpp | 42 -
version3/cpp/rom_curve_NUMS384W.cpp | 42 -
version3/cpp/rom_curve_NUMS512E.cpp | 42 -
version3/cpp/rom_curve_NUMS512W.cpp | 42 -
version3/cpp/rom_curve_SECP256K1.cpp | 45 -
version3/cpp/rom_field_ANSSI.cpp | 34 -
version3/cpp/rom_field_BLS24.cpp | 37 -
version3/cpp/rom_field_BLS381.cpp | 39 -
version3/cpp/rom_field_BLS383.cpp | 39 -
version3/cpp/rom_field_BLS461.cpp | 40 -
version3/cpp/rom_field_BLS48.cpp | 38 -
version3/cpp/rom_field_BN254.cpp | 48 -
version3/cpp/rom_field_BN254CX.cpp | 49 -
version3/cpp/rom_field_BRAINPOOL.cpp | 34 -
version3/cpp/rom_field_C41417.cpp | 34 -
version3/cpp/rom_field_F25519.cpp | 43 -
version3/cpp/rom_field_F256PME.cpp | 41 -
version3/cpp/rom_field_F256PMW.cpp | 36 -
version3/cpp/rom_field_F384PM.cpp | 35 -
version3/cpp/rom_field_F512PM.cpp | 35 -
version3/cpp/rom_field_FP256BN.cpp | 45 -
version3/cpp/rom_field_FP512BN.cpp | 47 -
version3/cpp/rom_field_GOLDILOCKS.cpp | 38 -
version3/cpp/rom_field_HIFIVE.cpp | 35 -
version3/cpp/rom_field_NIST256.cpp | 35 -
version3/cpp/rom_field_NIST384.cpp | 35 -
version3/cpp/rom_field_NIST521.cpp | 34 -
version3/cpp/rom_field_SECP256K1.cpp | 38 -
version3/cpp/rsa.cpp | 164 --
version3/cpp/rsa.h | 106 -
version3/cpp/rsa_support.cpp | 239 ---
version3/cpp/rsa_support.h | 49 -
version3/cpp/testall.cpp | 1643 ---------------
version3/cpp/testnhs.cpp | 73 -
version3/cpp/x509.cpp | 1097 ----------
version3/cpp/x509.h | 115 --
version3/curves.txt | 35 -
version3/go/AES.go | 634 ------
version3/go/ARCH32.go | 28 -
version3/go/ARCH64.go | 26 -
version3/go/BIG32.go | 961 ---------
version3/go/BIG64.go | 963 ---------
version3/go/BenchtestALL.go | 881 --------
version3/go/DBIG.go | 274 ---
version3/go/ECDH.go | 565 ------
version3/go/ECP.go | 1038 ----------
version3/go/ECP2.go | 701 -------
version3/go/ECP4.go | 711 -------
version3/go/ECP8.go | 862 --------
version3/go/FF32.go | 943 ---------
version3/go/FF64.go | 943 ---------
version3/go/FP.go | 556 -----
version3/go/FP12.go | 765 -------
version3/go/FP16.go | 527 -----
version3/go/FP2.go | 333 ---
version3/go/FP24.go | 885 --------
version3/go/FP4.go | 590 ------
version3/go/FP48.go | 998 ---------
version3/go/FP8.go | 606 ------
version3/go/GCM.go | 337 ---
version3/go/HASH256.go | 193 --
version3/go/HASH384.go | 206 --
version3/go/HASH512.go | 206 --
version3/go/MPIN.go | 755 -------
version3/go/MPIN192.go | 760 -------
version3/go/MPIN256.go | 728 -------
version3/go/NHS.go | 539 -----
version3/go/PAIR.go | 777 -------
version3/go/PAIR192.go | 574 ------
version3/go/PAIR256.go | 563 -----
version3/go/RAND.go | 153 --
version3/go/ROM_ANSSI_32.go | 36 -
version3/go/ROM_ANSSI_64.go | 36 -
version3/go/ROM_BLS24_32.go | 58 -
version3/go/ROM_BLS24_64.go | 58 -
version3/go/ROM_BLS381_32.go | 56 -
version3/go/ROM_BLS381_64.go | 58 -
version3/go/ROM_BLS383_32.go | 55 -
version3/go/ROM_BLS383_64.go | 55 -
version3/go/ROM_BLS461_32.go | 54 -
version3/go/ROM_BLS461_64.go | 54 -
version3/go/ROM_BLS48_32.go | 66 -
version3/go/ROM_BLS48_64.go | 66 -
version3/go/ROM_BN254CX_32.go | 56 -
version3/go/ROM_BN254CX_64.go | 56 -
version3/go/ROM_BN254_32.go | 56 -
version3/go/ROM_BN254_64.go | 56 -
version3/go/ROM_BRAINPOOL_32.go | 38 -
version3/go/ROM_BRAINPOOL_64.go | 38 -
version3/go/ROM_C25519_32.go | 36 -
version3/go/ROM_C25519_64.go | 36 -
version3/go/ROM_C41417_32.go | 37 -
version3/go/ROM_C41417_64.go | 36 -
version3/go/ROM_ED25519_32.go | 37 -
version3/go/ROM_ED25519_64.go | 38 -
version3/go/ROM_FP256BN_32.go | 56 -
version3/go/ROM_FP256BN_64.go | 54 -
version3/go/ROM_FP512BN_32.go | 57 -
version3/go/ROM_FP512BN_64.go | 55 -
version3/go/ROM_GOLDILOCKS_32.go | 36 -
version3/go/ROM_GOLDILOCKS_64.go | 37 -
version3/go/ROM_HIFIVE_32.go | 36 -
version3/go/ROM_HIFIVE_64.go | 36 -
version3/go/ROM_NIST256_32.go | 36 -
version3/go/ROM_NIST256_64.go | 36 -
version3/go/ROM_NIST384_32.go | 36 -
version3/go/ROM_NIST384_64.go | 36 -
version3/go/ROM_NIST521_32.go | 37 -
version3/go/ROM_NIST521_64.go | 37 -
version3/go/ROM_NUMS256E_32.go | 36 -
version3/go/ROM_NUMS256E_64.go | 36 -
version3/go/ROM_NUMS256W_32.go | 36 -
version3/go/ROM_NUMS256W_64.go | 37 -
version3/go/ROM_NUMS384E_32.go | 36 -
version3/go/ROM_NUMS384E_64.go | 36 -
version3/go/ROM_NUMS384W_32.go | 36 -
version3/go/ROM_NUMS384W_64.go | 36 -
version3/go/ROM_NUMS512E_32.go | 36 -
version3/go/ROM_NUMS512E_64.go | 36 -
version3/go/ROM_NUMS512W_32.go | 37 -
version3/go/ROM_NUMS512W_64.go | 36 -
version3/go/ROM_SEC256K1_64.go | 39 -
version3/go/ROM_SECP256K1_32.go | 39 -
version3/go/RSA.go | 361 ----
version3/go/SHA3.go | 258 ---
version3/go/TestALL.go | 1315 ------------
version3/go/TestNHS.go | 64 -
version3/go/config32.py | 357 ----
version3/go/config64.py | 357 ----
version3/go/readme.txt | 49 -
version3/java/AES.java | 695 -------
version3/java/BIG32.java | 934 ---------
version3/java/BIG64.java | 933 ---------
version3/java/DBIG32.java | 282 ---
version3/java/DBIG64.java | 280 ---
version3/java/ECDH.java | 608 ------
version3/java/ECP.java | 1112 ----------
version3/java/ECP2.java | 798 --------
version3/java/ECP4.java | 770 -------
version3/java/ECP8.java | 932 ---------
version3/java/FF32.java | 1029 ----------
version3/java/FF64.java | 1028 ----------
version3/java/FP12.java | 910 ---------
version3/java/FP16.java | 565 ------
version3/java/FP2.java | 425 ----
version3/java/FP24.java | 854 --------
version3/java/FP32.java | 678 -------
version3/java/FP4.java | 724 -------
version3/java/FP48.java | 1060 ----------
version3/java/FP64.java | 682 -------
version3/java/FP8.java | 658 ------
version3/java/GCM.java | 376 ----
version3/java/HASH256.java | 218 --
version3/java/HASH384.java | 229 ---
version3/java/HASH512.java | 232 ---
version3/java/MPIN.java | 823 --------
version3/java/MPIN192.java | 806 --------
version3/java/MPIN256.java | 815 --------
version3/java/NHS.java | 577 ------
version3/java/OLDECP.java | 1044 ----------
version3/java/OLDECP2.java | 781 -------
version3/java/PAIR.java | 817 --------
version3/java/PAIR192.java | 550 -----
version3/java/PAIR256.java | 628 ------
version3/java/RAND.java | 163 --
version3/java/README.md | 27 -
version3/java/ROM_ANSSI_32.java | 42 -
version3/java/ROM_ANSSI_64.java | 43 -
version3/java/ROM_BLS24_32.java | 60 -
version3/java/ROM_BLS24_64.java | 60 -
version3/java/ROM_BLS381_32.java | 57 -
version3/java/ROM_BLS381_64.java | 57 -
version3/java/ROM_BLS383_32.java | 58 -
version3/java/ROM_BLS383_64.java | 55 -
version3/java/ROM_BLS461_32.java | 56 -
version3/java/ROM_BLS461_64.java | 56 -
version3/java/ROM_BLS48_32.java | 68 -
version3/java/ROM_BLS48_64.java | 68 -
version3/java/ROM_BN254CX_32.java | 57 -
version3/java/ROM_BN254CX_64.java | 58 -
version3/java/ROM_BN254_32.java | 55 -
version3/java/ROM_BN254_64.java | 55 -
version3/java/ROM_BRAINPOOL_32.java | 44 -
version3/java/ROM_BRAINPOOL_64.java | 43 -
version3/java/ROM_C25519_32.java | 41 -
version3/java/ROM_C25519_64.java | 42 -
version3/java/ROM_C41417_32.java | 41 -
version3/java/ROM_C41417_64.java | 44 -
version3/java/ROM_ED25519_32.java | 41 -
version3/java/ROM_ED25519_64.java | 43 -
version3/java/ROM_FP256BN_32.java | 56 -
version3/java/ROM_FP256BN_64.java | 55 -
version3/java/ROM_FP512BN_32.java | 55 -
version3/java/ROM_FP512BN_64.java | 56 -
version3/java/ROM_GOLDILOCKS_32.java | 43 -
version3/java/ROM_GOLDILOCKS_64.java | 44 -
version3/java/ROM_HIFIVE_32.java | 42 -
version3/java/ROM_HIFIVE_64.java | 43 -
version3/java/ROM_NIST256_32.java | 45 -
version3/java/ROM_NIST256_64.java | 43 -
version3/java/ROM_NIST384_32.java | 43 -
version3/java/ROM_NIST384_64.java | 44 -
version3/java/ROM_NIST521_32.java | 43 -
version3/java/ROM_NIST521_64.java | 44 -
version3/java/ROM_NUMS256E_32.java | 39 -
version3/java/ROM_NUMS256E_64.java | 42 -
version3/java/ROM_NUMS256W_32.java | 44 -
version3/java/ROM_NUMS256W_64.java | 45 -
version3/java/ROM_NUMS384E_32.java | 40 -
version3/java/ROM_NUMS384E_64.java | 40 -
version3/java/ROM_NUMS384W_32.java | 43 -
version3/java/ROM_NUMS384W_64.java | 55 -
version3/java/ROM_NUMS512E_32.java | 40 -
version3/java/ROM_NUMS512E_64.java | 40 -
version3/java/ROM_NUMS512W_32.java | 40 -
version3/java/ROM_NUMS512W_64.java | 41 -
version3/java/ROM_SECP256K1_32.java | 45 -
version3/java/ROM_SECP256K1_64.java | 43 -
version3/java/RSA.java | 369 ----
version3/java/SHA3.java | 255 ---
version3/java/TestECDH.java | 192 --
version3/java/TestMPIN.java | 297 ---
version3/java/TestMPIN192.java | 297 ---
version3/java/TestMPIN256.java | 297 ---
version3/java/TestNHS.java | 70 -
version3/java/TestRSA.java | 111 -
version3/java/TesttimeECDH.java | 103 -
version3/java/TesttimeMPIN.java | 195 --
version3/java/TesttimeMPIN192.java | 195 --
version3/java/TesttimeMPIN256.java | 195 --
version3/java/TesttimeRSA.java | 99 -
version3/java/config32.py | 387 ----
version3/java/config64.py | 386 ----
version3/java/pom.xml | 19 -
version3/java/private_key.java | 16 -
version3/java/public_key.java | 14 -
version3/js/BenchtestALL.html | 1076 ----------
version3/js/TestALL.html | 1527 --------------
version3/js/TestNHS.html | 56 -
version3/js/aes.js | 705 -------
version3/js/big.js | 1552 --------------
version3/js/ctx.js | 611 ------
version3/js/ecdh.js | 771 -------
version3/js/ecp.js | 1398 -------------
version3/js/ecp2.js | 921 ---------
version3/js/ecp4.js | 885 --------
version3/js/ecp8.js | 1061 ----------
version3/js/ff.js | 1002 ---------
version3/js/fp.js | 708 -------
version3/js/fp12.js | 893 --------
version3/js/fp16.js | 573 ------
version3/js/fp2.js | 405 ----
version3/js/fp24.js | 963 ---------
version3/js/fp4.js | 642 ------
version3/js/fp48.js | 1271 ------------
version3/js/fp8.js | 660 ------
version3/js/gcm.js | 428 ----
version3/js/hash256.js | 198 --
version3/js/hash384.js | 275 ---
version3/js/hash512.js | 277 ---
version3/js/include.html | 25 -
version3/js/mpin.js | 1059 ----------
version3/js/mpin192.js | 1046 ----------
version3/js/mpin256.js | 1080 ----------
version3/js/nhs.js | 565 ------
version3/js/pair.js | 774 -------
version3/js/pair192.js | 545 -----
version3/js/pair256.js | 622 ------
version3/js/rand.js | 184 --
version3/js/readme.txt | 48 -
version3/js/rom_curve.js | 1127 ----------
version3/js/rom_field.js | 425 ----
version3/js/rsa.js | 515 -----
version3/js/sha3.js | 264 ---
version3/js/uint64.js | 61 -
version3/python/big.py | 159 --
version3/python/bls381.py | 40 -
version3/python/bls383.py | 40 -
version3/python/bn254.py | 38 -
version3/python/bn254cx.py | 39 -
version3/python/c25519.py | 19 -
version3/python/config.py | 175 --
version3/python/constants.py | 17 -
version3/python/ecdh.py | 162 --
version3/python/ecp.py | 634 ------
version3/python/ecp2.py | 290 ---
version3/python/ed25519.py | 19 -
version3/python/fp.py | 97 -
version3/python/fp12.py | 314 ---
version3/python/fp2.py | 153 --
version3/python/fp4.py | 144 --
version3/python/goldilocks.py | 19 -
version3/python/mpin.py | 227 ---
version3/python/nist256.py | 19 -
version3/python/nist384.py | 19 -
version3/python/nist521.py | 20 -
version3/python/pair.py | 317 ---
version3/python/readme.txt | 39 -
version3/python/sec256k1.py | 19 -
version3/python/test.py | 122 --
version3/readme.txt | 17 -
version3/romgen.cpp | 1561 --------------
version3/rust/BenchtestALL.rs | 970 ---------
version3/rust/TestALL.rs | 1235 -----------
version3/rust/TestNHS.rs | 76 -
version3/rust/aes.rs | 628 ------
version3/rust/arch32.rs | 22 -
version3/rust/arch64.rs | 22 -
version3/rust/big.rs | 1078 ----------
version3/rust/config32.py | 400 ----
version3/rust/config64.py | 399 ----
version3/rust/dbig.rs | 272 ---
version3/rust/ecdh.rs | 604 ------
version3/rust/ecp.rs | 1065 ----------
version3/rust/ecp2.rs | 671 ------
version3/rust/ecp4.rs | 702 -------
version3/rust/ecp8.rs | 873 --------
version3/rust/ff.rs | 1018 ----------
version3/rust/fp.rs | 625 ------
version3/rust/fp12.rs | 798 --------
version3/rust/fp16.rs | 553 -----
version3/rust/fp2.rs | 353 ----
version3/rust/fp24.rs | 840 --------
version3/rust/fp4.rs | 624 ------
version3/rust/fp48.rs | 1069 ----------
version3/rust/fp8.rs | 635 ------
version3/rust/gcm.rs | 356 ----
version3/rust/hash256.rs | 177 --
version3/rust/hash384.rs | 189 --
version3/rust/hash512.rs | 190 --
version3/rust/lib.rs | 10 -
version3/rust/mod.rs | 11 -
version3/rust/modecc.rs | 8 -
version3/rust/modpf.rs | 11 -
version3/rust/modpf192.rs | 12 -
version3/rust/modpf256.rs | 13 -
version3/rust/modrsa.rs | 6 -
version3/rust/mpin.rs | 800 --------
version3/rust/mpin192.rs | 780 -------
version3/rust/mpin256.rs | 791 --------
version3/rust/nhs.rs | 511 -----
version3/rust/pair.rs | 764 -------
version3/rust/pair192.rs | 494 -----
version3/rust/pair256.rs | 574 ------
version3/rust/rand.rs | 147 --
version3/rust/readme.txt | 40 -
version3/rust/rom_anssi_32.rs | 39 -
version3/rust/rom_anssi_64.rs | 39 -
version3/rust/rom_bls24_32.rs | 59 -
version3/rust/rom_bls24_64.rs | 59 -
version3/rust/rom_bls381_32.rs | 57 -
version3/rust/rom_bls381_64.rs | 56 -
version3/rust/rom_bls383_32.rs | 55 -
version3/rust/rom_bls383_64.rs | 55 -
version3/rust/rom_bls461_32.rs | 55 -
version3/rust/rom_bls461_64.rs | 56 -
version3/rust/rom_bls48_32.rs | 67 -
version3/rust/rom_bls48_64.rs | 67 -
version3/rust/rom_bn254CX_32.rs | 56 -
version3/rust/rom_bn254CX_64.rs | 58 -
version3/rust/rom_bn254_32.rs | 53 -
version3/rust/rom_bn254_64.rs | 53 -
version3/rust/rom_brainpool_32.rs | 40 -
version3/rust/rom_brainpool_64.rs | 40 -
version3/rust/rom_c25519_32.rs | 39 -
version3/rust/rom_c25519_64.rs | 38 -
version3/rust/rom_c41417_32.rs | 38 -
version3/rust/rom_c41417_64.rs | 38 -
version3/rust/rom_ed25519_32.rs | 38 -
version3/rust/rom_ed25519_64.rs | 38 -
version3/rust/rom_fp256bn_32.rs | 54 -
version3/rust/rom_fp256bn_64.rs | 54 -
version3/rust/rom_fp512bn_32.rs | 53 -
version3/rust/rom_fp512bn_64.rs | 53 -
version3/rust/rom_goldilocks_32.rs | 38 -
version3/rust/rom_goldilocks_64.rs | 38 -
version3/rust/rom_hifive_32.rs | 38 -
version3/rust/rom_hifive_64.rs | 38 -
version3/rust/rom_nist256_32.rs | 41 -
version3/rust/rom_nist256_64.rs | 40 -
version3/rust/rom_nist384_32.rs | 38 -
version3/rust/rom_nist384_64.rs | 38 -
version3/rust/rom_nist521_32.rs | 39 -
version3/rust/rom_nist521_64.rs | 38 -
version3/rust/rom_nums256e_32.rs | 40 -
version3/rust/rom_nums256e_64.rs | 42 -
version3/rust/rom_nums256w_32.rs | 38 -
version3/rust/rom_nums256w_64.rs | 40 -
version3/rust/rom_nums384e_32.rs | 40 -
version3/rust/rom_nums384e_64.rs | 39 -
version3/rust/rom_nums384w_32.rs | 39 -
version3/rust/rom_nums384w_64.rs | 38 -
version3/rust/rom_nums512e_32.rs | 37 -
version3/rust/rom_nums512e_64.rs | 38 -
version3/rust/rom_nums512w_32.rs | 39 -
version3/rust/rom_nums512w_64.rs | 38 -
version3/rust/rom_secp256k1_32.rs | 40 -
version3/rust/rom_secp256k1_64.rs | 39 -
version3/rust/rsa.rs | 362 ----
version3/rust/sha3.rs | 242 ---
version3/swift/BenchtestALL.swift | 888 --------
version3/swift/TestALL.swift | 1425 -------------
version3/swift/TestNHS.swift | 70 -
version3/swift/aes.swift | 641 ------
version3/swift/big.swift | 1150 -----------
version3/swift/config32.py | 354 ----
version3/swift/config64.py | 352 ----
version3/swift/dbig.swift | 291 ---
version3/swift/ecdh.swift | 595 ------
version3/swift/ecp.swift | 1070 ----------
version3/swift/ecp2.swift | 735 -------
version3/swift/ecp4.swift | 739 -------
version3/swift/ecp8.swift | 894 --------
version3/swift/ff.swift | 996 ---------
version3/swift/fp.swift | 616 ------
version3/swift/fp12.swift | 815 --------
version3/swift/fp16.swift | 576 ------
version3/swift/fp2.swift | 359 ----
version3/swift/fp24.swift | 852 --------
version3/swift/fp4.swift | 632 ------
version3/swift/fp48.swift | 1071 ----------
version3/swift/fp8.swift | 658 ------
version3/swift/gcm.swift | 326 ---
version3/swift/hash256.swift | 188 --
version3/swift/hash384.swift | 198 --
version3/swift/hash512.swift | 198 --
version3/swift/mpin.swift | 822 --------
version3/swift/mpin192.swift | 828 --------
version3/swift/mpin256.swift | 816 --------
version3/swift/nhs.swift | 550 -----
version3/swift/pair.swift | 724 -------
version3/swift/pair192.swift | 512 -----
version3/swift/pair256.swift | 587 ------
version3/swift/rand.swift | 136 --
version3/swift/readme.txt | 43 -
version3/swift/rom_anssi.swift | 73 -
version3/swift/rom_bls24.swift | 104 -
version3/swift/rom_bls381.swift | 105 -
version3/swift/rom_bls383.swift | 101 -
version3/swift/rom_bls461.swift | 107 -
version3/swift/rom_bls48.swift | 120 --
version3/swift/rom_bn254.swift | 104 -
version3/swift/rom_bn254CX.swift | 106 -
version3/swift/rom_brainpool.swift | 74 -
version3/swift/rom_c25519.swift | 72 -
version3/swift/rom_c41417.swift | 71 -
version3/swift/rom_ed25519.swift | 72 -
version3/swift/rom_fp256bn.swift | 102 -
version3/swift/rom_fp512bn.swift | 105 -
version3/swift/rom_goldilocks.swift | 70 -
version3/swift/rom_hifive.swift | 72 -
version3/swift/rom_nist256.swift | 70 -
version3/swift/rom_nist384.swift | 70 -
version3/swift/rom_nist521.swift | 71 -
version3/swift/rom_nums256e.swift | 72 -
version3/swift/rom_nums256w.swift | 72 -
version3/swift/rom_nums384e.swift | 72 -
version3/swift/rom_nums384w.swift | 73 -
version3/swift/rom_nums512e.swift | 75 -
version3/swift/rom_nums512w.swift | 72 -
version3/swift/rom_secp256k1.swift | 70 -
version3/swift/rsa.swift | 390 ----
version3/swift/sha3.swift | 264 ---
version3/wasm/config.py | 669 ------
version3/wasm/readme.txt | 72 -
879 files changed, 297899 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/blob/1add7560/LICENSE-2.0.TXT
----------------------------------------------------------------------
diff --git a/LICENSE-2.0.TXT b/LICENSE-2.0.TXT
deleted file mode 100644
index 9b5e401..0000000
--- a/LICENSE-2.0.TXT
+++ /dev/null
@@ -1,202 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/blob/1add7560/NOTICE.txt
----------------------------------------------------------------------
diff --git a/NOTICE.txt b/NOTICE.txt
deleted file mode 100644
index 2e6c028..0000000
--- a/NOTICE.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-Apache Milagro Crypto Libraries
-Copyright 2016 The Apache Software Foundation
-
-This product includes software developed at
-The Apache Software Foundation (http://www.apache.org/).
http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/blob/1add7560/readme.txt
----------------------------------------------------------------------
diff --git a/readme.txt b/readme.txt
deleted file mode 100644
index 5469379..0000000
--- a/readme.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-The Apache Milagro Cryptographic Library
-
-Note that the AMCL currently comes in two versions, version 2.2
-and version 3.1
-
-AMCL v2.2 is presented in what might be called a pre-library state.
-
-In the various supported languages the source code is made available,
-but it is not organised into rigid packages/crates/jars/whatever
-It is expected that the consumer will themselves take this final step,
-depending on the exact requirements of their project.
-
-Note that version 2.2 is no longer supported.
-
-AMCL v3.1 uses a standard Python 3 script to build libraries in all
-supported languages. New users should use this version.
-
-The main improvement is that AMCL v3 can optionally simultaneously support
-multiple elliptic curves and RSA key sizes within a single appliction.
-
-Note that AMCL is largely configured at compile time. In version 3 this
-configuration is handled by the Python script.
-
-AMCL is available in 32-bit and 64-bit versions in most languages. Limited
-support for 16-bit processors is provided by the C version.
-
-Now languages like to remain "standard" irrespective of the underlying
-hardware. However when it comes to optimal performance, it is impossible
-to remain architecture-agnostic. If a processor supports 64-bit
-instructions that operate on 64-bit registers, it will be a waste not to
-use them. Therefore the 64-bit language versions should always be used
-on 64-bit processors.
-
-Version 3.1 is a major "under the hood" upgrade. Field arithmetic is
-performed using ideas from http://eprint.iacr.org/2017/437 to ensure
-that critical calculations are performed in constant time. This strongly
-mitigates against side-channel attacks. Exception-free formulae are
-now used for Weierstrass elliptic curves. A new standardised script
-builds for the same set of curves across all languages.
-
-
http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/blob/1add7560/version22/amcl22.pdf
----------------------------------------------------------------------
diff --git a/version22/amcl22.pdf b/version22/amcl22.pdf
deleted file mode 100644
index b5ba27f..0000000
Binary files a/version22/amcl22.pdf and /dev/null differ
http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/blob/1add7560/version22/bigtobig.cpp
----------------------------------------------------------------------
diff --git a/version22/bigtobig.cpp b/version22/bigtobig.cpp
deleted file mode 100644
index fbc89ea..0000000
--- a/version22/bigtobig.cpp
+++ /dev/null
@@ -1,292 +0,0 @@
-/*
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
-*/
-
-//
-// Program to convert from Big to AMCL BIG format
-// cl /O2 bigtobig.cpp big.cpp miracl.lib
-// g++ -O2 bigtobig.cpp big.cpp miracl.a -o bigtobig
-//
-//
-
-#include <iostream>
-#include "zzn.h"
-
-using namespace std;
-
-Miracl precision=100;
-
-// Code to parse formula in command line
-// This code isn't mine, but its public domain
-// Shamefully I forget the source
-//
-// NOTE: It may be necessary on some platforms to change the operators * and #
-//
-
-#if defined(unix)
-#define TIMES '.'
-#define RAISE '^'
-#else
-#define TIMES '*'
-#define RAISE '#'
-#endif
-
-Big tt;
-static char *ss;
-
-void eval_power (Big& oldn,Big& n,char op)
-{
- if (op) n=pow(oldn,toint(n)); // power(oldn,size(n),n,n);
-}
-
-void eval_product (Big& oldn,Big& n,char op)
-{
- switch (op)
- {
- case TIMES:
- n*=oldn;
- break;
- case '/':
- n=oldn/n;
- break;
- case '%':
- n=oldn%n;
- }
-}
-
-void eval_sum (Big& oldn,Big& n,char op)
-{
- switch (op)
- {
- case '+':
- n+=oldn;
- break;
- case '-':
- n=oldn-n;
- }
-}
-
-void eval (void)
-{
- Big oldn[3];
- Big n;
- int i;
- char oldop[3];
- char op;
- char minus;
- for (i=0;i<3;i++)
- {
- oldop[i]=0;
- }
-LOOP:
- while (*ss==' ')
- ss++;
- if (*ss=='-') /* Unary minus */
- {
- ss++;
- minus=1;
- }
- else
- minus=0;
- while (*ss==' ')
- ss++;
- if (*ss=='(' || *ss=='[' || *ss=='{') /* Number is subexpression */
- {
- ss++;
- eval ();
- n=tt;
- }
- else /* Number is decimal value */
- {
- for (i=0;ss[i]>='0' && ss[i]<='9';i++)
- ;
- if (!i) /* No digits found */
- {
- cout << "Error - invalid number" << endl;
- exit (20);
- }
- op=ss[i];
- ss[i]=0;
- n=atoi(ss);
- ss+=i;
- *ss=op;
- }
- if (minus) n=-n;
- do
- op=*ss++;
- while (op==' ');
- if (op==0 || op==')' || op==']' || op=='}')
- {
- eval_power (oldn[2],n,oldop[2]);
- eval_product (oldn[1],n,oldop[1]);
- eval_sum (oldn[0],n,oldop[0]);
- tt=n;
- return;
- }
- else
- {
- if (op==RAISE)
- {
- eval_power (oldn[2],n,oldop[2]);
- oldn[2]=n;
- oldop[2]=RAISE;
- }
- else
- {
- if (op==TIMES || op=='/' || op=='%')
- {
- eval_power (oldn[2],n,oldop[2]);
- oldop[2]=0;
- eval_product (oldn[1],n,oldop[1]);
- oldn[1]=n;
- oldop[1]=op;
- }
- else
- {
- if (op=='+' || op=='-')
- {
- eval_power (oldn[2],n,oldop[2]);
- oldop[2]=0;
- eval_product (oldn[1],n,oldop[1]);
- oldop[1]=0;
- eval_sum (oldn[0],n,oldop[0]);
- oldn[0]=n;
- oldop[0]=op;
- }
- else /* Error - invalid operator */
- {
- cout << "Error - invalid operator" << endl;
- exit (20);
- }
- }
- }
- }
- goto LOOP;
-}
-
-void output(int w,Big t,Big m)
-{
- Big y=t;
-
- for (int i=0;i<w;i++)
- {
- cout << "0x" << y%m ;
- if (i<w-1) cout << ",";
- y/=m;
- }
- cout << endl;
-}
-
-int main(int argc, char **argv)
-{
- int i,ip,chunk,basebits;
- Big n,m;
- BOOL gotP,gotA,gotB;
- int Base;
- miracl *mip=&precision;
- argv++; argc--;
- if (argc<1)
- {
- cout << "Program converts from Big to BIG" << endl;
- cout << "bigtobig <big number> <chunk>> <basebits>" << endl;
- cout << "OR" << endl;
- cout << "bigtobig <formula for big number> <chunk>> <basebits>" << endl;
-#if defined(unix)
- cout << "e.g. bigtobig -f 2^255-19 32 29" << endl;
-#else
- cout << "e.g. bigtobig -f 2#255-19 32 29" << endl;
-#endif
- cout << "To input Big number in Hex, precede with -h" << endl;
- return 0;
- }
-
- ip=0;
- gprime(1000);
- gotP=gotA=gotB=FALSE;
- n=0;
- Base=10;
- while (ip<argc)
- {
- if (!gotP && strcmp(argv[ip],"-f")==0)
- {
- ip++;
- if (!gotP && ip<argc)
- {
-
- ss=argv[ip++];
- tt=0;
- eval();
- n=tt;
- gotP=TRUE;
- continue;
- }
- else
- {
- cout << "Error in command line" << endl;
- return 0;
- }
- }
-
-
- if (strcmp(argv[ip],"-h")==0)
- {
- ip++;
- Base=16;
- continue;
- }
-
- if (!gotP)
- {
- mip->IOBASE=Base;
- n=argv[ip++];
- mip->IOBASE=10;
- gotP=TRUE;
- continue;
- }
- if (!gotA)
- {
- mip->IOBASE=Base;
- chunk=atoi(argv[ip++]);
- gotA=TRUE;
- continue;
- }
- if (!gotB)
- {
- mip->IOBASE=Base;
- basebits=atoi(argv[ip++]);
- gotB=TRUE;
- continue;
- }
- cout << "Error in command line" << endl;
- return 0;
- }
- if (!gotP || !gotA || !gotB)
- {
- cout << "Error in command line" << endl;
- return 0;
- }
-
- mip->IOBASE=16;
-
- m=pow((Big)2,basebits);
-
- output(1+bits(n)/basebits,n,m);
-
- return 0;
-}
-
http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/blob/1add7560/version22/blsgen.cpp
----------------------------------------------------------------------
diff --git a/version22/blsgen.cpp b/version22/blsgen.cpp
deleted file mode 100644
index 9b08b7c..0000000
--- a/version22/blsgen.cpp
+++ /dev/null
@@ -1,194 +0,0 @@
-/*
-Copyright 2015 CertiVox UK Ltd
-
-This file is part of The CertiVox MIRACL IOT Crypto SDK (MiotCL)
-
-MiotCL is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-MiotCL is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with MiotCL. If not, see <http://www.gnu.org/licenses/>.
-
-You can be released from the requirements of the license by purchasing
-a commercial license.
-*/
-
-/* BLSGEN - Helper MIRACL program to generate constants for BlS curves
-
-(MINGW build)
-
-g++ -O3 blsgen.cpp big.cpp zzn.cpp ecn.cpp zzn2.cpp ecn2.cpp miracl.a -o blsgen.exe
-
-This ONLY works for D-type curves of the form y^2=x^3+1, with a positive x parameter
-
-*/
-
-#include <iostream>
-#include "big.h"
-#include "ecn.h"
-#include "zzn2.h"
-#include "ecn2.h"
-
-using namespace std;
-
-Miracl precision(20,0);
-
-Big output(int chunk,int w,Big t,Big m)
-{
- Big last,y=t;
-
- cout << "{";
- for (int i=0;i<w;i++)
- {
- last=y%m;
- cout << "0x" << last;
- y/=m;
- if (i==w-1) break;
- if (chunk==64) cout << "L,";
- else cout << ",";
- }
-
- if (chunk==64) cout << "L}";
- else cout << "}";
- return last;
-}
-
-void set_frobenius_constant(ZZn2 &X)
-{
- Big p=get_modulus();
- switch (get_mip()->pmod8)
- {
- case 5:
- X.set((Big)0,(Big)1); // = (sqrt(-2)^(p-1)/2
- break;
- case 3: // = (1+sqrt(-1))^(p-1)/2
- X.set((Big)1,(Big)1);
- break;
- case 7:
- X.set((Big)2,(Big)1); // = (2+sqrt(-1))^(p-1)/2
- default: break;
- }
- X=pow(X,(p-1)/6);
-}
-
-/* Fill in this bit yourself.... */
-
-#define CHUNK 64 /* processor word size */
-#define MBITS 455 /* Modulus size in bits */
-
-/* This next from output of check.cpp program */
-#define BASEBITS 60
-
-#define MODTYPE NOT_SPECIAL
-#define CURVETYPE WEIERSTRASS
-#define CURVE_A 0 // like A parameter in CURVE: y^2=x^3+Ax+B
-
-/* .....to here */
-
-#define WORDS (1+((MBITS-1)/BASEBITS))
-
-int main()
-{
- miracl *mip=&precision;
- Big p,q,R,Beta;
- Big m,x,y,w,t,c,n,r,a,b,gx,gy,B,xa,xb,ya,yb,cof;
- Big np,PP,TT,FF;
- ZZn cru;
- ZZn2 X;
- ECn P;
- ECn2 Q;
- ZZn2 Xa,Ya;
- int i,j;
-
- mip->IOBASE=16;
-
-/* Set BLS value x which determines curve */
-
- x= (char *)"10002000002000010007";
- B=1;
- x= (char *)"10000000000004100100";
- B=7;
- x= (char *)"10000020000080000800";
- B=10;
-/* ... to here */
-
- p=(pow(x,6)-2*pow(x,5)+2*pow(x,3)+x+1)/3;
- ecurve((Big)0,B,p,MR_AFFINE);
- mip->TWIST=MR_SEXTIC_D;
- t=x+1;
- q=pow(x,4)-x*x+1;
- cof=(p+1-t)/q;
-
-// cout << "cof= " << (p+1-t)/q << endl;
-
- gx=-1; gy=3;
- if (!P.set(gx,gy))
- {
- cout << "Failed - try another x " << endl;
- return 0;
- }
-
-// while (!P.set(gx) || (cof*P).iszero()) gx=gx+1;
-
- P*=cof;
- P.get(gx,gy);
-
- cout << "MOD8 " << p%8 << endl;
-
- m=pow((Big)2,BASEBITS);
-
- cout << "MConst=0x" << inverse(m-p%m,m) << ";" << endl;
-
- cout << "Modulus="; output(CHUNK,WORDS,p,m); cout << ";" << endl;
-
- cout << "CURVE_Order="; output(CHUNK,WORDS,q,m); cout << ";" << endl;
- cout << "CURVE_Cof="; output(CHUNK,WORDS,cof,m); cout << ";" << endl;
- cout << "CURVE_B= "; output(CHUNK,WORDS,B,m); cout << ";" << endl;
- cout << "CURVE_Gx="; output(CHUNK,WORDS,gx,m); cout << ";" << endl;
- cout << "CURVE_Gy="; output(CHUNK,WORDS,gy,m); cout << ";" << endl;
- cout << endl;
- cout << "CURVE_Bnx="; output(CHUNK,WORDS,x,m); cout << ";" << endl;
-
- modulo(p);
-
- cru=pow((ZZn)2,(p-1)/3);
- cru*=cru; // right cube root of unity
-
- cout << "CURVE_Cru="; output(CHUNK,WORDS,(Big)cru,m); cout << ";" << endl;
-
- set_frobenius_constant(X);
- X.get(a,b);
- cout << "CURVE_Fra="; output(CHUNK,WORDS,a,m); cout << ";" << endl;
- cout << "CURVE_Frb="; output(CHUNK,WORDS,b,m); cout << ";" << endl;
-
- while (!Q.set(randn2())) ;
-
- TT=t*t-2*p;
- PP=p*p;
- FF=sqrt((4*PP-TT*TT)/3);
- np=PP+1-(-3*FF+TT)/2; // 2 possibilities...
-
- Q=(np/q)*Q;
-
- Q.get(Xa,Ya);
- Xa.get(a,b);
- cout << "CURVE_Pxa="; output(CHUNK,WORDS,a,m); cout << ";" << endl;
- cout << "CURVE_Pxb="; output(CHUNK,WORDS,b,m); cout << ";" << endl;
- Ya.get(a,b);
- cout << "CURVE_Pya="; output(CHUNK,WORDS,a,m); cout << ";" << endl;
- cout << "CURVE_Pyb="; output(CHUNK,WORDS,b,m); cout << ";" << endl;
-
- Q*=q;
- if (!Q.iszero())
- {
- cout << "**** Failed ****" << endl;
- cout << "\nQ= " << Q << endl << endl;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/blob/1add7560/version22/bngen.cpp
----------------------------------------------------------------------
diff --git a/version22/bngen.cpp b/version22/bngen.cpp
deleted file mode 100644
index da4c10c..0000000
--- a/version22/bngen.cpp
+++ /dev/null
@@ -1,251 +0,0 @@
-/*
-Copyright 2015 CertiVox UK Ltd
-
-This file is part of The CertiVox MIRACL IOT Crypto SDK (MiotCL)
-
-MiotCL is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-MiotCL is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with MiotCL. If not, see <http://www.gnu.org/licenses/>.
-
-You can be released from the requirements of the license by purchasing
-a commercial license.
-*/
-
-/* BNGEN - Helper MIRACL program to generate constants for BN curve
-
-(MINGW build)
-
-g++ -O3 bngen.cpp big.cpp zzn.cpp zzn2.cpp ecn2.cpp miracl.a -o bngen.exe
-
-This ONLY works for D-type curves of the form y^2=x^3+2, with a negative x parameter, and x=3 mod 4
-
-*/
-
-#include <iostream>
-#include "big.h"
-#include "zzn2.h"
-#include "ecn2.h"
-
-using namespace std;
-
-Miracl precision(20,0);
-
-Big output(int chunk,int w,Big t,Big m)
-{
- Big last,y=t;
-
- cout << "{";
- for (int i=0;i<w;i++)
- {
- last=y%m;
- cout << "0x" << last;
- y/=m;
- if (i==w-1) break;
- if (chunk==64) cout << "L,";
- else cout << ",";
- }
-
- if (chunk==64) cout << "L}";
- else cout << "}";
- return last;
-}
-
-void q_power_frobenius(ECn2 &A,ZZn2 &F)
-{
-// Fast multiplication of A by q (for Trace-Zero group members only)
- ZZn2 x,y,z,w,r;
-
- A.get(x,y);
-
- w=F*F;
- r=F;
-
- if (get_mip()->TWIST==MR_SEXTIC_M) r=inverse(F); // could be precalculated
- if (get_mip()->TWIST==MR_SEXTIC_D) r=F;
-
- w=r*r;
- x=w*conj(x);
- y=r*w*conj(y);
-
- A.set(x,y);
-}
-
-//
-// Faster Hashing to G2 - Fuentes-Castaneda, Knapp and Rodriguez-Henriquez
-//
-
-void cofactor(ECn2& S,ZZn2 &F,Big& x)
-{
- ECn2 T,K;
- T=S;
- T*=-x;
- T.norm();
- K=(T+T)+T;
- K.norm();
- q_power_frobenius(K,F);
- q_power_frobenius(S,F); q_power_frobenius(S,F); q_power_frobenius(S,F);
- S+=T; S+=K;
- q_power_frobenius(T,F); q_power_frobenius(T,F);
- S+=T;
- S.norm();
-}
-
-void set_frobenius_constant(ZZn2 &X)
-{
- Big p=get_modulus();
- switch (get_mip()->pmod8)
- {
- case 5:
- X.set((Big)0,(Big)1); // = (sqrt(-2)^(p-1)/2
- break;
- case 3: // = (1+sqrt(-1))^(p-1)/2
- X.set((Big)1,(Big)1);
- break;
- case 7:
- X.set((Big)2,(Big)1); // = (2+sqrt(-1))^(p-1)/2
- default: break;
- }
- X=pow(X,(p-1)/6);
-}
-
-/* Fill in this bit yourself.... */
-
-#define CHUNK 64 /* processor word size */
-#define MBITS 454 /* Modulus size in bits */
-
-/* This next from output of check.cpp program */
-#define BASEBITS 60
-
-#define MODTYPE NOT_SPECIAL
-#define CURVETYPE WEIERSTRASS
-#define CURVE_A 0 // like A parameter in CURVE: y^2=x^3+Ax+B
-
-/* .....to here */
-
-#define WORDS (1+((MBITS-1)/BASEBITS))
-
-int main()
-{
- miracl *mip=&precision;
- Big p,q,R,cru;
- Big m,x,y,w,t,c,n,r,a,b,gx,gy,B,xa,xb,ya,yb,cof;
- ZZn2 X;
- ECn2 Q;
- ZZn2 Xa,Ya;
- int i;
-
- mip->IOBASE=16;
-
-/* Set BN value x which determines curve - note that x is assumed to be negative */
-
-// x=(char *)"6000000000101041"; // for full 256-bit GT_STRONG parameter
-// x=(char *)"4080000000000001"; // Fast but not not GT_STRONG parameter
-
-// x=(char *)"4000020100608205"; // G2 and GT-Strong parameter
-// x=(char *)"4000000003C012B1"; // CertiVox's GT_STRONG parameter
-// x=(char *)"10000000000000000000004000000000000001001";
-// x=(char *)"4000806000004081"; // Best GT_STRONG parameter
-
-/* Fill in this bit yourself... */
-
-// x=(char *)"4080000000000001"; // Nogami's fast parameter
- x=(char *)"10000010000000000000100000001";
-// x=(char *)"10000000000000000000004000000000000001001";
-
-/* ... to here */
-
- p=36*pow(x,4)-36*pow(x,3)+24*x*x-6*x+1;
- ecurve((Big)0,(Big)2,p,MR_AFFINE);
- mip->TWIST=MR_SEXTIC_D;
- t=6*x*x+1;
- q=p+1-t;
- cof=1;
- B=2;
- gx=p-1;
- gy=1;
-
- cout << "MOD8 " << p%8 << endl;
-
- m=pow((Big)2,BASEBITS);
-
- cout << "MConst=0x" << inverse(m-p%m,m) << ";" << endl;
-
- cout << "Modulus="; output(CHUNK,WORDS,p,m); cout << ";" << endl;
-
- cout << "CURVE_Order="; output(CHUNK,WORDS,q,m); cout << ";" << endl;
- cout << "CURVE_Cof="; output(CHUNK,WORDS,cof,m); cout << ";" << endl;
- cout << "CURVE_B= "; output(CHUNK,WORDS,B,m); cout << ";" << endl;
- cout << "CURVE_Gx="; output(CHUNK,WORDS,gx,m); cout << ";" << endl;
- cout << "CURVE_Gy="; output(CHUNK,WORDS,gy,m); cout << ";" << endl;
- cout << endl;
- cout << "CURVE_Bnx="; output(CHUNK,WORDS,x,m); cout << ";" << endl;
-
- cru=(18*pow(x,3)-18*x*x+9*x-2);
- cout << "CURVE_Cru="; output(CHUNK,WORDS,cru,m); cout << ";" << endl;
-
- set_frobenius_constant(X);
- X.get(a,b);
- cout << "CURVE_Fra="; output(CHUNK,WORDS,a,m); cout << ";" << endl;
- cout << "CURVE_Frb="; output(CHUNK,WORDS,b,m); cout << ";" << endl;
-
- Xa.set((ZZn)0,(ZZn)-1);
- Ya.set((ZZn)1,ZZn(0));
- Q.set(Xa,Ya);
-
-// cofactor(Q,X,x);
-
- Q=(p-1+t)*Q;
-
- Q.get(Xa,Ya);
- Xa.get(a,b);
- cout << "CURVE_Pxa="; output(CHUNK,WORDS,a,m); cout << ";" << endl;
- cout << "CURVE_Pxb="; output(CHUNK,WORDS,b,m); cout << ";" << endl;
- Ya.get(a,b);
- cout << "CURVE_Pya="; output(CHUNK,WORDS,a,m); cout << ";" << endl;
- cout << "CURVE_Pyb="; output(CHUNK,WORDS,b,m); cout << ";" << endl;
-
-// Q*=q;
-// cout << "Q= " << Q << endl;
-
-
- cout << "CURVE_W[2]={"; output(CHUNK,WORDS,6*x*x-4*x+1,m);cout << ","; output(CHUNK,WORDS,(2*x-1),m); cout << "};" << endl;
- cout << "CURVE_SB[2][2]={"; cout << "{"; output(CHUNK,WORDS,6*x*x-2*x,m); cout << ","; output(CHUNK,WORDS,(2*x-1),m); cout << "}";cout << ","; cout << "{"; output(CHUNK,WORDS,(2*x-1),m); cout << ","; output(CHUNK,WORDS,q-(6*x*x-4*x+1),m); cout << "}"; cout << "};" << endl;
-
- cout << "CURVE_WB[4]={"; output(CHUNK,WORDS,2*x*x-3*x+1,m); cout << ","; output(CHUNK,WORDS,12*x*x*x-8*x*x+x,m);
- cout << ","; output(CHUNK,WORDS,6*x*x*x-4*x*x+x,m); cout << ","; output(CHUNK,WORDS,2*x*x-x,m); cout << "};" << endl;
-
- cout << "CURVE_BB[4][4]={";
- cout << "{";
- output(CHUNK,WORDS,q-x+1,m);
- cout << ","; output(CHUNK,WORDS,q-x,m);
- cout << ","; output(CHUNK,WORDS,q-x,m);
- cout << ","; output(CHUNK,WORDS,2*x,m);
- cout << "}";
-
- cout << ","; cout << "{";output(CHUNK,WORDS,2*x-1,m);
- cout << ","; output(CHUNK,WORDS,q-x,m);
- cout << ","; output(CHUNK,WORDS,q-x+1,m);
- cout << ","; output(CHUNK,WORDS,q-x,m);
- cout << "}";
- cout << ","; cout << "{"; output(CHUNK,WORDS,2*x,m);
- cout << ","; output(CHUNK,WORDS,2*x-1,m);
- cout << ","; output(CHUNK,WORDS,2*x-1,m);
- cout << ","; output(CHUNK,WORDS,2*x-1,m);
- cout << "}";
-
- cout << ","; cout << "{"; output(CHUNK,WORDS,x+1,m);
- cout << ","; output(CHUNK,WORDS,4*x-2,m);
- cout << ","; output(CHUNK,WORDS,q-2*x-1,m);
- cout << ","; output(CHUNK,WORDS,x+1,m);
- cout << "}";
- cout << "};" << endl;
-}
http://git-wip-us.apache.org/repos/asf/incubator-milagro-crypto/blob/1add7560/version22/c/CARSK.pem
----------------------------------------------------------------------
diff --git a/version22/c/CARSK.pem b/version22/c/CARSK.pem
deleted file mode 100644
index 743aead..0000000
--- a/version22/c/CARSK.pem
+++ /dev/null
@@ -1,54 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
-Proc-Type: 4,ENCRYPTED
-DEK-Info: AES-256-CBC,E7A447797FE65D8D1309B743D8BA74B7
-
-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
------END RSA PRIVATE KEY-----