Releases: microsoft/SEAL
Releases · microsoft/SEAL
Release 4.1.2
- Merged (PR #619): Removed unqualified calls to
std::move. - Merged (PR #651): Fixed filename typos in native examples.
- Merged (PR #662) and (PR #666): Fixed broken links in README.md.
- Merged (PR #669): Removed extra semicolons that caused compiler warnings.
Hotfix - 6/13/2024
- Merged (PR #688): Fixed incorrect version numbers in native/tests/CMakeLists.txt.
Hotfix - 7/10/2024
- Merged (PR #695): Fixed incorrect version numbers in native/examples/CMakeLists.txt
Release 4.1.1
Release 4.1.0
Features
- The BGV scheme now keeps ciphertexts in NTT form. BGV ciphertext multiplication is much faster than version 4.0.0.
- When a BGV ciphertext saved by previous versions is loaded in the current version, it is automatically converted to NTT form.
- Increased
SEAL_COEFF_MOD_COUNT_MAX, the maximum number of primes that define the coefficient modulus, from 64 to 256.
Other Fixes
- Fixed typos (PR #590).
- Added $schema to cgmanifest.json (PR #558).
- Fixed typos (PR #512).
- Fixed typos (PR #530).
- Fixed typos (PR #509).
- Added missing
constqualifiers (PR #556). - Added vcpkg installation instructions (PR #562).
- Fixed an issue in specific environments where allocation fails without throwing
std::bad_alloc. - Fixed comments (C++) and C/.NET wrapper implementation of an exception thrown by
invariant_noise_budget.
Major API Changes
- Added new public methods
mod_reduce_xxx(...)(native) andModReduceXxx(...)(dotnet) to the classEvaluator.
Release 4.0.0
Features
- Added BGV scheme (PR 283). Thanks, Alibaba Gemini Lab!
- Added a new example "BGV basics" to native and dotnet.
- Loading objects serialized by Microsoft SEAL v3.4+ are supported.
- Updated versions of dependencies: GoogleTest from 1.10.0 to 1.11.0 and GoogleBenchmark from 1.5.2 to 1.6.0.
Other Fixes
- Fixed an ambiguous comment (PR 375).
Major API Changes
- Added
seal::scheme_type::bgv. - Added a new public method
parms_id()(native) to the classEncryptionParameters. - Added a new public method
Create(...)(native and dotnet) with three inputs in the classCoeffModulus. - Added a new public method
correction_factor()(native) orCorrectionFactor()(dotnet) to the classCiphertext. - Removed the friendship of the class
EncryptionParametersto the classSEALContext.
File Changes
native/bench/bgv.cppis added.- Examples are renamed and extended.
Release 3.7.3
Features
- All output files including downloaded thirdparty dependencies and Visual Studio project and solution files will be created in the build directory (PR 427).
- Reduced
util::try_minimal_primitive_rootsearch iterations by half (PR 430). Thanks, zirconium-n! - Updated .Net SDK version to 6.0.x and supported Visual Studio version to 17 2022.
- Added
SEAL_AVOID_BRANCHINGoption to eleminate branching in critical functions when Microsoft SEAL is built with maliciously inserted compiler flags.
Bug Fixes
- Removed exceptions in
KeyGenerator::CreateGaloisKeyswhen inputs do not include steps so that even whenEncryptionParameterQualifiers::using_batchingis false Galois automorphisms are still available.
File Changes
dotnet/SEALNet.slnis removed.dotnet/SEALNet.sln.inis added.
Release 3.7.2
Bug Fixes
- Fixed a bug when Intel HEXL is used (Issue 411) (PR414).
- Fixed an abnormal benchmark case due to AVX512 transitions when Intel HEXL is used (PR 416).
Release 3.7.1
Bug Fixes
- Fixed compiler and linker errors in downstream projects when Microsoft SEAL is built with
SEAL_BUILD_DEPS=ONandSEAL_USE_INTEL_HEXL=ON. - Updated CMake minimum requirement to 3.13.
File Changes
native/src/seal/util/intel_seal_ext.his removed.native/src/seal/util/intel_seal_ext.cppis removed.
Release 3.7.0
Features
- Improved the performance of
Evaluator::multiply,Evaluator::multiply_inplace, andEvaluator::squarein the BFV scheme for default parameters with degree4096or higher. - Improved the performance of decryption (PR 363).
- Updated to HEXL version 1.2.1 (PR 375).
- Added more benchmark cases (PR 379).
Minor API Changes
constmethods inSEALContextandSEALContext::ContextDataclasses that used to return a pointer or reference now have a preceedingconstqualifier.
Bug Fixes
- Fixed failed tests on PowerPC architecture (Issue 360).
Release 3.6.6
Bug Fixes
- Fixed an error when loading seeded ciphertexts serialized by v3.4.x from v3.5.0+.
- Fixed failed tests on ARM64 architecture (Issue 347).
Other
- Improved HEXL NTT integration (PR 349).
- Improved CKKS ciphertext multiplication (PR 346).
- Improved CKKS ciphertext square (PR 353), except that with GNU G++ compiler and
1024degree there is a huge penalty in execution time. Users should switch from GNU G++ in this specific parameter setting if CKKS square is used.
Release 3.6.5
New Features
- Updated the dependency Intel HEXL to v1.1.0 (PR 332).
- Integrated more optimizations from Intel HEXL to Microsoft SEAL.
- Intel HEXL now uses Microsoft SEAL's memory pool, so that memory allocation reported by Microsoft SEAL is more accurate.
Bug Fixes
- Fixed typos in comments (PR 328).
- Fixed a bug in
DWTHandler(Issue 330). - Fixed failing tests when
SEAL_USE_ZLIB=OFFandSEAL_USE_ZTD=OFF(PR 332). - Fixed shared library build when
SEAL_USE_HEXL=ON(PR 332). - Added missing
constqualifiers to several members ofBatchEncoderandEvaluator(PR 334).