0.0.1 • Published 7 years ago

uport-contracts v0.0.1

Weekly downloads
1
License
ISC
Repository
-
Last release
7 years ago

uport-contracts

Solidity code, tests, and deployment information on the contracts used for uPort.

Spoiler Alert: The easiest way to use them is with uport-contracts-js, which is a package that is made to work with Web3. This package will only give you access to a json object, -> containing keys for each contract -> containing keys for:

  • ABI Definitions (sometimes called the 'json interface')
  • networks (including all deployment addresses!!!)
  • contract_name
  • unlinked_binary Browse the data

Use this repo as a package if you need a super-light-weight thing with zero dependencies. If you only need the ABI definitions, and/or contract addresses, this is the package for you! (otherwise --> uport-contracts-js)

uPort

Please read our Whitepaper for information on what uPort is, and what is currently possible as far as integration.

Contracts

This repository contains the contracts currently in use by uPort. This is also where you find the addresses of these contracts currently deployed on Ropsten and Mainnet.

Proxy

This is the main identity contract. All your transactions are forwarded through this contract which acts as your persistent identifier.

RecoverableController

This is a controller which plugs in to the proxy contract. It gives you the ability to have one key that can make transactions through the proxy, but can't change the owner of the proxy, and another key that acts as a recovery key that can change the owner of the proxy. This gives you the ability to store a recovery key in cold storage while you can use your main key for regular transactions. If your main key is lost you can change it using the recovery key from cold storage.

RecoveryQuorum

This contract plugs into the RecoverableController to provide recovery with a n-of-m setup. This allows for creating recovery networks consisting of your friends.

UportRegistry

This contract is used to store information related to your identity.

npm install uport-contracts

Contributing

Want to contribute to uport-contracts? Cool, please read our contribution guidelines to get an understanding of the process we use for making changes to this repo.