consensusノードはブロックチェーンで生成されるスマートコントラクトをはじめてすべてのトランザクションを検証し、ブロックに対する生成及び検証を進めてQURASブロックチェーンを形成していく役割をする。
QURASブロックチェーンを稼働させるための第1段階として、consensusノードを設定する方法は以下の通りである
consensusノードはブロックチェーンで生成されるスマートコントラクトをはじめてすべてのトランザクションを検証し、ブロックに対する生成及び検証を進めてQURASブロックチェーンを形成していく役割をする。
QURASブロックチェーンを稼働させるための第1段階として、consensusノードを設定する方法は以下の通りである
new IssueTransaction
{
Attributes = new TransactionAttribute[0],
Inputs = new CoinReference[0],
Outputs = new[]
{
new TransactionOutput
{
AssetId = GoverningToken.Hash,
Value = GoverningToken.Amount,
ScriptHash = Contract.CreateMultiSigRedeemScript(StandbyValidators.Length / 2 + 1, StandbyValidators).ToScriptHash()
},
new TransactionOutput
{
AssetId = UtilityToken.Hash,
Value = Fixed8.FromDecimal(888888888),
ScriptHash = Contract.CreateMultiSigRedeemScript(StandbyValidators.Length / 2 + 1, StandbyValidators).ToScriptHash()
}
},
Scripts = new[]
{
new Witness
{
InvocationScript = new byte[0],
VerificationScript = new[] { (byte)OpCode.PUSHT }
}
}
}
"NodePort": 10034,
"WsPort": 10035,
"UriPrefix": [ "http://*:10030" ]
上記の部分に対する修正を進めることが必要である。
「NodePort」はトランザクションとかブロックの中継および生成、検証のために利用されるP2Pのポート番号である。
「WsPort」はWebsocketを利用したトランザクションとかブロックの中継および生成、検証に利用されるP2Pのポート番号である。
「UriPrefix」の項目はRPCノードの接続情報を示す。
この時、IPの項目に静的にRPCノードのIPを与えることができ、この場合RPCノードを探すのにかかる時間を短縮することができる。
"Magic": 7630401,
"AddressVersion": 31,
"AnonymousAddressVersion": 30,
"StealthAddressVersion": 90,
"RingSize": 3,
"StandbyValidators": [
"03bce33e85cc7a46b96a71b11e3674184df7fd1e48c4e88582c19c7e73cfa2a1af",
"0222336930d7258710c858f8e4b53bc0ce2720e96b50ace30d05c6995f5de667d4"
],
"SeedList": [
"54.238.189.190:10034",
"52.197.125.132:10034"
],
「Magic」の項目はこのブロックチェーンのIDを示す値である。
「AddressVersion」の項目はTransparentウォレットののアドレスの生成板本(難易度)を示す。
「AnonymousAdressVersion」の項目はAnonymouseウォレットのアドレスの生成板本(難易度)を示す。
「StealthAdressVersion」の項目はステルスウォレットのアドレスの生成板本(難易度)を示す。
「RingSize」の項目はステルスの取引で利用される集まりの大きさを示す。すなわち、一つの集まりにに含まれる末端の個数を示す。
「StandbyValidators」の項目はすでに創造されたconsensusノードウォレットのpublic keyの配列を示す。
「SeedList」の項目はconsensusノードの接続情報を示す。
ある末端が初めてQurasブロックチェーンに接続しようとする場合、「SeedList」の項目のconsensusノードを利用して早くブロックチェーンに接続することができる。
メインネットで起動するためにConsensusノードの要求スペックは下記の通りである。
OS:WindowsServer2012 R2
CPU:vCPUS 4 (2.4GHz)
RAM:16G以上
HardDisk:SSD 500G以上
Network:100Mbps以上の専用線
メインネットで正常な起動のためにConsensusノードは4台以上が必要です。
エンジンに対する設定が完了と、「quras-cli」プロジェクトをビルドして最後の「quras-cli.exe」ファイルを生成します。
「quras-cli」プロジェクトがqurasブロックチェーンのConsensusノードである。
Consensusノードに必要なアカウントを創造する。この時、アカウントの個数はConsensusノードの数と一致しなければならない。
すべてのConsensusノードに「quras-cli.exe」を設置して起動させる。
次のコマンドを使ってConsensusノードごとに割り当てられたアカウントを開く。
>>Open Wallet [アカウントのパス]
次にはパスワードを入力する。
すべてのConsensusノードで次のコマンドを実行することによりConsensus機能を起動する。
>>start consensus
上記の手順を用いてConsensusノードを起動させてブロックチェーンの合意アルゴリズムを開始してブロックチェーンを形成して行く。
Copyright © 2019 Quras. All Rights Reserved.