Skip to content

Commit

Permalink
add more text to wp
Browse files Browse the repository at this point in the history
  • Loading branch information
武宮誠 committed Dec 24, 2016
1 parent f7de7ac commit a98614d
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 5 deletions.
2 changes: 1 addition & 1 deletion core/consensus/sumeragi.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ namespace sumeragi {
namespace detail{

unsigned int getNumValidSignatures(const Event::ConsensusEvent& event){
int sum = 0;
unsigned int sum = 0;
for(auto&& esig: event.eventsignatures()){
if(signature::verify( esig.signature(), event.transaction().hash(), esig.publickey())){
sum++;
Expand Down
12 changes: 8 additions & 4 deletions docs/iroha_whitepaper.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,9 +100,13 @@ Consensus events, when received from the event queue, are processed in the follo

### 2.7. Data storage

#### Merkle tree structure

Transactions are stored in a Merkle tree with each transaction being a leaf of the tree. After a pre-defined depth of the leafs to the Merkle root, the current Merkle root becomes a leaf in a new tree. This acts to group a set of transactions together into a block. This is shown in the following figure.

![alt tag](iroha_merkle_tree.png)

### 2.7. Consensus
### 2.8. Consensus

Byzantine fault tolerant systems are engineered to tolerate *f* numbers of Byzantine faulty nodes in a network. Iroha introduces a Byzantine Fault Tolerant consensus algorithm called Sumeragi. It is heavily inspired by the B-Chain algorithm:

Expand Down Expand Up @@ -136,15 +140,15 @@ Consensus in Sumeragi is performed on individual transactions and on the global

When syncing nodes with each other, valid parts of the Merkel tree are shared until the roots match.

### 2.8. Data synchronization and retrieval
### 2.9. Data synchronization and retrieval

The state with the Merkle root that has the most transactions in the Merkle tree and has 2*f*+1 signatures of validating servers is the most advanced state.

### Data permissions

## Hijiri: Trust system
### 2.10. Hijiri: Peer reputation system

The trust system is based on rounds. At each round, validating peers that are registered with the membership service perform the following tasks to establish trust (reliability) ratings for the peers:
The hijiri reputation system is based on rounds. At each round, validating peers that are registered with the membership service perform the following tasks to establish trust (reliability) ratings for the peers:

* ping test
* version test
Expand Down

0 comments on commit a98614d

Please sign in to comment.