Commit Graph

178 Commits

Author SHA1 Message Date
Arthur Meyre
b29008830c refactor(core): implement missing traits for u128/i128 to make them usable
- enables the use of u128 in ciphertexts
- add encryption test based on shortint 2_2 params
2023-02-06 11:08:04 +01:00
Arthur Meyre
a43dbebd1b chore(tfhe): TFHE-rs uses GATs, so needs rust >= 1.65 2023-02-02 17:34:37 +01:00
Arthur Meyre
d224821aaa chore(tfhe): update testing script to allow custom RUSTFLAGS 2023-02-02 17:34:08 +01:00
Arthur Meyre
d24896ed09 chore(doc): fix code example where useless mut were used 2023-02-02 17:33:53 +01:00
tmontaigu
106624048c refactor(all): only depend on bincode when needed 2023-02-01 10:03:41 +01:00
tmontaigu
5849cc9e7d refactor(all): derive serde::{Serialize, Deserialize}
This replaces our manual implementations of serde's
Serialize and Deserialize trait with 'derives'.

The manual implementetions were needed when using concrete-core
but as tfhe-rs does not use concrete-core's engines we can
simply derive the implementations.
2023-02-01 10:03:41 +01:00
Arthur Meyre
02e6d3c955 feat(c_api): expose create_trivial for shortint in C api 2023-01-31 11:22:06 +01:00
Arthur Meyre
3acaa2e242 chore(ci): make no_tfhe_typo mac friendly 2023-01-31 10:18:35 +01:00
Arthur Meyre
e293dc2bc1 chore(tfhe): update check toolchain after new stable rust release 2023-01-31 10:18:35 +01:00
Arthur Meyre
d9e0220dce chore(shortint): update CI test cases 2023-01-30 17:00:10 +01:00
J-B Orfila
2539e3e0c7 fix(shortint): add degree management in KS-PBS 2023-01-30 11:49:28 +01:00
Arthur Meyre
28cacfca86 chore(doc): fix docstring add some links to methods in lwe_wopbs 2023-01-27 15:58:29 +01:00
Arthur Meyre
e894bb0b11 docs(core): add blind_rotate_assign doctest 2023-01-27 15:58:29 +01:00
Arthur Meyre
313ccf3014 feat(core): add add_external_product_assign 2023-01-27 15:58:29 +01:00
Arthur Meyre
305baa1a6b feat(core): expose the cmux operation 2023-01-27 15:58:29 +01:00
Arthur Meyre
357dee3197 feat(core): add conversion functions for GgswCiphertext 2023-01-27 15:58:29 +01:00
Arthur Meyre
6580d652bb chore(core): fix an import in lwe_bootstrap_key_conversion 2023-01-27 15:58:29 +01:00
Arthur Meyre
5db0584356 refactor(fft): rename new and add an Owned alias for fourier GGSW 2023-01-27 15:58:29 +01:00
J-B Orfila
b691bc9820 feat(core_crypto): lwe_sub 2023-01-26 09:55:07 +01:00
aquint-zama
0653c7c896 chore(doc): update README twitter badge
twitter API closed to 3rd party
see https://github.com/badges/shields/issues/8837
2023-01-24 18:33:20 +01:00
J-B Orfila
bd9e453615 fix(shortint): fix smart_mul_lsb conditions 2023-01-23 10:31:37 +01:00
Arthur Meyre
4673a6349e chore(tfhe): harden github actions versions, enable dependabot for GHA 2023-01-13 17:22:45 +01:00
aquint-zama
b63181b21a chore(doc): update cover image 2023-01-13 14:29:43 +01:00
Arthur Meyre
0ae2722729 chore(tfhe): update README 2023-01-13 09:21:32 +01:00
Arthur Meyre
5945a52eba feat(tfhe): add WASM and C API bindings and tests 2023-01-13 09:21:19 +01:00
Arthur Meyre
384850f7fa feat(boolean): add CompressedCiphertext 2023-01-13 09:21:19 +01:00
Arthur Meyre
4a88290a97 feat(shortint): add CompressedCiphertext 2023-01-13 09:21:19 +01:00
Arthur Meyre
62843a4ef6 feat(tfhe): add SeededLweCiphertext in core_crypto 2023-01-13 09:21:19 +01:00
J-B Orfila
f5653f551d doc(core_crypto): gitbook 2023-01-12 17:41:35 +01:00
Arthur Meyre
43670d7b15 docs(tfhe): add user docs for JS on WASM API and limitations in a tutorial 2023-01-12 10:49:07 +01:00
Arthur Meyre
97e2d96661 doc(tfhe): update PBS docstring to demnonstrate seeded bsk decompression 2023-01-12 10:49:07 +01:00
Arthur Meyre
c90e0626f9 refactor(tfhe): update wopbs primitive docstring and arg order 2023-01-12 10:49:07 +01:00
Arthur Meyre
da9ae6a70d refactor(tfhe): move SeededLwePublicKey generation
- match the organization of other seeded/generation modules
- update module docstring to include Seeded entities where relevant
2023-01-12 10:49:07 +01:00
Arthur Meyre
c5dbbaa071 docs(core): update docstrings, add missing doctests for lwe_linear_algebra 2023-01-12 10:49:07 +01:00
Arthur Meyre
a0dae1c9ae docs(tfhe): updated user documentation and API documentation 2023-01-12 10:49:07 +01:00
Arthur Meyre
b2e3773c40 feat(tfhe): add CompressedServerKey to Boolean +C API +WASM API
- rename wasm functions to remove redundant boolean and shortint naming
- update C API tests for Boolean to include CompressedServerKey generation
and serde
2023-01-05 15:22:54 +01:00
Arthur Meyre
a66d377599 feat(shortint): add CompressedServerKey to shortint +C API +WASM API 2023-01-05 15:22:54 +01:00
Arthur Meyre
8b7b3d02b7 refactor(tfhe): change new method naming for secret keys
- new -> new_empty_key so that it's obvious the key will be empty
- add static methods on secret keys to easily generate them
2023-01-05 15:22:54 +01:00
Arthur Meyre
82b3d2154e refactor(tfhe): make the seeders module more ergonomic to use 2023-01-05 15:22:54 +01:00
Arthur Meyre
702360c03f chore(tfhe): correct docstrings 2023-01-05 15:22:54 +01:00
Arthur Meyre
d065e98888 chore(ci): rustdoc warnings as error 2023-01-05 15:22:54 +01:00
Arthur Meyre
7dee0a9202 chore(ci): sync tags from public to internal repo 2023-01-04 10:14:53 +01:00
Arthur Meyre
4a5be86cfa test(c_api): add public key serde in shortint test 2023-01-04 09:38:31 +01:00
Arthur Meyre
ccc41a89af refactor(core_crypto): add several useful structs to the prelude
- add main high level random generators as well as the underlying activated
byte random generator
- add SignedDecomposer which helps with rounding
2023-01-04 09:38:31 +01:00
Arthur Meyre
c9258e7515 chore(tfhe): add doc test for new_seeder 2023-01-04 09:38:31 +01:00
Arthur Meyre
00c31f4802 refactor(tfhe): move seeders module to core_crypto and add to prelude 2023-01-04 09:38:31 +01:00
Arthur Meyre
d09169d6bc chore(tfhe): rename scratch -> requirement
- renamed wopbs primitives which did not follow the naming convention
2023-01-04 09:38:31 +01:00
Arthur Meyre
729d019bc1 chore(tfhe): rename some primitives whose functionality changed 2023-01-04 09:38:31 +01:00
Arthur Meyre
823fb6d989 chore(tools): add .editorconfig 2023-01-04 09:38:31 +01:00
David Testé
0876d7fec0 chore(ci): measure and report key sizes used in benchmarks
Size of boostrapping and key switching keys used in benchmarks are
measured and then sent to Slab to be stored into our benchmark
database.
2023-01-03 18:34:41 +01:00