# This file
./README

# Coversheet
./Supporting_Documentation/coversheet.pdf

# Main specification document
./Supporting_Documentation/ntrukem.pdf

# Reference implemenation of ntruhrss701
./Reference_Implementation/crypto_kem/ntruhrss701/api.h
./Reference_Implementation/crypto_kem/ntruhrss701/cbd.c
./Reference_Implementation/crypto_kem/ntruhrss701/cbd.h
./Reference_Implementation/crypto_kem/ntruhrss701/fips202.c
./Reference_Implementation/crypto_kem/ntruhrss701/fips202.h
./Reference_Implementation/crypto_kem/ntruhrss701/Makefile
./Reference_Implementation/crypto_kem/ntruhrss701/ntrukem.c
./Reference_Implementation/crypto_kem/ntruhrss701/owcpa.c
./Reference_Implementation/crypto_kem/ntruhrss701/owcpa.h
./Reference_Implementation/crypto_kem/ntruhrss701/params.h
./Reference_Implementation/crypto_kem/ntruhrss701/poly.c
./Reference_Implementation/crypto_kem/ntruhrss701/poly.h
./Reference_Implementation/crypto_kem/ntruhrss701/PQCgenKAT_kem.c
./Reference_Implementation/crypto_kem/ntruhrss701/rng.c
./Reference_Implementation/crypto_kem/ntruhrss701/rng.h
./Reference_Implementation/crypto_kem/ntruhrss701/verify.c
./Reference_Implementation/crypto_kem/ntruhrss701/verify.h

# Optimized implemementation of ntruhrss701 
# (copy of the reference implementation)
./Optimized_Implementation/crypto_kem/ntruhrss701/api.h
./Optimized_Implementation/crypto_kem/ntruhrss701/cbd.c
./Optimized_Implementation/crypto_kem/ntruhrss701/cbd.h
./Optimized_Implementation/crypto_kem/ntruhrss701/fips202.c
./Optimized_Implementation/crypto_kem/ntruhrss701/fips202.h
./Optimized_Implementation/crypto_kem/ntruhrss701/Makefile
./Optimized_Implementation/crypto_kem/ntruhrss701/ntrukem.c
./Optimized_Implementation/crypto_kem/ntruhrss701/owcpa.c
./Optimized_Implementation/crypto_kem/ntruhrss701/owcpa.h
./Optimized_Implementation/crypto_kem/ntruhrss701/params.h
./Optimized_Implementation/crypto_kem/ntruhrss701/poly.c
./Optimized_Implementation/crypto_kem/ntruhrss701/poly.h
./Optimized_Implementation/crypto_kem/ntruhrss701/PQCgenKAT_kem.c
./Optimized_Implementation/crypto_kem/ntruhrss701/rng.c
./Optimized_Implementation/crypto_kem/ntruhrss701/rng.h
./Optimized_Implementation/crypto_kem/ntruhrss701/verify.c
./Optimized_Implementation/crypto_kem/ntruhrss701/verify.h

# Implementation of ntruhrss701 optimized using AVX2 vector instructions
# KAT values of ntruhrss701 produced by PQCgenKAT_kem (provided by NIST) 
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/api.h
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/cbds3.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/fips202.c
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/fips202.h
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/Makefile
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/ntrukem.c
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/owcpa.c
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/owcpa.h
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/params.h
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly.c
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly.h
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly_r2_inv.c
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly_r2_inv.h
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly_r2_mul.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly_rq_mul.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly_rq_mul_xm1.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly_rq_to_s3.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly_s3_inv.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly_s3_mul.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/poly_s3_to_rq.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/PQCgenKAT_kem.c
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/rng.c
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/rng.h
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/square_12_701_shufbytes.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/square_15_701_shufbytes.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/square_168_701_shufbytes.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/square_1_701_patience.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/square_27_701_shufbytes.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/square_336_701_shufbytes.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/square_3_701_patience.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/square_42_701_shufbytes.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/square_6_701_patience.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/square_84_701_shufbytes.s
./Additional_Implementations/avx2/crypto_kem/ntruhrss701/verify.c

# KAT values of ntruhrss701 produced by PQCgenKAT_kem (provided by NIST) 
./KAT/ntruhrss701/PQCkemKAT_1418.req
./KAT/ntruhrss701/PQCkemKAT_1418.rsp


