Paper 2018/1009
LAC: Practical Ring-LWE Based Public-Key Encryption with Byte-Level Modulus
Xianhui Lu, Yamin Liu, Zhenfei Zhang, Dingding Jia, Haiyang Xue, Jingnan He, Bao Li, and Kunpeng Wang
Abstract
We propose an instantiation of public key encryption scheme based on the ring learning with error problem, where the modulus is at a byte level and the noise is at a bit level, achieving one of the most compact lattice based schemes in the literature. The main technical challenges are a) the decryption error rates increases and needs to be handled elegantly, and b) we cannot use the Number Theoretic Transform (NTT) technique to speed up the implementation. We overcome those limitations with some customized parameter sets and heavy error correction codes. We give a treatment of the concrete security of the proposed parameter set, with regards to the recent advance in lattice based cryptanalysis. We present an optimized implementation taking advantage of our byte level modulus and bit level noise. In addition, a byte level modulus allows for high parallelization and the bit level noise avoids the modulus reduction during multiplication. Our result shows that \LAC~is more compact than most of the existing (Ring-)LWE based solutions, while achieving a similar level of efficiency, compared with popular solutions in this domain, such as Kyber.
Note: revise to update the parameters according to efficiency improvement and security analysis result.
Metadata
- Available format(s)
- Category
- Public-key cryptography
- Publication info
- Preprint. MINOR revision.
- Keywords
- lattice based cryptographylearning with errorserror correction
- Contact author(s)
- luxianhui @ outlook com
- History
- 2019-12-19: last of 3 revisions
- 2018-10-24: received
- See all versions
- Short URL
- https://ia.cr/2018/1009
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2018/1009, author = {Xianhui Lu and Yamin Liu and Zhenfei Zhang and Dingding Jia and Haiyang Xue and Jingnan He and Bao Li and Kunpeng Wang}, title = {{LAC}: Practical Ring-{LWE} Based Public-Key Encryption with Byte-Level Modulus}, howpublished = {Cryptology {ePrint} Archive, Paper 2018/1009}, year = {2018}, url = {https://eprint.iacr.org/2018/1009} }