SEER的見證人設計

SEER的見證人設計

共識方式

在區塊生產者的產生方式上,SEER採取了PoS的共識方式,用戶通過智能合約抵押自己持有的SEER競選主力見證人(區塊生產者)。

對於SEER區塊鏈來說,制約區塊鏈TPS效率的主要是見證人所使用的設備和帶寬,高併發的需求源於SEER的DAPP生態發展,當高併發的需求出現時,通過抵押競選成功的21位見證人有足夠的資金實力和動力爲區塊鏈底層基礎設施提供最精良的運行環境,以達到更高的TPS。

在SEER系統中共有21位主力見證人和80位候選見證人,按抵押SEER數量排名前21位的見證人輪流負責打包確認區塊,並計量獲得目前每個塊3SEER的區塊生產獎勵。

如果主力見證人節點異常下線,候選見證人將按排名順位進行替補,以保證網絡正常運行。同時,按抵押的SEER數量排名前101位的用戶還能額外獲得可觀的抵押收益。

SEER的見證人設計,可以保證區塊鏈網絡能甄選出最能夠維護好區塊鏈基礎設施的生態參與者。

見證人獎勵公式

在SEER的token分配方案中,將有20億SEER用作DAPP和見證人激勵。

出塊獎勵

按照目前每個塊3SEER的獎勵,目前的塊間隔爲3秒。即每年的出塊獎勵支出約爲 360(日)x 24(時)x 60(分)x 60(秒)/ 3(塊間隔)x 3(出塊獎勵)= 3110.4萬 SEER,每個主力見證人在未缺塊的情況下,每年可以獲得約150萬SEER的出塊獎勵。

抵押收益

主力見證人需要提供滿足條件的聯網計算機運行SEER的節點軟件來維護SEER生態,如果有主力見證人在當天出塊率低於50%(可能由設備網絡故障、未及時更新理事會通過的新版本節點軟件等原因引起),則剝奪該見證人2天的出塊資格(從而損失2天的見證人收入),由抵押排名緊隨其後的候選見證人順位補缺。

因此,我們強烈建議候選見證人提供滿足條件的聯網計算機並配置好見證人節點隨時候選,以免錯失獲得出塊收益的機會。

SEER排名前101位的主力見證人和候選見證人可以獲得抵押收益,抵押收益與抵押的排名和抵押的SEER數量有關,抵押收益將每24小時結算和發放一次。

主力見證人20年的出塊獎勵 = 31104000 x 20 = 62208000015(年)x 360(日) 等於5400天

每天可支出的總抵押分紅=(資金池622080000)/ 5400,用戶可獲得的抵押收益 = 每天可支出的總抵押分紅 x(該用戶抵押數 / 所有用戶總抵押數)。

初始資金池爲 20億 ,見證人獎勵和抵押分紅都從這裏面扣除,所以資金池會逐漸減少,用戶支付給SEER系統的手續費會補充到資金池,保守估計,平均每位見證人每年至少會獲得上百萬SEER抵押收益,頭部主力見證人抵押收益每年可達數百萬SEER。

候選見證人只有抵押收益,主力見證人可享受見證人出塊獎勵 + 抵押收益,主力見證人數、主力見證人收益、可享受抵押分紅的候選見證人數等參數可由理事會進行調節。

見證人操作

創建新的見證人

抵押排名前21位的見證人爲主力見證人,必須準備永不停機的服務器,用來運行見證人節點,對鏈上交易打包確認出塊。排名靠前,但未入選主力見證人的候選見證人也建議用服務器運行見證人節點,以備主力見證人下線後替補出塊。排名較後的候選見證人建議熟悉見證人節點的操作方式,但從節約成本的角度可以不使用服務器運行節點。

爲了您的資金安全,避免服務器被黑客控製造成資金損失(儘管這種可能性極低),建議您將命令行錢包僅在本地計算機上進行操作,在服務器端僅運行見證人節點。

