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

hyperfridge #2096

Merged
merged 7 commits into from
Nov 23, 2023
Merged

hyperfridge #2096

merged 7 commits into from
Nov 23, 2023

Conversation

wstrametz
Copy link
Contributor

Project Abstract

With our previous grant FIAT-on-off ramp users are able to "plug in" their bank account into the Polkadot network. This means being able to query balances and transactions and trigger new transactions (wire-transfers) using an off-chain-worker. The aim of Hyperfridge is to make this process trustless through the usage of Zero-Knowledge Proofs and Multi Party Computation. As a result, we are able to create and consume events on-chain from any bank account supporting ISO20022/Ebics standards which thousands of banks support. This reduces information asymmetry between FIAT and Crypto and eliminates the need of FIAT-intermediaries except for the bank serving the account holder - with full proof of (correct) computation adding the property of soundness to the system.

Grant level

  • Level 1: Up to $10,000, 2 approvals
  • Level 2: Up to $30,000, 3 approvals
  • Level 3: Unlimited, 5 approvals (for >$100k: Web3 Foundation Council approval)

Application Checklist

  • The application template has been copied and aptly renamed (project_name.md).
  • I have read the application guidelines.
  • Payment details have been provided (bank details via email or Polkadot (USDC & USDT) or BTC address in the application).
  • The software delivered for this grant will be released under an open-source license specified in the application.
  • The initial PR contains only one commit (squash and force-push if needed).
  • The grant will only be announced once the first milestone has been accepted (see the announcement guidelines).
  • I prefer the discussion of this application to take place in a private Element/Matrix channel. My username is: @_______:matrix.org (change the homeserver if you use a different one)

Copy link
Contributor

github-actions bot commented Nov 9, 2023

CLA Assistant Lite bot All contributors have signed the CLA ✍️ ✅

@wstrametz
Copy link
Contributor Author

I have read and hereby sign the Contributor License Agreement.

@wstrametz
Copy link
Contributor Author

recheck

@dastansam
Copy link
Contributor

I have read and hereby sign the Contributor License Agreement.

@wasabrot
Copy link
Contributor

wasabrot commented Nov 9, 2023

I have read and hereby sign the Contributor License Agreement.

@keeganquigley keeganquigley self-assigned this Nov 13, 2023
Copy link
Contributor

@keeganquigley keeganquigley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the application @wstrametz this looks really interesting. I have a couple of initial comments:

  • Great job of describing technical details in the application, but could you also integrate these into the milestone tables themselves?
  • Docker and unit tests are usually part of the mandatory deliverables 0c. and 0d. section, so these could be moved up and swapped out with 0c. "Swagger" which is not a mandatory deliverable and should be moved down into the numbered list. If you could adjust these that would help adhere to the application template.
  • I'm not quite sure why a stablecoin app is needed in M4. I don't see much info about it in the application, could you provide more details about its purpose?

Thanks!

@keeganquigley keeganquigley added the changes requested The team needs to clarify a few things first. label Nov 14, 2023
@wstrametz
Copy link
Contributor Author

Thanks a lot for feedback @keeganquigley! The hyperfridge crate can be used independently from the node for sure, thats also our goal. The reason why we would like to add a node is to show a simple-enough application how the crate is used in a node - but more importantly - to show the whole “round-trip” which includes triggering state changes on be bank account as well (not only reading, also writing). So it shows how to create a wire-transaction safely on-chain in a kind-of 2-phase-commit: first we need to send the instructions to the backend and thus tell the bank account to do a wire-transfer. Only after we see that this transaction has been executed by checking daily statement of the bank account, can we “commit” this transaction on-chain in a node to make it public. The crate only provides the lower level APIs to do so, but should not provide the logic e.g. to which bank account the funds should be transferred. This is by intention, because we want the crate to be as low level and flexible as possible. The app with the stable coin shows how to work with the crate end-to-end, therefore we would like to add it. Please me know your thoughts on that. Regarding your other request - I will add more details on API level to Milestone 4 based on the specifications of the FIAT-on-off-ramp.

Copy link
Contributor

@keeganquigley keeganquigley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the explanation @wstrametz could you also implement the other requested changes as well? That will help it adhere to the template.

Copy link
Collaborator

@Noc2 Noc2 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks a lot for the application. It sounds interesting. I would mostly be interested in learning more about your long-term funding plans and the future of the project. Ideally, you are either getting funding via VCs at some point or you focus on being a "common good" project and you are requesting funds from the treasury. The grants program tries to not support projects over a longer period of time.

@wstrametz
Copy link
Contributor Author

Thanks for the explanation @wstrametz could you also implement the other requested changes as well? That will help it adhere to the template.

Hi @keeganquigley - I updated the requested things now.

@wstrametz
Copy link
Contributor Author

Thanks a lot for the application. It sounds interesting. I would mostly be interested in learning more about your long-term funding plans and the future of the project. Ideally, you are either getting funding via VCs at some point or you focus on being a "common good" project and you are requesting funds from the treasury. The grants program tries to not support projects over a longer period of time.

