Skip to content

Core components to use layer 2 smart contract wallets with the BLS signature scheme

License

Notifications You must be signed in to change notification settings

MetisProtocol/bls-wallet

 
 

Repository files navigation

BLS Wallet

An Ethereum Layer 2 smart contract wallet that uses BLS signatures and aggregated transactions to reduce gas costs.

You can watch a full end-to-end demo of the project here

Getting Started

Components

contracts

Solidity smart contracts for wallets, BLS signature verification, and deployment/testing tools.

aggregator

Service which accepts BLS signed transactions and bundles them into one for submission.

aggregator-proxy

npm package for proxying to another aggregator instance.

bls-wallet-clients

npm package which provides easy to use constructs to interact with the contracts and aggregator.

extension

Prototype browser extension used to manage BLS Wallets and sign transactions.

Contract Deployments

See ./contracts/networks for a list of all contract deployment (network) manifests. Have an L2/rollup testnet you'd like BLS Wallet deployed on? Open an issue or Deploy it yourself

Ways to Contribute

See our contribution instructions & guidelines for more details.

About

Core components to use layer 2 smart contract wallets with the BLS signature scheme

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages

  • TypeScript 86.2%
  • Solidity 7.3%
  • JavaScript 4.9%
  • SCSS 1.1%
  • Shell 0.4%
  • HTML 0.1%