常用的服務器類型有兩種,一是windows服務器,二是linux服務器,推薦使用ubuntu的服務器,在相同配置下,成本更低。

命令行錢包操作

下載並配置命令行錢包

成爲SEER見證人,需要使用命令行錢包和見證人節點軟件進行操作:https://github.com/seer-proje...

在上面的頁面中,下載windows版本的軟件,並解壓縮。

方法1 命令啓動

  1. 啓動windows命令提示符: 打開“我的電腦”->在地址欄裏輸入”cmd”並確定;
  2. 在彈出的cmd窗口切換到cli_wallet.exe所在目錄,比如說d:\seer\,通過以下命令可以切換命令路徑:”d:\”->”cd seer”
  3. 帶參數啓動cli_wallet:
cli_wallet.exe -s ws://123.207.146.191:9999

其中” ws://123.207.146.191:9999”爲官方提供的API鏈接,如果此API鏈接無法使用,您可以使用社區提供的其他API鏈接,或在本地啓動見證人節點,並用cli_wallet.exe -s ws://localhost:8080啓動錢包,其中8080爲您啓動見證人節點時使用的rpc端口號。下同。

方法2 預設命令啓動

  1. cli_wallet.exe所在目錄創建文件”run.cmd”
  2. 用記事本打開run.cmd,輸入以下內容後保存退出:
cli_wallet.exe -s ws://123.207.146.191:9999
  1. 點擊run.cmd即可運行。

Linux下啓用cli_wallet

當然,您需要下載linux版本的軟件,並解壓縮。

  1. 進入cli_wallet所在目錄
  2. 帶參數啓動cli_wallet:
./cli_wallet -s ws://123.207.146.191:9999

啓動成功後的回顯
以windows爲例:

D:\SEER>cli_wallet -s ws://123.207.146.191:9999
Logging RPC to file: logs\rpc\rpc.log
3209149ms th_a       main.cpp:131                  main                 ] key_to_wif( committee_private_key ): 5KCBDTcyDqzsqehcb52tW5nU6pXife6V2rX9Yf7c3saYSzbDZ5W
3209150ms th_a       main.cpp:135                  main                 ] nathan_pub_key: SEER6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV
3209150ms th_a       main.cpp:136                  main                 ] key_to_wif( nathan_private_key ): 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
Starting a new wallet with chain ID cea4fdf4f5c2278f139b22e782b308928f04008b0fc2c79970a58974a2a28f91 (from egenesis)
3209157ms th_a       main.cpp:183                  main                 ] wdata.ws_server: ws://123.207.146.191:9999
3209198ms th_a       main.cpp:188                  main                 ] wdata.ws_user:  wdata.ws_password:
Please use the set_password method to initialize a new wallet before continuing
new >>>
設置錢包密碼 set_password

void set_password(string password);

參數:password爲錢包密碼

作用:設置或修改當前錢包密碼爲password, 新錢包及解鎖狀態下可使用

示例:set_password 1234567890

返回信息示例:

new >>> set_password 1234567890
set_password 1234567890
null
locked >>>
解鎖錢包 unlock

void unlock(string password);

參數:password爲錢包密碼

作用:當錢包爲locked狀態時,使用password解鎖當前錢包

示例:unlock 1234567890

返回信息示例:

locked >>> unlock 1234567890
unlock 1234567890
null
unlocked >>>
導入資金私鑰 import_key

bool import_key(string account_name_or_id, string wif_key);

參數:account_name_or_id 爲用戶名或id,wif_key爲私鑰

作用:通過私鑰wif_key往錢包裏導入賬戶account_name_or_id

<p class="tip">
不知道怎麼獲得你的私鑰?點擊這裏 瞭解。
</p>

示例:import_key abc 5JLE3j2Mn815kunzbT4ffeKsZwMhHdwDJUAyjm2KRis3qcATPUY

返回信息示例:


