aboutsummaryrefslogtreecommitdiffstats
path: root/src/libstrongswan/plugins/bliss
Commit message (Collapse)AuthorAgeFilesLines
* Explicitly mention SHA2 algorithm in BLISS OIDs and signature schemesAndreas Steffen2015-11-064-17/+29
|
* Support BLISS signatures with SHA-3 hashAndreas Steffen2015-11-032-0/+12
|
* Use MGF1 with SHA-512 as BLISS random oracleAndreas Steffen2015-07-274-72/+58
|
* Generalize c_indices generation using SHA-512 random oracle.Markku-Juhani Olavi Saarinen2015-07-271-18/+24
| | | | | | This generalization allows the ring dimension n to be different from the current n = 512 and allows kappa to be > 56. Also the hash octets are consumed in a more consistent manner.
* Fixed several bugs in the BLISS signature generation/verification step.Markku-Juhani Olavi Saarinen2015-07-271-4/+8
| | | | | | | | | | | | | | | | The c_indices derived from the SHA-512 random oracle consist of nine bits (0..511). The leftmost 8 bits of each index are taken on an octet-by-octet basis from the 56 leftmost octets of the SHA-512 hash. The 9th bit needed for the LSB is taken from the extra_bits 64 bit unsigned integer which consists of the 8 rightmost octets of the SHA-512 hash (in network order). If more than 56 indices must be derived then additional rounds of the random oracle are executed until all kappa c_indices have been determined. The bug fix shifts the extra_bits value by one bit in each loop iteration so that the LSB of each index is random. Also iterate through the hash array using the loop variable j not the c_indices variable i.
* bliss: Add generated Huffman codes to the repositoryTobias Brunner2015-03-025-14/+860
| | | | | | | | | | | | | While these files are generated they don't really change and are not architecture dependant. The previous solution prevented cross-compilation from the repository as `bliss_huffman` was built for the target system but was then executed on the build host to create the source files, which naturally was bound to fail. The `recreate-bliss-huffman` make target can be used inside the bliss directory to update the source files if needed. Fixes #812.
* Fixed compiler warningsAndreas Steffen2015-02-271-2/+3
|
* Allow SHA256 and SHA384 data hash for BLISS signatures.Andreas Steffen2015-02-264-26/+74
| | | | | The default is SHA512 since this hash function is also used for the c_indices random oracle.
* unit-tests: Completed BLISS testsAndreas Steffen2015-02-256-16/+668
|
* Check for null pointer before applying memwipe()Andreas Steffen2015-02-251-4/+10
|
* Implemented improved BLISS-B signature algorithmAndreas Steffen2015-02-256-47/+352
|
* unit-tests: Adapted to coverity fixesAndreas Steffen2014-12-231-9/+12
|
* Fixed bad bit shift and sign extension errorsAndreas Steffen2014-12-233-4/+14
|
* bliss: Remove unnecessary cast to doubleTobias Brunner2014-12-231-1/+1
| | | | | | Coverity is still not happy when the result of an integer division is assigned to a double (without e.g. casting the result to an int first to indicate the intent). The shift should avoid this issue.
* bliss: Log type if unsupportedTobias Brunner2014-12-231-1/+1
|
* bliss: Make sure sampler exists after checking for it earlierTobias Brunner2014-12-231-2/+2
|
* bliss: Fix Doxygen commentsTobias Brunner2014-12-152-6/+6
|
* Also initialize s_signAndreas Steffen2014-12-121-1/+1
|
* Cache only support fingerprint typesAndreas Steffen2014-12-121-2/+4
|
* Fix ambiguities and gcc compiler warningAndreas Steffen2014-12-121-3/+3
|
* Use Huffman code in BLISS signatureAndreas Steffen2014-12-127-38/+296
|
* Include design parameters in generated Huffman code filesAndreas Steffen2014-12-121-20/+31
|
* bliss: Fix monolithic buildTobias Brunner2014-12-1211-93/+114
| | | | | | | | | | | This requires moving test files so that the Makefile for the tests can be included after building libstrongswan, which requires the plugin when building monolithically. Due to this a static helper library is required as directly referring to object files (or source files) is not possible. It's also necessary to avoid any link-time dependency on libstrongswan in bliss_huffman, to avoid circular dependencies (bliss_huffman -> libstrongswan -> bliss -> bliss_huffman).
* bliss: Fix compilation warning with certain GCC versionsTobias Brunner2014-12-121-1/+2
| | | | | | Theoretically, n could be zero and these variables are then used uninitialized. Older GCC versions warn about this and on Travis where we compile with -Werror this causes the tests to fail.
* Pack private key arraysAndreas Steffen2014-12-101-17/+75
|
* Automatic generation of optimized Huffman codesAndreas Steffen2014-12-097-0/+559
|
* unit-tests: added bliss_sampler testAndreas Steffen2014-12-093-0/+99
|
* Expanded bliss_bitpacker to 32 bitsAndreas Steffen2014-12-095-41/+39
|
* Implemented full BLISS support for IKEv2 public key authentication and the ↵Andreas Steffen2014-11-291-0/+4
| | | | pki tool
* Applied bit packing to BLISS public keyAndreas Steffen2014-11-295-55/+68
|
* Wipe BLISS private key memoryAndreas Steffen2014-11-291-2/+8
|
* Created bliss_bitpacker class to encode BLISS signaturesAndreas Steffen2014-11-298-46/+464
|
* Store NTT A of BLISS public key aAndreas Steffen2014-11-292-28/+24
|
* unit-tests: created bliss_sign test suiteAndreas Steffen2014-11-295-1/+91
|
* Finished BLISS signature generationAndreas Steffen2014-11-2912-157/+1170
|
* Implemented Gaussian rejection samplerAndreas Steffen2014-11-296-16/+496
| | | | | The bliss_sampler class uses the mgf1_bitspender as a pseudo-random source.
* Added support for BLISS-IIIAndreas Steffen2014-11-291-2/+17
|
* Started implementing BLISS signature generationAndreas Steffen2014-11-293-15/+9
|
* Store and parse BLISS private and public keys in DER and PEM formatAndreas Steffen2014-11-292-26/+395
| | | | | | | | Additionally generate SHA-1 fingerprints of raw BLISS subjectPublicKey and subjectPublicKeyInfo objects. Some basic functions used by the bliss_public_key class are shared with the bliss_private_key class.
* Use mgf1_bitspender to generate random secret keyAndreas Steffen2014-11-291-280/+226
|
* unit-tests: Added bliss_fft test suiteAndreas Steffen2014-11-295-0/+193
|
* Defined BLISS I and IV parameter setsAndreas Steffen2014-11-294-19/+365
|
* Implemented Number Theoretic Transform using the FFT algorithmAndreas Steffen2014-11-298-3/+869
| | | | | | By pre-multiplying the input arrays with a linear phase the fast multiplication via FFT and inverse FFT computes a negative wrapped convolution corresponding to a modulus of x^n+1.
* Created framework for BLISS post-quantum signature algorithmAndreas Steffen2014-11-297-0/+625