SkillAgentSearch skills...

Code

Lattice-based signature and Identity-Based Encryption are well-known cryptographic schemes, and having both efficient and provable secure schemes in the standard model is still a challenging task in light of the current NIST post-quantum competition. We address this problem in this paper by mixing standard IBE scheme, \`a la ABB (EUROCRYPT 2010) on Ring-SIS/LWE assumptions with the efficient trapdoor of Peikert and Micciancio (EUROCRYPT 2012) and we provide an efficient implementation. Our IBE scheme is more efficient than the IBE scheme of Ducas, Lyubashevsky and Prest based on NTRU assumption and is based on more standard assumptions. Although our signature scheme is not as efficient as recent lattice-based schemes based on Fiat-Shamir with Aborts, it is provably secure in the standard model and its efficiency is a few milliseconds.

Install / Use

/learn @lbibe/Code
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Required:

1- Linux (test on Ubuntu 16.04) 2- Install gcc (g++) that supports -std=c++14 1- Install gmp and mpfr 2- Install nfllib 3- Edit the makefile (the first two lines) to have: NFLLIB_HOME: the directory where you have installed nfllib LIBS_HOME : the directory where you have installed gmp and mpfr

To compile:

  • No optimization: make -Ibuild
  • Optimized: make -Ibuild build
  • Run test : make -Ibuild run

Test scenario (the default is the IBE encryption with 80 security):

  • The default parameters are in the params.hpp file
  • The test scenario is in the main.cpp file

We include the built test in the default test scenario in bin. To run, use the command 'make -Ibuild run'

View on GitHub
GitHub Stars18
CategoryDevelopment
Updated2mo ago
Forks12

Languages

C++

Security Score

75/100

Audited on Jan 5, 2026

No findings