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 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 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
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....
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
Chaincode written in Go or Java
Create your first blockchain network using Hyperledger Composer
Deploy an asset-transfer app using blockchain
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:
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
- cryptographic algorithms,
- a distributed protocol,
- 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