The node module that allows you to control your Ethereum revocation lists & resolve revocation keys.

Overview

Ethereum Revocation Registry Controller

The controller module for interacting with EIP-5539-compatible Ethereum revocation lists.

EIP Draft Registry Repo GitHub contributors GitHub issues GitHub pull-requests

Motivation

The EIP-5539 draft proposes a new RBAC-enabled revocation registry that can be used by any valid Ethereum address to maintain a set of revocation lists. In those, arbitrary revocation keys can be marked as either revoked or not. Additionally, the registry includes a set of management features that enables owners to have features like delegates, owner changes, and meta transactions.

This repository includes a controller module for interacting with EIP-5539-compatible revocation lists. This includes managing owners, delegates, revocation lists, revocation keys, and the support for meta transactions.

Installation

Execute this to install this dependency:

npm install --save @spherity/ethr-revocation-registry-controller

You can then build the controller object by instantiating it for example with a HttpProvider connected to Infura:

const provider = new Web3.providers.HttpProvider(
  `https://${network}.infura.io/v3/${process.env.INFURA_API_KEY}`
)
const signer = web3.eth.accounts.privateKeyToAccount(
  process.env.SIGNER_PRIVATE_KEY
);

const config: EthereumRevocationRegistryControllerConfig = {
  provider: provider,
  signer: signer
}

const controller = new EthereumRevocationRegistryController(config);

Now you're ready to interact with your revocation lists/keys!

Development

Test Suite

To start the test suite, you can call:

npm run test

To get a coverage report you need to run:

npm run test:coverage
You might also like...

Web based application that uses playerctl in it backend to control remotely your audio using the frontend as remote control.

Web based application that uses playerctl in it backend to control remotely your audio using the frontend as remote control.

Linux Remote This is a web based application that uses playerctl in it backend to control remotely your audio using the frontend as remote control. Do

Jul 6, 2022

"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete. It is created with HTML , CSS , JS and webpack and NPM.

My Todo List "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as com

Mar 29, 2022

"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete

To Do List "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as compl

Aug 9, 2022

"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete.

Todo_List Description "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark th

Apr 19, 2022

"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete.

todo-list "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as comple

Jul 4, 2022

"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete.

To-Do List "To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as compl

May 24, 2022

To-do list is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete. Built with JavaScript.

To Do List Application that record the tasks to remind you and got many features that you might need. This is an image for it Live Demo Live Demo Here

Jul 13, 2022

To-do list is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete. Built with JavaScript.

To-do List To-do list is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complet

Mar 4, 2022

"To-do list" is a tool that helps to organize your day. It simply lists the things that you need to do and allows you to mark them as complete.

Hello! I am a software developer! I can help you build a product, feature or website. Tak a look of my works. If you like what you see and have a proj

