Skip to content

Added Ascon80pq cipher and usage example

Compare
Choose a tag to compare
@TheMatjaz TheMatjaz released this 21 May 17:31
· 188 commits to master since this release

Added

  • ascon_aead128a_* functions, working exactly as the aead128 versions.
    Internally they absorb the data with a double rate.
  • Example encryption and decrpytion code into Readme.

Removed

  • Macros to exclude some parts of the library from the previous version,
    as they only complicate the building process. It's easier to exclude some
    source files from the build, now that they are better organised.
    • ASCON_COMPILE_AEAD128
    • ASCON_COMPILE_AEAD128a
    • ASCON_COMPILE_AEAD80pq
      - ASCON_COMPILE_HASH

Known limitations

  • Because LibAscon is implemented with reuse of existing functions in mind,
    in order to spare on code size and with the Init-Update-Digest paradigm,
    which has some internal buffering, the cipher is about 4x slower than the
    reference implementation (ref).
  • There is no architecture-specific optimisation, only a generic portable
    implementation using mostly uint64_t data types.