Arthur Meyre
bc129ba0ed
chore(csprng): add dieharder test suite
2023-09-11 13:05:33 +02:00
Arthur Meyre
462834a12e
chore(tfhe): use concrete-csprng 0.4.0 allows to use stable for M1/M2 macs
2023-09-11 13:05:33 +02:00
Arthur Meyre
ebeee1d6f8
chore(ci): add concrete-csprng to the CI
2023-09-11 13:05:33 +02:00
Arthur Meyre
d0e1a582e1
chore(csprng): add code base taken from concrete-core repo
2023-09-11 13:05:33 +02:00
Arthur Meyre
546cb369a8
chore(c_api): mark some functions manipulating pointers as unsafe
...
- restrict visibility to the c_api
BREAKING CHANGE:
change in visibility specifier is a breaking change though those functions
were not meant to be used by external users
2023-09-11 12:49:57 +02:00
dependabot[bot]
445af7ab97
chore(deps): bump tj-actions/changed-files from 38.2.1 to 39.0.1
...
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files ) from 38.2.1 to 39.0.1.
- [Release notes](https://github.com/tj-actions/changed-files/releases )
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md )
- [Commits](2f7246cb26...246636f5fa )
---
updated-dependencies:
- dependency-name: tj-actions/changed-files
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-11 10:05:38 +02:00
dependabot[bot]
23f8c69bae
chore(deps): bump actions/upload-artifact from 3.1.2 to 3.1.3
...
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact ) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](0b7f8abb15...a8a3f3ad30 )
---
updated-dependencies:
- dependency-name: actions/upload-artifact
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-11 10:05:29 +02:00
dependabot[bot]
b8df207b68
chore(deps): bump actions/checkout from 3.6.0 to 4.0.0
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 3.6.0 to 4.0.0.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](f43a0e5ff2...3df4ab11eb )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-11 10:05:17 +02:00
sarah el kazdadi
03688aee4c
feat(fft): use monomial fft for multibit pbs
2023-09-08 18:27:43 +02:00
David Testé
5a3652f398
chore(ci): add clippy target for trivium application
2023-09-08 16:49:27 +02:00
David Testé
ae3c261d1e
chore(bench): add 128 and 256 bit sizes for multi-bit benchmarks
2023-09-08 13:25:28 +02:00
tmontaigu
95dcf95e88
fix(integer): make trim_radix_msb handle dirty inputs
2023-09-08 10:29:25 +02:00
J-B Orfila
b92d6400f4
chore(bench): add new parameter sets to bench
2023-09-07 14:49:20 +02:00
David Testé
9ba27b4082
chore(ci): add multiplier to get effective pbs throughput value
2023-09-06 11:02:47 +02:00
dependabot[bot]
b164c90d75
chore(deps): bump tj-actions/changed-files from 38.1.3 to 38.2.1
...
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files ) from 38.1.3 to 38.2.1.
- [Release notes](https://github.com/tj-actions/changed-files/releases )
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md )
- [Commits](c860b5c47f...2f7246cb26 )
---
updated-dependencies:
- dependency-name: tj-actions/changed-files
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-09-04 16:11:54 +02:00
Arthur Meyre
ff893ca6ef
chore(wopbs): rework the inner part of WopLUTBase to be easier to use
...
BREAKING CHANGE: Wopbs LUT structs for shortint and integer have changed
APIs
2023-09-04 13:19:37 +02:00
tmontaigu
2dd1e13dad
fix(integer): add assert on scalar bits in scalar_div
...
To work the scalar div requires that the scalar type (u32, u64, etc)
has at least as many bits of precision that what the ciphertext
encrypts (e.g. if the ciphertext encrypt 32bits, the scalar type must
have at least 32 bits)
We were missing the assert which lead to misuse, so we add it.
2023-09-01 18:04:51 +02:00
tmontaigu
4393fce861
feat(integer): be smarter about parallel carry propagation usage
...
The parallel carry propagation algorithm is a lot faster
than the non parallel one, however to actually be faster
it requires the CPU to have enough threads.
This adds checks so that we use the parallel algorithm
only if this condition is met.
This should improve performance on smaller CPUs
typically found in standard laptops/desktops.
2023-09-01 18:04:34 +02:00
Arthur Meyre
4f10cfa6dd
chore(tfhe): bump version to 0.4.0
2023-08-31 14:29:17 +02:00
Mayeul@Zama
a6e4488de2
feat(js_test): add warning for expected error lor
2023-08-31 09:28:28 +02:00
Mayeul@Zama
878f3fa448
style(shortint): allow needless_pass_by_ref_mut on smart ops
2023-08-31 09:28:28 +02:00
Mayeul@Zama
90b887a56f
style(tfhe): rename module
2023-08-31 09:28:28 +02:00
Mayeul@Zama
7dc52cf4ef
chore(toolchain): fix clippy lints
2023-08-31 09:28:28 +02:00
Mayeul@Zama
a69333ed37
chore(toolchain): format rust
2023-08-31 09:28:28 +02:00
Mayeul@Zama
ffad25449e
chore(toolchain): update toolchain
2023-08-31 09:28:28 +02:00
tmontaigu
6d471856c7
chore(docs): add section about writing trait bounds
...
This how to shows how to write the trait bounds of function
for the high level API.
2023-08-30 17:14:45 +02:00
David Testé
65749cb39b
chore(bench): benchmark shortint ops against multi-bit parameters
2023-08-30 13:31:46 +02:00
David Testé
bf36316c12
chore(bench): benchmark server key creation from compressed one
2023-08-30 13:31:46 +02:00
David Testé
d98bb0eb86
chore(bench): measure bootstrap compressed key sizes
2023-08-30 13:31:46 +02:00
Arthur Meyre
5747af6dce
feat(core): add LwePackingKeyswitchKey entity and algorithms
...
BREAKING CHANGE:
- more stringent checks for ciphertext moduli on some operations
- uniformized order of certain parameters for keyswitching primitives
- uniformized some primitives name
2023-08-30 10:54:35 +02:00
David Testé
cf08436c7d
chore(bench): add pbs_ks parameters to pbs benchmarks
2023-08-29 10:02:01 +02:00
dependabot[bot]
241bddccaf
chore(deps): bump rtCamp/action-slack-notify from 2.2.0 to 2.2.1
...
Bumps [rtCamp/action-slack-notify](https://github.com/rtcamp/action-slack-notify ) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/rtcamp/action-slack-notify/releases )
- [Commits](12e36fc18b...b24d75fe0e )
---
updated-dependencies:
- dependency-name: rtCamp/action-slack-notify
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-08-28 13:39:57 +02:00
dependabot[bot]
8ce1984214
chore(deps): bump tj-actions/changed-files from 37.6.1 to 38.1.3
...
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files ) from 37.6.1 to 38.1.3.
- [Release notes](https://github.com/tj-actions/changed-files/releases )
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md )
- [Commits](a0585ff990...c860b5c47f )
---
updated-dependencies:
- dependency-name: tj-actions/changed-files
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-08-28 10:17:42 +02:00
dependabot[bot]
82ef430dfa
chore(deps): bump actions/checkout from 3.5.3 to 3.6.0
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 3.5.3 to 3.6.0.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](c85c95e3d7...f43a0e5ff2 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-08-28 10:17:31 +02:00
tmontaigu
2348303b26
chore(ci): pin clap dependency
2023-08-25 21:03:42 +02:00
tmontaigu
a35386f740
chore(ci): remove ability for tests to be retried
2023-08-24 20:38:07 +02:00
tmontaigu
3df542c5f8
chore(bench): bench integer scalar ops up to 256 bits
2023-08-24 16:53:41 +02:00
David Testé
37623eedf3
chore(ci): add shortint pbs_ks parameters to security check
2023-08-23 09:05:45 +02:00
David Testé
fa8cf73d57
chore(ci): run parameters security check job unconditionally
...
Even if the parameters haven't changed in a commit, the lattice
estimator could have been updated. Hence the reason to run this
quick check on every push on main.
2023-08-23 09:05:45 +02:00
David Testé
872b20a4a1
chore(bench): add division and modulo ops to integer benchmarks
2023-08-23 09:05:16 +02:00
dependabot[bot]
4920e3b4df
chore(deps): bump tj-actions/changed-files from 37.6.0 to 37.6.1
...
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files ) from 37.6.0 to 37.6.1.
- [Release notes](https://github.com/tj-actions/changed-files/releases )
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md )
- [Commits](87697c0dca...a0585ff990 )
---
updated-dependencies:
- dependency-name: tj-actions/changed-files
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-08-21 23:18:38 +02:00
David Testé
75a0881e9d
fix(boolean): increase noise for tfhe_lib parameters set
...
This is done to match the values exposed in TFHE_LIB project.
2023-08-21 09:37:56 +02:00
dependabot[bot]
f67effc359
chore(deps): bump tj-actions/changed-files from 37.5.1 to 37.6.0
...
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files ) from 37.5.1 to 37.6.0.
- [Release notes](https://github.com/tj-actions/changed-files/releases )
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md )
- [Commits](a96679dfee...87697c0dca )
---
updated-dependencies:
- dependency-name: tj-actions/changed-files
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-08-11 22:13:39 +02:00
David Testé
e8eb82f7ae
chore(bench): use clean inputs for unchecked ops benchmarks
...
Previousely, unchecked_eq benchmark would fail at each run. Since
unchecked operations require clean inputs, we change the way we
instantiate benchmark functions.
2023-08-11 13:22:59 +02:00
David Testé
53018ddc36
chore(ci): ignore tfhe_lib_parameters check in lattice esitmator
...
This third-party parameters set is known to be less secure, so
there is no need to make the CI fail because of this set.
2023-08-11 11:08:59 +02:00
David Testé
9ef62acff1
chore(ci): change full suite benchmarks worflow description
...
This is done to avoid having the same name than the other
full benchmarks workflow.
2023-08-11 09:18:47 +02:00
aquint-zama
12220b2a18
chore(docs): design upgrade
2023-08-10 18:46:29 +02:00
tmontaigu
625c150dc1
feat(integer): start adding signed radix ciphertext
...
This introduces the SignedRadixCiphertext type
which encrypts signed values (i8, i16, etc).
Encryption and decryption functions are added.
This also makes the addition work with signed
values as the algorithm is the same.
2023-08-10 17:47:13 +02:00
David Testé
304932a861
chore(tfhe): refactor keycache in its own crate
...
The general parts of shortint keycache has been moved to its own
crate. This enable boolean layer to get access to traits without
having to import shortint::keycache module.
2023-08-10 16:42:40 +02:00
David Testé
59181d4717
chore(ci): add workflow to check security of parameters sets
...
Cryptographic parameters sets security is checked automatically
with a lattice estimator. The first step is to collect all the
parameters that need to be checked in in a file with a format
understable by Sagemath. Second, a lattice estimator is run in
a Sage script. Each parameters set is run against two attacks and
then security level is estimated from that.
These steps have been put into a GitHub workflow to perform
automatic checks.
Co-authored-by: Ben <ben.curtis@zama.ai >
2023-08-10 16:42:40 +02:00