Jean-Philippe Bossuat
e2fd203d81
staticcheck
2020-12-16 11:15:57 +01:00
Jean-Philippe Bossuat
bdf9aaa1d6
replaced math/rand in tests by crypto/rand
2020-12-14 15:09:41 +01:00
Jean-Philippe Bossuat
db91eec916
[bfv] added special-purpose plaintexts encodings ( #74 )
...
* [bfv] added PlaintextRingT and PlaintextMul types
* [bfv] enhanced bfv.Encoder interface
Co-authored-by: Christian M <christian.mouchet@epfl.ch >
2020-12-11 14:06:55 +01:00
Jean-Philippe Bossuat
b622884be6
[ckks] API improvements and documentation ( #80 )
...
[ckks/dckks] : API changes:
- RotateColumns -> Rotate
- EvaluateChebySpecial is removed. Now the user needs to do the change of variable before the evaluation.
- Added MultByGaussianInteger/MultByGaussianIntegerAndAdd
- Encoder now takes logSlots instead of slots. This forbids giving zero slots or a non power of two slot number.
- Improved API documentation
- added the RescaleNew method to the ckks.Evaluator interface (closes #83 )
Co-authored-by: ChristianMct <christian.mouchet@epfl.ch >
2020-12-02 13:48:53 +01:00
Jean-Philippe Bossuat
f023ff529d
[ckks] polynomial evaluation return an error when ciphertext level doesn't enable full evaluation ( closes #71 )
...
In addition to the partially evaluated result, the homomorphic polynomial evaluation methods return an error if the ciphertext level does not enable full evaluation.
2020-11-06 16:48:47 +01:00
Christian M
1628ae0dbf
changed the import path for v2
2020-10-09 12:30:31 +02:00
Juan R. Troncoso
112b2bda8d
Revised documentation of DBFV examples
2020-10-07 03:10:15 +02:00
Jean-Philippe Bossuat
3c1e0b698a
[examples] : dbfv/psi : added comments.
2020-10-07 00:23:10 +02:00
Juan R. Troncoso
258dd1538b
Revised README and documentation of the examples
2020-10-07 01:59:22 +02:00
Jean-Philippe Bossuat
5ba0f09b58
[bfv/ckkd] : Moduli internals are now public
2020-10-02 12:33:02 +02:00
Christian M
eb45fefb1c
added bootstrapping example to make test target
2020-09-24 17:01:57 +02:00
Jean-Philippe Bossuat
b635054df9
[ckks] : better tests verification
2020-09-14 14:42:14 +02:00
Jean-Philippe Bossuat
b00479b420
[bfv/ckks] : renamed "xxx"Element, ckks : made verifytestvector public (for the examples)
...
golint
2020-09-14 11:54:30 +02:00
Jean-Philippe Bossuat
4566ce1f85
[ckks] : much faster generation of the rotation index needed for the bootstrapping keys
2020-09-10 18:56:55 +02:00
Christian M
55b378485d
[ckks] streamlined the bootstrapping key generation and Bootstrapper public API
2020-09-10 17:53:04 +02:00
Jean-Philippe Bossuat
4a33b51666
[dckks] : test.Short(), fixed examples, fixed experiments, removed fmt.Print in test of Ring
2020-09-10 14:51:40 +02:00
Jean-Philippe Bossuat
5016a59e36
[ckks] : hardcoded default bootstrapp parameters
2020-09-09 23:18:46 +02:00
Christian M
32a337334b
[ring] updated variable names for the ring.Context -> ring.Ring refactoring
2020-09-09 15:00:34 +02:00
Christian M
7c8e8ff58d
[ring] renamed ring.Context to ring.Ring
2020-09-08 16:21:46 +02:00
Jean-Philippe Bossuat
8be869a975
Merge branch 'dev_v1.4.0' into dev_v1.4.0_bootstrapp
2020-09-06 19:20:06 +02:00
Jean-Philippe Bossuat
ed59b8f732
[ckks] new parameters API
2020-09-06 00:08:42 +02:00
Christian M
f4adb1a613
[bfv/ckks] unexporting the fields of bfv.Parameters
2020-09-03 14:21:43 +02:00
Christian M
3871936fda
[dbfv/dckks] two-rounds relinearization key generation
2020-09-03 13:54:53 +02:00
Jean-Philippe Bossuat
d62895e33d
CKKS : updated polynomial evaluation in standard basis with the scale invariant BSGS algo
2020-08-26 15:08:18 +02:00
Jean-Philippe Bossuat
670433a63c
Merge branch 'dev_v1.4.0' into dev_v1.4.0_bootstrapp
2020-06-22 17:09:54 +02:00
Christian M
891b9455cd
[sampling] explicit mention of Montgomery form in sampler pointer name
2020-06-22 11:43:20 +02:00
Elie Daou
448f9a2299
[sampling] remove Read***NTT functions
2020-06-20 14:24:49 +02:00
Elie Daou
fc39b9e191
[sampling] gaussian and uniform samplers interface simplication
2020-06-15 00:50:22 +02:00
Christian M
7e3dc727b1
bootstrapping experiment is ready to run
2020-06-11 11:36:48 +02:00
Christian M
b98d1d0d5a
[sampling] ternary sampler interface reduction
2020-06-08 20:11:23 +02:00
Elie Daou
4961924ca3
[sampling] refactor sampling function names
2020-06-06 01:30:18 +02:00
Elie Daou
0c93b6313e
[sampling] remove ring CRPGenerator
2020-06-06 00:37:22 +02:00
Elie Daou
823468ab1b
[sampling] migrate all samplers off crypto/rand
2020-06-04 00:19:06 +02:00
Elie Daou
cc50bccf1f
[utils] Clean up PRNG interface
2020-06-02 11:38:50 +02:00
Christian M
a77c13bbbc
Merge branch 'dev_v1.4.0_bootstrapp' of ssh://github.com/ldsec/lattigo-private into dev_v1.4.0_bootstrapp
2020-05-25 18:49:15 +02:00
Elie Daou
61aa8931e2
[utils] Add osrand prng
2020-05-15 12:36:21 +02:00
Jean-Philippe Bossuat
47e89020c3
Merge branch 'dev_v1.4.0' into dev_v1.4.0_bootstrapp
2020-04-25 22:29:55 +02:00
Jean-Philippe Bossuat
758e501f91
Utils : changed PRNG to use XOF from blake2b
...
Ring : added samplegaussian to PRNG, reduced the memory allocation of sampleuniform and samplegaussian, fixed a pointer error in samplegaussian
2020-04-16 23:28:56 +02:00
Jean-Philippe Bossuat
f73550be0e
Merged with dev_v1.4.0 adn added bootstrapp example
2020-04-02 18:26:35 +02:00
Jean-Philippe Bossuat
4d406749fe
ckks : params revamp
2020-03-30 15:55:00 +02:00
Jean-Philippe Bossuat
4c1ad7c0ae
Guidelines review BFV : 2/14 + params revamp
2020-03-30 14:52:08 +02:00
Jean-Philippe Bossuat
a4b5e7b61a
Reverted the keyswitch to the previous state
2020-03-24 11:09:14 +01:00
Jean-Philippe Bossuat
7d017138f8
updated example
2020-03-04 00:31:58 +01:00
Jean-Philippe Bossuat
c71518d6a3
example
2020-03-02 15:07:59 +01:00
Christian Mouchet
17b8ba890f
Merge branch 'dev_v1.3.0' into encryptor-interface
2019-12-18 14:28:10 +01:00
Jean-Philippe Bossuat
710f70727c
ckks : keygenerator interface
2019-12-17 17:41:52 +01:00
Jean-Philippe Bossuat
6420cbe004
ckkks : envaluator interface
2019-12-17 17:33:54 +01:00
Jean-Philippe Bossuat
6d19e61e0e
Fixes
...
BFV/CKKS : ciphertext marshaling now properly works when the target is a ciphertext that isnt a bfv or ckks element.
BFV/CKKS : API change on key-generator, Gen is now a prefix to indicate that there is sampling, while New is a prefixe to indicate the creation of an empty struct.
2019-12-17 15:54:38 +01:00
Christian Grigis
fc7a6cea5e
ckks: change Decryptor to an interface
2019-12-16 17:06:08 +01:00
Christian Grigis
92dcdc9700
ckks: change Encryptor to an interface
2019-12-16 17:04:57 +01:00