unlocked >>> import_key abc 5JLE3j2Mn815kunzbT4ffeKsZwMhHdwDJUAyjm2KRis3qcATPUY
import_key abc 5JLE3j2Mn815kunzbT4ffeKsZwMhHdwDJUAyjm2KRis3qcATPUY
1983068ms th_a       wallet.cpp:793                save_wallet_file     ] saving wallet to file wallet.json
1983069ms th_a       wallet.cpp:467                copy_wallet_file     ] backing up wallet wallet.json to after-import-key-4b839f25.wallet
true
升級賬號爲終身會員 upgrade_account

signed_transaction upgrade_account(string name, bool broadcast);

參數:name爲賬戶名或者id

作用:升級賬戶等級到終身會員,可能您已經在網頁錢包菜單-會員頁面進行過賬號升級,和這一步的作用一樣,就不用再次升級了。

示例:upgrade_account abc true

返回信息示例:

upgrade_account abc true
{
  "ref_block_num": 50465,
  "ref_block_prefix": 3987236035,
  "expiration": "2018-07-30T14:25:12",
  "operations": [[
      7,{
        "fee": {
          "amount": 1000000000,
          "asset_id": "1.3.0"
        },
        "account_to_upgrade": "1.2.108",
        "upgrade_to_lifetime_member": true,
        "extensions": []
      }
    ]
  ],
  "extensions": [],
  "signatures": [
    "1f1c79777d8ae33d26bff69716aa1303e37b780b893f05eb291f0bc4c8f0d7efb01fb196f8011d31233ba202f53e12d8b469f7b96438b9b00da6bb65d0c3270078"
  ]
}
創建見證人 create_witness

signed_transaction create_witness(string owner_account,string url,bool broadcast);

參數:owner_account爲賬戶名或id,url爲網址

作用:創建見證人

示例:create_witness abc "http://www.baidu.com" true

返回信息示例:

create_witness abc  "http://www.baidu.com" true
{
  "ref_block_num": 4730,
  "ref_block_prefix": 3148322765,
  "expiration": "2018-07-31T06:55:24",
  "operations": [[
      14,{
        "fee": {
          "amount": 2000000000,
          "asset_id": "1.3.0"
        },
        "witness_account": "1.2.6",
        "url": "http://www.baidu.com",
        "block_signing_key": "SEER5hYpWtqYyLgyWBzKy2SNcKSt3Qn4yDDrYiM8gqaHZwtgGnudGs"
      }
    ]
  ],
  "extensions": [],
  "signatures": [
    "1f6c3c05635021a123b954a5b1ea63003999ad450f0107fb3f7ca64e7cefae939b0c6679ffd7c477587cb9d64c31e0664385d360321cd414af9b14952cadd98e4d"
  ]
}
創建抵押 witness_create_collateral

signed_transaction witness_create_collateral(string account, string amount, bool broadcast = false);

說明:若您不競爭抵押排名前21位的主力見證人,到這一步即可,不用繼續修改簽名公鑰和服務器端操作。您的抵押數量不要超過目前排名第21位的見證人。另外,SEER見證人抵押是以筆計算的,建議分批抵押,日後解鎖也是按筆解鎖。例如,抵押400萬SEER,您可以分爲兩次,每次抵押200萬SEER,日後若需要解鎖200萬SEER則解鎖其中一筆即可;若一次性抵押400萬,日後想只解鎖200萬的話,則需要將400萬一起解鎖,解鎖週期到以後,才能重新將其中200萬抵押。解鎖週期爲15天。

參數:account爲見證人id或者賬戶名或賬戶id, amount爲抵押的SEER數量

作用:增加見證人抵押項

示例:witness_create_collateral abc 1000 true

返回信息示例:

