Abstract

As blockchain-based applications and research such as cryptocurrency increase, an oracle problem to bring external data in the blockchain is emerging. Among the methods to solve the oracle problem, a method of configuring oracle based on TLS, an existing internet infrastructure, has been proposed. However, these methods currently have the disadvantage of not supporting privacy protection for external data, and there are limitations in configuring the process of a smart contract based on external data verification for automation. To solve this problem, we propose a framework consisting of middleware of external source server, data prover, and verification contract. The framework converts the data signed in the web server into a proof that the owner can prove with zk-SNARKs and provides a smart contract that can verify this. Through these procedures, data owners not only protect their privacy by proving themselves, but they can also automate on-chain processing through smart contract verification. For the proposed framework, we create a proof using libsnark for server data and show the performance and cost to verify with Solidity the smart contract language of the Ethereum platform.

Highlights

  • Smart contract is a program that runs on a blockchain and is used to build various decentralized applications such as games, insurance, and finance

  • Blockchain consensus is verified only for elements that must be verified by an internal system, and functions implemented in smart contracts guarantee the execution of input data, but do not guarantee the reliability of the data

  • We intend to provide an environment in which data owners can directly prove it and smart contracts can verify it in order to implement Oracle on the blockchain

Read more

Summary

Introduction

Smart contract is a program that runs on a blockchain and is used to build various decentralized applications such as games, insurance, and finance. We intend to provide an environment in which data owners can directly prove it and smart contracts can verify it in order to implement Oracle on the blockchain. ZoKrates, a tool that supports verification of off-chain operations generated outside the blockchain, guarantees the privacy of data executed by smart contracts based on zero-knowledge proof. The main function of the framework is to enable smart contracts to automate offchain operation verification while supporting data authentication and privacy protection. Proposal of Interface for Developer Convenience: Design for the privacy of the prover provides an oracle interface that can be written in Solidity so that a smart contract developer can verify a proof including authentication of external data to solve a problem difficult to implement.

Blockchcin and Smart Contract
Oracle with TLS
Deploy Contract for Oracle
Privacy Protection for Users
Signing from Data Source
Implementation
Pre-Processing of Smart Contracts
Middleware
Proof Generation
Evaluation
Related Work
Conclusions

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.