scrtlabs / Grants

Repository for grant proposal submissions
38 stars 28 forks source link

grant proposal: Secret Oracles: provide price feed data on-chain #65

Open vojtech-vrba opened 2 years ago

vojtech-vrba commented 2 years ago

Grant category

Referring to: https://github.com/scrtlabs/Grants

Secret Oracles: provide price feed data on-chain

High-level description of the project

This project aims to bring Chainlink price feeds directly to the Secret network. So any app can work with reliable price feed data without having to leave the Secret Network.

Referring to 2021 Devpost hackathon: https://devpost.com/software/chainlink-oracles-bridge-to-secret-network#updates

The basic idea is to provide added value to developers on Secret network by providing on-chain data from Chainlink on Ethereum , so they can use such oracles within their smart contract without a need to asynchronously use chainlink or other oracle providers

Problem / solution

Speed is what matters at first. Fees are what matter second.

Writing and operating smart contract in some cases requires access to off-chain data (like price feeds) and using oracle networks like chainlink is reliable, but creates small problém. Such data are not available on the fly, smart contract needs to initiate call of oracle network, than is suspended and waits for chainlink to answer within next blocks. So, Chainlink started to write such data directly into Ethereum blockchain, so smart contract can get such data within their run without interuption and waiting for asynchronous answer.

We would like to build a system, which will be operated by us (for defined time period) , which periodically copy data from Ethereum (and quite easily could be added other data sources) and writes them to Secrert blockchain, so any smart contract could read them and utilize them within their run.

The primary goal of such solution is to provide other smart contract developers option for using such data and honestly speaking, without intentention to be 100% reliable and decentralized and to build complete ekosystém as chainlink. Plan is to provide commonly usable data on chain, so developers could use them within their contracts. In case they need 100% reliability and decentralized solution, they shall use chainlink or other oracle networks with their fees and principles. But we strongly believe that for Secret network is added value to provide such service for their developers even with small risk of hacks and malfunction.

Product description

Building a Mirror-like feed will be the quickest way to connect your smart contracts to the real-world market prices of assets. For example, one use for data feeds is to enable smart contracts to retrieve the latest pricing data of an asset in a single call.

Data batches will be packed into a single aggregate transaction, saving a significant amount of gas — using Chainlink OCR.

Project components:

Data collector - An Ethereum Network client: to pull Chainlink contracts data, or listen to their emitted events

The dedicated Secret contracts that get updated by the off-chain service and their data consumed by other contracts

Team

Vojtech Vrba

⁕ +25 years IT project manager and architect ⁕ worked with large scale systems ⁕

Experience with fintech and telco Vojta is an all-around experienced IT project manager and architect. He enjoys the challenges of working with diverse technologies at all layers of the computing platform. He helped in building large-scale solutions for telecommunication companies and banks.

Petr Hejda

⁕ +10 years senior developer ⁕ Solidity tutor and designer Mentoring Solidity devs, providing tech analyses, code reviews, and other blockchain-related services. The #1 top-rated blockchain developer globally on Stack Overflow for Solidity and Ethereum

Kamil Tomas

⁕ +15 years senior frontend developer ⁕ React, Solidity, Javascript System engineer and software developer offering 10+ years of experience in IT and 5+ years of product management and development expertise. Well-versed in direct development and enhancement of IT products. Gifted coordinator with natural leadership talents, solution-oriented approach to problem-solving, and expertise in mapping out effective strategies.

https://github.com/ktomascz

Petr Bohm