witness_create_collateral abc 1000 true
{
  "ref_block_num": 5437,
  "ref_block_prefix": 347254870,
  "expiration": "2018-07-31T07:30:45",
  "operations": [[
      16,{
        "fee": {
          "amount": 1000000,
          "asset_id": "1.3.0"
        },
        "witness": "1.5.8",
        "witness_account": "1.2.6",
        "amount": 100000000
      }
    ]
  ],
  "extensions": [],
  "signatures": [
    "206a08b57ff8bff588bb812dd07a0e90a6ebacf749d9600a241c4033bbd39cfaae1d55ae3fc6977f5486b4c09c51f31b9609801e7c0aa3d8e16b2c67ebb7ff6fc9"
  ]
}
生成一對用於見證人簽名的祕鑰對 suggest_brain_key

brain_key_info suggest_brain_key()const;

參數:無

作用:隨機生成腦錢包密鑰

示例:suggest_brain_key

返回信息示例:

suggest_brain_key
{
  "brain_priv_key": "UNLISTY BLOOMER ANGSTER ENOLIC PILE EVEQUE STRE LECTERN CITRON GARETTA FRECKLE TELEDU JOKE AUNT OFT FOUNDRY",//腦錢包祕鑰(助記詞)
  "wif_priv_key": "5Kb1PcVBpKWPacsgPwZ8KdesmBbvqnmAdYYKQtYVEpBJVF5GRci",//私鑰
  "pub_key": "SEER6xtsMY5DyhRokjGh6QbBhJ9aHNoY1UB2tFUZmMdKr8uN55j5q5"//公鑰
}
將生成的公鑰設置爲見證人簽名 update_witness

signed_transaction update_witness(string witness_name, string url, string block_signing_key, bool broadcast);

參數:witness_name爲賬戶名或id,url爲網址, block_signing_key爲出塊時簽名的公鑰

作用:更新見證人資料

示例:update_witness abc "http://www.google.com" SEER6xtsMY5DyhRokjGh6QbBhJ9aHNoY1UB2tFUZmMdKr8uN55j5q5 true

返回信息示例:

update_witness abc "http://www.google.com" SEER6xtsMY5DyhRokjGh6QbBhJ9aHNoY1UB2tFUZmMdKr8uN55j5q5 true
{
  "ref_block_num": 4870,
  "ref_block_prefix": 1016406219,
  "expiration": "2018-07-31T07:02:24",
  "operations": [[
      15,{
        "fee": {
          "amount": 10000000,
          "asset_id": "1.3.0"
        },
        "witness": "1.5.8",
        "witness_account": "1.2.6",
        "new_url": "http://www.google.com",
        "new_signing_key": "SEER6xtsMY5DyhRokjGh6QbBhJ9aHNoY1UB2tFUZmMdKr8uN55j5q5"
      }
    ]
  ],
  "extensions": [],
  "signatures": [
    "1f677827fc57e4628e8cf61a25d40eecee120860e6d5a7fee6e1c6998b52c792fc28a977bcdefd87de3af5c754912a7766f69d6a376ace6b6b8dba042b9e0a05a6"
  ]
}
需要在以上兩步中記錄的信息

1、見證人id:此例中爲"witness": "1.5.8",1.5.8就是在下一步操作中需要填入見證人節點參數的;

2、見證人公私鑰:即您suggest_brain_key生成,並在update_witness時填入的公鑰和該公鑰對應的私鑰。本例中爲 "SEER6xtsMY5DyhRokjGh6QbBhJ9aHNoY1UB2tFUZmMdKr8uN55j5q5"和"5Kb1PcVBpKWPacsgPwZ8KdesmBbvqnmAdYYKQtYVEpBJVF5GRci"。

服務器端操作

從ISP租用雲服務器

根據目前SEER見證人節點的需求,您需要租用一臺2核心4G內存的服務器,此配置的windows主機報價約爲每月36美元,同樣配置的linux(ubuntu)主機配置約爲每月20美元。

推薦以下ISP的服務器:阿里雲 aliyun.com / 騰訊雲 cloud.tencent.com / GCP cloud.google.com / AWS aws.amazon.com / Azure azure.microsoft.com / Vultr.com / Linode.com / Digitalocean.com

windows服務器配置節點參數

使用windows服務器,則使用遠程桌面連接軟件輸入ISP提供的服務器地址和賬號密碼,連接到服務器,如操作一臺普通windows系統PC一樣的操作遠程服務器,比較簡單。

成爲SEER見證人,需要使用命令行錢包和見證人節點軟件進行操作:https://github.com/seer-proje...

在上面的頁面中,下載windows版本的軟件,並解壓縮到服務器端。

方法1 命令啓動

  1. 啓動windows命令提示符: 打開“我的電腦”->在地址欄裏輸入”cmd”並確定;
  2. 在彈出的cmd窗口切換到witness_node.exe所在目錄,比如說d:\seer\,通過以下命令可以切換命令路徑:”d:\”->”cd seer”
  3. 帶參數啓動witness_node.exe:
witness_node.exe --enable-stale-production --p2p-endpoint=0.0.0.0:1888 --witness-id=\"1.5.8\" --rpc-endpoint=0.0.0.0:9090 --private-key=[\""SEER6xtsMY5DyhRokjGh6QbBhJ9aHNoY1UB2tFUZmMdKr8uN55j5q5"\",\""5Kb1PcVBpKWPacsgPwZ8KdesmBbvqnmAdYYKQtYVEpBJVF5GRci\""]

其中1.5.8爲您的見證人id,在命令行錢包操作中可以獲取,SEER6xtsMY5DyhRokjGh6QbBhJ9aHNoY1UB2tFUZmMdKr8uN55j5q5爲您的見證人簽名公鑰,5Kb1PcVBpKWPacsgPwZ8KdesmBbvqnmAdYYKQtYVEpBJVF5GRci爲您的見證人簽名公鑰對應的私鑰,皆需要替換爲您自己的參數。1888爲和其他節點連接的p2p監聽端口,9090爲rpc監聽端口,用於錢包連接,此兩個端口如果和其他程序發生衝突,或需要在同一服務器運行兩個節點進行熱切換可以修改,下同。

方法2 預設命令啓動

  1. witness_node.exe所在目錄創建文件”witness.cmd”
  2. 用記事本打開witness.cmd,輸入以下內容後保存退出:
witness_node.exe --enable-stale-production --p2p-endpoint=0.0.0.0:1888 --witness-id=\"1.5.8\" --rpc-endpoint=0.0.0.0:9090 --private-key=[\""SEER6xtsMY5DyhRokjGh6QbBhJ9aHNoY1UB2tFUZmMdKr8uN55j5q5"\",\""5Kb1PcVBpKWPacsgPwZ8KdesmBbvqnmAdYYKQtYVEpBJVF5GRci\""]

其中的見證人id、簽名公鑰、簽名私鑰參數需要您替換。

  1. 每次點擊witness.cmd即可運行。
linux服務器配置節點參數

連接linux服務器,建議使用termius終端軟件。termius不僅有windows版本,也有Mac甚至IOS和安卓版本,讓您隨時隨地都能管理服務器。

若使用termius終端軟件,則進入該軟件後點擊new host,新建一個服務器連接,在設置頁面的address填入ISP提供的服務器IP,port端口用默認的22,username填入ISP提供的賬號,一般爲root,密碼也是由ISP提供。填入後點save保存。雙擊或點connect便可連接到您的遠程服務器。

部分ISP可能會要求您首次登陸服務器時修改初始密碼,照提示操作即可。

登陸服務器後,分別輸入以下指令:

1、新建一個名叫seer的窗口;

screen -S seer

