Proof of Work #68
Hi from Beijing!
As always, the Chinese crypto scene is fascinating. Last year it felt like an absolute circus—over the top parties, actresses buying crypto, conferences at massive venues—and now a lot of that has quieted down, and 90% of the speculators have exited the scene. The people who are left are grizzled veterans, who’ve survived the receeding wave of speculation and also the total shutdown of fiat exchanges in China. The number one thing that strikes me every time I come here is how many people think purely in terms of stacking Bitcoin (and a few premium alts) rather than in terms of accumulating more fiat money.
There are also a lot more truly interesting projects coming out of China these days. I was initially skeptical that the crypto scene would truly end up Asia-centered as a result of the US regulatory environment being so hostile (a skepticism shared by a lot of my Chinese crypto friends) but these days I am beginning to think that will actually come to pass. The hardware (miners), infrastructure (mining installations), and financial institutions (the crypto exchanges) are all here, and that ends up creating a fertile ground for new projects. The number one blocker to this in my opinion was the lure of cheap cash via ICO, but that seems to have come and gone, and now there are a lot of very technical and interesting teams here building stuff. Over the next few issues I’m going to discuss a few of the best ones in detail!
More next week, thanks as always for reading!
Bitcoin & Friends
BitcoinOptech on Bitcoin
Proposed new opcode for transaction output commitments: Jeremy Rubin posted to the Bitcoin-Dev mailing list a proposal to soft fork in an
OP_CHECKOUTPUTSHASHVERIFY
opcode that allows a Bitcoin address to require the transaction spending it include a certain set of outputs. This enables a restricted form of Bitcoin covenants which can be used to reduce the amount of data that needs to be placed onchain in certain situations, potentially reducing costs or improving privacy in those cases. For details, please see this newsletter’s special section about the proposal.Final stack empty: in legacy, segwit, and proposed bip-tapscript scripts, a script evaluates successfully if it contains exactly one element that is true. Russell O’Connor raised a point he’s raised before and requested that this opportunity be taken to require tapscript only evaluate successfully if it ends with an empty stack. Pieter Wuille replied that his work on miniscript (see Newsletter #32) showed that, for the subset of scripts miniscript will create, this change in semantics will at most save 0.25 vbytes per tapscript. Also, although the change may simplify development for anyone writing scripts by hand, it’s a bit risky as every development guide to Script written to date teaches that scripts must terminate with a truevalue on the stack. Wuille summarized, “so overall this feels like something with marginal costs, but also at most marginal benefits.”
Move the oddness byte: Bitcoin public keys are most naturally specified using an X,Y coordinate pair, as was done in the early days of Bitcoin with uncompressed public keys. However, because a valid pubkey must be on the elliptic curve, it’s possible to find both valid Y coordinates (one odd, one even) for any given X coordinate given the curve formula. In compressed key format, the first byte contains a single bit to specify whether the Y coordinate is odd or even, followed by 32 bytes to encode the X coordinate. The proposed bip-taproot followed this convention and used 33 bytes to encode the taproot output key.
This week, John Newbery suggested that we use some method to avoid placing this byte in the scriptPubKey. Wuille agreed that this could be useful and will attempt implementing a variation where the bit will be included as part of the taproot witness data. This will reduce the cost create a taproot output by one vbyte (making it the same as P2WSH currently).
Aviv from Spacemesh
Spacemesh is a programmable cryptocurrency powered by a novel proof-of-space-time consensus protocol.
After finishing to implement most of the Spacemesh Protocol major flows, we are now focused on testing and benchmarking to verify our network is tuned up to work with many nodes at scale on the cloud using our automation framework.
We are doing tests and benchmarks for gossip, mining, sync and consensus protocols. Another on-going effort is integration of the BLS signature scheme into the platform.
On the App front, this week we integrated our Edwards25519 WASM library into the App and worked on the App's desktop notifications feature.
For more details check our pulse❣️https://github.com/spacemeshos/go-spacemesh/pulse
JZ from Decred
Decred is an autonomous digital currency with a hybrid consensus system. It is built to be a self-ruling currency where everyone can vote on the rules and project-level decision making proportionately to their stake.
Developer Donald Adu-Poku has released dcrpool; a stratum Decred PoW mining pool. Considering the importance Proof-of-Work mining has in our Multifactor Consensus system it made sense for us to ensure that there is high quality free and open source mining infrastructure available.
Lots of activity over a bunch of other repos as well this week including dcrdata with 14 PRs, 7 for politeiagui, dcrweb with 8, and decrediton receiving 9.
One extremely meta Politeia proposal is wrapping up voting and another which seeks to incentivize "biz dev" has just been submitted for discussion. We're overall quite pleased with the quality of the submitted proposals seeking to be funded by the Decred treasury, we are finding however that the stakeholders are tight with the purse strings, which is equally encouraging.
If you're in Berlin on June 5th be sure to drop in on our meetup hosted by BlueYard Capital. Noah and I will be attending along with a few other community members, and developer Jamie Holdstock who will be giving a presentation outlining what it's like to work for a DAE (decentralized autonomous entity) and where the project is headed in the near term.
Izaak from Coda
Coda is the first cryptocurrency protocol with a constant-sized blockchain. Coda compresses the entire blockchain into a tiny snapshot the size of a few tweets using recursive zk-SNARKs.
Corey integrated libp2p into Coda's networking stack.
Nathan added fine-grained, type-level tracking of the amount of validation performed on blocks and proofs from the network, catching a few bugs in the process.
Avery built the "send Coda" screen for the desktop wallet. Check out the screenshots on the PR!
Brandon got a portable Mac build working to make installing the desktop wallet super simple.
We've also welcomed three new team members recently. Carey Janecka, Front End Developer, joins from Coinbase. Claire Kart, Marketing & Community, joins from Ripple. Pranay Mohan, Developer Relations, joins from Snapchat.
Privacy coins
Paige & Zooko from Zcash
Zcash is a digital currency utilizing zk-SNARKs to enable its privacy-protecting properties.
Last week: v2.0.5-2 released - includes migration tool and counterfeit defense consensus code
This week: final review of and decision on draft ZIPs for NU3 consideration
Targeting 2.0.6 for Blossom testnet deployment
More in the full update: https://forum.zcashcommunity.com/t/may-24-2019-weekly-update-engineering/33602
Mitchell from Monero
Monero is a open-source, privacy-focused cryptocurrency using the ASIC-resistant CryptoNote PoW algorithm. It enforces all privacy features at the protocol level to ensure that all transactions create a single fungible anonymity pool.
New compressed LSAG signatures will offer ~25% reduction in rate of blockchain growth, and around 15-25% speedup in verification times, first draft here.
The Monero Konferenco schedule is now public. (My "TBD" talk title will be "Visualizing Monero: a figure is worth a thousand logs.")
Researching several new schemes that may potentially replace our current ring signature scheme - Spartan and RingCT3.0 and Lelantus.
We now have a client implementation for the Monero wallet and daemon RPC written in Go, repository here.
Daniel from Grin
Grin is a community-driven implementation of the Mimblewimble protocol that aims to be privacy preserving, scalable, fair, and minimal.
@antiochp proposed Elder channels, a lightning-style layer 2 protocol for Grin. Over the week, we saw not one, not two, but three iterations of the mechanism.
Merged PRs: 6 in /grin | 5 in /grin-wallet | 5 unique contributors
The last governance meeting covered payment to Coinspect for audit, project budget feedback, and wiki access control.
@yeastplume has begun to target improvements for the v2.0.0 hard forkcoming up in a few months.
@jaspervdm open-sourced his multi-party bulletproof builder ahead of the full GrinSwap crate.
The third brother Peverell, Cadmus, made an appearance recently. Here's a proposal to optimise (larger) syncs through parallelisation.
Slides from @hashmap's Mimblewimle introduction (in Russian) are now online.
Grin Vault, a grin wallet for Android, was announced and is in open beta (not open sourced yet).
More Grin info here.
Beni from Beam
Beam is a confidential and scalable cryptocurrency based on Mimblewimble.
Cold Wallet Testnet Release Notes | Create and sign transactions #593
Atomic Swap - Important progress (validation for non-negative values, process exceptions, fix secret extracting, confirmation for CLI, changed BTC address version)
Laser Beam (Lightning Integration) - Good progress and demo almost ready
Cold Wallet restore - in progress
Hard Wallet integration #624 - in progress
Desktop Wallet: Login / Restore Screens #649 - done
Desktop Wallet: Add QR code to Address Book #629 - in progress
Desktop Wallet: Multi language UI #618 - in progress
Arnaud from AZTEC Protocol
AZTEC Protocol is an efficient zero-knowledge protocol built on top of Ethereum, making plug-and-play value transmission and asset governance privacy tools for developers and companies.
This week we released a first draft of our trusted setup code. Notably, we decided to extend it to compute a common reference string which can be used to construct structured reference strings for SONIC zk-SNARKS.
We also released a Loan dApp starter kit to demonstrate how AZTEC proofs can be combined and assembled, and to demonstrate in-browser proof construction. As part of this starter kit, we also released scripts to make deploying AZTEC to local networks easier.
The team was at ETHNewYork last weekend, where we sponsored a prize, won by the Polymath team who produced a zero-knowledge payroll dapp.
EIP-1108, which would significantly reduce gas costs for AZTEC and other cryptography heavy applications on Ethereum, was accepted (pending a couple of additional benchmarks) to the scheduled Istanbul hardfork.
In addition to the two cryptographer roles, we are now hiring for a Senior Solidity Engineer and a Senior Engineer. You can apply here, or by emailing arnaud@aztecprotocol.com with the name of the role as the subject.
Smart contracting platforms
Evan from Ethereum
Ethereum is a decentralized platform for applications that aims to resist fraud, censorship or third-party interference.
Lots of phase2 execution work coming out of eth2 meetings in New York. Vitalik’s Eth2, phase2, proposal2 and Will Villanueva and Matt Garnett's Eth Execution Environment proposal, as well as Ewasm Scout, the phase2 execution prototyping engine
Ethereum Foundation Q2 update and how it will spend $30m this year
MetaMask user metrics. 265k MAUs in April.
Erik from NEAR
NEAR is a sharded proof-of-stake blockchain.
22 PRs merged or proposed across 4 repos and 5 authors: nearcore, nearlib, near-shell and near-wallet
Initial support for app-specific keys added to NEAR Wallet
Support for ability to send tokens to another account, and view tokens in profile page of Wallet
Additional functionality in command line to make method calls to smart contracts
Support for setting network ID in near-shell added
Stabilizing current nearcore, which is released and running.
Implementation of economics: charging storage rent and transaction fees.
Continue Nightshade development: integration tests, chunk production and network.
AJ from Tezos
Tezos is a self-amending blockchain that features formally verified smart contracts, on-chain governance, and a proof-of-stake consensus algorithm which enables all token holders to participate in the network.
History has been made - Tezos successfully reaches Quorum of 81.39% in its final phase of the first protocol amendment. The new protocol will automatically switch once the voting period over, signifying the first example of a true democratic implementation of a protocol upgrade coordinated by the community.
Nomadic Labs releases an update for Tezos Node software. This software update implements ‘Snapshots’ (spin up a full tezos nodes in a few minutes), ‘History Mode’ (dramatically decreases storage usage), and formally verified Multi Sig smart contracts. Click on the link above to read more about how to update your Tezos Node
Tezos Block Explorers: In addition to Tzscan.io, new updates have been released for two block explorers built by Cryptonomics, Arronax Beta, and Tezos Southeast Asia, Tezos.ID
Chorus Mobility receives support and seed funding from the Tezos Foundation.
Announcing TPlus, a tool that will make it easier to manage tezos nodes for multiple use cases such as smart contract development, environment testing, and CLI tools.
Topper from Quorum Control
Quorum Control makes Tupelo, a permissionless proof of stake DLT platform purpose-built to model individual objects that enables flexible public or private data models.
Ongoing Optimization of Production Tupelo TestNet
Final testing on a major infrastructure improvement to streamline cross-platform development. Defines the core Tupelo types as protocol buffer messages and uses those across all platform-specific development kits.
Removed signer produced errors for transactions to prevent attack vector of malicious signers returning fake errors.
Read Part 2 of our published posts on NFTs, “Digital Scarcity (Am I original? Am I the only one?)”
Michael from Loom
Loom Network is a platform for building highly scalable DPoS sidechains to Ethereum, with a focus on large-scale games and social apps.
Cryptium Labs goes live as the latest Loom validator
Over 202M tokens have been staked on Loom, which amounts to ~26% of circulating supply
Axie Infinity will be running a validator, providing in-game rewards to their delegators, and fully migrating to Loom
May Game Release (v0.1.21) -- Relentless rebranding, updated desktop downloads, and tons of bug fixes
Myles from EOS
EOS is a new blockchain architecture designed to enable vertical and horizontal scaling of decentralized applications.
Block.one just purchased 32 GB worth of RAM on the EOS mainnet (likely related to their upcoming June 1st announcement)
EOSIO Labs releases native SDKs for Swift and Java
Greymass released the beta version of its new desktop wallet — Anchor (previous called eos-voter)
Decentium, a Medium alternative built on top of EOS, launched.
Zaki from Cosmos
The Cosmos Network is a decentralized network of independent, scalable, and interoperable blockchains.
We released a a bug fix and ergonomics release of Gaia. This adds support for the Ledger Nano X.
Cosmosstation released a javascript library for generating and signing transactions on the cosmos hub.
ICS 4: IBC Channels and Packets is in final review
Kate and Dean from Agoric
Founded by pioneers in secure development and distributed systems, Agoric uses a secure subset of JavaScript to enable object capabilities and smart contracts.
This week Mark successfully implemented a particular example of higher order contracts. “Higher order” contracts allow you to effectively tokenize positions in contracts. In this particular scenario, Bob writes a covered call giving Alice the option to buy Bob’s stock shares. Alice makes a new escrow agent that allows her to trade this seat at the table to Fred, and Fred is able to verify that these are the rights he is interested in. The escrow agent code is able to treat the “seat at the table” as if it were a straightforward token, allowing us to use these “higher order” tokens in any smart contract component that accepts tokens.
Financial Infrastructure
Antonio from dYdX
dYdX is a decentralized exchange for margin trading, borrowing, lending, and eventually derivatives. dYdX allows traders to trustlessly short and get leverage on crypto assets.
Everett Hu joined the team as a frontend engineer, welcome Everett!
Antonio wrote an overview of decentralized lending protocols
Shipped transaction history. Can now view a history of all trades, deposits, and withdrawals directly in the app
Working on adding a DAI-USDC market powered by 0x
Finishing up a design sprint focusing on a new borrow flow and an improved cross trading experience
Building price oracles for new assets, so we can add them to dYdX
Hiring product designers & engineers full-time in SF!
Brendan from Dharma
Dharma is the easiest place to borrow and lend cryptocurrencies. It enables non-custodial peer-to-peer lending through smart contracts on Ethereum.
Launched USDC! Users can now borrow and lend USDC at 8% APR from anywhere in the world, instantly. If you're interested in borrowing or lending USDC in high volumes, please reach out max@dharma.io
Began testing our new 'Instant Matching' feature with early user cohort
Implemented automatic 8% discount for loan liquidators
Our very own Brendan Forster gave an inspiring talk about #DeFi at Fluidity!
We're hiring a General Counsel and Full Stack Engineers in SF!
Coulter from MakerDAO
Maker is comprised of a decentralized stablecoin, collateral loans, and community governance.
Dai has been added to Coinbase!
Maker is helpful fuel the DeFi movement. Read more.
We're sharing the details of the most recent update (MCD v0.2.6) on Kovan testnet as we track toward Multi-Collateral #Dai. This update covers the CDP Portal, Governance Dashboard, Testchain DSS deployment scripts and new developer guides.
We've partnered with Experimental to have Dai integrated into their game, CryptoWars.
Lazar from MARKET Protocol
MARKET Protocol is a framework for creating tokens that track prices of traditional or digital assets.
We reached a big milestone this week, our platform is feature complete for launch!
Deployed updated platform to staging environment on Kovan, mainnet to follow
Still finalizing our solidity refactor based on recommendations from our security audit
Drafted an update to our website to support MPX and minting platform launch
Robert from Compound
Compound is a money market protocol on the Ethereum blockchain — allowing individuals, institutions, and applications to frictionlessly earn interest on or borrow cryptographic assets without having to negotiate with a counterparty or peer.
Launched Compound v2, and began migrating users
Released mainnet contract addresses & documentation for developers to build applications on top of Compound
Layer two and interoperability
Rahul from 0x
0x is an open protocol that enables the peer-to-peer exchange of assets on the Ethereum blockchain.
Check out our educational videos around the 0x smart contracts
Awarded Mine Auction the 0x price at ETH NY, a marketplace for trading staking contracts
New Relayer Report, digging into the AugurLite fork, 0x at ETH New York, and ENS support on Emoon
Tony from Liquidity.Network
Liquidity Network is a transfer and swap platform for any token
Liquidity Network has the honor of being a platinum sponsor for the Crypto Valley Conference 2019 from 24th - 26th June 2019 at Zug, Switzerland
Liquidity Network is running a survey to collect users' opinions about current exchange ecosystem. Please participate here.
Dong Mo from Celer
Celer Network is a layer-2 scaling platform that enables fast, easy and secure off-chain transactions for not only payment transactions, but also generalized off-chain smart contracts.
We refactored game platform architecture, to clearly distinguish different game modes.
We've finished on-chain dispute process on iOS and fixed issues and improved app based on ETHNewYork feedback.
We are in the process of developing new wallet UI.
We implemented design reviews and started implementing features for end-of-June milestone.
Fast-track cold bootstrap for new users and upgradable cChannel on-chain contracts.
System stress testing and identified improvements on our backend system.
Alexandra from Parity Technologies
Parity Technologies builds core blockchain infrastructure, from Parity Ethereum, an Ethereum client, to Polkadot, an interoperable blockchain network.
A contributor, Sota Watanabe, created a Plasma Substrate Runtime Module Library.
Thibaut Sardan presented Fether, a light client wallet.
Inspired by MolochDAO, Amar Singh created SunshineDAO.
There's still some Early Adopter tickets left for Web3 Summit during Berlin Blockchain Week.
Web3 Foundation is providing grants to build the Web3 ecosystem.
We added new jobs, including Business Development Manager.
Application infrastructure
Wes from Theta
Theta is an end-to-end infrastructure for decentralized video streaming.
Added Ledger/Trezor support for Theta mainnet to the Theta web wallet
Added support for automatic tokens splits between video relayers and streamers/content creators
CTO Jieyi Long presented his paper “Scalable BFT Consensus Mechanism Through Aggregated Signature Gossip” at IEEE crypto conference in Seoul
Theta Fuel (TFUEL) listed on Binance
Doug from Livepeer
Livepeer is a decentralized video infrastructure network, dramatically reducing prices for developers and businesses building video streaming applications at scale.
The Livepeer node now supports builds for its upcoming release in Linux, Windows, and OS X.
Participation rate in the protocol has surpassed 40% of all LPT staked - on the path to the 50% target before inflation rate begins reducing itself.
David from Sia
Sia is a decentralized cloud storage platform leveraging blockchain technology to create a data storage marketplace that is more robust and more affordable than traditional cloud storage providers.
Luke worked on the seed-based file recovery feature: asynchronous upload of metadata snapshots and synchronization of these snapshots across the hosts have been added
Chris added the ability to cancel ongoing downloads and uploads to Sia
Matt worked on multiple MRs oriented to improve the file repair process
Internal tests by Nebulous are revealing a great improvement in scalability: in the next version, 15+ TB will be able to be uploaded per renter node
Luke updated his `us` library to allow FUSE capabilities (https://www.reddit.com/r/siacoin/comments/bryifi/writeable_fuse_demo/). Thanks to this, a local directory connected to Sia can be mounted on the system, enabling operations like uploading data to internet directly from Sia hosts. It also better handles small files and document edits, by bundling them before sending them to Sia.
Community member @tbenz9 published a proof-of-concept script for storing automatically on Sia security camera footage (an ideal use case of Sia): https://www.reddit.com/r/siacoin/comments/brr0xs/a_rudimentary_guide_how_to_automatically_store/
Stay up to date with all the latest in our Discord server - https://discord.gg/sia
Other
Ari from Decentraland
Decentraland is a virtual world where you can build and explore 3D creations, play games and socialize.
Last week, we released an update to the Builder allowing users to export their scenes for use with the SDK.
Currently testing Picture Frame support for additional third-party NFTs.
Testing and optimizing the performance of loading scenes in the Unity-based Decentraland Client.
Released various minor bug fixes to improve click actions and animations in the SDK.
Sam from OpenBazaar
OpenBazaar is an open source project developing a protocol for e-commerce transactions in a fully decentralized marketplace.
Corey integrated libp2p into Coda's networking stack.
Nathan added fine-grained, type-level tracking of the amount of validation performed on blocks and proofs from the network, catching a few bugs in the process.
Avery built the "send Coda" screen for the desktop wallet. Check out the screenshots on the PR!
Brandon got a portable Mac build working to make installing the desktop wallet super simple.
We've also welcomed three new team members recently. Carey Janecka, Front End Developer, joins from Coinbase. Claire Kart, Marketing & Community, joins from Ripple. Pranay Mohan, Developer Relations, joins from Snapchat.