⁕ +20 years senior backend developer ⁕ Solidity, Rust, Javascript, Typescript, Node.js, Wasm, .NET Core (C#)

Software architect, designer, and developer focused on scalable data-intensive applications and distributed systems. Databases, microservices, performance optimizations, CI/CD, operations, tech leading, team leading, mentoring. Big fan of cryptography, decentralization, and privacy

github.com/ct0r

Jiri Andras

⁕ +12 years senior full-stack developer ⁕ nodeJS, c#, Rust, Solidity He has experience designing and developing backend systems in different programming languages, microservice architecture, and DevOps. Now focused on blockchain development.

https://github.com/oliverjantar

Jan Kubíček

⁕ +20 years senior UX designer and developer ⁕ Solidity, Javascript He has gone through many projects, from websites to games to analytical tools for crypto exchanges. He founded his graphic design outsourcing project, which he successfully sold. He now focuses on a comprehensive approach to creating blockchain applications from a user experience perspective.

Filip Dite

⁕ +15 years of consultancy, marketing, and business development ⁕ Blockchain, Growth, Digital marketing He has gone through many companies in a consultant, interim manager, employee, and contractor positions. I specialized in growth, which meant a combination of marketing, sales, and recruitment. Helped companies to start-up in new markets. More than five years of experience in the blockchain and crypto space as a project leader and advisor.

Blockchain 42 links:

https://github.com/blockchain42

https://cleverlance.com/blockchain42

Milestones and budget

Milestone 1 (2 weeks) - Demo - $3,000

Milestone 2 (8 weeks) - Prototype - $20,000

Milestone 3 (4 weeks) - Launch - $12,500

(Milestone 4 (?) - Tokenomics implementation)

assafmo commented 2 years ago

Hi @vojtech-vrba, the description is a bit off IMO, as TLS connections are not allowed in the context of a blockchain. Later on you describe an ETH->Secret relayer of Chainlink data, and a secret contract that stores the data on Secret, which is unrelated to "TLS connection from validator enclaves". Therefore I would ask you to edit either the intro or the project description to accurately reflect your proposal.

Also, in the project description please specify how users on Secret can verify the validity of the data that's stored inside the secret contract.

vojtech-vrba commented 1 year ago

Halo,

I have updated the title and description to reflect your comments. Regarding TLS, it was in SCRT list of grants, we just copied the name of category. And regarding validity of the data stored onchain, it is better explained in updated description. We would be happy to dicusss our proposal in more details and we already have made a pilot, which we can share with you guys.

Thank you

Vojtech

From: Assaf Morami @.> Sent: Monday, July 4, 2022 7:11 PM To: scrtlabs/Grants @.> Cc: Vojtěch Vrba @.>; Mention @.> Subject: Re: [scrtlabs/Grants] grant proposal: Secret Oracles: Build TLS connection from validator enclaves to certain APIs to create private data feed for secret contracts (Issue #65)

Hi @vojtech-vrbahttps://github.com/vojtech-vrba, the description is a bit off IMO, as TLS connections are not allowed in the context of a blockchain. Later on you describe an ETH->Secret relayer of Chainlink data, and a secret contract that stores the data on Secret, which is unrelated to "TLS connection from validator enclaves". Therefore I would ask you to edit either the into or the project description to accurately reflect your proposal.

Also, in the project description please specify how users on Secret can verify the validity of the data that's stored inside the secret contract.

— Reply to this email directly, view it on GitHubhttps://github.com/scrtlabs/Grants/issues/65#issuecomment-1174013847, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AX7HPYB6OA5PEJWELFFNNDDVSMLJ7ANCNFSM52TF4ZVQ. You are receiving this because you were mentioned.Message ID: @.**@.>>

JayScrtNetwork commented 1 year ago

I was just informed this grant can not be supported at this time. Market conditions being the main factor. Feel free to resubmit once sentiment changes. As always, thank you for your interest in SN

ja88a commented 1 year ago

You can refer to my repo Chainlink-eth-SecretNetwork and its wiki for a quite solid bootstrap of this solution/approach imho: a nestjs data collector with an ethers.js client, data feeds definition with eth chainlink contracts as source, a Kafka event streaming system, secretjs SDK integration to push changes validated by a given number of operating nodes, and basic scrt oracle contracts. A distributed cache is missing to address the necessary off-chain nodes' scalability, and the verification protocol for the data source validity is actually missing. I considered nodes validation using a solution like MarbleRun... quite a topic!