Apr 29, 2022
Releases(1.2.7)
  • 1.2.7(Oct 11, 2022)

    What's Changed

    • feat: resolve contract address by chainId by @DennisVonDerBey in https://github.com/spherity/ethr-revocation-registry-controller/pull/12

    Full Changelog: https://github.com/spherity/ethr-revocation-registry-controller/compare/1.2.6...1.2.7

    Source code(tar.gz)
    Source code(zip)
  • 1.2.6(Sep 27, 2022)

    What's Changed

    • fix: events query and change to eip712 name import by @DennisVonDerBey in https://github.com/spherity/ethr-revocation-registry-controller/pull/11

    Full Changelog: https://github.com/spherity/ethr-revocation-registry-controller/compare/1.2.5...1.2.6

    Source code(tar.gz)
    Source code(zip)
  • 1.2.5(Sep 21, 2022)

    What's Changed

    • chore: improve README example by @DennisVonDerBey in https://github.com/spherity/ethr-revocation-registry-controller/pull/9
    • Refactor constructor by @DennisVonDerBey in https://github.com/spherity/ethr-revocation-registry-controller/pull/10

    Full Changelog: https://github.com/spherity/ethr-revocation-registry-controller/compare/1.2.4...1.2.5

    Source code(tar.gz)
    Source code(zip)
  • 1.2.4(Sep 18, 2022)

    What's Changed

    • Eip712 changeStatus method by @DennisVonDerBey in https://github.com/spherity/ethr-revocation-registry-controller/pull/6
    • Eip712 missing methods by @DennisVonDerBey in https://github.com/spherity/ethr-revocation-registry-controller/pull/7
    • Eip712 finalization by @DennisVonDerBey in https://github.com/spherity/ethr-revocation-registry-controller/pull/8

    Full Changelog: https://github.com/spherity/ethr-revocation-registry-controller/compare/1.2.3...1.2.4

    Source code(tar.gz)
    Source code(zip)
  • 1.2.3(Sep 14, 2022)

    What's Changed

    • fix: handling provider and rpcUrl settings in constructor by @strumswell

    Full Changelog: https://github.com/spherity/ethr-revocation-registry-controller/compare/1.2.2...1.2.3

    Source code(tar.gz)
    Source code(zip)
  • 1.2.2(Sep 14, 2022)

    What's Changed

    • Fix js imports by @DennisVonDerBey in https://github.com/spherity/ethr-revocation-registry-controller/pull/4
    • Build pipeline by @DennisVonDerBey in https://github.com/spherity/ethr-revocation-registry-controller/pull/5

    Full Changelog: https://github.com/spherity/ethr-revocation-registry-controller/compare/1.2.1...1.2.2

    Source code(tar.gz)
    Source code(zip)
  • 1.1.0(Sep 7, 2022)

    What's Changed

    • chore: update readme by @strumswell in https://github.com/spherity/ethr-revocation-registry-controller/pull/1
    • Add methods by @DennisVonDerBey in https://github.com/spherity/ethr-revocation-registry-controller/pull/2

    New Contributors

    • @strumswell made their first contribution in https://github.com/spherity/ethr-revocation-registry-controller/pull/1
    • @DennisVonDerBey made their first contribution in https://github.com/spherity/ethr-revocation-registry-controller/pull/2

    Full Changelog: https://github.com/spherity/ethr-revocation-registry-controller/commits/1.1.0

    Source code(tar.gz)
    Source code(zip)
Owner
spherity
spherity
Your Ethereum control panel. Interact with smart contracts on Ethereum.

etherfunk Your Ethereum control panel. Interact with smart contracts on Ethereum. ?? https://etherfunk.io ?? Devleopment First, run the development se

Tom Quirk 23 Sep 24, 2022
Cindy Dorantes 12 Oct 18, 2022
Ajayi Ridwan 7 Oct 21, 2022
Inside-out promise; lets you call resolve and reject from outside the Promise constructor function.

Inside-out promise; lets you call resolve and reject from outside the Promise constructor function.

Lily Scott 3 Feb 28, 2022
chain-syncer is a module which allows you to synchronize your app with any ethereum-compatible blockchain/contract state. Fast. Realtime. Reliable.

Chain Syncer Chain Syncer is a JS module which allows you to synchronize your app with any ethereum-compatible blockchain/contract state. Fast. Realti

Miroslaw Shpak 10 Dec 15, 2022
Chris Siku 13 Aug 22, 2022
Resolve parallel promises in key-value pairs whilst maintaining type information

async-kv Resolves promises in key-value pairs maintaining type information. Prerequisites NodeJS 12 or later Installation npm i async-kv yarn add asyn

Tony Tamplin 4 Feb 17, 2022
App that allows you to control and watch YouTube videos using hand gestures. Additionally, app that allows you to search for videos, playlists, and channels.

YouTube Alternative Interaction App An app I made with Edward Wu that allows you to search and watch videos from YouTube. Leverages Google's YouTube D

Aaron Lam 2 Dec 28, 2021
An npm package for demonstration purposes using TypeScript to build for both the ECMAScript Module format (i.e. ESM or ES Module) and CommonJS Module format. It can be used in Node.js and browser applications.

An npm package for demonstration purposes using TypeScript to build for both the ECMAScript Module format (i.e. ESM or ES Module) and CommonJS Module format. It can be used in Node.js and browser applications.

Snyk Labs 57 Dec 28, 2022