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!