John M. Schanck
ae30e1f432
Avoid ==, !=, etc in arithmetic expressions. Some compilers will produce non-constant time code.
2021-03-24 21:02:47 +00:00
John M. Schanck
b16ce91595
Avoid using log(a) to check if a==0
2021-03-24 21:02:47 +00:00
John M. Schanck
f74c1e6ad2
Satisfy linter
2021-03-24 21:02:47 +00:00
John M. Schanck
6c4abb23ec
Simplify hqc-rmrs*/clean/reed_muller.c and fix potentially non-constant time behavior.
2021-03-24 21:02:47 +00:00
John M. Schanck
d5fd7d6d0c
Fix an avx2/gf2x.c buffer overflow
2021-03-24 21:02:47 +00:00
John M. Schanck
cb7675a9b6
Replace avx2 'reduce' in gf2x
2021-03-24 21:02:47 +00:00
John M. Schanck
b0afb62c0e
New HQC and HQC-RMRS from upstream
2021-03-24 21:02:47 +00:00
John M. Schanck
abd0178219
NTRU Prime: Get random bytes in one shot and use corresponding KATs
2021-03-24 21:02:47 +00:00
John M. Schanck
6047ae532a
NTRU Prime: avoid narrowing in loop iteration
2021-03-24 21:02:47 +00:00
John M. Schanck
4971f4a4b0
Revert "NTRU Prime: change prototype for clean/crypto_sort_int32"
...
This reverts commit 8a372ad2e8
.
2021-03-24 21:02:47 +00:00
John M. Schanck
fee8635c9f
NTRU Prime: change prototype for clean/crypto_sort_int32
2021-03-24 21:02:47 +00:00
John M. Schanck
162751e2e5
NTRU Prime: jump directly to crypto_sort_smallindices
2021-03-24 21:02:47 +00:00
John M. Schanck
1a402a1917
NTRU Prime: satisfy linter
2021-03-24 21:02:47 +00:00
John M. Schanck
b568d01ac6
NTRU Prime: Simplified patch set
2021-03-24 21:02:47 +00:00
John M. Schanck
2c5eb2a732
NTRU Prime: Disable -Wconversion for gcc
2021-03-24 21:02:47 +00:00
John M. Schanck
333248de03
NTRU Prime: more unary negations
2021-03-24 21:02:47 +00:00
John M. Schanck
c2d2d145b7
NTRU Prime: more explicit casts
2021-03-24 21:02:47 +00:00
John M. Schanck
4883bb44c0
NTRU Prime: avoid unsigned unary negation
2021-03-24 21:02:47 +00:00
John M. Schanck
191aed977f
NTRU Prime: more compiler warnings
2021-03-24 21:02:47 +00:00
John M. Schanck
09d3f1e1e6
NTRU Prime: More changes for MS compiler
2021-03-24 21:02:47 +00:00
John M. Schanck
565cd17478
NTRU Prime: Explicit casts to avoid conversion warnings
2021-03-24 21:02:47 +00:00
John M. Schanck
7b5a4c494b
NTRU Prime: Match the NIST submission's sequence of calls to randombytes
2021-03-24 21:02:47 +00:00
John M. Schanck
431dbada45
Add sntrup{653,761,857} and ntrulpr{653,761,857}
...
Exported from SUPERCOP-20200826 using the scripts at:
https://github.com/jschanck/pqclean-package-ntruprime
2021-03-24 21:02:46 +00:00
John M. Schanck
196f0c1ae2
NTRU: remove unused .s file
2021-03-24 21:02:46 +00:00
John M. Schanck
4c268aae14
NTRU: inline the one call that needed @plt
2021-03-24 21:02:46 +00:00
John M. Schanck
a008d4ad21
ntruhrss701/avx2: fix non-PIC call
2021-03-24 21:02:46 +00:00
John M. Schanck
97e0aad338
NTRU: Move crypto_sort_int32.h include to top of sample.c
2021-03-24 21:02:46 +00:00
John M. Schanck
2f56d17d67
NTRU: more explicit casts for MS compiler
2021-03-24 21:02:46 +00:00
John M. Schanck
f772093fd4
NTRU: add explicit cast for MS compiler
2021-03-24 21:02:46 +00:00
John M. Schanck
f37f0f3e85
Update NTRU and add AVX2 NTRU implementations
2021-03-24 21:02:46 +00:00
John Schanck
0d7743d576
Update NTRU ( #311 )
...
* Update NTRU
version: https://github.com/jschanck/ntru/tree/485dde03
* Fixed ntruhrss701/clean/Makefile.Microsoft_nmake
2021-03-24 21:02:46 +00:00
Sofía Celi
c59580a355
Fix overflow in multiplication in Saber
2021-03-24 21:02:46 +00:00
Matthias J. Kannwischer
22babfef8a
remove threebears, ledakem, newhope, mqdss, qtesla
...
NIST announced the Round 3 finalists and alternate candidates today:
https://groups.google.com/a/list.nist.gov/d/msg/pqc-forum/0ieuPB-b8eg/Cl7Ji8TpCwAJ
Some of the schemes in PQClean did not make it to Round 3 and this commit
removes them.
2021-03-24 21:02:46 +00:00
Douglas Stebila
96e5f1d7ae
Fix timing leak in decapsulation.
...
As identified in: Qian Guo, Thomas Johansson, Alexander Nilsson. A
key-recovery timing attack on post-quantum primitives using the
Fujisaki-Okamoto transformation and its application on FrodoKEM. In
CRYPTO 2020.
Based on
155c24c3df
2021-03-24 21:02:46 +00:00
Thom Wiggers
4604907c4c
Kyber768 and Kyber1024 don't need -maes (see #296 )
2021-03-24 21:02:46 +00:00
Ko-
be16fceb68
Fix whitespace to satisfy test_duplicate_consistency
2021-03-24 21:02:46 +00:00
Ko-
0116179381
Update KAT values
2021-03-24 21:02:46 +00:00
Ko-
f5bc4052c7
Add domain separation to NewHope
...
NewHope announced a new version of their specification that adds
explicit domain separation. This is a port of
https://github.com/newhopecrypto/newhope/commit/607a9d3
2021-03-24 21:02:46 +00:00
Douglas Stebila
33ac64d922
Use the right AES CTX
2021-03-24 21:02:46 +00:00
Douglas Stebila
cf5107b69f
Split aes*_keyexp up into ecb and ctr variants
2021-03-24 21:02:46 +00:00
Sebastian
4054af0c42
HQC submission ( #202 )
...
* Sebastian's HQC merge request
* Clean up changes to common infrastructure
* Fix Bitmask macro
It assumed that ``unsigned long`` was 64 bit
* Remove maxlen from nistseedexpander
It's a complicated thing to handle because the value is larger than size_t supports on 32-bit platforms
* Initialize buffers to help linter
* Add Nistseedexpander test
* Resolve UB in gf2x.c
Some of the shifts could be larger than WORD_SIZE_BITS, ie. larger than
the width of uint64_t. This apparently on Intel gets interpreted as the
shift mod 64, but on ARM something else happened.
* Fix Windows complaints
* rename log, exp which appear to be existing functions on MS
* Solve endianness problems
* remove all spaces before ';'
* Fix duplicate consistency
* Fix duplicate consistency
* Fix complaints by MSVC about narrowing int
* Add nistseedexpander.obj to COMMON_OBJECTS_NOPATH
* astyle format util.[ch]
* add util.h to makefile
* Sort includes in util.h
* Fix more Windows MSVC complaints
Co-authored-by: Sebastian Verschoor <sebastian@zeroknowledge.me>
Co-authored-by: Thom Wiggers <thom@thomwiggers.nl>
2021-03-24 21:02:46 +00:00
Matthias J. Kannwischer
999b76cb90
fix MSVS warning
2021-03-24 21:02:46 +00:00
Matthias J. Kannwischer
e93a6bef1f
Fix NewHope verify
...
https://github.com/mupq/pqm4/issues/132 repoorted that the NewHope verify function does not actually return 0 or 1, but 0 or -1, which consequenctly breaks the cmov in the FO transform.
This bug was introduced when I integrated this into PQClean.
2021-03-24 21:02:46 +00:00
Thom Wiggers
5b5956c2ef
fixup! Fix uint8_t to uint16_t upcast in Frodo
2021-03-24 21:02:46 +00:00
Thom Wiggers
3b655f3f72
Fix uint8_t to uint16_t upcast in Frodo
2021-03-24 21:02:46 +00:00
Thom Wiggers
fcd81030d6
Fix too-large shift in mceliece*f
2021-03-24 21:02:46 +00:00
Thom Wiggers
3307f05c49
Clean up SABER
2021-03-24 21:02:46 +00:00
Thom Wiggers
5f02a4e80c
Fix overflowing mults in NTRUHRSS701
2021-03-24 21:02:46 +00:00
Thom Wiggers
3ef983c459
Fix reduce.c's overflowing multiplication
2021-03-24 21:02:46 +00:00
Thom Wiggers
83750a2fb2
Fix duplicate consistency
2021-03-24 21:02:46 +00:00