/PQC-AKE

:fire: Lattice-Based Post-Quantum Authenticated Key Exchange

Primary LanguageC++

PQC-AKE

Overview

This repo contains a C++ implementation for the Post-Quantum Lattice-Based Authenticated Key Exchange (AKE) based on the work of Del Pino, Lyubashevsky, Pointcheval.

PreReqs

sudo apt-get install libgmp-dev libntl-dev libssl-dev

Running the AKE

cd AKE
make AKE
./AKE

Code Structure

This AKE consists of a Key Encapsulation Mechanism (KEM), a Digital Signature (DS) scheme and huffman encoder (for Message-Recovery)

  • KEM.cc - Key Encapsulation Mechanism
  • DigitalSignature.cc - Digital Signature Scheme (with and without Message Recovery):
  • Huffman.cc - Huffman encoding.
  • AKE.cc - Two-Way Authenticated Key Exchange
  • Param.h - This file defines parameters n, q, etc...

Notes

This repo contains the Post-Quantum research work that I am doing for my Master's Thesis for UCSB (2016-2017).