Pascal Berrang
3708a444a2
Give Travis more time
4 years ago
Pascal Berrang
9455f00c01
Add benchmark for mixed-radix and radix-2 FFT resembling the Groth16 operations.
4 years ago
Pascal Berrang
13b9c6c6fe
Split FpParameters/PrimeField and add FFT related traits
4 years ago
Bruno França
bbb7d75ec8
Implement `conditional_check_verify` for `NIZK`s ( #195 )
* Implement `ToBitsGadget` for `UInt8` and `Vec<UInt8>`
* Add `kary_or` function to `Boolean`.
4 years ago
Kobi Gurkan
5cc094be6b
Adds alloc_constant to AllocGadget ( #189 )
* adds alloc constant to AllocGadget
* fmt
* fmt
* more alloc constant impls
* fmt
* even more impls
* fixes type
* fixes alloc_constant in gm17
* uses alloc_constant from field gadget in group gadgets
* fmt
* handle most comments
4 years ago
Pascal Berrang
c486e15f0e
Add test cases for COFACTOR and generalize SW tests
4 years ago
Pascal Berrang
d4a2d31d07
Fix Vec imports for no_std
4 years ago
Pratyush Mishra
5659b0d9ea
Fix CI to test more code in `no_std`
4 years ago
Pratyush Mishra
33a9da08f8
Switch to `stable` cargo formatting options
4 years ago
Pratyush Mishra
456f30a849
Fix #172 and improve squaring code for deg-3 extensions ( #174 )
4 years ago
Pascal Berrang
8631f883c4
MNT4/6 curves and recursive SNARKs ( #150 )
* Add mnt6_753 curve
Generalize mnt6 curve model
* Add mnt4 curves
* Use resampled generators
* Calculate correct G2 cofactors
* Add fields to r1cs-std
* Add pairings
* Improve reusing of Fq/Fr among MNT curves
* Add instantiations of curves
Fix Fp6_2over3
Rebase code to current master
* Add test for recursive NIZK proof verification
* Address comments in PR
* Improve test case and port to GM17
Also fix a minor bug in to_field_vec
4 years ago
Pratyush Mishra
81f3105a91
Fix MerkleTree leaf index calculation
4 years ago
Kobi Gurkan
c58fc31119
fmt and docs
4 years ago
Kobi Gurkan
ded3d687cc
removes unused struct + fmt
4 years ago
Kobi Gurkan
8cd0999431
moves cmp to be under FpGadget
4 years ago
Kobi Gurkan
60058b2186
changes test name
4 years ago
Kobi Gurkan
bd86eb4563
uses core instead of std
4 years ago
Kobi Gurkan
b0f266de1e
fmt
4 years ago
Kobi Gurkan
7ed38fe4a6
makes API cmp-like
4 years ago
Kobi Gurkan
ccbb5ef553
adds a smaller than gadget
4 years ago
Weikeng Chen
33f7d3988f
Update uint64.rs
4 years ago
weikeng
a205f191f7
used AllocGadget for UInt64
4 years ago
Georgios Konstantopoulos
0ffa409ec1
Apply suggestions from code review
Co-Authored-By: Pratyush Mishra <pratyushmishra@berkeley.edu>
4 years ago
Georgios Konstantopoulos
f4e030793c
test: ensure the Counter and the System match
4 years ago
Georgios Konstantopoulos
695df979b5
chore: add helper
4 years ago
Georgios Konstantopoulos
951a6226c9
feat: TestConstraintCounter
4 years ago
Pratyush Mishra
b1913a9ca7
Change default `to_bits` and `to_bytes` functions to the safe versions
4 years ago
dependabot-preview[bot]
b24e705527
Update `derivative` requirement from 1 to 2 ( #140 )
4 years ago
dependabot-preview[bot]
9ca5a94f2e
Update digest requirement from 0.7 to 0.8 ( #141 )
* Update `digest` and `blake2` requirement from 0.7 to 0.8
Updates the requirements on [digest](https://github.com/RustCrypto/traits ) to permit the latest version.
- [Release notes](https://github.com/RustCrypto/traits/releases )
- [Commits](https://github.com/RustCrypto/traits/compare/digest_v0.7.2...digest-v0.8.1 )
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: Pratyush Mishra <pratyushmishra@berkeley.edu>
4 years ago
ValarDragon
20af44e3c9
fix fmt check
4 years ago
ValarDragon
23c6bb4bd0
Rename arguments to CondSelectGadget for code clarity
4 years ago
Weikeng Chen
6c0ee7ffbc
Follow the nightly's suggested fmt change
4 years ago
weikeng
e524e46d0b
Add UInt64 used for representing Merkle tree node locations
4 years ago
Pratyush Mishra
0df0a15e1b
Blake PRF & R1CS Boolean Refactor ( #132 )
* refactor(r1cs-std/boolean): expose enforcing value less than functionality
* fix(r1cs-std/boolean): ensure num_bits is calculated correctly from the arg
* feat(primitives/blake2s): allow creating Blake2s with custom params
4 years ago
Pratyush Mishra
0b57cdd736
Add a pre-commit hook for rustfmt ( #102 )
* add a pre-commit hook for rustfmt
* make printing sccache stats optional
* fixup! add a pre-commit hook for rustfmt
4 years ago
Pratyush Mishra
50c0511ba3
Merge branch 'master' of https://github.com/scipr-lab/zexe
4 years ago
Pascal Berrang
b4b4e5553d
Implement CanonicalSerialize/Deserialize improvements ( #109 )
* Implement CanonicalSerialize/Deserialize improvements
* Improve code readability by using cursor
* Add tests for uncompressed serialization
* Improve serialization size (do not require full u64 limbs to be serialised)
* Change Flags to enum types
* Split up serialization with and without flags.
* Implement simple derive macro
* Derive traits for Groth16 and GM17 keys and proofs
4 years ago
ValarDragon
78e08aed97
Fix lint
4 years ago
ValarDragon
cba74c09d9
Fix error
4 years ago
ValarDragon
3cb1ed06d6
Fix linter errors
4 years ago
Pratyush Mishra
77837b4a1b
Fix ns issue
4 years ago
ValarDragon
cb1bcb1cbf
Fix ns
4 years ago
ValarDragon
b63d255ea3
Update to use bit iterator
4 years ago
ValarDragon
8cce6501b8
Add exponentiation by constant to Fp
4 years ago
Pratyush Mishra
7adcc69799
Generalize FFT infrastructure to work with group elements as well
4 years ago
Pratyush Mishra
faf179c43d
Export `algebra-core::error`
4 years ago
Pratyush Mishra
2298df2e78
Make benchmarks compile, and check them in CI
4 years ago
Pratyush Mishra
8bf042a029
Refactor `algebra` API, split into `algebra` and `algebra-core`. ( #100 )
4 years ago
Marek Kotewicz
d4896ade47
crypto-primitives no-std ( #96 )
4 years ago
howardwu
02e6b32d7d
Cargo fmt
4 years ago