Paper 2021/961
Cryptimeleon: A Library for Fast Prototyping of Privacy-Preserving Cryptographic Schemes
Jan Bobolz, Fabian Eidens, Raphael Heitjohann, and Jeremy Fell
Abstract
We present a cryptographic Java library called Cryptimeleon designed for prototyping and benchmarking privacy-preserving cryptographic schemes. The library is geared towards researchers wanting to implement their schemes (1) as a sanity check for their constructions, and (2) for benchmark numbers in their papers. To ease the implementation process, Cryptimeleon "speaks the language" of paper writers. It offers a similar degree of abstraction as is commonly used in research papers. For example, bilinear groups can be used as the familiar black-box and Schnorr-style proofs can be described on the level of Camenisch-Stadler notation. It employs several optimizations (such as multi-exponentation) transparently, allowing the developer to phrase computations as written in the paper instead of having to conform to an artificial API for better performance. Cryptimeleon implements (among others) finite fields, elliptic curve groups and pairings, hashing, Schnorr-style zero-knowledge proofs, accumulators, digital signatures, secret sharing, group signatures, attribute-based encryption, and other modern cryptographic constructions. In this paper, we present the library, its capabilities, and explain important design decisions.
Metadata
- Available format(s)
- Category
- Implementation
- Publication info
- Preprint. MINOR revision.
- Keywords
- prototypingbenchmarkingprivacyzero-knowledge proof of knowledge
- Contact author(s)
-
jbobolz @ mail uni-paderborn de
feidens @ mail uni-paderborn de - History
- 2021-07-22: received
- Short URL
- https://ia.cr/2021/961
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2021/961, author = {Jan Bobolz and Fabian Eidens and Raphael Heitjohann and Jeremy Fell}, title = {Cryptimeleon: A Library for Fast Prototyping of Privacy-Preserving Cryptographic Schemes}, howpublished = {Cryptology {ePrint} Archive, Paper 2021/961}, year = {2021}, url = {https://eprint.iacr.org/2021/961} }