Skip to content

Decentralized relay network for layer 2 Ethereum execution markets

License

Notifications You must be signed in to change notification settings

planet-ethereum/relay-network

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Relay Network

Gitter chat

Motivation

Various projects aim to improve user experience by enabling recurring fee subscriptions, delegated conditional execution or sponsored gas. These second layer execution markets all share the need for a relayer that submits signed user transactions to the network.

The aim of this project is to implement a decentralized relay network, with enough modularity that could support the various use-cases mentioned above. A prototype of this idea, with a focus on supporting Gnosis Safe as identity proxy and whisper as pubsub protocol, was recently implemented by the Hermes Network team at ETHBerlin.

Requirements

In order to run a relayer, you'll need to have an IPFS node with pubsub enabled running. Install and setup IPFS, then run daemon:

ipfs daemon --enable-pubsub-experiment

Relayer also needs access to an Ethereum chain. By default, it connects to Rinkeby, through Infura.

Clone the repository and install the dependencies via dep:

dep ensure

Usage

Relay-network currently only works with ethbase. For using with ethbase, start a relayer, which listens on a pubsub topic, and submits the logs to the ethbase contract:

MNEMONIC="____" go run cmd/relayer/main.go

Then, run ethbasepub, which subscribes to the logs emitted by event emitters registered in Ethbase, generates a proof for the log, and sends it to the relayer via IPFS pubsub.

go run cmd/ethbasepub/main.go

About

Decentralized relay network for layer 2 Ethereum execution markets

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages