Commit Graph

48 Commits

Author SHA1 Message Date
Matthew Liu
8f6a1d7b98 cleaned up some conditional compilation logic in context, also formatting fixes 2023-07-10 11:28:56 -07:00
Matthew Liu
243d748cdf fixed references of .0 into .graph and enabled conditional compilation of debugging structs, but this broke fhe_program proc macro 2023-07-10 11:03:09 -07:00
Matthew Liu
479a3319d9 format changes 2023-06-27 17:10:52 -07:00
Matthew Liu
02baf6d961 added support for node group ids in fhe compiler 2023-06-27 17:10:42 -07:00
Matthew Liu
70b5d21d7c finished support for group id in zkp programs 2023-06-27 14:27:04 -07:00
Sam Tay
aadde9d162 Offer a simpler API for runtime creation (#246)
* Offer a simpler API for runtime creation

* Update docs and examples to use `FheRuntime::new`
2023-06-06 18:56:46 -07:00
Sam Tay
66211f75b1 Fix 64-bit pointer assumptions (#243)
* Fix 64-bit pointer assumptions

* Appease clippy

* Bump proc-macro2

(Fixes wasm build)
2023-05-30 11:59:20 -07:00
Sam Tay
ace6d97140 Add a bfv::Unsigned type (#236)
* Add a bfv::Unsigned type

* Fix decoding from polynomial?

* Add prop test for addition

* Proptest sub, mul, and mixed cipher/plaintexts

* Reduce code dupe

* Add test for 0 - 1

* Add a few more tests
2023-04-24 11:57:33 -07:00
Sam Tay
9346677d5d Expose ZkpContextOps 2023-03-29 10:08:52 -07:00
rickwebiii
6f713d6750 Rweber/zkp (#218)
Private tx range proof
2023-03-02 15:16:45 -08:00
rickwebiii
6604afbf95 ZKP array inputs (#217)
* ZKP array inputs
2023-03-01 13:33:14 -08:00
rickwebiii
4e236f7a39 CR comments (#206) 2023-01-20 13:55:41 -08:00
rickwebiii
61032735f8 Rweber/zkp (#205)
Can create pure R1CS BFV proof.
2023-01-20 13:38:04 -08:00
rickwebiii
b36480f0b0 Rweber/zkp (#204)
Can compute quotient and remainder in ZKP.
2023-01-18 17:03:50 -08:00
rickwebiii
e7b82bf6db Can do more comparison operations (#203)
Can do more comparison operations
2023-01-17 16:09:35 -08:00
rickwebiii
216fd1beda Rweber/zkp (#202)
Add less-than-equal comparison
2023-01-17 15:18:04 -08:00
rickwebiii
c01f0c59e3 Improve assert binary gadget (#200)
* Improve assert binary gadget

* cargo fmt

* clippy

* clippy
2023-01-15 13:45:10 -08:00
rickwebiii
0ceb4a5208 Rweber/zkp (#199)
* Multiply WIP

* Polynomial multiplication works

* clippy

* CR comment

* cargo fmt
2023-01-11 10:51:04 -08:00
rickwebiii
38a67b7d97 Can encode negative numbers onto native fields (#198)
* Can encode negative numbers onto native fields
2023-01-05 15:38:18 -08:00
rickwebiii
64036ccaee Rweber/zkp (#197)
Plumb BackendField to NativeField for negative number support.
2023-01-04 11:38:18 -08:00
rickwebiii
d03207e67e Rweber/zkp (#196)
Add BFV playground, Polynomial addition
2022-12-19 12:00:23 -08:00
rickwebiii
18fb031953 Rweber/zkp (#195)
Can now use #[constant] and #[public] inputs
2022-12-09 16:21:34 -08:00
rickwebiii
85e3a60e35 Rweber/zkp (#194)
Add to_unsigned gadget and test
2022-12-08 17:57:31 -08:00
rickwebiii
c6056bf8d9 Rweber/zkp (#193)
Can use gadgets
2022-12-08 10:08:57 -08:00
rickwebiii
2e5b7e834b Rweber/refactor (#190)
Refactor sunscreen_fhe_program to use types and functions in sunscreen_compiler_common
2022-11-30 18:02:45 -08:00
rickwebiii
72f00391ea Rweber/zkp (#188)
ZKP works E2E
2022-11-29 13:47:29 -08:00
rickwebiii
f79e2312af Rweber/clippy (#189)
Improve Errors (use thiserror and reduce their size). Fix clippy errors.
2022-11-29 13:18:45 -08:00
rickwebiii
3543b88387 Rweber/zkp (#187)
Refactor APIs to support ZKPs
2022-11-22 15:44:00 -08:00
rickwebiii
d847021858 Rweber/zkp (#186)
Add ZKP backend for Bulletproofs
2022-11-18 20:06:48 -08:00
rickwebiii
28ea71118f Rweber/zkp (#185)
Start ZKP compiler and refactor common code.
2022-11-15 12:43:04 -08:00
rickwebiii
390a27b1cd Refactor some code to be shared (#184)
* Refactor some code to be shared

* Kill warnings

* Regenerate launch.json

* Add documentation

* CR comments

* Fix doc issues

* cargo fmt

* CR comments

* CR comments

* Fix warning

* argh clippy
2022-11-11 15:56:09 -08:00
Sam Tay
e2e5da3f60 Manually fix the rest of the clippy warnings 2022-10-31 15:30:34 -07:00
Sam Tay
4b53103953 Auto fix clippy warnings 2022-10-31 15:30:34 -07:00
rickwebiii
c2b1850fab Rweber/maint (#176)
Fix security vulnerability warning for unmaintained ansi_term.
2022-09-22 11:55:59 -07:00
rickwebiii
334355067a Rweber/chaining (#171)
Chaining
2022-08-15 13:58:22 -07:00
rickwebiii
5e9c1d99af With code hacks, you can now use canonical embedding norm model (#162)
* With code hacks, you can now use canonical embedding norm model

* Cargo fmt
2022-07-22 16:48:05 +01:00
rickwebiii
0b86d5dfad Rweber/model (#161)
Add support for noise models in determining parameter selection
2022-07-22 15:56:39 +01:00
rickwebiii
121e7be325 Rweber/multiprogram (#130)
Allow compiling multiple FHE programs to use the same parameters.
2022-07-06 17:04:43 -07:00
rickwebiii
17ea255f4e Add playground, rename seal->seal_fhe 2022-05-16 16:09:07 -07:00
Rick Weber
a6592b9760 Can return arrays from FHE programs 2022-04-26 21:44:37 -07:00
Rick Weber
4b0b3f38cd It works 2022-04-26 14:59:53 -07:00
Rick Weber
917c0efc82 WIP 2022-04-26 13:52:10 -07:00
Rick Weber
019dde0950 WIP 2022-04-26 12:53:56 -07:00
Rick Weber
ad930251dc Add array support 2022-04-12 11:09:59 -07:00
Rick Weber
13c1e7545d Fix more rational division issues 2022-03-23 14:34:33 -07:00
Rick Weber
a014e7e104 Remove debugging code 2022-03-23 11:42:00 -07:00
Rick Weber
01ee12d7f5 AMM example works 2022-03-23 11:39:45 -07:00
Rick Weber
5639f3c16b Rename sunscreen_compiler to sunscreen 2022-03-22 14:29:35 -07:00