2、在root目錄下新建一個名叫seer的目錄,複製v0.0.4版本的程序包到此目錄,並更名爲seer.tar.gz。(此處注意,若有了更新的程序包版本,則到SEER軟件發佈頁https://github.com/seer-proje... 複製最新的ubuntu版本程序包鏈接替換掉此下載鏈接。)

mkdir seer
curl -Lo seer/seer.tar.gz https://github.com/seer-project/seer-core-package/releases/download/v0.04/seer-ubuntu-0.0.4.tar.gz 

3、解壓此軟件包。

tar xzvf seer/seer.tar.gz

4、帶參數啓動witness_node,其中的見證人id、簽名公鑰、簽名私鑰參數需要您替換。

seer/witness_node --enable-stale-production --p2p-endpoint=0.0.0.0:1888 --witness-id=\"1.5.8\" --rpc-endpoint=0.0.0.0:9090 --private-key=[\""SEER6xtsMY5DyhRokjGh6QbBhJ9aHNoY1UB2tFUZmMdKr8uN55j5q5"\",\""5Kb1PcVBpKWPacsgPwZ8KdesmBbvqnmAdYYKQtYVEpBJVF5GRci\""] 

5、觀察節點運行正常後,ctrl+A d隱藏screen,斷開服務器。之後要再打開運行有節點的Sreeen,則使用 screen -R ,或 screen -r seer

節點正常啓動的狀態

節點正常啓動後,會顯示像下面一樣的3秒一個的見證人出塊。申請見證人的第二天,如果您的見證人節點成功出塊,出塊時會顯示“......block_production_loo ] Generated block......”表示這個塊由當前見證人節點確認打包生產。

節點正常啓動的狀態

首次創建見證人的生效時間

SEER區塊鏈的維護週期爲24小時,對主網參數的修改會在下一個週期開始時生效。每個週期開始於格林尼治時間0點整(GMT+0),即新加坡時間早上8點。

您的見證人如果參數設置無誤,將在第二天早上8點正常出塊,如果設置有誤,將在第二天早上8點開始丟塊。

解決造成見證人丟塊的一些問題

丟塊是見證人應該避免的問題,見證人丟塊不光影響區塊鏈效率,損失該塊的獎勵,還會被記錄到區塊鏈上對外顯示,影響見證人的可靠程度。

如果見證人在一天內丟塊數量丟塊超過50%,將被系統判定停止出塊2天,由候選見證人替補,丟塊過多的見證人將損失2天的出塊收益。

見證人節點啓動成功後,請觀察節點和其他節點之前的同步時間latency,一般不得超過±500ms,否則容易因延時過大而丟塊頻繁。

延時較大的原因主要有:設備或帶寬配置過低、ntp服務未啓用、服務器機房和其他節點延時較大。

服務器機房和其他節點延時較大的解決方法

更換服務器機房,分別選擇新加坡、香港、日本等亞洲機房和美國、歐洲機房嘗試延時。GCP、AWS、DO、Vultr等ISP大多都是按分鐘付費,隨時切換機房很方便。但這可能不是您的主要問題。

ntp服務未啓用的解決方法

windows下使用以下方法:

在windows系統默認情況下,系統時間是每週(每7天)自動同步Internet時間一次,需要需要設置系統時間默認的同步頻率。

在“開始”菜單→“運行”→“Regedit”進入註冊表編輯器
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesW32TimeTimeProvidersNtpClient ] 分支,並雙擊 SpecialPollInterval 鍵值,將對話框中的“基數欄”選擇到“十進制”上,將此值的數值數據604800改爲300並選爲“十進制”。鍵值意思是時間同步的間隔,單位爲秒原來7天就是7243600=604800秒,5分鐘就是5*60=300秒

檢查是否設置成功:在桌面右下角打開系統時間→更改時期和時間設置→Internet 時間,查看驗證時間是否5分鐘同步一次。

此外,您需要選擇一個可靠的NTP服務器,推薦大家使用阿里雲的NTP服務器:time.pool.aliyun.com

linux(ubuntu)下輸入以下命令,確認時間是否準確:

timedatectl status

見證人節點更新

