Noir

/noir64

Noir is a programming language for writing Zero-knowledge programs. Read more: https://noir-lang.org

Noir 1.0 Pre-Release is live 🌌

Read the announcement to learn more:
https://x.com/NoirLang/status/1864774000741880020
Spent the night playing around with noir again. It's been a few months since I checked it out last, and I feel like it's at the point now where I'm having fun figuring it out. Reminds me of how solidity felt around 2017~2018.
NCR#1 audit partners are onboarded 🤠🔎

See who will be sponsoring audits for the to-be-selected project teams:
https://x.com/NoirLang/status/1829278576467984694
No better place to make progress on co-noir.
📢 Noir Community Research #1 is live

Privacy-first, provable emails are a cornerstone to trustlessly free data from silos.

On partnership with Aztec Labs & @zkemail, NCR#1 focuses on pushing the boundary under that exact theme.

Founders / Devs / Researchers: Submit by 25 Aug
Auditors: Get in touch by 20 Aug

https://aztec.network/blog/unlocking-the-future-of-privacy-join-the-noir-research-campaign-for-provable-emails
Why MPC and Noir are a good fit:

1. Noir is lowered to ACIR, an intermediate representation that consists of 7 opcodes (making the evaluation of it rather simple) and is backend agnostic. ACIR can be used as an entry point, greatly reducing complexity as one can reuse the Noir compiler.

2. The ecosystem is designed to add support for proving systems, i.e., we can just write a co-SNARKs backend. So, we do not need to hack around the ecosystem - we can just leverage everything because it is designed to do so (we had to fork circom to build our co-SNARKs as the intended use case was not to add other proof systems).

3. The witness extension is the most complex part to support for co-SNARKs. For Noir, we can support a large portion of all possible circuits by MPC-ifying the most basic opcodes of ACIR (simple solver of equations which is fine in MPC).
📢 Noir v0.31.0 is now live!

Learn and start building with the newest version of Noir today 🧑‍💻

Expand the Cast for release highlights and links 👇
Aztec Labs is launching a Noir Grants Program 👀
https://aztec.network/grants
Anyone worked with / needs FHE in Noir for your projects?
📢 v0.30.0 is now live with:
- New AES128 encryption blackbox
- New u16/i16 types for working with 16-bit integers
- New From trait for Array → BoundedVec conversions (contribution credit to the @vlayer team 💪)
📢 v0.29.0 is now live with:
- New sha256_var for hashing variably-sized messages unlocking composability with e.g. web service values
- Distinct witnesses by default making public inputs easier to work w/ during verifications
- Support to define impl Bar as a parameter easing use of traits
Sherlock now offers no-cost 5 day competitive audits for projects building with Noir: https://sherlock.deform.cc/grantapplication/ 🕵️‍♂️
📢 v0.28.0 is now live with:
- New `min` and `max` functions easing value comparisons
- New `as_array` method easing slice-to-array conversions
- New BarretenbergVerifier class that speeds up proof verification with support for verification key loading
- ... and more!
📢 v0.27.0 is now live:
- New Noir Codegen tool for computing Noir return values in JS 🧠
- New intuitive nargo check warning when files already exist (credit to SamiAlHassan for the contribution)
- Range constraint performance optimizations
If you're building infra / apps with Noir, apply for the upcoming Gitcoin Grants round 👨‍💻
📢 v0.26.0 is now live:
- New `break` and `continue` syntax for optimizing unconstrained loops
- Faster array-to-slice conversions
- Faster SHA hashes

Update to the version: https://noir-lang.org/docs/getting_started/installation/
Full release changelog: https://github.com/noir-lang/noir/releases/tag/v0.26.0
Two weeks till the hackathon.

Can't wait to see the Noir submissions 👀

https://dorahacks.io/hackathon/v0rtex-01
📣 Noir v0.25.0 is now live:
- Poseidon2 for next-gen fast hashing
- New recursion interface for tool-agnostic recursion
- HashMap for easily retrievable key-value pairs (contribution from Distributed Lab)

Full release changelog:
https://github.com/noir-lang/noir/blob/v0.25.0/CHANGELOG.md
https://noir-lang.org/ is currently down.
While we're fixing it, docs are accessible on https://noir-docs.netlify.app/ 🙏
Well done sers 👍