Граф коммитов

50 Коммитов

Автор SHA1 Сообщение Дата
George Kadianakis f65cbeaf8f
dense_mlpoly.rs: Fix bound functions (#73) 2024-09-30 10:44:20 -07:00
Srinath Setty f36b265963
fix clippy warnings (#72) 2024-09-19 11:53:11 -07:00
ashWhiteHat 1e60918472
close issue 70 and badge (#71)
* chore: fix actions badge

* test: fix assertion

* chore: fix array method and fmt actions
2024-09-19 11:19:57 -07:00
Srinath Setty f30375e498
fix build (#68)
* fix build

* address clippy, switch to stable

* fix build
2024-04-11 16:57:14 -07:00
ashWhiteHat f25d18a6d0
refactor: improve visibilities (#65)
* refactor: improve visibilities

* feat: update curve25519-dalek version
2024-04-11 16:15:02 -07:00
JunheeLee e0f964c3f9
Remove extremely minor duplication (#63) 2023-05-16 09:49:05 -07:00
Srinath Setty 1e431e2bbf
scale the generator used for commiting to inner product (#62) 2023-01-27 11:26:54 -08:00
Srinath Setty 89211b7849
update version (#61) 2023-01-17 10:04:02 -08:00
Ashutosh Varma 2be72b2af2
Improve Support for WASM (#60)
* feat: use `XofReader` instead of `io::Read` for no_std compatibility

* feat: remove `thiserror` dependency

thiserror is not no_std safe

* feat: move deps std features behind new `std` feature

- add new `std` feature
- add `simd_backend`
- move `colored` dep behind profile feature

* feat: use old rand(v0.7) for cubic example.

since curve25519-dalek (v3) uses old rand(v0.7) we need this.
should upgrade curve25519-dalek to v4 once it out of pre release

* feat: only build bench & profile if std in enabled

* feat: remove rand_core as dependency

* feat(ci): add job to test wasm build

* fix: rollback rand to v7 and update debug test

* fix(ci): Cargo.toml patching

* feat: make clippy happy

* feat: add wasm doc in readme

* feat: readme formatting

* feat: derive `Default` for `ProofVerifyError`
2023-01-17 09:40:30 -08:00
Srinath Setty 2dee78cfc0
update readme (#56) 2022-10-17 14:52:13 -07:00
Srinath Setty 5af241044f
optimize the computation of digest of A/B/C matrices (#55)
* optimize the computation of digest of A/B/C matrices

* update version

* address clippy

* address clippy
2022-10-17 14:24:35 -07:00
Srinath Setty 633a6cc16b
Update version and readme (#53)
* bump version

* update readme
2022-08-16 14:39:37 -07:00
Ethan-000 e8e5ffd7cd
fix comment (#49)
Co-authored-by: ethan_000 <yuhuili@Yuhuis-MacBook-Air.local>
2022-08-16 14:17:45 -07:00
Srinath Setty 94e507e948
support for stable Rust (#51)
* support for stable Rust

* add no default to stable

* add no default to stable

* update CI
2022-08-01 18:50:04 -07:00
Srinath Setty 2bb216899d
clippy fixes (#50)
* clippy fixes

* remove warning

* fix clippy
2022-08-01 18:29:13 -07:00
Jess Woods 08a0eed16b
Put simd_backend into default feature (#48)
* move simd to default feature

* rm simd

Co-authored-by: jkwoods <jesskwoods@gmail.com>
2022-08-01 17:51:02 -07:00
Srinath Setty cecc2f1b62
Transcript (#46)
* add items to transcript

* add additional items to transcript

* fix benches

* cargo fmt
2022-05-12 01:16:05 -07:00
Srinath Setty 6722e6c6ad
remove asserts; return result objects (#45)
* remove asserts; return result objects

* bump version

* clippy
2022-05-04 08:20:57 +05:30
Srinath Setty c9cdb0a5e7
fix version number (#38) 2021-10-14 16:15:56 -07:00
Srinath Setty 19d1d63703
Update to latest Rust and fix Clippy warnings (#37)
* Update to latest Rust and fix Clippy warnings

* cleanup
2021-10-14 16:11:19 -07:00
Srinath Setty f465aed924 upgrade crate version in README.md 2021-04-22 10:37:41 -07:00
Srinath Setty e62e575cc3 upgrade version 2021-04-22 10:34:46 -07:00
Lef Ioannidis 7bbc366e5d
Arbitrary number of variables and contraints (#34)
* This commit makes adding an arbitrary number of variables and inputs possible and removes the
  implementation leaking to the interface for

  num_inps + 1 <= num_vars, num_vars: a power of 2, num_cons: a power of 2, but not 1.

  1. When creating a new R1CS Instance throught the public interface,
     it is required # constraints and # of vars be a power of 2. I remove
     that requirement by padding with dummy constraints and vars until the nearest
     power of 2.
  2. The sumcheck protocol in src/sumcheck.rs does not work for 1 constraint, even
     though 1 is a power of 2. I have to pad to a minimum of two constraints.
  3. Added a test in src/r1csproof.rs called test_padded_constraints.

* Move test to src/lib.rs

* Remove padding metadata

* remove unused use

* Simplify padding to power of 2

* run cargo fmt

* Fix indexing bug

* Rayon is optional, depending on 'multicore' feature

* Update rust toolchain

* cargo fmt

* cleaner to track num_vars_padded and num_cons_padded

* cleanup

* further cleanup

* Cleanup & comments

* small fixes

* adjust code for padding constraints

* fix a bug with pad call

* add comment about num_nz_entries

* extend padding to NIZK methods

extend padding to NIZK methods

Co-authored-by: Lef Ioannidis <elefthei@seas.upenn.edu>
Co-authored-by: Srinath Setty <srinath@microsoft.com>
2021-04-22 10:27:54 -07:00
Srinath Setty 096c07910a
upgrade to use crates.io (#32) 2021-01-12 12:20:30 -08:00
Milkey Mouse 8f21680833
Fix build on recent nightly compilers (upgrade packed_simd) (#30)
* Upgrade curve25519-dalek to version 3

* Use a version of curve25519-dalek with an up-to-date packed_simd
2021-01-11 10:57:14 -08:00
3for 5b59893903
annotation typo (#29) 2020-12-15 12:34:51 -08:00
François Garillot 075ada9c29
Fold panics in the enclosing Error case (#27) 2020-10-16 15:28:25 -07:00
François Garillot 9e4c166edb
Refactor to idiomatic Result/Option patterns (#25)
This:
- introduces a small [thiserror](https://github.com/dtolnay/thiserror)-powered enum to improve ProofVerifyError's messages,
- refactors point decompression errors into a variant of that enum, thereby suppressing the panics which occur when decompresison fails.
- folds other panics into the Error cases of their enclosing `Result` return
2020-09-29 15:18:43 -07:00
Jakub Konka 7b102a241f
Add example proving knowledge of cubic equation solution (#26) 2020-09-16 09:41:13 -07:00
Srinath Setty 65b3e69a47 add import instructions 2020-09-01 10:50:54 -07:00
Srinath Setty 6b95e05ede update metadata 2020-09-01 10:28:26 -07:00
Srinath Setty 1bb98a36b1 additional error checking 2020-09-01 10:13:53 -07:00
Srinath Setty 67a038ee5f update version to 0.2.0 2020-08-31 14:38:35 -07:00
Srinath Setty 2d22bff71f
Add APIs to specify an R1CS Instance (#24) 2020-08-31 14:11:42 -07:00
Srinath Setty 131fad938c fix section pointer and small edits 2020-08-05 07:46:08 -07:00
Daniel Lubarov 15a9826e3c
Some minor tweaks (#21)
Minor tweaks
2020-08-03 11:55:21 -07:00
Srinath Setty 77aec3b513 add metadata to Cargo.toml 2020-07-29 11:39:43 -07:00
Srinath Setty d8cfa9dead update version 2020-07-24 15:25:16 -07:00
Srinath Setty c24a6abe99 Reduce the number of public APIs smaller and add more detailed documentation 2020-07-24 15:25:11 -07:00
Srinath Setty 2bfc333896 Address Clippy warnings 2020-07-24 14:42:09 -07:00
Srinath Setty eb969d5dcf Pub (#14)
limit public APIs
2020-07-24 14:42:09 -07:00
Srinath Setty 290bbc0897 organize nizk and scalar modules 2020-07-24 14:42:09 -07:00
Srinath Setty 958e9450db introduce a separate type RandomTape atop Transcript (#13) 2020-07-24 14:42:08 -07:00
Srinath Setty 456970e710 introduce APIs for NIZK and SNARK proof systems (#11) 2020-07-24 14:42:08 -07:00
Srinath Setty 95b9ad35a6 initial commit 2020-07-24 14:41:48 -07:00
Microsoft Open Source be426e7bb6 Initial SECURITY.md commit 2019-12-16 14:13:35 -08:00
Microsoft Open Source 63bc460c0d Updating LICENSE to template content 2019-12-16 14:13:34 -08:00
Microsoft Open Source 171ad08227 Initial README.md commit 2019-12-16 14:13:32 -08:00
Microsoft Open Source 9a0498ae58 Initial CODE_OF_CONDUCT.md commit 2019-12-16 14:13:31 -08:00
Srinath Setty cac33ea2a9
Initial commit 2019-12-16 14:03:07 -08:00