SEER的區塊鏈底層目前還處於不斷完善中,節點版本更換將會比較頻繁。一些新的完善更新會爲區塊鏈的基礎設施——節點軟件添加新的功能。理事會將會就是否接受新的節點版本進行共識投票,如果提案投票通過,將要求所有見證人在指定時間前將節點軟件切換到新的版本,未升級的主力見證人節點將會離線。這種設計也是SEER保護區塊鏈不分叉的共識機制。

每次節點發布更新後,理事會將通過提案,要求所有見證人在指定時間前切換到新的節點軟件版本,未切換的見證人節點將離線。未按要求更新的見證人節點將大量丟塊,損失出塊收益。

每次更新的最新版本節點軟件請在以下頁面下載:

https://github.com/seer-proje...

windows版本節點更新

1、首先下載當次更新的軟件包到服務器;

2、解壓縮zip文件;

3、ctrl+C 關閉現在的見證人節點;

使用壓縮包內的witness_node.exe替換掉當前見證人節點目錄下的witness_node.exe文件;

使用原參數重新啓動見證人節點。正常出塊後斷開服務器。

若新的節點不能正常同步,重啓後仍不能正常啓動的話,則關閉節點,刪除節點目錄下的 witness_node_data_dirobject_databasedata 文件夾,並重啓節點,以重新同步啓動節點。

linux版本節點更新

1、切換到見證人節點的screen,例如 screen -R ,或 screen -r seer,ctrl+C 關閉節點,然後用cd切換到根目錄。

輸入以下命令:

2、在root目錄創建一個temp目錄,用來存放臨時文件。

mkdir temp

3、下載最新的節點軟件包到temp目錄(此例中最新的節點軟件包是v0.04,若有了更新的程序包版本,則到SEER軟件發佈頁https://github.com/seer-proje... 複製最新的ubuntu版本程序包鏈接替換掉此下載鏈接),重命名,並解壓縮:

curl -Lo temp/seer.tar.gz https://github.com/seer-project/seer-core-package/releases/download/v0.04/seer-ubuntu-0.0.4.tar.gz 
tar xzvf temp/seer.tar.gz

4、複製temp目錄中的witness_node到seer目錄。(seer目錄爲您存放見證人節點的目錄,若您放在其他目錄請自行修改)

cp temp/witness_node seer/witness_node

5、使用原參數啓動witness_node,例子中的見證人id、簽名公鑰、簽名私鑰參數需要您替換。

seer/witness_node --enable-stale-production --p2p-endpoint=0.0.0.0:1888 --witness-id=\"1.5.8\" --rpc-endpoint=0.0.0.0:9090 --private-key=[\""SEER6xtsMY5DyhRokjGh6QbBhJ9aHNoY1UB2tFUZmMdKr8uN55j5q5"\",\""5Kb1PcVBpKWPacsgPwZ8KdesmBbvqnmAdYYKQtYVEpBJVF5GRci\""] 

6、觀察節點運行正常後,ctrl+A d 隱藏screen,斷開服務器。

見證人領取收益

見證人收益分爲抵押收益和出塊收益,可以分別通過命令行錢包和網頁錢包領取。

領取抵押收益

領取抵押收益需要從命令行錢包操作,平時您可以在https://wallet.seer.best/expl... 查看自己的抵押利息收入。

啓動命令行錢包

從cmd啓動或點擊之前創建的run.cmd。詳情 點擊這裏 瞭解。

輸入領取見證人利息命令 witness_claim_collateral

signed_transaction witness_claim_collateral(string account, string collateral_id, bool broadcast = false);

參數:account爲見證人id或者賬戶名或賬戶id, collateral_id抵押項的id

作用:領取抵押利息,領取已經撤銷抵押餘額 也是同一個命令。

示例:

領取抵押利息:witness_claim_collateral abc "" true

返回信息示例:

