tendermint 07 多節點聯盟鏈搭建

 

名詞理解

驗證人:  選定一些候選驗證的人

觀察者: 不參與驗證, 可以備份同步數據

提議人: 每一個輪次 從驗證人中選一個提議人 提議一個區塊

 

tendermint  第二個節點:

  1.    添加 種子節點 

    persistent_peers = "[email protected]:26656"

 以上 配置一個就可以 同步數據,但是 不能驗證節點

 2.    添加驗證人

  在genesis.json中添加 多個驗證人

{
  "genesis_time": "2019-12-23T02:31:55.8264552Z",
  "chain_id": "test-chain-zRQ8Qq",
  "consensus_params": {
    "block": {
      "max_bytes": "22020096",
      "max_gas": "-1",
      "time_iota_ms": "1000"
    },
    "evidence": {
      "max_age": "100000"
    },
    "validator": {
      "pub_key_types": [
        "ed25519"
      ]
    }
  },
  "validators": [
	  {
		"address": "CB0864B798EBD801FAE2113F674B313FE6218FBD",
		"pub_key": {
		  "type": "tendermint/PubKeyEd25519",
		  "value": "N8o1VQtR9M7/jD3CvKjXmBu65SdXricxVArz3X8UQvk="
		},
		"power": "10",
		"name": "zhangxing"
	  },
	  {
		"address": "AE005176E717C7DADF10CFC0B79B344839AD9E88",
		"pub_key": {
		  "type": "tendermint/PubKeyEd25519",
		  "value": "UUF5Xu5fGzAHQ/wFYFwXoPakOFCfmzcMYT9vqOsCoD4="
		},
		"power": "10",
		"name": "wuhualong"
	  },
	  {
	  "address": "5F4E82760715EAC24D6D79F5D560440D894076F7",
	  "pub_key": {
		"type": "tendermint/PubKeyEd25519",
		"value": "7IPSDXQms2Ga7pzYBmkfnYiCXgHWGBzmU7QlB/2OOAM="
	  },
	  "power": "10",
	  "name": "test002"
	  },
	  {
	  "address": "08896D42BC366158915D7FB851672E57539E0D80",
	  "pub_key": {
		"type": "tendermint/PubKeyEd25519",
		"value": "0ftr3it1xZ2k0Kviqun4irrBUa96gVHMnc64dntI71k="
	  },
	  "power": "10",
	  "name": "test004"
	  }
	],
  "app_hash": ""
}

   可以添加多個驗證人; 單個節點也可以添加多個驗證人。

3.    運行kvstore

 https://gitee.com/ifinder/tendermint-study

kvstore -config=D:\install\yzchain\config\config.toml -dataDir=D:\install\yzchain\store

 

4.  測試 拜占庭

 拜占庭:  權益 大於 2/3  即可穩定安全運行,否則就不能進行共識。

  算法 : N >= 3n+1 ;   以下都是按照 power 計算

          當 允許1個機器宕機,那必須最少有4臺; 

          當 允許2個宕機, 那必須最少有7 個

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章