Changes in v0.50¶
This release includes new cryptographic schemes, platform improvements, and bug fixes.
New Schemes¶
Added implementation of private aggregate of time series data by Marc Joye et al.
Added Abe’s blind signature scheme [AO00, A01]
Added hibenc_lew11.py
Added Goldwasser-Micali pkenc scheme
Added Leontiadis-Elkhyiaoui-Molva scheme
Added four more ABE schemes
Re-added Time-based proxy re-encryption scheme implementation for py3
Added non-monotonic CP-ABE scheme by Yamada, Attrapadung, Hanaoka, Kunihiro
Added BBS98 proxy re-encryption scheme
Added implementation of AFGH06 scheme
Added first NAL16 scheme
Added NAL16b (CCA_21 version of NAL16a)
Added scheme from Rouselakis and Waters (maabe_rw12.py)
Ciphertext-policy ABE schemes implemented under asymmetric pairing groups (any policy represented as a monotone span program can be handled)
Proxy Re-Encryption¶
Interface for Proxy Re-Encryption schemes (charm.toolbox.PREnc)
Adapted BBS98 to PREnc interface
Core Improvements¶
Error handling updates to base modules
CL03: length of e is now verified, verifyCommit() and header added
SHA1(m_i) for doctest (verifyCommit) added
Added hash support to wrapped pbc ecc elements (pairingmodule.c)
Added support for uncompressed curves elements (de)serialization
Improved arguments management in (de)serialize methods of the c pairingmodule
Improved error management in deserialize c pairingmodule
Improved error management in pairing product routine of pairinggroup.c
Improved error handling for initialize and initPP, new preproc attribute
Changed hash function from sha1 to sha256 everywhere appropriate
Simplified encode/decode of messages in ECGroups (squashed bugs related to BN_bin2bn/BN_bn2bin)
Added py2.7 compatibility for pairing group serialize/deserialize
Platform Support¶
Updated configure.sh to support ARM (android, raspberry pi, include armv7l support)
Added support for Mac OS X 10.11+
Updated to install file for windows and nsis script
Added Dockerfile to document installation process
Fixed compilation errors with OpenSSL 1.1.0 caused by API change
Bug Fixes¶
Fixed typo in protocol_a00.py and protocol_ao00.py
Fix configure.sh: detect python better (thanks to Neal H. Walfield)
Fix decrypt error when plaintext=0 for Paillier scheme (closes #97)
Update libtomcrypt headers to v1.17
Renamed sha1 to sha2 and update version to v0.5
Documentation¶
Added documentation
Contributors¶
Scheme contributions, bug fixes and/or various improvements from: @adelapie, @leontiad, @nikosft, @0xwille, @artjomb, @cygnusv, @lferr, @denniss17, @locksmithone, @leafac, @ElectroSuccess, @sagrawal87.
Thanks to all!