Plasm Network Web3 Grants Overview

Maarten Henskens
Astar Network
Published in
5 min readJan 3, 2021

Hello, I am Maarten from Plasm Network team. Stake Technologies, a creator of the Plasm Network is very grateful for the support from Web3 Foundation grants program. In this article, we will give you an overview. Keep in mind that not all of the accepted grants have already delivered products some are still in full development.

Here is a list of the grants we received from the Web3 Foundation.

  • Plasma modules for Substrate (GitHub)
  • ink! Playground (GitHub)
  • Plasm Chain + OVM Implementation (GitHub)
  • ECDSA for Polkadot JS (GitHub)
  • Hardware ECDSA for Polkadot JS (GitHub)
  • ZK Rollups Pallet (GitHub)

Now let’s dig into all of these grants!

Grant 1: Plasma modules for Substrate

Plasm Network is not a Plasma platform. And currently, we are focusing on Rollups rather than Plasma. However, Plasm was originally a Plasma module on Substrate and we started making a Parachain with this module.

Grant 2: Ink! Playground

The first question you probably have is “What is Ink!?”

ink! is a Rust-based embedded domain specific language (eDSL) for writing WebAssembly smart contracts specifically for the FRAME Contracts pallet.

The main goals of ink! are correctness, conciseness, and efficiency. It's designed to be as close to the Rust programming language as possible. The language uses attribute macros to tag standard Rust structures into understandable contract components.

Now, what is the ink! Playground? ink! playground is the browser IDE (integrated development environment) for Substrate’s smart contract(srml-contract). This will be similar to Remix, the smart contract IDE of Ethereum. Currently, if developers want to run ink! smart contract, they have to install substrate and ink! into their local environment. But this takes many steps, and also it is not easy to run a stable one because of version compatibility issues or so. By using ink! playground, Substrate developers can test contracts easily just by writing the main code in the browser. It doesn’t require installing Substrate or running a Substrate node. This is very useful for Substrate smart contract developers. For future works, ink! playground also provides high-level security audits. This is for a developer who wants to make high secured smart contracts for enterprise use.

Grant 3: Plasm Chain + OVM Implementation

With this grant, Plasm Network will implement some new features like the Optimistic Virtual Machine (OVM), and add more implementation on the Plasm Network.

So what is OVM? To put it simply, OVM is the virtual machine designed to support all layer 2 protocols invented by the Ethereum Foundation Plasma Group. It is a possible unification of all layer 2 scalabilities constructions. This means that Plasm Network will not only be for Plasma applications but also Lightning Network applications or any other layer 2 protocols.

We aim to be a platform that houses all layer 2 scaling solutions. Users can choose which solution to use and make their use case possible with minimum overheads.

For all implementation and developments read all about it in the original article.

Grant 4: ECDSA for Polkadot JS

ECDSA stands for Elliptic Curve Digital Signature Algorithm (Elliptic Curve Digital Signature Algorithm). This system is used to create a digital signature that allows verification by third parties without compromising security.

Polkadot/Substrate support three kinds of cryptographic primitives as MultiSignature data type:

  • Ed25519
  • Sr25519
  • ECDSA

At the time Plasm applied for the grant, Polkadot JS supports only the first two. It’s limited to using ECDSA keys for subkey CLI utility only, which makes the user experience pipeline a bit difficult.

The main aim of this grant is to provide a comfortable environment for ECDSA key owners (Ethereum/Bitcoin holders) as same as for Sr/Ed25519 keys.

Supporting a wide range of cryptographic primitives is the powerful side of the Polkadot ecosystem. This project makes this side user-friendly introducing cryptographic primitives support on the UI side.

Grant 5: Hardware ECDSA for Polkadot JS

Hardware wallets like Tezor and Ledger provide better security than traditional software wallets with end-users because the private key is stored outside of the device that is being used. The most popular, Trezor (https://trezor.io/) and Ledger (https://www.ledger.com/), supports Ethereum / Bitcoin cryptography (ECDSA) by default. But ECDSA crypto is native to the Polkadot ecosystem too which makes hardware wallets fully compatible with Polkadot applications without any changes in hardware wallet firmware.

This proposal improves already implemented software ECDSA keyring in PolkadotJS and planned to be directly integrated into Polkadot JS which is part of the Polkadot ecosystem.

Plasm Network is going to add full support for ECDSA based hardware wallets and allow them to be used with Polkadot-js for user convenience and better security.

Grant 6: ZK Rollups Pallet

This grant will allow us to officially start working on bringing ZK-Rollups to Plasm Network as well as Substrate. In the past, we focused on implementing the Optimistic Virtual Machine, a unification of all layer-2 protocols. You can think of an OVM as a security layer for transferring funds and communicating between layer-1s and layer-2s. As we are close to finalizing this core function, we have realized the value that ZK-Rollups can bring to the Polkadot ecosystem with layer-2 contract execution. Also, we have recognized the immense possibilities that dApp developers can have if both Substrate EVM contracts and ink! contracts can leverage this feature. In other words, Plasm Network is becoming a smart contract platform that supports Rollups for both the Ethereum Virtual Machine and WebAssembly. We are also hoping to expand this shortly.

What is a Rollup? A Rollup is an off-chain aggregation of transactions inside a smart contract, which reduces fees and congestion by increasing the throughput of the blockchain. Within the smart contract, users can transact with security guarantees. Their transactions will not be misused and they will settle to the main chain at some point in the future. It publishes just enough data on-chain so that any observer can reconstruct the state (ex.: account balances) and detect invalidity.

Plasm Network

Come join our community!

Website | Twitter | Telegram | Discord | GitHub | Lockdrop

For further information, follow us on Twitter and Telegram.

--

--