成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

比原鏈合約入門教程

brianway / 603人閱讀

摘要:比原項(xiàng)目倉(cāng)庫(kù)地址地址一合約簡(jiǎn)述是的一種智能合約語(yǔ)言,是一門聲明性謂詞語(yǔ)言。詳細(xì)說(shuō)明請(qǐng)參考官方合約相關(guān)介紹。編譯合約,返回結(jié)果便是可鎖定的合約。三解鎖合約流程合約交易被區(qū)塊打包成功之后,可以查看具體的合約交易內(nèi)容,找到對(duì)應(yīng)的。

比原項(xiàng)目倉(cāng)庫(kù):

Github地址:https://github.com/Bytom/bytom

Gitee地址:https://gitee.com/BytomBlockc...

一、合約簡(jiǎn)述

equity是bytom的一種智能合約語(yǔ)言,是一門聲明性謂詞語(yǔ)言。詳細(xì)說(shuō)明請(qǐng)參考官方equity合約相關(guān)介紹。

二、鎖定合約流程 1、合約編寫

合約的編寫可以通過(guò)參考合約模板來(lái)進(jìn)行構(gòu)造,如果需要更進(jìn)一步的了解,可以閱讀一下合約相關(guān)的說(shuō)明文檔。以典型的鎖定publickey合約為例,其合約代碼如下:

contract LockWithPublicKey(publicKey: PublicKey) locks locked { clause unlockWithSig(sig: Signature) { verify checkTxSig(publicKey, sig) unlock locked } }

2、編譯合約

編譯合約的工具暫未提供,建議使用api調(diào)用的方式來(lái)編譯合約。調(diào)用的方式可以使用 curl 命令行 或 postman 工具等。

curl 調(diào)用方式如下:

curl -X POST http://localhost:9888/create-key -d "{"alias": "alice", "password": "123456"}"

postman 需要到官網(wǎng)下載工具:

https://www.getpostman.com/

1)bytomd默認(rèn)啟動(dòng)或開(kāi)啟auth認(rèn)證,需要通過(guò)curl的方式調(diào)用API接口 獲取access toekn

curl -X POST http://localhost:9888/create-access-token -d "{"id":"token1"}"

返回結(jié)果如下:

{ "token": "token1:1fee70f537128a201338bd5f25a3adbf33dad02eae4f4c9ac43f336a069df8f3", "id": "token1", "created_at": "2018-03-20T18:56:01.043919771+08:00" }

2)選擇 basic auth 認(rèn)證方式,填入 access-token 的用戶名和密碼,即上述返回結(jié)果的 token1 和 1fee70f537128a201338bd5f25a3adbf33dad02eae4f4c9ac43f336a069df8f3

3)如果合約參數(shù)包含類型PublicKey,便需要獲取合約參數(shù) PublicKey, publicKey可通過(guò)API接口獲取。這里需要將結(jié)果保存下來(lái),以后解鎖合約的時(shí)候需要用到 root_xpub 和 pubkey對(duì)應(yīng)的 derivation_path。

4)編譯合約,返回結(jié)果program 便是可鎖定的合約。(直接編譯合約產(chǎn)生的是合約執(zhí)行步驟,如果部署這樣的合約,用戶可以直接構(gòu)造對(duì)應(yīng)的參數(shù)便能解鎖)

3、構(gòu)建鎖定合約交易

下面表示鎖定 1000 個(gè) 777e3586d2ec47c4974d262e0ff86fd3c1c063d242d32bdef71d6d16eed6763e 類型的資產(chǎn)到合約 204e925f0fcc2f2618d96b7a3dce2aad28e60ab3339377760d48aea8ae8169ae417403ae7cac00c0 之中。具體內(nèi)容參考構(gòu)建交易的wiki: https://github.com/Bytom/byto...

4、簽名交易

具體內(nèi)容參考簽名交易的wiki:https://github.com/Bytom/byto...

5、提交交易

具體方式參考提交交易的wiki:https://github.com/Bytom/byto...

一旦合約交易打包成功,這樣合約交易便發(fā)送成功了。

三、解鎖合約流程

1、合約交易被區(qū)塊打包成功之后,可以查看具體的合約交易內(nèi)容,找到對(duì)應(yīng)的outputID。

其中ID字段便表示 outputID

2、根據(jù)outputID通過(guò)list-unspent-outputs 接口API 查找合約的UTXO,查看合約鎖定的資產(chǎn)類型和數(shù)量是否匹配

3、構(gòu)建解鎖合約交易,解鎖clause unlockWithSig 的參數(shù)為 Signature, 但是簽名結(jié)果只能在 sign-transaction 成功之后才能得到,所以我們只需構(gòu)建完成簽名參數(shù)即可。于之前構(gòu)建的publicKey 為 4e925f0fcc2f2618d96b7a3dce2aad28e60ab3339377760d48aea8ae8169ae41,那么簽名參數(shù)為root_xpub 和 derivation_path,對(duì)應(yīng)的值分別為: "dc903a862a14966d47dc6bc935c687c6cccb7a8f9c70f13bb82a41a0fe2696596cb141ff1840f90c75f8f25099f0dc50e005e1e36817d184b2b1eb1354b61575" 和 [ "010400000000000000", "0100000000000000" ] 。 其結(jié)構(gòu)如下:(具體字段可參考官方智能合約文檔說(shuō)明)

