or
or
By clicking below, you agree to our terms of service.
New to HackMD? Sign up
Syntax | Example | Reference | |
---|---|---|---|
# Header | Header | 基本排版 | |
- Unordered List |
|
||
1. Ordered List |
|
||
- [ ] Todo List |
|
||
> Blockquote | Blockquote |
||
**Bold font** | Bold font | ||
*Italics font* | Italics font | ||
~~Strikethrough~~ | |||
19^th^ | 19th | ||
H~2~O | H2O | ||
++Inserted text++ | Inserted text | ||
==Marked text== | Marked text | ||
[link text](https:// "title") | Link | ||
 | Image | ||
`Code` | Code |
在筆記中貼入程式碼 | |
```javascript var i = 0; ``` |
|
||
:smile: | ![]() |
Emoji list | |
{%youtube youtube_id %} | Externals | ||
$L^aT_eX$ | LaTeX | ||
:::info This is a alert area. ::: |
This is a alert area. |
On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?
Please give us some advice and help us improve HackMD.
Syncing
xxxxxxxxxx
Aragon-Aztec Private Voting - Documentation - Main page
tags:
Aragon
Aztec
Nouns DAO
Private Voting
Research Sprint
For detailed progress of Noir primitives, feel free to refer to the Noir Roadmap.
Progress Reports
Progress Report 4
This is the fourth report on the progress made by AZKR and Aztec in implementing our joint proposal submitted to the Nouns DAO Private Voting Research Sprint.
Summary
In the past weeks we have been busy completing the work on the main components. We are now fully focused in the integration phase. A complete version of the ZK circuits for vote submission is now available, thanks to the successful completion of storage proof implementation. A first version of the zkRegistry has been deployed and is now ready to be used. Finally, the TLCS technical report has been published, work on the TLCS-chain prototype is almost complete and we made progress on the Rust version of the TLCS cryptography code.
Implementation Overview
Voting system
Noir Ethereum storage proofs
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →A depth-8 Ethereum storage proof of 713k constraints was successfully proved in CLI.
Proving time was 1.5 - 3 minutes on an average machine.
The implementation is available.
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →The JavaScript package of the UltraPlonk proving backend barretenberg now works in browser environments. Find a Next.js example here.
Incompatibilities between Next.js and how bb.js handles worker generation were uncovered and are currently being addressed.
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →noir_wasm and ACVM.js for compiling and executing Noir programs in JavaScript / browser environments are now available:
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →Merged in on PR #1282.
zkRegistry
Timelock
ark_bls12_381
andark_mnt6_753
. The structure is designed so that new curves can be added easily.* Add babyjubjub
* Interaction with drand
* Proper readme file
Next steps (by mid July)
Progress Report 3
This is the third report on the progress made by AZKR and Aztec in implementing our joint proposal submitted to the Nouns DAO Private Voting Research Sprint.
Summary
We continue to progress nicely on several fronts. We have clarified some uncertaintes but some others still remain and new ones have appeared.
Implementation
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →The source code is available here. Feel free to give it a try by installing it with
npm install -g @aztec/bb.js@alpha
.The release date is re-targeted to be no later than the end of this week. The Noir frontend demo will be updated with the new set of packages once they are ready.
The release date is re-targeted to be the end of this week. You can follow the latest progress here.
- The image file may be corrupted
- The server hosting the image is unavailable
- The image path is incorrect
- The image format is not supported
Learn More →It is currently under pre-merge review. You can follow the latest progress here.
Uncertainties
Progress Report 2
This is the second report on the progress made by AZKR and Aztec in implementing our joint proposal submitted to the Nouns DAO Private Voting Research Sprint.
Summary
Significant progress has been made in both the Noir Ethereum storage proof and Time Lock Cryptographic Service areas. However, upon further examination of our original proposed project scope, we have identified additional requirements and are currently working on an expanded scope. This concerns the generation of storage proofs (and thus trustless voting) directly within web browsers.
While our primary objective remains the implementation of trustless in-browser voting during the research sprint, we are also broadening the project's scope to encompass the generation of storage proofs from users' local machines and/or a delegated external server. This backup solution will prove useful in ensuring a smooth voting user experience, even if optimizations for voting through web browsers fall short by the end of the research sprint.
Design
AZKR will lead the R&D of the fallback solution, while Aztec Labs will continue leading the R&D of the Noir optimizations to improve trustless in-browser voting.
Implementation
The release pipeline of UP NPM packages is aimed to complete by end May. You can follow our latest progress here.
Noir recursion is aimed to complete by end May. You can follow our latest progress here.
The work is currently under review here.
The work, together with UP low constraint recursion, unlocks recursive proving in UP WASM (hence in web browsers).
Proof of conecept is successfully running in both NodeJS and browser environments. We are in the process of reviewing and merging the work into the main barretenberg repo. You can follow its latest progress here.
With multi-threading, proving time of a 512k Noir program can be improved from 3.2mins in a single-threaded context to 25s on an 8-core machine. Given the millions of constraints users will be proving with on Ethereum storage proofs, this would be a significant UX upgrade when in place.
The multi-threading works are carried out in conjunction with the UP LMP works. You can follow its latest progress on the same PR.
What does all this mean for the Nouns community
Definition of PoC: experimental but working code with command line interface (CLI)
The most relevant areas where we are pushing the state of the art forward are the following.
Ethereum storage proofs are the "holy grail" necessary for trustless proofs of token ownership. Ideally we want to generate them locally in users' web browsers, which will achieve trustlessness and one-click voting. The main unknmown at this stage is in-browser proving time. This is why we are exploring the alternative solution of providing an open source program for generating such proofs on the user's computer, or on a trusted server.
Progress Report 1
This is the first report on the progress made by AZKR and Aztec in implementing our joint proposal submitted to the Nouns DAO Private Voting Research Sprint.
Design
Implementation
With months of collaborative efforts across engineering and cryptography teams, UltraPlonk is now integrated with CLI Noir (GitHub PR) 🎉
A benchmark of UltraPlonk WASM was conducted on a local test build of Noir with UltraPlonk to explore the circuit count ceiling of UP WASM under WASM's memory limit. The current build supports a Noir program with up to \(2^{17}\) (~130k) constraints.
In the light of the benchmarking results versus the millions of constraints estimated to be needed for storage proofs under the current design, we are investigating the feasibility to introduce recursion in Noir + UltraPlonk within the reasearch sprint period to unlock proving infinitely-large Noir programs in browser. Track the scope and progress on GitHub here.