From a085d36fd90f97f6125df6c68e78602847448562 Mon Sep 17 00:00:00 2001 From: Pro7ech Date: Tue, 28 Oct 2025 09:02:18 +0100 Subject: [PATCH] udpated changelog --- CHANGELOG.md | 22 ++++++++++++++++++++-- Cargo.lock | 8 ++++---- poulpy-backend/Cargo.toml | 2 +- poulpy-core/Cargo.toml | 2 +- poulpy-hal/Cargo.toml | 2 +- poulpy-schemes/Cargo.toml | 2 +- 6 files changed, 28 insertions(+), 10 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 36920dd..65e0240 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,23 @@ # CHANGELOG +## [0.3.2] - 2025-10-27 + +### `poulpy-hal` +- Improved convolution functionality + +### `poulpy-core` + - Rename `GLWEToLWESwitchingKey` to `GLWEToLWEKey`. + - Rename `LWEToGLWESwitchingKey` to `LWEToGLWEKey`. + - Add `GLWESecretTensor` which stores the flattened upper triangular matrix of the pairs `sk[i] * sk[j]`. + - Add `GGLWEToGGSWKey`, `GGLWEToGGSWKeyPrepared`, `GGLWEToGGSWKeyCompressed`, which encrypts the full tensor matrix of all pairs `sk[i] * sk[j]`, with one `GGLWE` per row. + - Update `GGLWEToGGSW` API to take `GGLWEToGGSWKey` instead of the `GLWETensorKey` + - Add `GLWETensor`, the result of tensoring two `GLWE` of identical rank. + - Changed `GLWETensorKey` to be an encryption of `GLWESecretTensor` (preliminary work for `GLWEFromGLWETensor`, a.k.a relinearization). + +### `poulpy-schemes` + - Add `GLWEBlindRotation`, a `GGSW`-based blind rotation that evaluates `GLWE <- GLWE * X^{((k>>bit_rsh) % 2^bit_mask) << bit_lsh}.` (`k` = `FheUintBlocksPrepared`). + - Add `GGSWBlindRotation`, a `GGSW`-based blind rotation that evaluates `GGSW <- (GGSW or ScalarZnx) * X^{((k>>bit_rsh) % 2^bit_mask) << bit_lsh}.` (`k` = `FheUintBlocksPrepared`). + ## [0.3.1] - 2025-10-24 ### `poulpy-hal` @@ -45,7 +63,7 @@ - Added tests suite for `FFTRef` and `FFTAvx` backends. ### Other -- Fixed a few minor bugs. + - Fixed a few minor bugs. ## [0.1.0] - 2025-08-25 -- Initial release. \ No newline at end of file + - Initial release. \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index 76ebe9b..2c32176 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -353,7 +353,7 @@ dependencies = [ [[package]] name = "poulpy-backend" -version = "0.3.1" +version = "0.3.2" dependencies = [ "byteorder", "cmake", @@ -370,7 +370,7 @@ dependencies = [ [[package]] name = "poulpy-core" -version = "0.3.1" +version = "0.3.2" dependencies = [ "bytemuck", "byteorder", @@ -384,7 +384,7 @@ dependencies = [ [[package]] name = "poulpy-hal" -version = "0.3.1" +version = "0.3.2" dependencies = [ "bytemuck", "byteorder", @@ -401,7 +401,7 @@ dependencies = [ [[package]] name = "poulpy-schemes" -version = "0.3.0" +version = "0.3.2" dependencies = [ "byteorder", "criterion", diff --git a/poulpy-backend/Cargo.toml b/poulpy-backend/Cargo.toml index 0ca482c..0acc0b6 100644 --- a/poulpy-backend/Cargo.toml +++ b/poulpy-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "poulpy-backend" -version = "0.3.1" +version = "0.3.2" edition = "2024" license = "Apache-2.0" readme = "README.md" diff --git a/poulpy-core/Cargo.toml b/poulpy-core/Cargo.toml index cf15d04..d0336ee 100644 --- a/poulpy-core/Cargo.toml +++ b/poulpy-core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "poulpy-core" -version = "0.3.1" +version = "0.3.2" edition = "2024" license = "Apache-2.0" description = "A backend agnostic crate implementing RLWE-based encryption & arithmetic." diff --git a/poulpy-hal/Cargo.toml b/poulpy-hal/Cargo.toml index f114681..5d9a1ca 100644 --- a/poulpy-hal/Cargo.toml +++ b/poulpy-hal/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "poulpy-hal" -version = "0.3.1" +version = "0.3.2" edition = "2024" license = "Apache-2.0" readme = "README.md" diff --git a/poulpy-schemes/Cargo.toml b/poulpy-schemes/Cargo.toml index 75464ba..4f8079b 100644 --- a/poulpy-schemes/Cargo.toml +++ b/poulpy-schemes/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "poulpy-schemes" -version = "0.3.0" +version = "0.3.2" edition = "2024" license = "Apache-2.0" readme = "README.md"