DDB

Results 39 issues of DDB

Currently, for our IOP protocols (Marlin/PC) we explicitly sample 128 bits challenges. We should templatize IOP structs with a const generic in order to generalize the amount of bits of...

enhancement

When it comes to complete addition gadgets, I expect that we can do better than the "naive" approach using the infinity flag of the `AffineGadget`. Let us investigate efficient complete...

question
optimization

Title says it all

enhancement
nice to have

Depends on #149 . Actually, for our applications, in which we compare only small numbers (usually max 64 bits in length), we can do better by defining the comparison directly...

enhancement
optimization
new feature

arkworks generates the UInt gadget (from Uint16 up to UInt128) using macros (as the code is basically the same): https://github.com/arkworks-rs/r1cs-std/blob/master/src/bits/uint.rs Let us adopt the same procedure, and let's define and...

sw design
nice to have
new feature

Currently: - All the primitive/gadget functions dealing with serialization to/from bytes, will output LE bytes; - All the primitive/gadget functions dealing with serialization to/from bits, will output BE bits. This...

sw design
nice to have

Currently, the FieldBasedHash trait `init `function allows to initialize an implementor with a personalization array of FieldElement. The FieldBasedHashGadget instead doesn't allow this. The result of primitive and gadget it's...

Currently we have 3 ways of serializing/deserializing structs in ginger-lib: - ToBytes/FromBytes/FromBytesChecked/ToBits/FromBits/ToCompressedBits/FromCompressedBits; - CanonicalSerialize/CanonicalDeserialize; - serde derive macros For sure this situation is highly confusing and error prone, so I...

enhancement
nice to have

We should add more regression tests (hardcode expected relevant data, recompute it inside the test and compare) on: - [ ] Cryptographic primitives; - [ ] Bit/Byte serialization

enhancement
sw design