witness_claim_collateral abc  "" true
{
  "ref_block_num": 22273,
  "ref_block_prefix": 2876124369,
  "expiration": "2018-07-31T07:39:51",
  "operations": [[
      18,{
        "fee": {
          "amount": 20000000,
          "asset_id": "1.3.0"
        },
        "witness": "1.5.8",
        "witness_account": "1.2.6"
      }
    ]
  ],
  "extensions": [],
  "signatures": [
    "2052bc058ea6f7125b5c2baf935ff9332cd43f352b4efe986fd8d776004164249110ac2e171698ca5a867ba1629c6b080f35027ec23c2b1ea66cddcf69cc492b1d"
  ]
}

領取出塊收益

領取出塊收益,最簡單的方法是,在網頁錢包,點擊菜單-待解凍餘額,第一欄約幾千SEER,解鎖週期一年的是您的終身會員折扣待解鎖餘額。

第二欄,99.99%都可以即時領取的,便是您的出塊收益,點擊立即領取,即可將出塊收益領取到餘額。

取回見證人抵押

取回見證人抵押分爲三步,首先需查詢到您的抵押項id,然後要解除抵押,解鎖週期爲15天,解鎖後,需要領取,已將解鎖的抵押領取到餘額。

查詢抵押項id list_witness_collaterals

vector<witness_collateral_object> list_witness_collaterals(string account);

參數:account爲見證人id或者賬戶名或賬戶id

作用:列出指定見證人的抵押清單

示例:list_witness_collaterals abc

返回信息示例:

list_witness_collaterals abc
[{
    "id": "2.16.0",
    "owner": "1.2.6",
    "amount": 100000000,
    "status": 0,
    "start": "2018-07-31T07:30:15",
    "expiration": "1970-01-01T00:00:00"
  }
]

解鎖見證人抵押 witness_cancel_collateral

signed_transaction witness_cancel_collateral(string account, string collateral_id, bool broadcast = false);

參數:account爲見證人id或者賬戶名或賬戶id, collateral_id抵押項的id

作用:撤銷指定的抵押項

示例:witness_cancel_collateral abc 2.16.0 true

返回信息示例:

witness_cancel_collateral  abc  2.16.0  true
{
  "ref_block_num": 5517,
  "ref_block_prefix": 1913095735,
  "expiration": "2018-07-31T07:34:45",
  "operations": [[
      17,{
        "fee": {
          "amount": 10000000,
          "asset_id": "1.3.0"
        },
        "witness": "1.5.8",
        "witness_account": "1.2.6",
        "collateral_id": "2.16.0"
      }
    ]
  ],
  "extensions": [],
  "signatures": [
    "2014b4b48c9c789ae2f5da5e0bb11875e21232b00fd9b38642bd500cf7ade08aad789dffcc54a023ae41559f452fbc6f27b54481ba7c4b591ab03c9da8c8d7cc6d"
  ]
}

將解鎖的抵押領回餘額 witness_claim_collateral

signed_transaction witness_claim_collateral(string account, string collateral_id, bool broadcast = false);

參數:account爲見證人id或者賬戶名或賬戶id, collateral_id抵押項的id

作用:領取已經撤銷抵押餘額,領取抵押利息 也是他同一個命令。

示例:

領取已撤銷抵押餘額:witness_claim_collateral abc "2.16.0" true

返回信息示例:

witness_claim_collateral abc  "" true
{
  "ref_block_num": 22273,
  "ref_block_prefix": 2876124369,
  "expiration": "2018-07-31T07:39:51",
  "operations": [[
      18,{
        "fee": {
          "amount": 20000000,
          "asset_id": "1.3.0"
        },
        "witness": "1.5.8",
        "witness_account": "1.2.6"
      }
    ]
  ],
  "extensions": [],
  "signatures": [
    "2052bc058ea6f7125b5c2baf935ff9332cd43f352b4efe986fd8d776004164249110ac2e171698ca5a867ba1629c6b080f35027ec23c2b1ea66cddcf69cc492b1d"
  ]
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章