Skip to content
This repository has been archived by the owner on Jun 29, 2020. It is now read-only.

(Feature) Add ERC-725/ERC-735 implementation #83

Closed
unjapones opened this issue Nov 29, 2018 · 0 comments
Closed

(Feature) Add ERC-725/ERC-735 implementation #83

unjapones opened this issue Nov 29, 2018 · 0 comments
Assignees

Comments

@unjapones
Copy link
Contributor

What follows assumes that the implementation will be similar to Proof of Physical Address poa-popa

Feel free to create issues for each of the following implementation steps (may be doable via Waffle).

1. Add ERC-735 claim generation endpoint for verified bank accounts.

Basically the backend needs to provide the following ERC-735 data fields:

  • topic or claimType: value 7 (as stated in poa-popa, stands for KYC).
  • scheme: 1 (ECDSA)
  • issuer: PoBA's identity contract address or the address used to sign/create the signature field value; see below.
  • signature: generated by the backend.
  • data: hash of an existing PoBA proof of bank account.
  • uri: ideally, the location of the claim, but since we don't store it anywhere (the user may add it to his/her identity contract) we might assign PoBA's URL here.

The endpoint may also verify that the corresponding proof of bank account exist in PoBA's contract, prior to erc-735 claim generation.

2. Add UI page/component

Add UI page/components so the UI can send the ERC-735 claim generation endpoint the data that it needs. This page/component will also perform the following:

  • query PoBA's contract for the data: bank name and the names returned by Plaid's identity service.
  • prompt for the user's identity contract address.

The UI may also show the ERC-735 claim data generated and will offer the user the option to perform an execute + addClaim (ERC-725 standard methods) to add the claim to his/her identity contract.

3. Add PoBA contract that allow ERC-735 claim signature verification

PoBA will need to deploy an contract that will be used to verify the signature generated for the ERC-735 claims. Usually, this involves processing the claim's fields claimType, data and signature to recover the address of the issuer, which should result in the contract mentioned above. Later, an extra verification step includes checking that PoBA's identity contract (the calculated contract address) has the key with claim purpose.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant