Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Proof of Bank Account #15

Open
fvictorio opened this issue Apr 25, 2018 · 2 comments
Open

Proof of Bank Account #15

fvictorio opened this issue Apr 25, 2018 · 2 comments

Comments

@fvictorio
Copy link

Title

  Title: Proof of Bank Account
  Layer: DApps

Abstract

Create a Dapp that allows validators to prove ownership of some bank account.

Rationale

See Igor's post.

Implementation

The PoBA dapp will consist of a frontend that uses the Plaid plugin, a server, a
PoBA smart contract and an ERC780 (claims registry) smart contract.

The data flow will be like this:

  • A user goes to the dapp and clicks a button to link their bank account.
  • The Plaid plugin shows a modal where the user can log in to their bank.
  • This generates a token that the server can use to access the user's bank
    accounts. Since there can be more than one, we'll use the first one for now
    (something to improve in a later iteration).
  • The server signs a combination of the wallet address and the bank account
    identifier (and maybe some extra data) and generates some transaction data
    that sends back to the client.
  • The user gets the Metamask popup to approve the transaction. Since the
    transaction data is signed, the PoBA smart contract can know that the server
    originated that information.
  • The PoBA smart contract associates the bank account information to that wallet
    address and saves the claim to the ERC780 registry. We should define the
    content of the key and value of the claim. We can start with using the hash of
    the data as a key (like we do in PoPA) and just any non-zero value as the
    value.

Note that, unlike PoPA, here the registration and confirmation are done in the
same step (since we don't need to wait for a postcard to arrive to the user's
home).

As mentioned, once this prototype is working, the next step is to allow the user
to choose which bank account to link to their address.

@6proof
Copy link

6proof commented Apr 29, 2018

Very good. This method efficiently uses existing systems. Are individual banks / financials required to be members in the Plaid network to participate? Great concept.

@fvictorio
Copy link
Author

Are individual banks / financials required to be members in the Plaid network to participate?

I think so, yes. If we rely on their service to validate accounts, then the bank will need to be supported by Plaid.

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

No branches or pull requests

2 participants