├── LICENSE ├── README.md ├── avx2 ├── Makefile ├── bitrev.s ├── cbd.s ├── chacha.S ├── consts.c ├── cpucycles.c ├── cpucycles.h ├── crypto_hash_sha256.c ├── crypto_hash_sha256.h ├── crypto_stream.h ├── crypto_stream_aes256ctr.c ├── crypto_stream_aes256ctr.h ├── crypto_stream_chacha20.c ├── crypto_stream_chacha20.h ├── error_correction.c ├── error_correction.h ├── fips202.c ├── fips202.h ├── hr.s ├── newhope.c ├── newhope.h ├── ntt.h ├── ntt_double.s ├── omegas.c ├── params.h ├── poly.c ├── poly.h ├── precomp.c ├── pwmul.s ├── randombytes.c ├── randombytes.h ├── rec.s └── test │ ├── speed.c │ ├── test_newhope.c │ ├── test_statistical.c │ └── testvectors.c ├── paper └── newhope.pdf ├── ref ├── Makefile ├── cpucycles.c ├── cpucycles.h ├── crypto_stream_chacha20.c ├── crypto_stream_chacha20.h ├── error_correction.c ├── error_correction.h ├── fips202.c ├── fips202.h ├── newhope.c ├── newhope.h ├── ntt.c ├── ntt.h ├── params.h ├── poly.c ├── poly.h ├── precomp.c ├── randombytes.c ├── randombytes.h ├── reduce.c ├── reduce.h └── test │ ├── speed.c │ ├── test_newhope.c │ ├── test_statistical.c │ └── testvectors.c └── scripts ├── Lem6Cor1.py ├── PQsecurity.py ├── Rec.py ├── Renyi.py ├── failure-512.py ├── failure.py └── oldLem6Cor1.py /LICENSE: -------------------------------------------------------------------------------- 1 | Authors: Erdem Alkim, Léo Ducas, Thomas Pöppelmann, Peter Schwabe 2 | Public domain. 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # newhope 2 | -------------------------------------------------------------------------------- /avx2/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/Makefile -------------------------------------------------------------------------------- /avx2/bitrev.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/bitrev.s -------------------------------------------------------------------------------- /avx2/cbd.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/cbd.s -------------------------------------------------------------------------------- /avx2/chacha.S: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/chacha.S -------------------------------------------------------------------------------- /avx2/consts.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/consts.c -------------------------------------------------------------------------------- /avx2/cpucycles.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/cpucycles.c -------------------------------------------------------------------------------- /avx2/cpucycles.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/cpucycles.h -------------------------------------------------------------------------------- /avx2/crypto_hash_sha256.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/crypto_hash_sha256.c -------------------------------------------------------------------------------- /avx2/crypto_hash_sha256.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/crypto_hash_sha256.h -------------------------------------------------------------------------------- /avx2/crypto_stream.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/crypto_stream.h -------------------------------------------------------------------------------- /avx2/crypto_stream_aes256ctr.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/crypto_stream_aes256ctr.c -------------------------------------------------------------------------------- /avx2/crypto_stream_aes256ctr.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/crypto_stream_aes256ctr.h -------------------------------------------------------------------------------- /avx2/crypto_stream_chacha20.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/crypto_stream_chacha20.c -------------------------------------------------------------------------------- /avx2/crypto_stream_chacha20.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/crypto_stream_chacha20.h -------------------------------------------------------------------------------- /avx2/error_correction.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/error_correction.c -------------------------------------------------------------------------------- /avx2/error_correction.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/error_correction.h -------------------------------------------------------------------------------- /avx2/fips202.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/fips202.c -------------------------------------------------------------------------------- /avx2/fips202.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/fips202.h -------------------------------------------------------------------------------- /avx2/hr.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/hr.s -------------------------------------------------------------------------------- /avx2/newhope.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/newhope.c -------------------------------------------------------------------------------- /avx2/newhope.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/newhope.h -------------------------------------------------------------------------------- /avx2/ntt.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/ntt.h -------------------------------------------------------------------------------- /avx2/ntt_double.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/ntt_double.s -------------------------------------------------------------------------------- /avx2/omegas.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/omegas.c -------------------------------------------------------------------------------- /avx2/params.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/params.h -------------------------------------------------------------------------------- /avx2/poly.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/poly.c -------------------------------------------------------------------------------- /avx2/poly.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/poly.h -------------------------------------------------------------------------------- /avx2/precomp.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/precomp.c -------------------------------------------------------------------------------- /avx2/pwmul.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/pwmul.s -------------------------------------------------------------------------------- /avx2/randombytes.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/randombytes.c -------------------------------------------------------------------------------- /avx2/randombytes.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/randombytes.h -------------------------------------------------------------------------------- /avx2/rec.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/rec.s -------------------------------------------------------------------------------- /avx2/test/speed.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/test/speed.c -------------------------------------------------------------------------------- /avx2/test/test_newhope.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/test/test_newhope.c -------------------------------------------------------------------------------- /avx2/test/test_statistical.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/test/test_statistical.c -------------------------------------------------------------------------------- /avx2/test/testvectors.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/avx2/test/testvectors.c -------------------------------------------------------------------------------- /paper/newhope.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/paper/newhope.pdf -------------------------------------------------------------------------------- /ref/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/Makefile -------------------------------------------------------------------------------- /ref/cpucycles.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/cpucycles.c -------------------------------------------------------------------------------- /ref/cpucycles.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/cpucycles.h -------------------------------------------------------------------------------- /ref/crypto_stream_chacha20.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/crypto_stream_chacha20.c -------------------------------------------------------------------------------- /ref/crypto_stream_chacha20.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/crypto_stream_chacha20.h -------------------------------------------------------------------------------- /ref/error_correction.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/error_correction.c -------------------------------------------------------------------------------- /ref/error_correction.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/error_correction.h -------------------------------------------------------------------------------- /ref/fips202.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/fips202.c -------------------------------------------------------------------------------- /ref/fips202.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/fips202.h -------------------------------------------------------------------------------- /ref/newhope.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/newhope.c -------------------------------------------------------------------------------- /ref/newhope.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/newhope.h -------------------------------------------------------------------------------- /ref/ntt.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/ntt.c -------------------------------------------------------------------------------- /ref/ntt.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/ntt.h -------------------------------------------------------------------------------- /ref/params.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/params.h -------------------------------------------------------------------------------- /ref/poly.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/poly.c -------------------------------------------------------------------------------- /ref/poly.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/poly.h -------------------------------------------------------------------------------- /ref/precomp.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/precomp.c -------------------------------------------------------------------------------- /ref/randombytes.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/randombytes.c -------------------------------------------------------------------------------- /ref/randombytes.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/randombytes.h -------------------------------------------------------------------------------- /ref/reduce.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/reduce.c -------------------------------------------------------------------------------- /ref/reduce.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/reduce.h -------------------------------------------------------------------------------- /ref/test/speed.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/test/speed.c -------------------------------------------------------------------------------- /ref/test/test_newhope.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/test/test_newhope.c -------------------------------------------------------------------------------- /ref/test/test_statistical.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/test/test_statistical.c -------------------------------------------------------------------------------- /ref/test/testvectors.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/ref/test/testvectors.c -------------------------------------------------------------------------------- /scripts/Lem6Cor1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/scripts/Lem6Cor1.py -------------------------------------------------------------------------------- /scripts/PQsecurity.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/scripts/PQsecurity.py -------------------------------------------------------------------------------- /scripts/Rec.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/scripts/Rec.py -------------------------------------------------------------------------------- /scripts/Renyi.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/scripts/Renyi.py -------------------------------------------------------------------------------- /scripts/failure-512.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/scripts/failure-512.py -------------------------------------------------------------------------------- /scripts/failure.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/scripts/failure.py -------------------------------------------------------------------------------- /scripts/oldLem6Cor1.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tpoeppelmann/newhope/HEAD/scripts/oldLem6Cor1.py --------------------------------------------------------------------------------