Implementation and Evaluation of a Lattice-Based Key-Policy ABE Scheme

Wei Dai, Yarkin Doroz, Yuriy Polyakov, Kurt Rohloff, Hadi Sajjadpour, Erkay Savas, Berk Sunar

Research output: Contribution to journalArticlepeer-review

47 Scopus citations


In this paper, we report on our implementation of a lattice-based key-policy attribute-based encryption (KP-ABE) scheme, which uses short secret keys. The particular KP-ABE scheme can be used directly for attribute-based access control applications, as well as a building block in more involved applications and cryptographic schemes, such as audit log encryption, targeted broadcast encryption, functional encryption, and program obfuscation. We adapt a recently proposed KP-ABE scheme based on the learning with errors (LWE) problem to a more efficient scheme based on the ring learning with errors (RLWE) problem, and demonstrate an implementation that can be used in practical applications. Our state-of-the-art implementation on graphics processing units shows that the homomorphic public key and ciphertext evaluation operations, which dominate the execution time of the KP-ABE scheme, can be performed in a reasonably short amount of time. Our practicality results also hold when scaled to a relatively large number of attributes. To the best of our knowledge, this is the first KP-ABE implementation that supports both ciphertext and public key homomorphism, and the only experimental practicality results reported in this paper.

Original languageEnglish (US)
Article number8125711
Pages (from-to)1169-1184
Number of pages16
JournalIEEE Transactions on Information Forensics and Security
Issue number5
StatePublished - May 2018

All Science Journal Classification (ASJC) codes

  • Safety, Risk, Reliability and Quality
  • Computer Networks and Communications


  • GPU computing
  • Lattice-based cryptography
  • RLWE
  • attribute-based encryption


Dive into the research topics of 'Implementation and Evaluation of a Lattice-Based Key-Policy ABE Scheme'. Together they form a unique fingerprint.

Cite this