Name: indy-plenum
Owner: Hyperledger
Description: Plenum Byzantine Fault Tolerant Protocol
Created: 2016-02-12 12:03:16.0
Updated: 2018-01-17 09:21:33.0
Pushed: 2018-01-18 17:33:11.0
Size: 7422
Language: Python
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
Plenum is the heart of the distributed ledger technology inside Hyperledger Indy. As such, it provides features somewhat similar in scope to those found in Fabric. However, it is special-purposed for use in an identity system, whereas Fabric is general purpose.
Please find the general overview of the system in Overview of the system.
More documentation can be found in docs.
INDY
.#indy
and/or #indy-node
channels to discuss.Please have a look at Dev Setup in indy-node repo. It contains common setup for both indy-plenum and indy-node.
install indy-plenum
From here, you can play with the command-line interface (see the tutorial).
Note: For Windows, we recommended using either cmder or conemu.
um
…or run the tests.
clone https://github.com/hyperledger/indy-plenum.git
ndy-plenum
on -m plenum.test
Each Node needs to have keys initialized
_plenum_keys --name Alpha --seeds 000000000000000000000000000Alpha Alpha000000000000000000000000000 --force
_plenum_keys --name Beta --seeds 0000000000000000000000000000Beta Beta0000000000000000000000000000 --force
_plenum_keys --name Gamma --seeds 000000000000000000000000000Gamma Gamma000000000000000000000000000 --force
_plenum_keys --name Delta --seeds 000000000000000000000000000Delta Delta000000000000000000000000000 --force
Note: Seed can be any randomly chosen 32 byte value. It does not have to be in the format 00..<name of the node>
.
`11111111111111111111111111111111
``33333333333333333333333333333333
``22222222222222222222222222222222
``44444444444444444444444444444444
`t_plenum_node Alpha
To update any configuration parameters, you need to update the plenum_config.py
in .plenum/YOUR_NETWORK_NAME
directory inside your home directory.
eg. To update the node registry to use 127.0.0.1
as host put these in your plenum_config.py
.
collections import OrderedDict
Reg = OrderedDict([
('Alpha', (('127.0.0.1', 9701), '0490a246940fa636235c664b8e767f2a79e48899324c607d73241e11e558bbd7', 'ea95ae1c913b59b7470443d79a6578c1b0d6e1cad0471d10cee783dbf9fda655')),
('Beta', (('127.0.0.1', 9703), 'b628de8ac1198031bd1dba3ab38077690ca9a65aa18aec615865578af309b3fb', '18833482f6625d9bc788310fe390d44dd268427003f9fd91534e7c382501cd3c')),
('Gamma', (('127.0.0.1', 9705), '92d820f5eb394cfaa8d6e462f14708ddecbd4dbe0a388fbc7b5da1d85ce1c25a', 'b7e161743144814552e90dc3e1c11d37ee5a488f9b669de9b8617c4af69d566c')),
('Delta', (('127.0.0.1', 9707), '3af81a541097e3e042cacbe8761c0f9e54326049e1ceda38017c95c432312f6f', '8b112025d525c47e9df81a6de2966e1b4ee1ac239766e769f19d831175a04264'))
odeReg = OrderedDict([
('AlphaC', (('127.0.0.1', 9702), '0490a246940fa636235c664b8e767f2a79e48899324c607d73241e11e558bbd7', 'ea95ae1c913b59b7470443d79a6578c1b0d6e1cad0471d10cee783dbf9fda655')),
('BetaC', (('127.0.0.1', 9704), 'b628de8ac1198031bd1dba3ab38077690ca9a65aa18aec615865578af309b3fb', '18833482f6625d9bc788310fe390d44dd268427003f9fd91534e7c382501cd3c')),
('GammaC', (('127.0.0.1', 9706), '92d820f5eb394cfaa8d6e462f14708ddecbd4dbe0a388fbc7b5da1d85ce1c25a', 'b7e161743144814552e90dc3e1c11d37ee5a488f9b669de9b8617c4af69d566c')),
('DeltaC', (('127.0.0.1', 9708), '3af81a541097e3e042cacbe8761c0f9e54326049e1ceda38017c95c432312f6f', '8b112025d525c47e9df81a6de2966e1b4ee1ac239766e769f19d831175a04264'))