RiB Newsletter #11 – The Flourishing Spring
Welcome to the #11 edition of Rust in Blockchain, the hypest newsletter about the hypest tech. Previous: #10.
Wow, it was a huge month for blockchain Rust! It seems like we’ve all been productive sitting at home hacking. We’ve seen so many interesting developments, hopefully we captured them all in this report. Really, it has been overwhelming trying to pull together all the content and contributions this month. It’s amazing!
There were significant developments for several Rust blockchain projects:
- NEAR launched their mainnet. Congrats to the NEAR team!
- The Ethereum 2.0 “Schlesi” multi-client testnet launched, with the Rust lighthouse client participating.
- Facebook’s Libra resurfaced with a new roadmap and whitepaper.
- MobileCoin, a fast and privacy-focused payment network associated with Signal, open-sourced their Rust codebase. MobileCoin runs the Stellar consensus protocol in SGX enclaves, combined with CryptoNote ring signatures.
We learned of new, or new-to-us Rust blockchain and crypto projects:
- BLAKE3, a new BLAKE-family hash function, with a Rust implementation.
- Distaff, a STARK VM that runs encrypted computations.
- Crypto.com Chain, a new chain using Tendermint consensus.
- Both IPFS and FileCoin have ongoing Rust implementations: ipfs-rust and forest.
- Komodo’s AtomicDEX, seemingly one of the most functional implementations of cross-chain atomic swaps, is written in Rust (or is being rewritten in Rust).
Virtual conferences have been flourishing. There were at least three online blockchain conferences, the materials for which should be available:
- Ready Layer One. NEAR, Polkadot, Solana, Nervos, and Oasis represented.
- DeFi Discussions. Not Rust-specific, though lots of talks, and Enigma is represented.
- Sub0. A Substrate conference.
Encouraging things are happening in the Rust security and cryptography space. The RustSec project has been accelerating, releasing 5 Rust-related security advisories in April; and the RustCrypto organization released new secp256k1 curve implementations and ed25519 signature implementations, among others. This and other activity we’ve seen recently from the Rust secure code working group has been encouraging and exciting.
This was also a big month for RiB. Lots of people submitted news and project updates. Thank you so much! It really improves the quality and breadth of our project coverage.
We now have automation to collect project stats from GitHub (the “merged PR’s” etc. listed for each project, and the “Most Active Projects” section). This will help us reduce the effort that goes into producing each newsletter, and as a result we no longer need help collecting those stats (we do though very much need help choosing important news, blogs, pulls, and issues for each project).
Since our project coverage has become quite expansive, this month we have moved the “Interesting Things” section in front of “Project Updates”. This section contains links about cross-cutting topics that we hope are of interest to the broadest technical Rust audience. We expect this section to expand in the future to cover subjects like cryptography, security, consensus, WASM and other VMs, and crypto-economics, particularly as related to Rust and the Rust blockchain ecosystem.
Let us know what you think in the telegram group. Let’s have another great month, Rusty crypto hackers.
Thanks
This edition of RiB was produced with contributions from Anais Urlichs, Calvin Lau, Daniel Karzel, James Waugh, mfaulk, Paulii Good, SeungMin Lee, Tony Arcieri, 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. Either submit a PR to the #12 draft, or Tweet @rust_blockchain.
Project Spotlight
Each month we like to shine a light on a notable Rust blockchain project. This month that project is…
The k256
crate!
This is a pure-Rust implementation of secp256k1, the elliptic curve used by Bitcoin and many other blockchain projects. It was one of several cryptography projects announced this month by Tony Arcieri, a maintainer of the RustCrypto GitHub org, and leader of the Rust secure code working group.
In addition to k256
, RustCrypto also released p256
, an implementation of
the NIST P-256 curve, signature
, a crate for generically verifying
cryptographic signatures, and ed25519
, an implementation of the Ed25519
signature scheme.
See the announcments of k256
and p256
and signature
and
ed25519
for more links and commentary.
Interesting Things
- Project: Introducing Distaff: a STARK-based VM written in Rust
- Project: BLAKE3. There’s another BLAKE hash! Rust implementation available.
- Project: Parity’s ink to write smart contracts
- Project: riemann-rs. Simple UTXO transactions in Rust.
- Project:
p256
andk256
crates andsignature
anded25519
. Rust implementations of the elliptic curves by the RustCrypto org. - Project: rust-vyper. An implementation of the Vyper smart-contract language.
- Report: Analyzing Developers in Cryptocurrency Projects
- Blog: When Tailwinds Vanish
- Blog: Gitcoin Grants Round 5 Retrospective. Vitalik Buterin analyzes efforts to crowd-fund Ethereum projects. Not Rust-related, but interesting analysis about sustainable community development.
- Blog: Crypto Fund II. Andreeessen Horowitz announced $500-million in available crypto-related funding. Not Rust.
Most Active in April
Solana: 513 merged PRs, 67 closed issues, 63 open issues
Parity : 303 merged PRs (1, 2, 3), 71 closed issues (1, 2), 81 open issues (1, 2)
COMIT: 249 merged PRs (1, 2, 3, 4, 5), 97 closed issues (1, 2, 3, 4), 42 open issues (1, 2, 3)
NEAR: 121 merged PRs, 90 closed issues, 69 open issues
Project Updates
CodeChain
51 merged PRs (1, 2), 9 closed issues (1), 6 open issues (1)
- Video: Lessons learned from the ICS implementation
Further information: Blog, Source code - Video: Adpating BLS signature aggregation to CodeChain Foundry
Further information: Blog, Source code - PR: Implement validator interface call by @Byeongjee
- PR: Cold events for Informer API by @MSNTCS
- PR: Event deregister for Informer API by @MSNTCS
- PR: Implement IPC by @junha1
- PR: Create transactions to replace the implicit state change by @sgkim126
COMIT
249 merged PRs (1, 2, 3, 4, 5), 97 closed issues (1, 2, 3, 4), 42 open issues (1, 2, 3)
- News: April dev-update
- PR: Ether-Lightning swaps in cnd
- PR: Integration tests for libp2p network behaviour
- Docu: New COMIT-app tutorial
- R&D: A2L proof of concept implementation
Enigma
20 merged PRs (1), 12 closed issues (1), 13 open issues (1)
- News: April Development Update
- R&D: Milestone 2 of 3 ~ CosmWasm in SGX without Encryption
- Blog: Secret Zone: Making Privacy One With the Cosmos
- Blog: Developer Tutorial: Writing contracts with Enigma Blockchain
- Blog: SafeTrace API Demo
- Documentation: Enigma Blockchain Contracts Guide
- Issue: Crash on find match #42
Golem
25 merged PRs (1, 2, 3, 4), 15 closed issues (1, 2, 3) 6 open issues (1)
- News: Unraveling Golem’s The Next Milestone, Part I
- News: Clay Golem rises!
- Blog: How To Protect Yourself From Scams
- PR: fix wasm tasks
restart_subtask
signature by @shadeofblue - PR: Abort build if Rust > 1.38.0 is being used. by @marmistrz
Holochain
4 merged PRs (1), 1 closed issues (1), 3 open issues (1)
- News: Holochain Dev Pulse 70: Infrastructure Challenges, More HoloFuel Speedups, H-Wiki Goes Public
- News: Dev Pulse 69: CPU Bottleneck Unblocked for HoloFuel, Libraries and Tools for You
- News: Dev Pulse 68: Part 1, Part 2
- Blog: Holochain & Sustainable Energy: Energy As A Currency
- Blog: How to build a GraphQl - Holochain middleware
- Blog: H-Wiki: The First Wiki Built on Holochain
- Blog: The Holocene Explosion (2.4): Game-Changing Possibilities in a World of Unenclosable Carriers
- Video: Holochain RAD Tᴏᴏʟs: Hᴏᴡ ᴛᴏ Usᴇ 𝘩𝘤-𝘩𝘢𝘱𝘱-𝘤𝘳𝘦𝘢𝘵𝘦 ᴄᴏᴍᴍᴀɴᴅ
- Video: Holo AMA No. 37 w/ Art Brock, David Atkinson, and Mary Camacho
- Podcast: Holochain Deep Dive with Arthur Brock and Eric-Harris-Braun
- PR: fix Async Zome Calls by @zippy
- PR: Redux synced Future Wakers by @lucksus
Libra
0 merged PRs, 49 closed issues (1), 36 open issues (1)
Lighthouse
86 merged PRs (1), 44 closed issues (1), 34 open issues (1)
- News: Lighthouse Update #24
- PR: Use checked arithmetic in types and state proc by @michaelsproul
- PR: Added purge subcommand to purge beacon chain db by @ethDreamer
- PR: Arbitrary trait for eth2/types by @kirk-baird
NEAR
121 merged PRs (1), 90 closed issues (1), 69 open issues (1)
- News: The Road to MainNet and Beyond
- News: Announcing NEAR Protocol’s MainNet Genesis
- News: NEAR Community Update: April 24th, 2020
- Blog: A Deep Dive into Private Transactions on NEAR
- Blog: Introduction to NEAR Protocol’s Economics
- Video: Monetizing through Membership with Jᵾlien Genestoux (Founder, CEO at Unlock Protocol)
- Video: DeFi Primitives with Anton Bukov from 1inch.exchange
- Video: Whiteboard Series with NEAR | Ep: 34 Hans Moog from IOTA Foundation
- Video: Whiteboard Series with NEAR | Ep: 33 Alex from NEAR hosted by Justin Drake from Ethereum Foundation
- PR: feat: MainNet genesis config by @ilblackdragon
- PR: fix(rpc): better error handling for transaction submission by @bowenwang1996
- PR: fix(network): Avoid peers connecting to itself. by @mfornet
Nervos
38 merged PRs (1, 2), 10 closed issues (1, 2), 2 open issues (1, 2)
- News: Introducing CKLabs — The Nervos Incubator
- News: Nervos CKB Development Update #33, #32
- News: ABC Wallet and GrowFi Join the Nervos Ecosystem
- Blog: Grant Project - ckb.pw & pw-sdk
- Blog: Understanding the CKByte Token Issuance Schedule
- CKB Weekly: #1: Keep Calm and Nervos Dao, #0: 165 days, Hashrate 100X
- PR: feat: Optimize block download tasks with a simple task scheduler by @driftluo
- PR: refactor: Simplify network protocols by @TheWaWaR
Parity
303 merged PRs (1, 2, 3), 71 closed issues (1, 2), 81 open issues (1, 2)
- News: Polkadot Launch Announcement: COVID-19 Considerations
- News: Chorus One to Bridge Polkadot and Cosmos Ecosystems
- Blog: Kusama & Polkadot: Comparing the Cousins
- Blog: Social recovery on Substrate
- Blog: Built on Substrate: Centrifuge Chain
- PR: Batch signature verification by @NikVolf
- PR: Offchain signing by @rakanalh
Solana
513 merged PRs (1), 67 closed issues (1), 63 open issues (1)
- News: Solana Announces a Partnership With dfuse to Collaborate on a Powerful Data Solution for Its High-Throughput Blockchain
- News: Solana Will Reduce Its Token Supply to Account for Market Making Allocation
- News: Torus is Collaborating with Solana to Build Scalable Mainstream Applications
- News: Solana Partners with Terra to Build a Low-Latency Token Bridge, Bringing Stablecoins To The Solana Ecosystem
- Podcast: Zaki Manian - Co-founder of iqlusion Ep #20
- Podcast: Viktor Radchenko - Founder of Trust Wallet Ep #19
- PR: Add Cross-program invocations by @jackcmay
- PR: Input values are not sanitized after they are deserialized, making it far too easy for Leo to earn SOL by @aeyakovenko
- PR: Proposal for deterministic program generated Pubkey’s that can be used only by programs to create signatures in process_instruction. by @aeyakovenko
Zcash
32 merged PRs (1, 2, 3), 27 closed issues (1, 2, 3), 5 open issues (1, 2, 3)
- News: Privacy-Preserving Contact Tracing with the TCN Coalition
- News: The state of Zcash adoption
- News: Zcash Developers Update 04-24, 04-10, 04-03
- Blog: Privacy Infrastructure for the Public Good
- Blog: The Zcash Foundation’s 2020 Q1 Report
- Blog: Next Steps for the Major Grant Review Committee
- Blog: Assessing Mixnet Production-Readiness
- Blog: Building on Zcash: Resources and initiatives
- PR: Sapling keys and addresses by @dconnolly
- PR: [ZIPs 207, 214, 251] Consensus ZIPs for Zcash Development Fund by @daira
- PR: Implement minimal version handshaking by @gtank
Events
May 6-13 | Online
May 29-Jun 16 | Online
Jun 17 | Barcelona, EU
Aug 3-6, 2020 | Oxford, UK
Oct 21-23 | NYC, US
ACM Advances in Financial Technologies
Careers
Chainlink | Remote, US
Definity | SF, US
Senior Software Engineer - Infrastructure and Tools
Findora | CA, US
Kraken | London, UK; Remote
Backend Engineer, Kraken Futures
Backend Engineer, Data Processing
Nervos | Remote
Ockam | Remote
Software Architect - Applied Cryptography in Rust
Want to be included in the next issue? Feel free to submit a PR to the #12 draft, or Tweet @rust_blockchain.
Join the discussion on RiB telegram group ❤️