OpenZKP
style
OpenZKP | style | |
---|---|---|
2 | 2 | |
622 | 8 | |
1.0% | - | |
0.0 | 0.0 | |
about 1 year ago | over 1 year ago | |
Rust | Rust | |
GNU General Public License v3.0 or later | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
OpenZKP
-
Donald Knuth’s Algorithm D, its implementation in Hacker’s Delight and elsewhere
Here is my optimized in-place Rust implementation [1].
It is a very tricky algorithm to get right. There are many edge cases that only happen for ~2^-64 fractions of the input space, so hard to find even with fuzz-testing. Best strategy is to implement it for small limbs first, and fuzz that well.
[1] https://github.com/0xProject/OpenZKP/blob/master/algebra/u25...
-
A single issue with Rust that kills me every time with mathematics (rust repo issue 20671)
I've also hit this issue while writing code generic over prime fields by-reference. I ended up defining traits FieldLike and RefFieldLike and anotating all functions as
style
-
Blog Post: IDEs and Macros
Ones that are a totally different language. I've made a (possibly infamous) contribution here: https://github.com/derekdreery/style (CSS in Rust)
-
A single issue with Rust that kills me every time with mathematics (rust repo issue 20671)
https://github.com/derekdreery/style ?
What are some alternatives?
libtorsion - C crypto library
proc-macro-workshop - Learn to write Rust procedural macros [Rust Latam conference, Montevideo Uruguay, March 2019]
num-bigint - Big integer types for Rust
num - A collection of numeric types and traits for Rust.
nim-stint - Stack-based arbitrary-precision integers - Fast and portable with natural syntax for resource-restricted devices.
rfcs - RFCs for changes to Rust
go - The Go programming language
CPython - The Python programming language