4、簽名交易,具體內(nèi)容參考簽名交易的wiki:https://github.com/Bytom/byto...

5、提交交易,具體方式參考提交交易的wiki:https://github.com/Bytom/byto...

解鎖合約交易打包成功之后,根據(jù) outputID 通過(guò)list-unspent-outputs 接口API 查找原來(lái)的合約 UTXO,將顯示為空,否則合約交易解鎖失敗。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/24212.html

相關(guān)文章

  • BUTXO詳解

    摘要:比原的價(jià)值轉(zhuǎn)移是通過(guò)轉(zhuǎn)賬實(shí)現(xiàn)的。由于的無(wú)狀態(tài),所以在一定程度上增強(qiáng)了用戶的匿名性。跟模型比,這是比原鏈的最大優(yōu)勢(shì)。此外,計(jì)算是在鏈外的,交易本身既是結(jié)果也是證明。模型是無(wú)狀態(tài)的,更容易并發(fā)處理。 showImg(https://segmentfault.com/img/bVbpJPZ?w=900&h=500); 在比原鏈中,每個(gè)交易消耗之前交易生成的BUTXO 然后生成新的 BUTXO...

    Rocture 評(píng)論0 收藏0
  • 原鏈設(shè)計(jì)思考: 擴(kuò)展性UTXO模型

    摘要:的起源來(lái)自高明的中本聰中本聰對(duì)比特幣的設(shè)計(jì),讓整個(gè)世界進(jìn)入了數(shù)字貨幣時(shí)代。比原鏈的思考馬克思哲學(xué)的否定之否定規(guī)律,事物的發(fā)展變化是螺旋式上升的。 用戶模型是比原鏈在最初就需要確定的重要數(shù)據(jù)結(jié)構(gòu), 團(tuán)隊(duì)的選擇還是聚焦在兩種典型的模型系統(tǒng)中,Account模型和UTXO模型,和其他大多數(shù)區(qū)塊鏈設(shè)計(jì)一樣, 選擇了模型就決定了協(xié)議層的重要實(shí)現(xiàn),兩種模型各有利弊,不同區(qū)塊鏈針對(duì)想聚焦的場(chǎng)景自身會(huì)...

    Vicky 評(píng)論0 收藏0
  • 人人都應(yīng)學(xué)習(xí)的公鏈知識(shí)——比原總體架構(gòu)

    摘要:揭秘區(qū)塊鏈技術(shù)從入門到精通比原鏈整體設(shè)計(jì)架構(gòu)解讀視頻鏈接優(yōu)酷視頻騰訊視頻本文將會(huì)給大家介紹一下比原鏈總體的技術(shù)架構(gòu)。共識(shí)層確認(rèn)一個(gè)塊是否合法。區(qū)塊同步又稱為被動(dòng)區(qū)塊同步,如果發(fā)現(xiàn)存在區(qū)塊高度高于自己的其他節(jié)點(diǎn)時(shí),不斷請(qǐng)求區(qū)塊同步。 showImg(https://segmentfault.com/img/bVbecEK);【揭秘區(qū)塊鏈技術(shù)從入門到精通】比原鏈整體設(shè)計(jì)&架構(gòu)解讀視頻鏈接:...

    iOS122 評(píng)論0 收藏0
  • 調(diào)用Bytom Chrome插件錢包開(kāi)發(fā)Dapp

    摘要:流程總結(jié)就是下載安裝插件錢包,如果自己的不需要跳過(guò)這一步。然后將編譯后的合約參數(shù)配置在的配置文件,如下圖全紅部分是測(cè)試網(wǎng)合約配置參數(shù)調(diào)用插件錢包。開(kāi)發(fā)出優(yōu)秀的應(yīng)用。 安裝使用插件錢包 1. 打開(kāi)Google瀏覽器的應(yīng)用商店,搜索Bystore showImg(https://segmentfault.com/img/bVbq0Ol?w=2554&h=1312); 下載鏈接:http:/...

    Mike617 評(píng)論0 收藏0
  • 原鏈Bytom錯(cuò)誤碼一覽

    摘要:錯(cuò)誤編號(hào)內(nèi)容注釋非比原標(biāo)準(zhǔn)錯(cuò)誤請(qǐng)求超時(shí)非法的請(qǐng)求體為網(wǎng)絡(luò)錯(cuò)誤編號(hào)內(nèi)容注釋區(qū)塊鏈網(wǎng)絡(luò)類型不匹配是簽名相關(guān)的錯(cuò)誤編號(hào)內(nèi)容注釋需要簽名的個(gè)數(shù)超過(guò)實(shí)際需求簽名的個(gè)數(shù)簽名格式錯(cuò)誤缺少主公鑰主公鑰重復(fù)為交易相關(guān)的錯(cuò)誤構(gòu)建交易錯(cuò)誤編號(hào)內(nèi)容注釋資產(chǎn)余額不 0XX API錯(cuò)誤 編號(hào) 內(nèi)容 注釋 BTM000 Bytom API Error 非比原標(biāo)準(zhǔn)錯(cuò)誤 BTM001 Request t...

    Nosee 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<