Skip to content
AnnaIsAWang edited this page Jul 25, 2016 · 22 revisions

State Channels Wiki

Table of Contents

Overview

What are State Channels?

State Channels allow the same security, privacy, trustless services as the Ethereum blockchain except with considerably less transaction fees (no transaction fees if parties are behaving honestly).

Figure 1: Playing Tic Tac Toe on State Channels

Diagram of Tic Tac Toe on State Channels

A simple example of the use of State Channels can be conceived if two parties, Alice and Bob decide to play a game of Tic Tac Toe together for money. Alice and Bob would open up a state channel with each other by writing up a smart contract and lock up their bets using this smart contract, as illustrated in Figure 1. Then, instead of telling the blockchain each and every one of their tic tac toe moves, they simply sign transactions between them with their corresponding moves. The key part is that the transactions are never published to the blockchain if both parties behave honestly, saving the network from doing extraneous calculations. If however, one party behaves dishonestly by going offline and is thus not able to sign any transactions, the other party can publish the latest transaction that was signed by both parties and the blockchain will fairly decide where the initial bets go. This system very much resembles the legal system where two parties will go to court and pay the legal fees to get an official ruling by a judge if and only if there is a disagreement between them. The difference between the adjudication process in state channels and the legal system is that adjudication processes have deterministic outcomes while legal systems are vulnerable to human subjectivity

The Need For State Channels

As the Ethereum network expands, an array of problems begin to arrise ranging from an increase of block collisions to the danger of very few individuals possessing the ability to run full nodes leading to centralization, the opposite of what blockchain technology aims to accomplish. State Channels offer a simple solution to this problem since they are able to operate with minimal on chain transactions while taking a majority of would be on chain transactions off chain. In addition, transactions within channels could be processed much faster than the average time it takes to mine a block and fees would be almost negligent.

The Contracts

Unanimous Consent Contract

Adjudicator

Rules

Lock Adjudicator

Lock Rules

Bulletin Board

Interested Bystanders

The Counterfactual Nature

Counterfactual Instantiation

State Channels depend on an invisible trusted party to make sure that the participants of the channel are behaving honestly and fairly. This means that the blockchain--a trusted party due to its transparency and deterministic behaviour--will only be called if there is a need for it to sort out a disagreement between channel participants. This means that the Adjudicator, Rules, Lock Adjudicator, and Lock Rules contract do not even need to be instantiated unless a disagreement arises, minimizing transactions that would need to take place on the blockchain.

Counterfactual Verification

Counterfactual Addressing

Meta Channels

Design Paradigms

Components of a Channelised Application

Bonding Channel Providers

Privacy Techniques

Data Availability Contest

Using the Lock Adjudicator

Within Meta Channels

High Speed Rails