@Noc2 - thx for feedback - not sure if this is positive or negatve :) .. I think the base technology (libs) should be common good and kept free of tokens or mandatory commercial services - banking APIs are easy to access and we should not do worse. If the idea gets traction, it might help the whole industry to use blockchain-tech to adapt real world scenarios, because we do not need tokens to transfer value (they still might represent it - like wo do with proposed stablecoin app). I am looking at that problem for quite some time with different implementations and also experimented with ZK proofs to make it trustless. Up to now - unzipping files, parsing XML etc. was not quite doable in reasonable time with existing circuit technology - risc0 finally does the job. The ask in the grant is as small as possible but tries do be complete to achieve soundness - e.g. we do not implement transaction inclusion proofs as described in the whitepaper or aim at parachain (which would make perfect sense). But we can be trustless for on- and off-ramping, and get more confident with the tech (e.g. execution time, using recursive proofs on transaction table, Snark the stark for on-chain verification) to define next steps which would give us a much better position to ask treasury or a VC. Let me know if this makes sense - you have more experience how to get such things started. I m very interested in long-term funding and "all-in" if its makes sense to push it now.

@wstrametz wstrametz requested a review from Noc2 November 16, 2023 15:13
Copy link
Contributor

@keeganquigley keeganquigley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your answers @wstrametz I'm happy to see that @dastansam research is being used, and excited for the prospects of what ISO20022 can bring to the table. Also partly based on your previous work, I'm happy to go ahead with it. I will mark it as ready for review and ping the rest of the committee.

@keeganquigley keeganquigley added ready for review The project is ready to be reviewed by the committee members. and removed changes requested The team needs to clarify a few things first. labels Nov 17, 2023
Copy link

@SBalaguer SBalaguer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Based on the previous discussions I'm happy to support this. Excited about seeing this being available for everyone to integrate, and eventually becoming a used product of Polkadot.

@Noc2 Noc2 merged commit 84a81f3 into w3f:master Nov 23, 2023
9 checks passed
Copy link
Contributor

Congratulations and welcome to the Web3 Foundation Grants Program! Please refer to our Milestone Delivery repository for instructions on how to submit milestones and invoices, our FAQ for frequently asked questions and the support section of our README for more ways to find answers to your questions.

Before you start, take a moment to read through our announcement guidelines for all communications related to the grant or make them known to the right person in your organisation. In particular, please don't announce the grant publicly before at least the first milestone of your project has been approved. At that point or shortly before, you can get in touch with us at [email protected] and we'll be happy to collaborate on an announcement about the work you’re doing.

Lastly, please remember to let us know in case you run into any delays or deviate from the deliverables in your application. You can either leave a comment here or directly request to amend your application via PR. We wish you luck with your project! 🚀

@Polkadot-Forum
Copy link

This pull request has been mentioned on Polkadot Forum. There might be relevant details there:

https://forum.polkadot.network/t/hyperfridge-zk-web-proofs-for-tradional-financial-backends-tradfi/8637/1

@keeganquigley
Copy link
Contributor

Hi @wstrametz I believe that milestone 5 is all that is needed to complete the grant. Can you provide a quick update on it? Thanks!

@dastansam
Copy link
Contributor

Hi @wstrametz I believe that milestone 5 is all that is needed to complete the grant. Can you provide a quick update on it? Thanks!

Hey @keeganquigley, it's coming along well. Will submit the milestone in the coming days. Thanks!

@wstrametz
Copy link
Contributor Author

Hi @wstrametz I believe that milestone 5 is all that is needed to complete the grant. Can you provide a quick update on it? Thanks!

Hey @keeganquigley, it's coming along well. Will submit the milestone in the coming days. Thanks!

Thanks for answering @dastansam !

@keeganquigley
Copy link
Contributor

Hi @wstrametz @dastansam just checking in.

@dastansam
Copy link
Contributor

Hi @wstrametz @dastansam just checking in.

hey sorry for late reply, we are working on it.

@keeganquigley
Copy link
Contributor

Hi @dastansam @wstrametz I don't believe we have received a delivery yet. Do you plan to submit one soon?

@keeganquigley
Copy link
Contributor

Hey @wstrametz @dastansam let me know if you are still working on it. Any further delays would need an amendment. Thanks.

@dastansam
Copy link
Contributor

Hey @wstrametz @dastansam let me know if you are still working on it. Any further delays would need an amendment. Thanks.

hey @keeganquigley if we won't finish by the end of this week, we will open an amendment PR. We are dealing with some dependency version issues. Thanks

@keeganquigley
Copy link
Contributor

Hi @dastansam any luck fixing the issues? Can you provide an update?

@dastansam
Copy link
Contributor

Hi @dastansam any luck fixing the issues? Can you provide an update?

hey,

we are doing the amendment. expect a PR from us soon. thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready for review The project is ready to be reviewed by the committee members.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants