RiB Newsletter #37
Welcome to the #37 edition of Rust in Blockchain, the monthly newsletter about Rust, distributed systems, cryptography, and other industry topics. Previous: #36.
Thanks
Thanks to contributors: djddo, Hunter Trujillo, keymakercasa, kn0wmad, mradkov, Piotr Dziubecki, Samuel Dare, Brian Anderson, and Aimee Zhu. Thank you for your help!
RiB needs help to keep up with Rust blockchain projects. If you follow a particular project, or otherwise find information that is beneficial to the Rust & blockchain community, please contribute to the next issue by submitting a PR to the next draft.
Project Spotlight
Each month we like to shine a light on a notable Rust blockchain project. This month that project is…
Lurk is a Lisp the correct execution of which can be proved with recursive SNARKS.
The lurk-rs implementation compiles by transpiling through rustc
.
Interesting Things
Blog Posts
- DAG Meets BFT - The Next Generation of BFT Consensus
- Are blockchains decentralized?
- Smart Contract Security: A Simple Checklist for Web3 Development
- New PQC NIST standards announced
- Zero Knowledge Proof — Deep into zkEVM source code (MPT Circuit)
- Zero Knowledge Proof — Deep into zkEVM source code (State Circuit)
Papers
- Cross Chain Atomic Swaps in the Absence of Time via Attribute Verifiable Timed Commitments
- End-to-End Security for Distributed Event-Driven Enclave Applications on Heterogeneous TEEs
- Safe Permissionless Consensus
- Round Efficient Byzantine Agreement from VDFs
- VERI-ZEXE: Decentralized Private Computation with Universal Setup
- Hertzbleed: Turning Power Side-Channel Attacks Into Remote Timing Attacks on x86
- Curve Trees: Practical and Transparent Zero-Knowledge Accumulators
- On the Anonymity Guarantees of Anonymous Proof-of-Stake Protocols
- Nova: Recursive Zero-Knowledge Arguments from Folding Schemes
Projects
- Cleopatra Cairo. A Rust implementation of the Cairo VM. Cairo is a programming language for writing provable programs, where one party can prove to another that a certain computation was executed correctly. Cairo and similar proof systems can be used to provide scalability to blockchains.
- Rust Discrete Log Contracts. DLCs are a means of creating derivatives, futures, and stablecoin contracts on Bitcoin. For more, see the DLC specs. It makes use of the rust-lightning (LDK) and rust-bitcoin crates.
- arkworks::algebra. Libraries for finite field, elliptic curve, and polynomial arithmetic
- Circuits for zkEVM.
- Lurk. A Turing-complete programming language for Zero-Knowledge Proofs.
Security Advisories
Monthly security advisories, from RustSec, and GitHub Advisories. Bold entries here are especially relevant to blockchain projects.
- RUSTSEC-2022-0033: Vulnerability in openssl-src.
- Heap memory corruption with RSA private key operation.
- RUSTSEC-2022-0032: Vulnerability in openssl-src.
- AES OCB fails to encrypt some bytes.
- RUSTSEC-2022-0029: Vulnerability in crossbeam.
MsQueue
push
/pop
use the wrong orderings
- CVE-2021-41641: Link following in Deno.
- CVE-2022-31100: Reachable assertion in rulex.
- CVE-2022-31099: Uncontrolled recursion in rulex.
- CVE-2022-31104: Miscompilation of
i8x16.swizzle
andselect
with v128 inputs incranelift
.
GitHub issued a large set of Rust advisories on a single day in June, but it seems to be a result of importing old RustSec advisories.
Most Active in June
Parity: 557 merged PRs, 152 closed issues, 130 open issues
Solana: 501 merged PRs, 95 closed issues, 103 open issues
Sui: 343 merged PRs, 155 closed issues, 140 open issues
Fuel: 339 merged PRs, 214 closed issues, 180 open issues
Aptos: 290 merged PRs, 81 closed issues, 32 open issues
Project Updates
Aleo
50 merged PRs (1, 2, 3), 25 closed issues (1, 2), 14 open issues (1, 2, 3)
Anoma
19 merged PRs (1), 10 closed issues (1), 28 open issues (1)
Aptos
290 merged PRs (1), 81 closed issues (1), 32 open issues (1)
Casper
69 merged PRs (1, 2), 79 closed issues (1, 2), 41 open issues (1, 2)
ChainSafe
45 merged PRs (1, 2), 91 closed issues (1, 2, 3), 20 open issues (1, 2)
COMIT
4 merged PRs (1, 2, 3), 0 closed issues, 3 open issues (1, 2)
Concordium
38 merged PRs (1, 2, 3, 4, 5, 6, 7, 8), 49 closed issues (1, 2, 3, 4, 5, 6, 7), 34 open issues (1, 2, 3, 4, 5, 6)
Conflux
16 merged PRs (1), 0 closed issues, 0 open issues
DarkFi
2 merged PRs (1), 2 closed issues (1), 2 open issues (1)
Dfinity
92 merged PRs (1, 2, 3, 4, 5, 6, 7, 8), 34 closed issues (1, 2, 3, 4, 5, 6, 7), 7 open issues (1, 2, 3)
Dusk Network
27 merged PRs (1, 2, 3, 4, 5), 27 closed issues (1, 2, 3, 4), 7 open issues (1, 2, 3, 4)
Elrond
37 merged PRs (1, 2, 3, 4, 5), 15 closed issues (1, 2), 3 open issues (1)
Espresso Systems
68 merged PRs (1, 2, 3), 46 closed issues (1, 2), 23 open issues (1, 2, 3)
Findora
36 merged PRs (1, 2, 3, 4), 0 closed issues, 0 open issues
Fluence
52 merged PRs (1, 2, 3, 4, 5, 6, 7), 27 closed issues (1, 2, 3, 4), 3 open issues (1, 2)
Fuel
339 merged PRs (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12), 214 closed issues (1, 2, 3, 4, 5, 6, 7, 8, 9), 180 open issues (1, 2, 3, 4, 5, 6, 7, 8)
Golem
42 merged PRs (1, 2, 3, 4, 5, 6), 42 closed issues (1, 2), 22 open issues (1, 2, 3)
Grin
2 merged PRs (1, 2), 0 closed issues, 3 open issues (1, 2)
Helium
8 merged PRs (1, 2, 3, 4), 9 closed issues (1, 2), 2 open issues (1, 2)
Holochain
40 merged PRs (1, 2, 3), 3 closed issues (1, 2), 5 open issues (1, 2)
IOTA
242 merged PRs (1, 2, 3, 4, 5, 6, 7), 65 closed issues (1, 2, 3, 4, 5, 6), 42 open issues (1, 2, 3, 4, 5, 6, 7, 8)
Maidsafe
75 merged PRs (1, 2, 3, 4, 5, 6), 8 closed issues (1), 6 open issues (1, 2, 3)
MobileCoin
110 merged PRs (1, 2), 26 closed issues (1), 14 open issues (1)
NEAR
202 merged PRs (1, 2, 3, 4, 5, 6, 7, 8, 9, 10), 49 closed issues (1, 2, 3, 4, 5, 6, 7, 8), 52 open issues (1, 2, 3, 4, 5, 6)
Nervos
179 merged PRs (1, 2, 3, 4, 5, 6, 7, 8, 9), 9 closed issues (1, 2, 3, 4), 4 open issues (1, 2, 3)
Oasis
42 merged PRs (1, 2, 3), 4 closed issues (1, 2), 1 open issues (1)
Parity
557 merged PRs (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15), 152 closed issues (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14), 130 open issues (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
Secret Network
5 merged PRs (1, 2), 3 closed issues (1, 2), 2 open issues (1)
Solana
501 merged PRs (1, 2, 3), 95 closed issues (1, 2), 103 open issues (1, 2, 3)
- Solana Network Upgrades
- Solana Mobile debuts Saga, a flagship Android phone for web3
- The reality behind Solana’s claimed 50K TPS
Subspace Labs
68 merged PRs (1), 38 closed issues (1), 12 open issues (1)
Sui
343 merged PRs (1, 2), 155 closed issues (1, 2), 140 open issues (1, 2)
TezEdge
47 merged PRs (1, 2), 0 closed issues, 1 open issues (1)
Zcash
110 merged PRs (1, 2, 3, 4), 90 closed issues (1, 2, 3, 4, 5), 34 open issues (1, 2, 3)
Rust in Bitcoin
BDK 0.19 was released with experimental Taproot support, including tr()
descriptors, taproot PSBTs, signing key and script spend taproot PSBTs, and tr()
in descriptor!
macros. Lots of activity from the RGB team this month as they released rgb 0.7 and are working hard on finishing 0.8, which is currently available pre-release, and includes work on Tapret on-chain Deterministic Bitcoin Contracts. Once the rgb-core 0.8 release is finalized, mainnet support for RGB20 tokens should be ready. Activity around LDK is also picking up, with their recent 0.108 and 0.109 releases.
For discussion join the Rust in Bitcoin Telegram group.
BDK
28 merged PRs (1, 2, 3, 4, 5), 17 closed issues (1, 2, 3, 4, 5), 18 open issues (1, 2, 3, 4, 5)
- 0.19 Released with Taproot support
- rust-hwi version 0.2.0 is out!
- bdk-swift version 0.4.0 is ready, including bdk 0.19.0 with experimental tr() descriptor support
Bitmask
8 merged PRs (1), 2 closed issues (1), 1 open issues (1)
Electrs
8 merged PRs (1), 4 closed issues (1), 4 open issues (1)
Internet2
4 merged PRs (1, 2), 2 closed issues (1), 2 open issues (1, 2)
LDK
43 merged PRs (1, 2, 3), 15 closed issues (1, 2), 15 open issues (1, 2)
- rust-lightning 0.0.109 released
- The story behind LDK, where they are, and where they’re going
- LDK adds anti-fee sniping measures to channel funding transactions
LNP/BP
18 merged PRs (1, 2, 3), 10 closed issues (1, 2, 3), 2 open issues (1, 2)
LNP WG
2 merged PRs (1), 0 closed issues, 0 open issues
MyCitadel
0 merged PRs, 0 closed issues, 1 open issues (1)
Nakamoto
0 merged PRs, 0 closed issues, 1 open issues (1)
Nomic
5 merged PRs (1), 0 closed issues, 0 open issues
RGB
7 merged PRs (1, 2), 42 closed issues (1), 5 open issues (1)
Rust Bitcoin
79 merged PRs (1, 2, 3, 4, 5), 30 closed issues (1, 2, 3, 4, 5), 19 open issues (1, 2, 3, 4, 5)
Rust Simplicity
3 merged PRs (1), 0 closed issues, 0 open issues
Sapio
8 merged PRs (1), 0 closed issues, 0 open issues
Talaia
2 merged PRs (1), 1 closed issues (1), 5 open issues (1)
If we’ve missed any other notable Rust Bitcoin projects or ecosystems, feel free to contribute!
Rust in Ethereum
Ethers-rs
87 merged PRs (1), 11 closed issues (1), 6 open issues (1)
Lighthouse
3 merged PRs (1), 12 closed issues (1, 2), 17 open issues (1, 2)
Rust Ethereum
3 merged PRs (1), 2 closed issues (1), 1 open issues (1)
Rust Web3
0 merged PRs, 5 closed issues (1), 3 open issues (1)
zkSync
4 merged PRs (1), 0 closed issues, 2 open issues (1)
If we’ve missed any other notable Rust Ethereum projects or ecosystems, feel free to contribute!
Events
Aug 7-9 | Online, Las Vegas, US
Aug 10-12 | Matsue city, Shimane, Japan
The 4th International Conference on Science of Cyber Security (SciSec 2022)
Aug 13-18 | Santa Barbara, CA, US
Aug 29-31 | Arrillaga Alumni Center, Stanford University
SBC'22: The Science of Blockchain Conference 2022
Sep 12-14 | Radialsystem, Berlin
Developer Conference for Ethereum Infrastructure and Dapps
Sep 15 | Berlin, Germany
Sep 28-29 | Online, NYC, US
Oct 7-16 | Bogota, Colombia
Oct 28-30 | Lisbon, Portugal
Nov 7-10 | Chicago, USA
Nov 10-11 | Dubai, United Arab Emirates
ICSCB 2022: 16. International Conference on Smart Contracts and Blockchain
Careers
Casper Labs | Remote
- Project Manager (China)
- React Developer
- Director of Product Marketing
- Rust Developer
- Typescript Developer
- Core Engineer : dAPP Dev
- Full Stack Developer
Start9 Labs | Denver, USA / Remote
More jobs can be found at Job Board.
Want to be included in the next issue? Feel free to submit a PR to the next draft.
Join the discussion on RiB telegram group ❤️