Code Monkey home page Code Monkey logo

hyperledgerenergy's Introduction

IBM Blockchain Overview

Hyperledger

Hyperledger is an umbrella project of open source blockchains and related tools, started in December 2015 by the Linux Foundation, to support the collaborative development of blockchain-based distributed ledgers.

The Blockchain Distributed Ledger

hyperledger architecture

Blockchain main components

Ordering Service – Ordering and synchronizing transactions

... the ordering service is the definition of the network. It contains identity information for each member, information on channels and a set of policies dictating which members are permitted to perform certain tasks (e.g. invite other members, create channels, etc.). Every transaction and configuration operation will flow through the ordering service, so it’s a beyond critical piece in the overall scheme of things.......

Consensus

Consensus is the process by which a network of nodes provides a guaranteed ordering of transactions and validates the block of transactions. Consensus must provide the following core functionality: • Confirms the correctness of all transactions in a proposed block, according to endorsement and consensus policies. • Agrees on order and correctness and hence on results of execution (implies agreement on global state). • Interfaces and depends on smart-contract layer to verify correctness of an ordered set of transactions in a block

Consensus Algorithm: Kafka

Certificate Authority – Issuing certificates to participants

To put it simply, the Certificate Authority (CA) provides membership. All entities in the network (peers, orderers, clients, etc.) must have an identity to communicate, authenticate and ultimately transact. These “identities” exist in the form of x509 certificates (i.e. enrollment certificates), which are required for any direct participation in the blockchain network....

Peer – Validating/endorsing transactions

The peer exists to perform two main functions: execute/validate transactions & maintain ledgers. The peer runs smart contracts, and is the holder of transaction history and the current state of assets on the network’s channels. At the end of the day it’s all about accessing the peer (directly or indirectly) and performing reads and writes against the ledger. When a member provides an end user access to the network, they’re really providing access to the functionality of the peer.
https://console.bluemix.net/docs/services/blockchain/index.html#ibm-blockchain-platform

Hyperledger helloworld 2

Chaincode written in Go or Java

blueband

Blockchain Usecases

Blockchain usecases from IBM

Blockchain Developer Patterns

Decentralized Energy

Create your first blockchain network using Hyperledger Composer

Deploy an asset-transfer app using blockchain

Blockchain Developer Patterns

blueband

Development with Hyperledger Composer, Hyperledger Fabric and the IBM Cloud

Step 1: In Composer, develop and run your business network datamodel. Export .bna file

Step 2: Develop and run your Angular + .bna file + Fabric app locally

Step 3: Deploy your app to the IBM Blockchain Platform on the IBM Cloud.

How did it all start?

October 2008 It all started with Satoshi Nakamoto and his paper Bitcoin: A Peer-to-Peer Electronic Cash System which addressed a key problem in electronic commerce:

Double Spending

The first work on a cryptographically secured chain of blocks was described in 1991 by Stuart Haber and W. Scott Stornetta.[17] In 1992, Bayer, Haber and Stornetta incorporated Merkle trees to the design, which improved its efficiency by allowing several documents to be collected into one block.

A blockchain database is managed autonomously using a peer-to-peer network and a distributed timestamping server. The first blockchain was conceptualised by an anonymous person or group known as Satoshi Nakamoto in 2008.

https://en.wikipedia.org/wiki/Blockchain

A blockchain is a decentralized virtual ledger for recording transactions without central authority through a distributed cryptographic protocol. It is made up of three technologies

  1. cryptographic algorithms,
  2. a distributed protocol,
  3. and replicated data

which combined provide a trustworthy service to a group of nodes that do not fully trust each other.

With blockchain, several users can write entries into a block or a record of information, and a community can control how the record of information is modified and updated. Consensus protocol is pluggable, currently an implementation of Byzantine fault-tolerant consensus using the PBFT (Practical Byzantine Fault Tolerance) protocol.

Christian Cachin Resilient Consensus Protocols for Blockchains

Source: https://www.zurich.ibm.com/dccl/papers/cachin_dccl.pdf

Resources

Zero to Bockchain

Zero to Blockchain

hyperledgerenergy's People

Contributors

lennartfr avatar

Watchers

James Cloos avatar Stephen Sizensky 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.