Release_Notes.md 7.92 KB
Newer Older
Yuriy Polyakov's avatar
Yuriy Polyakov committed
1
09/21/2020: PALISADE v1.10.4 (stable) is released
Yuriy Polyakov's avatar
Yuriy Polyakov committed
2

Yuriy Polyakov's avatar
Yuriy Polyakov committed
3
* Includes all changes from development releases v1.10.0-v1.10.3
Yuriy Polyakov's avatar
Yuriy Polyakov committed
4 5 6
* Fixes some bugs in BGVrns
* Improves error handling

Yuriy Polyakov's avatar
Yuriy Polyakov committed
7 8 9 10 11 12 13 14
08/25/2020: PALISADE v1.10.3 (development) is released

* Fixes a bug in BFVrns for larger plaintext moduli
* Fixes bugs in FHEW/TFHE
* Fixes bugs affecting the 32-bit and 64-bit native integer backends
* Improves error handling
* Includes minor documentation cleanup

15 16 17 18 19 20
07/11/2020: PALISADE v1.10.2 (development) is released

* Fixes a bug affecting some threshold FHE scenarios
* Adds more validation to CMake flags
* Includes minor documentation cleanup

21 22 23 24 25
06/26/2020: PALISADE v1.10.1 (development) is released

* Fixes a bug affecting some clang environments
* Fixes a bug related to the BUILD_BENCHMARKS CMake flag

Yuriy Polyakov's avatar
Yuriy Polyakov committed
26 27 28 29
06/18/2020: PALISADE v1.10.0 (development) is released

* Adds a usable, full RNS variant of BGV (as a more efficient alternative to BFV RNS variants for integer arithmetic)
* Adds a fully functional threshold FHE capability to BGV, BFV, and CKKS to support multi-party computations
Yuriy Polyakov's avatar
Yuriy Polyakov committed
30
* Adds an automated rescaling mode to the approximate rescaling RNS variant of CKKS
Yuriy Polyakov's avatar
Yuriy Polyakov committed
31 32 33 34 35 36 37
* Improves the performance of both CKKS RNS variants
* Improves the performance of both BFV RNS variants
* Makes NTL completely optional for all environments (no quad-precision floats are needed anymore)
* Improves the support for clang in Linux
* Simplifies the CMake procedure for building PALISADE
* Fixes many bugs reported by the PALISADE community

Yuriy Polyakov's avatar
Yuriy Polyakov committed
38 39 40 41 42 43
04/24/2020: PALISADE v1.9.2 (stable) is released in the palisade-release repo

* Includes all changes from development releases v1.8.0, v1.9.0, and v1.9.1
* Fixes a bug in BFVrnsB
* Fixes a bug with CSPRNG in some multi-threaded environments

Yuriy Polyakov's avatar
Yuriy Polyakov committed
44 45 46 47 48
03/03/2020: PALISADE v1.9.1 (development) is released

* Fixes the performance issue with Ubuntu
* Improves the runtime of inverse Number Theoretic Transform for all supported systems

Yuriy Polyakov's avatar
Yuriy Polyakov committed
49 50 51 52 53 54 55 56
02/29/2020: PALISADE v1.9.0 (development) is released

* Adds multiple low-level optimizations, including improved Number Theoretic Transform
* Adds a CMake install package for PALISADE
* Improves the security and performance of the PRE implementations for BFV, BGV, and CKKS homomorphic encryption schemes
* Updates selected parameter sets for FHEW to reduce the probability of decryption error
* Includes multiple bug fixes for the issues reported by the PALISADE community

Yuriy Polyakov's avatar
Yuriy Polyakov committed
57 58 59
01/30/2020: PALISADE v1.8.0 (development) is released

* Adds the Gama-Izabachene-Nguyen-Xie (GINX) bootstrapping to the FHEW implementation
Fabian Boemer's avatar
Fabian Boemer committed
60
* Includes other FHEW optimizations: now the bootstrapping key size is 20x times smaller and runtime about 2.5x faster
Yuriy Polyakov's avatar
Yuriy Polyakov committed
61 62 63 64 65 66 67
* Adds XOR and XNOR gates to FHEW

01/22/2020: PALISADE v1.7.4 (stable) is released in the palisade-release repo

* includes all changes from development releases v1.7.a to v1.7.d

01/15/2020: PALISADE v1.7.d (development) is released
68 69 70 71

* Replaces the Mersenne Twister PRNG Engine with a cryptographically secure BLAKE2-based PRNG
* Fixes a PRNG bug affecting environments where multithreading is done not using OpenMP

Yuriy Polyakov's avatar
Yuriy Polyakov committed
72
12/26/2019: PALISADE v1.7.c (development) is released
Yuriy Polyakov's avatar
Yuriy Polyakov committed
73 74 75 76

* Fixes a bug affecting applications using the PALISADE serialization capability
* Changes the installation paths for header files and library binary files

Yuriy Polyakov's avatar
Yuriy Polyakov committed
77
12/19/2019: PALISADE v1.7.b (development) is released
78 79 80 81

* Simplifies the development of applications using PALISADE (only one header file is now needed for most applications)
* Changes the folder hierarchy of the library header files

Yuriy Polyakov's avatar
Yuriy Polyakov committed
82
11/15/2019: PALISADE v1.7.a (development) is released
Yuriy Polyakov's avatar
Yuriy Polyakov committed
83 84 85 86 87

