Skip to content

A privacy-preserving solution for transparent transaction auditing using zero-knowledge proofs.

License

Notifications You must be signed in to change notification settings

openflow-labs/openflow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 

Repository files navigation

OpenFlow

License: AGPLv3

OpenFlow: Privacy-Preserving Financial Auditing

Project Overview

OpenFlow is a tool designed to ensure transparency in financial transactions while preserving privacy. It leverages zero-knowledge proofs to allow organizations to audit transactions publicly without exposing the identities of the involved third-parties.

Whether you're managing institutional payments, political campaigns, or welfare transactions, OpenFlow ensures transparency without compromising privacy.

Demo

Explore the demo video and view an instance of the app here, showcasing real donation data from the Independiente Football Club fundraiser led by Santi Maratea in 2023. You can view donation amounts, dates, and verify each transaction made via Mercado Pago, all while keeping donor data confidential.

Repository Structure

Find the different parts of this project in the links below.

How does it work?

OpenFlow uses cutting-edge cryptography to balance transparency and privacy in financial transactions. The following steps, illustrated in the accompanying flowchart, summarize how OpenFlow processes an institution's transactions into a traceability report:

flowchart TD
    A[.eml Email File] --> B[ZK Regex and ZK Email]
    B --> C[Generate JSON]
    C --> D[
        JSON:
        - name
        - description
        - image_url
        - external_url
        - attributes:
            - proof
            - amount
            - type
            - date
            - reference_id
    ]
    D --> E[Upload JSON to IPFS/FileCoin \n via LightHouse]
    E --> F[Mint CID]
    F --> G[Sign Transaction]
    G --> H[Send RPC Calls]
    H --> I[zkSync RPC]
    H --> J[Avalanche RPC]
    H --> K[Polygon RPC]
    I & J & K --> L[NFT Indexing Instance]
    
    style D fill:none,stroke:#333,stroke-width:1px,stroke-dasharray: 5 5

Loading
  1. Setup Campaign: Organizations setup and initiate an OpenFlow campaign. They determine on which blockchain the transaction certificates will be minted (e.g., Zksync, Avalanche, Polygon) and establish the payment method (e.g., Mercado Pago).
  2. Register Transactions: Transactions from third-parties that send funds to the organization, or receive funds from it, are registered by OpenFlow backend, which generates a JSON containing the details of the transaction email and zero-knowledge proof that the transaction occurred, all while keeping identities of these third-parties private.
  3. Upload to Decentralized Storage: The JSON associated with each transaction is uploaded to IPFS and FileCoin via LightHouse.
  4. Mint NFTs: NFTs corresponding to these JSONs are minted on the blockchain chosen by the institution.
  5. Real-time Public Reports: The public can access real-time, transparent reports showing how the funds move and eventually reach their intended destination, ensuring accountability.

About

OpenFlow is an open-source project developed by Nicolás Biondini, Yago Pajariño, Alejandro Almaraz, Nicolás Acosta and Arturo Beccar-Varela. With expertise in blockchain, cryptography, and front-end development, we aim to bring trust and privacy to financial transactions.

Acknowledgements

OpenFlow was initially developed as part of the Aleph Crecimiento Hackathon, 2024. We participated in this hackathon through the PSE Core Program, where we deepened our knowledge of programmable cryptography and zero-knowledge proofs.

In partnership with D&D Fundacion, we are committed to solving the transparency and privacy challenges that institutions face when handling funds of public interest.

License

This project is licensed under the AGPLv3 License - see the LICENSE file for details. Contact us if you're looking for an exception to the terms.

About

A privacy-preserving solution for transparent transaction auditing using zero-knowledge proofs.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published