Code Monkey home page Code Monkey logo

private-data-objects's Introduction

Hyperledger Private Data Objects

Private Data Objects (PDO) enables sharing of data and coordinating action amongst mutually distrusting parties. Interaction is mediated through a “smart contract” that defines data access and update policies that are carried with the object regardless of where it resides or how often it changes hands. The smart contracts policies are enforced through execution in a Trusted Execution Environment (TEE).

PDO uses a distributed ledger to ensure that there is a single, authoritative instance of the object, and to provide a means of guaranteeing atomicity of updates across interacting objects. The long-term goal for PDO is to perform contract execution and storage off the blockchain, with only a hash of blockchain state stored on the distributed ledger

PDO provides benefits for both application developers seeking to define and implement privacy-preserving distributed ledgers, and for service providers seeking to provide blockchain services.

For the application developer, smart contracts implemented with PDO ensure that contract state is completely hidden from all participants, including contract validators, and allows contracts to be stored off-chain. Policies and data are bound up together in the PDO smart contract; polices travel with the data no matter how the smart contract object is shared or with whom. The PDO smart contact provides an enforceable agreement for multi-party data sharing and analytics.

For service providers, PDO provides scalable performance; separation of contract execution from ordering allows the performance of contract execution to scale with available hardware. Because PDO contract execution occurs off the blockchain, redundancy is limited to the applications requirements rather than the entire blockchain, providing fewer potential targets for compromise.

Documentation

Instructions for installing/building Hyperledger Private Data Objects can be found in the BUILD documentation.

The USAGE document describes what you can do with a functional PDO installation.

For more information about how Private Data Objects work, see the SPECIFICATION document.

A presentation about Private Data Objects is available HERE.

Project Status

Hyperledger Private Data Objects operates as a Hyperledger Labs project. This code is provided solely to demonstrate basic PDO mechanisms and to facilitate collaboration to refine PDO architecture and define minimum viable product requirements.

Initial Committers

Sponsor

Dan Middleton ([email protected])

License

Hyperledger Private Data Objects software is released under the Apache License Version 2.0 software license. See the license file for more details.

Hyperledger Private Data Objects documentation is licensed under the Creative Commons Attribution 4.0 International License. You may obtain a copy of the license at: http://creativecommons.org/licenses/by/4.0/.

private-data-objects's People

Contributors

akareem89 avatar andmiele1 avatar bvavala avatar byron-marohn avatar cmickeyb avatar eugeneyyy avatar g2flyer avatar tkuhrt avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.