Bachelor's thesis
Awards: Dean's Award for an Outstanding Final Thesis

Argon2 function and hardware platform optimizations for OpenSSL

Čestmír Kalina
Abstract

Argon2 je hašovací funkce používána jak aplikacemi, tak knihovnami. Její implementace momentálně chybí v knihovně OpenSSL, kterou mnoho uživatelů Argon2 používá. Abychom eliminovali nutnost extra závislosti popř. náklady spojené s udržováním separátní implementace, Argon2 je přidán do OpenSSL. Argon2 je koncipován pro paralelní běh a z tohoto důvodu je do OpenSSL přidána podpora pro vlákna. Dále jsou …more

Abstract

Memory-hard password hashing function Argon2 has been adopted by applications and libraries alike, but it was as yet missing in OpenSSL library. Some of Argon2 users use OpenSSL. To remedy the need for an extra dependency or the need to maintain separate implementation maintenance, Argon2 is introduced into OpenSSL. As it is designed to be executed in parallel, threading support is also proposed for …more

Thesis description

Study Argon2 memory-hard password hashing function.

Analyze existing reference implementation and optimizations for Intel (x86_64) CPU architecture.

Propose and describe a solution for integration of Argon2 to OpenSSL environment and implement an optimized version for ARM or ARM64 platform or similar non-X86 platform.

Evaluate your solution and compare performance with the generic platform independent implementation.

Thesis outcomes will include:

  • Description of the Argon2 function.
  • Integration into OpenSSL cryptographic library including test vectors.
  • Optimized implementation for platforms mentioned above (optimized code should be automatically used if running on a compatible platform).
  • Discussion of achieved results and performance comparison with the generic implementation.

Literature:

  • Argon2 RFC draft, https://datatracker.ietf.org/doc/draft-irtf-cfrg-argon2/
  • Argon2 specification, https://www.cryptolux.org/images/0/0d/Argon2.pdf
  • Reference implementation, https://github.com/P-H-C/phc-winner-argon2
  • OpenSSL source code

The thesis has been checked:
18/12/2019 10:13, Ing. Milan Brož, Ph.D., UČO 168968
Language used
English English
Defence date
12/2/2020
The thesis was defended successfully

Supervisor

Ing. Milan Brož, Ph.D., UČO 168968
KPSK FI MU

Reader

doc. RNDr. Petr Švenda, Ph.D., UČO 4085
KPSK FI MU

Masaryk University Faculty of Informatics
Programme
Applied Informatics
Field of Study
  • Přidání souboru

    Soubor nebo složku lze nahrát pomocí tlačítka Přidat.
  • Další operace se soubory

    Podrobnosti lze zjistit označením příslušného řádku.
  • Pohled pro experty

    Pro častou práci je možné zvolit režim Více možností.
  • Vyhledávání souborů

    Vyhledávaný výraz můžete zadat přímo do adresního řádku.
  • Rychlý přístup k souborům

    Pomocí funkce Nedávné je možné se rychle vrátit k právě prohlíženým souborům. Oblíbené soubory je také možné označit Hvězdičkou.