devcon 4 / fraud proofs maximising light client security and scaling blockchains with dishonest majorities
Duration: 00:26:05
Speaker: Mustafa Al-Bassam
Type: Talk
Expertise: Intermediate
Event: Devcon
Date: Invalid Date
Categories
Scalable Blockchains & Asynchronous Programming
Ethereum's Vitalik Buterin presents on scalability and asynchronous programming.
Raiden Network: Getting to a production ready payment channel network
The Raiden Network is the payment channel network for Ethereum aiming to help scale Ethereum payment and all Dapps that utilize Ethereum for payments and rely on no on-chain side effects of the payments. There will be a small explanation of what is payment channels and a payment channel network, an explanation of the raiden network protocol and a demo of using Raiden (hopefully by then live on the mainnet). We will close with future plans, expansion of the protocol and showcasing potential applications.
A Fast and Scalable Blockchain for Enterprise Users
Almost every bank and major financial institution inChina as well as across the world is eager to revamp their computing infrastructure through blockchain. What a blockchain designed for them should look like? Is it enough to replace PoW with PBFT? What else can we do to leverage the resources enterprise users have? You will find the answers in CITA.
Less Gas, More Fun: Optimising Smart Contracts through Yul
Due to the relative simplicity of the Ethereum Virtual Machine, it is possible to perform heavy analyses in order to optimize bytecode. The jump operations are a main obstacle for this, because they might require a preservation of all basic blocks in the worst case. To overcome this, Solidity's new optimizer operates on an intermediate language called Yul, which is close to EVM bytecode (and also wasm) but abstracts jump operations through real function calls. Each of the many optimizing operations are simple local equivalence transforms whose effects can be inspected at any time and which in combination should be both more reliable and efficient than the classic optimizer.
FunFair Technologies' Fate Channels: Lessons learned Implementing State Channels
Jeremy Longley, CTO of FunFair Technologies, will offer a post-mortem on the delivery of their own version of state channels, Fate Channels, to Mainnet. There have been significant challenges along the way, and there's likely to be many more to come as their use scales up. Having deployed a flexible and creative approach, Jeremy will outline how others can bypass these challenges and embrace state channels as best they can.
PISA: Arbitration Outsourcing for State Channels
PISA alleviates the "always online assumption" for all channel protocols and it is necessary for Raiden, L4, Perun, etc. State channels are a leading approach for improving the scalability of blockchains and cryptocurrencies. They allow a group of distrustful parties to optimistically execute an application-defined a program amongst themselves, while the blockchain serves as a backstop in case of a dispute or abort. This effectively bypasses the congestion, fees and performance constraints of the underlying blockchain in the typical case. However, state channels introduce a new and undesirable assumption that a party must remain on-line and synchronised with the blockchain at all times to defend against execution fork attacks. An execution fork can revert a state channel’s history, potentially causing financial damage to a party that is innocent except for having crashed. To provide security even to parties that may go offline for an extended period of time, we present Pisa, a protocol which enables such parties to delegate to a third party, called the custodian, to cancel execution forks on their behalf. To evaluate Pisa, we provide a proof-of-concept implementation for a simplified Sprites and we demonstrate that it is cost-efficient to deploy on the Ethereum network. Blog+Paper: http://hackingdistributed.com/2018/05/22/pisa/
Turbo-Geth: optimising Ethereum clients
As Ethereum network becomes gets more and more use, the load on the system grows, and the scalability becomes the primary concern. While concepts like Plasma, State Channels, and Sharding offer medium to long term solutions, client software optimisation have a potential to create enough runway in the short term. Turbo-Geth is an experiment to challenge various design choices made in major Ethereum clients and see the outcome. It is currently a fork of go-ethereum, but hopefully the insights are applicable to other client implementations too. This presentation will report on main experiments, findings, benchmarks, and the current state of Turbo-Geth project.
Building a state channel application
State channels are a great tool for building high-performance, low-cost dapps today. By moving some of your dapp behaviour off-chain you can save transaction fees and confirmation times, while continuing to bootstrap security and trustlessness from the underlying blockchain. In order to understand how an application can benefit from state channels, it’s important to understand the mechanics behind them. The good news is that once you’ve managed to model part of your application as a state channel interaction, there are already tools available to help make the switch.In this interactive workshop, we will dig into an existing state channel application. We’ll cover the fundamentals of state channels, as well as the main design decisions behind modeling the interactions and architecting the application. You’ll test your understanding by completing key sections of the code, leaving the session with a functioning state channel application, built with react on top of the force-move games framework!
Making Sense of Layer 2
This talk will be a high level overview of the state-of-the-art in "Layer 2" scaling tech. The goal is to give the audience a comparative understanding of techniques like state channels, plasma (and its various flavours), sidechains, etc. Introduce a basic taxonomy of layer 2 tech -What are the similarities and differences between them? -Comparative analysis - what is each technique good at and bad at? -Defining and explaining jargon used to discuss this tech -Distinguishing between "safety net preserving" techniques (plasma, state channels) and others (sidechains)
Snarks for mixing, signaling and scaling
There is general interest in the ethereum community to scale ethereum by moving dapps inside snarks. The key to do this is to make an efficient signature function available inside a snark. We present this signature function https://github.com/barryWhiteHat/baby_jubjub_ecc designed to work efficiently inside a snark. Furthermore we describe an architecture to scale ethereum using snarks. We discuss the trade offs required and compare them to building a dapp inside the evm.