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
const
qualifiers (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
EncryptionParameters
to the classSEALContext
.
File Changes
native/bench/bgv.cpp
is 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_root
search 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_BRANCHING
option to eleminate branching in critical functions when Microsoft SEAL is built with maliciously inserted compiler flags.
Bug Fixes
- Removed exceptions in
KeyGenerator::CreateGaloisKeys
when inputs do not include steps so that even whenEncryptionParameterQualifiers::using_batching
is false Galois automorphisms are still available.
File Changes
dotnet/SEALNet.sln
is removed.dotnet/SEALNet.sln.in
is 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=ON
andSEAL_USE_INTEL_HEXL=ON
. - Updated CMake minimum requirement to 3.13.
File Changes
native/src/seal/util/intel_seal_ext.h
is removed.native/src/seal/util/intel_seal_ext.cpp
is removed.
Release 3.7.0
Features
- Improved the performance of
Evaluator::multiply
,Evaluator::multiply_inplace
, andEvaluator::square
in the BFV scheme for default parameters with degree4096
or 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
const
methods inSEALContext
andSEALContext::ContextData
classes that used to return a pointer or reference now have a preceedingconst
qualifier.
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
1024
degree 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=OFF
andSEAL_USE_ZTD=OFF
(PR 332). - Fixed shared library build when
SEAL_USE_HEXL=ON
(PR 332). - Added missing
const
qualifiers to several members ofBatchEncoder
andEvaluator
(PR 334).