liboqs/docs/algorithms/kem_bike.md
Nir Drucker d3ff24cd31 Add BIKE to master and some autotools/Makefiles changes (#333)
* Supporting BIKE KEM reference code

* Hiding print global symbol when VERBOSE!=2

* Supporting USE_OPENSSL + OPENSSL_DIR

* - The file config/.gitkeep is no longer needed its purpose was to allow git having an empty folder (config).
- Moved the file acinclude.m4 to the config directory (where all the *.m4 files are).
- Added .travis/defs.sh - this file holds common definitions used by travis scripts.
- Changed style-check to first check for clang-format only then handle modified files.
- Sodium support is no longer required.
- Breaked configure.ac into sub m4 files
- Sorted the flags list.
- Changed FrodoKEM to Frodo for consistency with SIKE and BIKE. Note that it is already under the KEM directory.
- Chaned USE_* protocl flags to ENABLE_* for consistency
- Adjaust most of the makefile to have a consistent compilation flags
- Added some more compilation warnings.

* Rename functions by using a legend instead of the FN() macro

* prettyprint

* 1) Some more Makefiles cleanup 2)Adding OQS_API defnition - hidding other symbols

* Reverting frodo renaming

* Reverting the checks order.

* Removing NEW_API.md

* pretty print

* 1)Disable bad warnings on gcc4.8/4.9 2) Disable all warnings on SIKE

* Disable the cast-align warning for now

* Documentation

* 1) Reenable BIKE error messages
2) Auto detection of AVX/AVX2/BMI features.

* Enable AVX features only on X86_64 Linux platforms

* Adding BIKE additional implementation for Linux(x86_64) and GCC

* Fixing configure.ac when OpenSSL is disabled

* Enabling BIKE's AVX512 implementation

* Wrap AVX512 code with ifdef

* Changes from code review

* Prettyprint

* Fix typo

* Rename symbol
2018-08-14 13:07:16 -04:00

3.3 KiB

liboqs nist-branch algorithm datasheet: kem_bike

Summary

  • Name: BIKE
  • Algorithm type: Key Encapsulation Mechanism
  • Main cryptographic assumption: Quasi Cyclic Syndrom Decoding (QCSD)
  • NIST submission URL: https://csrc.nist.gov/CSRC/media/Projects/Post-Quantum-Cryptography/documents/round-1/submissions/BIKE.zip
  • Submitters (to NIST competition): Nicolas Aragon, Paulo Barreto, Slim Bettaieb, Loic Bidoux, Olivier Blazy, Jean-Christophe Deneuville, Phillipe Gaborit, Shay Gueron, Tim Guneysu, Carlos Aguilar Melchor, Rafael Misoczki, Edoardo Persichetti, Nicolas Sendrier, Jean-Pierre Tillich, Gilles Zemor
  • Submitters' website: http://bikesuite.org/
  • Added to liboqs by: Shay Gueron and Nir Drucker.

Parameter sets

Parameter set Security model Claimed NIST security level Public key size (bytes) Secret key size (bytes) Ciphertext size (bytes) Shared secret size (bytes)
BIKE1-L1 IND-CPA 1 2542 2542 2542 32
BIKE1-L3 IND-CPA 3 4964 4964 4964 32
BIKE1-L5 IND-CPA 5 8188 8188 8188 32
BIKE2-L1 IND-CPA 1 2542 2542 2542 32
BIKE2-L3 IND-CPA 3 4964 4964 4964 32
BIKE2-L5 IND-CPA 5 8188 8188 8188 32
BIKE3-L1 IND-CPA 1 2758 2758 2758 32
BIKE3-L3 IND-CPA 3 5422 5422 5422 32
BIKE3-L5 IND-CPA 5 9034 9034 9034 32

Implementation

  • Source of implementation: This is a reference code (for functionality testing) that is based on the reference code of the Nist submission. This code was modified to use OpenSSL instead of NTL.
  • License: MIT License
  • Language: C Constant-time: No Architectures supported in liboqs nist-branch: x86, x64

Additional comments

  • The original BIKE implementation includes additional optimizations that are not currently being built in liboqs:
    • CLMUL
    • AES-NI
    • AVX2
    • AVX512