Inspiration

Privacy is a major concern online for personal use and businesses. Chainlink functions is an entirely public service. Three major components can be redesigned to improve the privacy of users: public payment for service, publicly accessible data, and public blockchain transactions. OpenGate set out to tackle the public payment-for-service issue during this hackathon.

What it does

OpenGate is a 3rd party service provider offering private user data requests and computation.

How we built it

OpenGate combines chainlink functions and a private blockchain built with Besu to allow anonymous users to submit data to execute a chainlink functions service. Users download our application, upload the source code, review the cost estimation in USD, click to execute the transaction which prompts them to sign an L2 transaction through a private blockchain (Besu), and w/in a short time, receive their requested data or computation output. Behind the scenes, the front end calls a DONconsumer contract and makes a request to the DON network on the anonymous user's behalf.

Challenges we ran into

Chainlink functions flow is very restricting. It is only available on a limited few public blockchains, requires a public payment for service, and delivers publicly available data. Private blockchains are difficult to set up and run. Previously available privacy solutions are no longer available. Bridging data L2 -> L1 is difficult, costly, and slow. It was challenging to design the front end to provide a decent user experience that connects to L2 and L1 to make a DON request.

Accomplishments that we're proud of

OpenGate is proud to address the 'public payment' challenge! It's one of the many challenges ahead and one of the many options available to bring privacy into API calls.

What we learned

We learned some of the complexities of chainlink functions, the current status of L2 privacy solutions such as Starknet and Aztec, the complexities of using Besu, and the complexities of buildings a front end that connects these blockchain systems together while also providing a decent user experience.

What's next for OpenGate

OpenGate has many options available to improve privacy. Some of the options include:

  • Use mainnet privacy blockchain for private value transfer and identity
  • Bridge data requests from a privacy chain into an EVM-compatible chain
  • Accept DON requests from the privacy chain
  • Encrypt input and output data
  • Bring chainlink functions into a privacy-enabled blockchain We will be tackling one or more of these options depending on future outlooks.

Built With

Share this project:

Updates