* Adds an optimized implementation of the CKKS scheme for approximate (real-number) homomorphic encryption. The implementation features automated rescaling/modswitching and hybrid key switching.
* Adds an optimized implementation of the FHEW scheme for Boolean-circuit homomorphic encryption, supporting standard HE parameters. Performs bootstrapping for each binary gate, and hence supports the evaluation of arbitrary Boolean circuits.
* Adds the ring dimension as an option when generating crypto contexts for BFV variants.
* Improves the noise growth of the BEHZ variant of BFV (referred to as the BFVrnsB scheme in PALISADE).
Fabian Boemer's avatar
Fabian Boemer committed
88
* Fixes several bugs.
Yuriy Polyakov's avatar
Yuriy Polyakov committed
89

Yuriy Polyakov's avatar
Yuriy Polyakov committed
90 91
9/12/2019: PALISADE v1.6.0 is released

Yuriy Polyakov's avatar
Yuriy Polyakov committed
92
* Significantly simplifies/automates the PALISADE build/installation process. Now we use CMake.
Yuriy Polyakov's avatar
Yuriy Polyakov committed
93 94
* Serialization/deserialization is now much faster (by 3x to 10x). Both binary and JSON formats are supported.
* By default, PALISADE compiles w/o external dependencies in Linux and Windows, i.e., NTL/GMP is now optional for these OSes.
Yuriy Polyakov's avatar
Yuriy Polyakov committed
95
* The performance in Windows is now as fast as in Linux (4x to 7x times faster than previously).
Yuriy Polyakov's avatar
Yuriy Polyakov committed
96 97
* Applies several low-level optimizations, and fixes some bugs.

gwryan@njit.edu's avatar
[email protected] committed
98 99
3/20/2019: PALISADE v1.5.0 is released

Fabian Boemer's avatar
Fabian Boemer committed
100
* Fixes the vulnerability found in https://eprint.iacr.org/2017/785 (PKC'19) for the PRE schemes based on BGV/BFV
Yuriy Polyakov's avatar
Yuriy Polyakov committed
101 102 103
* Adds PRE modes for BGV/BFV that are secure under honest re-reencryption attacks (recommended security for practical use)
* Adds support for splitting lattice trapdoor sampling into offline and online phases (used by digital signatures, IBE, and ABE constructions)
* Fixes bugs related to the multi-threaded mode of operation
gwryan@njit.edu's avatar
[email protected] committed
104 105 106 107 108

02/11/2018: PALISADE v1.4.1 is released

Fixes a bug affecting the IBE and CP-ABE implementations (some unit tests for IBE/CP-ABE were entering in an infinite loop in about 10% of the runs).

Jerry Ryan's avatar
Jerry Ryan committed
109 110 111 112 113 114 115 116
12/31/2018: PALISADE v1.4.0 is released

* Adds the Gentry-Peikert-Vaikuntanathan (GPV) digital signature scheme
* Adds the GPV identity-based encryption scheme
* Adds the Zhang-Zhang ciphertext-policy attribute-based encryption scheme
* Includes Genise-Micciancio (Eurocrypt'18) lattice trapdoor sampling algorithms and their improvements/generalizations
* Fixes bugs that were brought to our attention

Jerry Ryan's avatar
Jerry Ryan committed
117 118 119 120 121 122 123
11/26/2018: PALISADE v1.3.1 is released

* Improves performance of BFVrns
* Improves performance of Number Theoretic Transform
* Fixes a bug affecting the demo-cross-correlation demo
* Fixes other bugs that were brought to our attention

Jerry Ryan's avatar
Jerry Ryan committed
124 125 126 127 128 129 130
10/17/2018: PALISADE v1.3.0 is released

* Added support for the security levels/tables specified by the HomorphicEncryption.org security standard to all variants of the BFV scheme
* Optimized the packed encoding (batching)
* Simplified the signatures of classes and methods at multiple layers
* Fixed bugs that were brought to our attention

gwryan@njit.edu's avatar
[email protected] committed
131 132 133 134 135 136 137 138 139 140 141 142
6/15/2018: PALISADE v1.2 is released

PALISADE v1.2 provides several important advancements and improvements to the library.  Most notably, we provide:

* The Bajard-Eynard-Hasan-Zucca RNS variant of the BFV scheme is added to the library
* The implementation of the Halevi-Polyakov-Shoup RNS variant of the BFV scheme is significantly improved
* Large multiplicative depths (up to 100 and higher) for both RNS variants are now supported.
* Several low-level optimizations, e.g., in Number Theoretic Transform and NTL multiprecision math backend, are implemented.
* Multiple improvements in plaintext encodings.
* Software engineering improvements: extended batteries of unit tests, cleaner design of the matrix class, better CryptoContext wrapper, etc.
* Fixes for bugs which have been brought to our attention.

Jerry Ryan's avatar
Jerry Ryan committed
143 144 145 146
1/29/2018: PALISADE v1.1.1 is released

PALISADE v1.1.1 includes bug fixes and minor optimizations:

Jerry Ryan's avatar
Jerry Ryan committed
147 148 149 150 151
* Fixes minor bugs in NativeInteger and multiprecision backends (BigInteger)
* Deals properly with a low-probability rounding error in BFVrns
* Fixes a compilation error on some CentOS systems
* Improves the performance of NativeInteger
* Fixes a couple of other minor bugs
Jerry Ryan's avatar
Jerry Ryan committed
152

Yuriy Polyakov's avatar
Yuriy Polyakov committed
153 154 155 156 157 158 159 160 161 162 163
12/29/2017: PALISADE v1.1 is released

PALISADE v1.1  includes the following new capabilities, library enhancements, and optimizations:

* New efficient homomorphic scheme: BFVrns
* Newly supported homomorphic operations for multi-depth computations
* Type checking, type safety, and improved error handling
* Faster/more capable Gaussian sampling
* NTL integration as a new option for the multiprecision arithmetic backend
* And more...

Jerry Ryan's avatar
Jerry Ryan committed
164
07/15/2017: PALISADE v1.0 is released