MLSNews

《未闻》区块链技术日报,聚焦业内技术更新,做您最好的眼睛。

View project on GitHub

​MLSNEWS

——————◆ 20190709 ◆——————

  • 每周以太坊

    Layer-1

    • Sigma Prime 的 eth2 客户端升级——约在一周内首次放出,整合了 disc v5,因为 IC3,可比现有的 LMD GTHOST 快 5 倍

    • Protolambda 做了一张 以太坊 2.0 运行原理图解

    Layer-2

    • Counterfactual 开发者升级:为开发者做的更好的钱包 UI,支持 ERC20

    • Vitalik 论只将 {数据,状态,计算} 三者中的一项或两项放到链下的 Layer-2。他也在 Ethesearch 上发帖论述了 混合 Layer-2 网络

    • StarkDEX 深度解读,Part-2:合约与声明

    • Loopring 3.0 交易协议如何利用 SNARK

    Layer 1

    • Sigma Prime’s eth2 client update – first release in about a week, disc v5 integrated, 5x faster fork choice from more efficient LMD GHOST out of IC3

    • Protolambda’s Eth2 graphical explanations

    Layer 2

    • Counterfactual dev update: better wallet UI for devs, ERC20 support

    • Vitalik on layer2 networks that only push offchain 1 or 2 of {data, state, and computation} and the related Ethresearch post on hybrid layer2 networks

    • StarkDEX deep dive, part 2: contracts and statement

    • How Loopring 3.0 uses SNARKs

  • 从状态通道到 Roll Up

    虽然区块链得到了日趋广泛的采用,当代协议的负载量却十分有限,因此涌现出了许多 Layer 2 协议,例如状态通道、侧链、Plasma 和 Roll Up。本文深入探究了这些方案各自的技术细节和优缺点。

    所有 Layer 2 解决方案的核心思路都是让多个参与方通过某种方式实现安全交互,无需将交易发布在主链(即 Layer 1)上,不过在某种程度上还是要利用主链作为仲裁方来确保其安全性。

    状态通道

    支付通道是状态通道这个大概念下的一个具体实例。关于状态通道的发展史可以参见维基上的概述。状态通道是固定一组参与者(通常是两名参与者)之间的协议,用以实现安全的链下交易,其中支付通道专门用来支付。支付通道协议具体如下:两名参与者各自通过链上交易在链上锁定保证金,比方说,价值 10 美元的比特币。一旦锁定完成,参与者双方即可互相发送形式为 [轮次,金额,签名] 的状态更新来实现转账,无需与主链进行交互,只要双方的余额都还为正值即可。

    侧链

    侧链的核心思路是构建一条完全独立的区块链,有自己的验证者和运营者,可以与主链互相转移资产,而且会选择性地将区块头的快照发送至主链,从而防止分叉产生。有了这些快照,就可以有效防止分叉,即便侧链上的验证者串谋起来发动分叉攻击也没用。

    Plasma

    Plasma 是一种可以实现 “无监管” 侧链的技术,换言之,即使侧链(通常被称为 “plasma 链”)上所有验证者串谋起来作恶,plasma 链上的资产也是安全的,而且可以退回主链。

    Roll Up

    Roll Up 实际上是一条侧链,因此它会生成区块,并且将这些区块的快照发送到主链上。不过,Roll Up 上的运营者是无需信任的。也就是说,Roll Up 假定运营者可以在任何时候做出停止出块、生成无效块、隐瞒数据等恶意行为。

    With the increasing adoption of blockchains, and still very limited capacity of modern protocols, many so-called Layer 2 protocols emerged, such as State Channels, Side Chains, Plasma and Roll Ups. This blog post dives relatively deeply into the technical details of each approach and their benefits and disadvantages.

    The core idea behind any Layer 2 solution is that it allows several parties to securely interact in some way without issuing transaction on the main chain (which is the Layer 1), but still to some extent leveraging the security of the main chain as the arbitrator.

    State Channels

    Payment channels is a specific instantiation of a more generic concept called State Channels. A good overview of the history of the state channels can be found here. State channel is a protocol between a fixed set of participants (often two) that want to transact securely between themselves off-chain, in case of payment channel specifically exchange money. The protocol for the payment channel goes as follows: two participants first both deposit some money, say $10 worth of Bitcoin, on-chain using two on-chain transactions. After the money is deposited, both participants can instantaneously send each other money without interaction with the main chain by sending to each other state updates in a form of [turn_number, amount, signature], for as long as the balances of both participants remain non-negative.

    Side Chains

    The core idea behind a simple side chain is to have a completely separate blockchain, with its own validators and operators, that has bridges to transfer assets to and from the main chain, and optionally snapshots the block headers to the main chain to prevent forks.

    Plasma

    Plasma is a construction that enables “non-custodial” sidechains, that is, even if all sidechain (commonly called “plasma chain”) validators collude to conduct any type of adversarial behavior, the assets on the plasma chain are safe, and can be exited to the mainchain.

    Roll Ups

    The Roll Up is effectively a side chain, in the sense that it produces blocks, and snapshots those blocks to the main chain. The operators in the Roll Up, however, are not trusted. Thus it is assumed that at any point the operators can attempt to stop producing blocks, produce an invalid block, withhold data, or attempt some other adversarial behavior.

  • 什么是MultiFormats?

    计算中的每一个选择都有一个权衡。这包括格式,算法,编码等。即使有大量的计划,决策也可能会导致未来的变化,或者不再是最佳的解决方案。允许系统发展和增长,而不引入重大变化非常重要。

    为了理解对Multiformats的需求,让我们以git 协议为例。很多人每天都使用它来使用Github,Gitlab,Bitbucket等服务。我们知道git使用哈希来处理很多事情。现在git使用SHA-1作为其哈希算法。

    什么是多格式?

    多格式项目是一系列协议,旨在面向未来的系统,如今。他们这样做主要是通过自我描述来增强格式值。这允许互操作性,协议敏捷性,并帮助我们避免锁定。

    Every choice in computing has a tradeoff.This includes formats, algorithms, encodings, and so on. And even with a great deal of planning, decisions may lead to breaking changes down the road, or to solutions which are no longer optimal. Allowing systems to evolve and grow, without introducing breaking changes is important.

    To understand the need for Multiformats, let’s take an example of git protocol. A lot of people use it every single day to use services like Github, Gitlab, Bitbucket, etc. We know that git uses hashes for a lot of things. Right now git uses SHA-1 as its hashing algorithm.

    What are Multiformats?

    The Multiformats Project is a collection of protocols which aim to future-proof systems, today. They do this mainly by enhancing format values with self-description. This allows interoperability, protocol agility, and helps us avoid lock-in.