perun-eth-backend

module
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2024 License: Apache-2.0

README

Perun's Ethereum Backend

CI status Go Reference

This repository provides an Ethereum blockchain module for the go-perun state channel library. It thereby enables Perun channels for EVM-compatible networks.

Project structure

  • bindings/: Contract bindings.
  • channel/: Channel interface implementations.
  • client/: Client tests.
  • wallet/: Wallet interface implementations.

Development

  1. Clone the repository.
git clone https://github.com/perun-network/perun-eth-backend
cd perun-eth-backend
  1. Run the tests. This step needs a working Go distribution, see go.mod for the required version.
go test ./...

Demo

The perun-eth-demo project demonstrates Perun payment channels on Ethereum.

Security Disclaimer

The authors take no responsibility for any loss of digital assets or other damage caused by the use of this software.

Copyright 2022 PolyCrypt GmbH.
Use of the source code is governed by the Apache 2.0 license that can be found in the LICENSE file.

Directories

Path Synopsis
Package bindings contains all automatically generated code bindings to interact with the smart contracts of the Perun Ethereum blockchain backend.
Package bindings contains all automatically generated code bindings to interact with the smart contracts of the Perun Ethereum blockchain backend.
Package channel contains the Ethereum channel backend implementation.
Package channel contains the Ethereum channel backend implementation.
errors
Package errors contains error checking and wrapping functions.
Package errors contains error checking and wrapping functions.
test
Package test contains utilities for testing the Ethereum channel backend, such as a simulated blockchain backend and a custom Adjudicator.
Package test contains utilities for testing the Ethereum channel backend, such as a simulated blockchain backend and a custom Adjudicator.
client
test
Package test contains utilities for running client tests for Ethereum.
Package test contains utilities for running client tests for Ethereum.
Package subscription contains generic event subscriptions.
Package subscription contains generic event subscriptions.
Package wallet implements go-perun's wallet interface for the ethereum backend.
Package wallet implements go-perun's wallet interface for the ethereum backend.
hd
Package hd contains perun wallet and accounts implementation for accessing accounts stored in an ethereum hierarchial deterministic (HD) wallet.
Package hd contains perun wallet and accounts implementation for accessing accounts stored in an ethereum hierarchial deterministic (HD) wallet.
keystore
Package keystore contains perun wallet and accounts implementation for accessing accounts stored in ethereum keystore.
Package keystore contains perun wallet and accounts implementation for accessing accounts stored in ethereum keystore.
simple
Package simple contains a simplistic implementation of the perun wallet, account, and transactor interfaces.
Package simple contains a simplistic implementation of the perun wallet, account, and transactor interfaces.
test
Package test contains utilities for generating random ethereum accounts and addresses.
Package test contains utilities for generating random ethereum accounts and addresses.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL