如何調用以太坊合約中的方法
❶ 以太坊合約中一個合約是否可以調用另外一個合約
可以的,參考合約之間的交互。數字貨幣交易平台幣匯。比如我正試圖從另一個工廠合約中簽智能合約,然後重新部署新智能合約的地址。然而,它返回的地址是交易哈希值而不是合約地址。我相信這是因為當地址被返回時合約尚未開采。當我使用Web3部署智能合約時,它似乎一直等到智能合約被部署完成後才輸出合約地址。
❷ 【ETH錢包開發04】web3j轉賬ERC-20 Token
在上一篇文章中講解了ETH轉賬,這一篇講一下ERC-20 Token轉賬。
【ETH錢包開發03】web3j轉賬ETH
1、直接用web3j的API
2、java/Android調用合約的 transfer 方法
不管用哪種方式來轉賬,你都需要先寫一個solidity智能合約文件來創建ERC-20 Token,然後部署合約,最後才是通過客戶端來調用。
注意:erc-20 token轉賬和eth轉賬的區別如下:
1、erc-20 token創建交易對象用的是這個方法 createTransaction
2、erc-20 token需要構建 Function ,它其實對應的就是erc-20 token合約中的那些方法。它的第一個參數就是ERC20中那幾個方法的名稱,第二個參數的話就是對應合約方法中的參數,第三個參數是和第二個參數對應的,按照我那樣就行了。轉賬的話就是 transfer ,我們從合約的 transfer 可以看到第一個參數是收款地址,第二個參數是金額,所以 Function 這里對應起來就好。
這種方法不需要使用web3j封裝的方法,而是直接調用solidity合約的方法。
步驟
1、web3j載入一個已經部署的合約
2、驗證合約是否載入成功 isValid
3、如何載入合約成功,則調用合約的 transfer 方法
注意:
1、這里的 TokenERC20 是根據solidity智能合約生成的對應的Java類,用於java/Android和智能合約交互的,如果你對這里不太清楚,不妨看看我之前的一篇文章。
以太坊Web3j命令行生成Java版本的智能合約
2、如果載入合約失敗,可能的一個原因是合約對應的Java類中的 BINARY 的值不對,這個值是你部署合約成功之後的bytecode,你最好檢查對比一下。
我發送一筆交易,可以通過這個地址查詢
https://rinkeby.etherscan.io/tx/
❸ 以太幣如何杠桿交易
資金劃轉
在進行永續合約交易之前,需要先進行資金劃轉,將其他賬戶的幣劃轉至永續合約賬戶才能做永續合約交易。 打開歐易OKX官網以太坊合約選擇想要劃轉的幣種,將數字資產從資金賬戶/余幣寶等其他賬戶劃轉到永續合約賬戶選擇合約類型點擊官網首頁左上方交易,選擇永續合約,進入永續合約交易界面
通過以上介紹,相信大家對於以太坊如何交易買賣這個問題已經有所了解,投資者在進行以太坊交易的時候,最好選擇現貨交易,尤其是幣圈新手,畢竟現貨交易只要沒有買入歸零幣, 需要注意的是:借貸是有利息的,利率是0.098%,按照現在的價格差不多是借一個以太坊一天的利息是1.6元左右.由此可見,杠桿交易第一步為借幣,完成借幣後進入投資交易環節,
❹ ETH以太坊怎樣進行一鍵發幣
以太坊一鍵發幣,具體的技術內容不太了解,但是這樣的操作安全嗎?數字金融安全允許一鍵發幣這種操作嗎?
❺ 一學就會,手把手教你用Go語言調用智能合約
智能合約調用是實現一個 DApp 的關鍵,一個完整的 DApp 包括前端、後端、智能合約及區塊 鏈系統,智能合約的調用是連接區塊鏈與前後端的關鍵。
我們先來了解一下智能合約調用的基礎原理。智能合約運行在以太坊節點的 EVM 中。因此要 想調用合約必須要訪問某個節點。
以後端程序為例,後端服務若想連接節點有兩種可能,一種是雙 方在同一主機,此時後端連接節點可以採用 本地 IPC(Inter-Process Communication,進 程間通信)機制,也可以採用 RPC(Remote Procere Call,遠程過程調用)機制;另 一種情況是雙方不在同一台主機,此時只能採用 RPC 機制進行通信。
提到 RPC, 讀者應該對 Geth 啟動參數有點印象,Geth 啟動時可以選擇開啟 RPC 服務,對應的 默認服務埠是 8545。。
接著,我們來了解一下智能合約運行的過程。
智能合約的運行過程是後端服務連接某節點,將 智能合約的調用(交易)發送給節點,節點在驗證了交易的合法性後進行全網廣播,被礦工打包到 區塊中代表此交易得到確認,至此交易才算完成。
就像資料庫一樣,每個區塊鏈平台都會提供主流 開發語言的 SDK(Software Development Kit,軟體開發工具包),由於 Geth 本身就是用 Go 語言 編寫的,因此若想使用 Go 語言連接節點、發交易,直接在工程內導入 go-ethereum(Geth 源碼) 包就可以了,剩下的問題就是流程和 API 的事情了。
總結一下,智能合約被調用的兩個關鍵點是節點和 SDK。
由於 IPC 要求後端與節點必須在同一主機,所以很多時候開發者都會採用 RPC 模式。除了 RPC,以太坊也為開發者提供了 json- rpc 介面,本文就不展開討論了。
接下來介紹如何使用 Go 語言,藉助 go-ethereum 源碼庫來實現智能合約的調用。這是有固定 步驟的,我們先來說一下總體步驟,以下面的合約為例。
步驟 01:編譯合約,獲取合約 ABI(Application Binary Interface,應用二進制介面)。 單擊【ABI】按鈕拷貝合約 ABI 信息,將其粘貼到文件 calldemo.abi 中(可使用 Go 語言IDE 創建該文件,文件名可自定義,後綴最好使用 abi)。
最好能將 calldemo.abi 單獨保存在一個目錄下,輸入「ls」命令只能看到 calldemo.abi 文件,參 考效果如下:
步驟 02:獲得合約地址。注意要將合約部署到 Geth 節點。因此 Environment 選擇為 Web3 Provider。
在【Environment】選項框中選擇「Web3 Provider」,然後單擊【Deploy】按鈕。
部署後,獲得合約地址為:。
步驟 03:利用 abigen 工具(Geth 工具包內的可執行程序)編譯智能合約為 Go 代碼。abigen 工具的作用是將 abi 文件轉換為 Go 代碼,命令如下:
其中各參數的含義如下。 (1)abi:是指定傳入的 abi 文件。 (2)type:是指定輸出文件中的基本結構類型。 (3)pkg:指定輸出文件 package 名稱。 (4)out:指定輸出文件名。 執行後,將在代碼目錄下看到 funcdemo.go 文件,讀者可以打開該文件欣賞一下,注意不要修改它。
步驟 04:創建 main.go,填入如下代碼。 注意代碼中 HexToAddress 函數內要傳入該合約部署後的地址,此地址在步驟 01 中獲得。
步驟 04:設置 go mod,以便工程自動識別。
前面有所提及,若要使用 Go 語言調用智能合約,需要下載 go-ethereum 工程,可以使用下面 的指令:
該指令會自動將 go-ethereum 下載到「$GOPATH/src/github.com/ethereum/go-ethereum」,這樣還算 不錯。不過,Go 語言自 1.11 版本後,增加了 mole 管理工程的模式。只要設置好了 go mod,下載 依賴工程的事情就不必關心了。
接下來設置 mole 生效和 GOPROXY,命令如下:
在項目工程內,執行初始化,calldemo 可以自定義名稱。
步驟 05:運行代碼。執行代碼,將看到下面的效果,以及最終輸出的 2020。
上述輸出信息中,可以看到 Go 語言會自動下載依賴文件,這就是 go mod 的神奇之處。看到 2020,相信讀者也知道運行結果是正確的了。
❻ 以太坊智能合約開發:讓合約接受轉賬
在以太坊智能合約開發中,通常會有向合約地址進行轉賬的需求,那麼有幾種向合約地址進行轉賬的方式呢?
有三種方式:
部署合約時轉賬
調用合約提供的方法
直接向合約地址進行轉賬
但有一個問題,以太坊的智能合約默認是拒絕來自任何地址的轉賬,那麼如何讓合約能夠支持接收轉賬呢?
1、部署轉賬
在進行合約開發時,如果想要在部署時,直接向該合約進行轉賬,只需要給構造函數中添加payable修飾符。
示例:
2、執行合約轉賬
執行合約轉賬,則需要給你需要支持轉賬功能的方法添加payable修飾符
示例:
3、直接轉賬
支持直接轉賬,需要藉助後備函數(fallback function),只需要為後備函數添加 payable 修飾符
示例:
❼ 浠ュお鍧婃妧鏈緋誨垪-浠ュお鍧婂叡璇嗘満鍒
涓銆佷互澶鍧婃妧鏈緋誨垪-浠ュお鍧婂叡璇嗘満鍒
鍖哄潡閾劇殑鐗圭偣涔嬩竴鏄鍘諱腑蹇冨寲銆備篃灝辨槸鑺傜偣浼氬垎甯冨湪鍚勪釜鍦版柟緇勬垚鍒嗗竷寮忕郴緇熴傚悇涓鑺傜偣闇瑕佸1涓闂棰樿揪鎴愪竴鑷達紝鐞嗘兂鎯呭喌涓嬶紝鍙闇瑕佸悓姝ョ姸鎬佸嵆鍙銆
濡備笂鍥炬墍紺 B鑺傜偣灝哸=1=> a=2鐨勭姸鎬佸悓姝ョ粰? ACDE鍥涗釜鑺傜偣錛岃繖鏃剁郴緇熶腑鐘舵佸彉涓篴=2, 浣嗗傛灉鍏朵腑鏈夋伓鎰忚妭鐐 AE 鏀跺埌閫氱煡鍚庢妸a=1=>a=3淇鏀逛負閿欒鐨勮妭鐐癸紝榪欎釜鏃跺欏ぇ瀹剁殑鐘舵佸氨涓嶄竴鑷翠簡錛屾ゆ椂闇瑕佸叡璇嗘満鍒朵嬌緋葷粺涓寰楀埌1涓鍞涓姝g『鐨勭姸鎬併
濡備笂闈㈣村埌鍒嗗竷寮忕郴緇熷瓨鍦ㄦ伓鎰忚妭鐐瑰艱嚧緋葷粺涓鐘舵佷笉涓鑷寸殑鎯呭喌鏈1涓姣旇緝钁楀悕鐨勮櫄鎷熼棶棰-鎷滃崰搴灝嗗啗闂棰樸
鎷滃崰搴灝嗗啗闂棰樻槸鎸囷紝N涓灝嗗啗鍘繪敾鎵撲竴搴у煄鍫★紝濡傛灉澶т簬涓瀹氭暟閲忕殑灝嗗啗鍚屾椂榪涙敾鍒欏彲浠ユ敾鎵撴垚鍔燂紝濡傛灉灝忎簬鍒欒繘鏀誨け璐ャ傚皢鍐涗腑鍙鑳藉瓨鍦ㄥ彌寰掋
榪欎釜鏃跺欐湁2縐嶆儏鍐
1.濡傛灉2涓鍙涘緬閮藉湪BCDE涓錛岄偅涔堝叡璇嗙畻娉曢渶瑕佽╁叾浣2涓灝嗗啗鍚浠嶢鐨勬g『鍐崇瓥榪涙敾鍩庡牎銆
2.濡傛灉A鏄1涓鍙涘緬錛屽叡璇嗙畻娉曢渶瑕佽〣CDE涓鍓╀綑鐨3涓蹇犺瘹灝嗗啗淇濇寔涓鑷淬
榪欎釜闂棰樻湁寰堝氱嶈В娉曪紝澶у舵湁鍏磋叮鍙浠ヨ嚜琛屾煡闃(鎺ㄨ崘瀛︿範PBFT)錛屾垜浠閲嶇偣鏉ョ湅鐪嬩互澶鍧婁腑鐩鍓嶆e湪浣跨敤鐨凬akamoto?鍏辮瘑鍜屽皢瑕佷嬌鐢ㄧ殑?Casper Friendly Finality Gadget鍏辮瘑鏄濡備綍瑙e喅鎷滃崰搴灝嗗啗闂棰樼殑銆
璇村埌Nakamoto鍏辮瘑鍜孋asper Friendly Finality Gadget鍏辮瘑鍙鑳藉ぇ瀹朵笉澶鐔熸倝錛屼絾浠栦滑鐨勯儴鍒嗙粍鎴愬簲璇ラ兘姣旇緝鐔熸倝-POW(宸ヤ綔閲忚瘉鏄)鍜孭OS(鏉冪泭璇佹槑)銆
POW鎴朠OS縐頒箣涓篠ybil鎶楁ф満鍒訛紝涓轟粈涔堥渶瑕丼ybil鎶楁ф満鍒跺憿錛屽垰鍒氭垜浠璇村埌鎷滃崰搴灝嗗啗闂棰橈紝搴旇ュ緢瀹規槗鐪嬪嚭鎮舵剰鑺傜偣瓚婂氾紝杈炬垚姝g『鍏辮瘑鐨勯毦搴︿篃灝辮秺澶э紝Sybil鏀誨嚮灝辨槸鎸1涓鏀誨嚮鑰呭彲浠ヤ吉瑁呭嚭澶ч噺鑺傜偣鏉ヨ繘琛屾敾鍑伙紝Sybil鎶楁ф槸鎸囨姷寰¤繖縐嶆敾鍑昏兘鍔涖
POW閫氳繃璁╃熆宸ユ垨楠岃瘉鑰呮姇鍏ョ畻鍔涳紝POS閫氳繃璁╅獙璇佽呰川鎶間互澶鍧婏紝濡傛灉鏀誨嚮鑰呰佷吉瑁呭氫釜鑺傜偣鏀誨嚮鍒欏繀灝嗘姇鍏ュぇ閲忕殑綆楀姏鎴栬祫浜э紝浼氬艱嚧鏀誨嚮鎴愭湰楂樹簬鏀剁泭銆傚湪浠ュお鍧婁腑淇濋殰鐨勫畨鍏ㄦф槸闄ら潪鏀誨嚮鑰呮嬁鍒版暣涓緋葷粺51%綆楀姏鎴栬祫浜у惁鍒欎笉鍙鑳借繘鏀繪垚鍔熴
鍦ㄨВ鍐沖畬Sybil鏀誨嚮鍚庯紝閫氳繃閫夊彇緋葷粺涓鐨勬渶闀塊摼浣滀負澶у惰揪鎴愬叡璇嗙殑閾俱
寰堝氫漢騫蟲椂涓轟簡綆鍖栧皢pow鍜宲os璁や負鏄鍏辮瘑鏈哄埗錛岃繖涓嶅熷噯紜錛屼絾涔熻存槑浜嗗叾閲嶈佷綔鐢錛屾垜浠鎺ヤ笅鏉ュ垎鏋恜ow鍜宲os銆
閫氳繃hash涓嶅彲閫嗙殑鐗規э紝瑕佹眰鍚勪釜鐭垮伐涓嶅仠鍦拌$畻鍑烘煇涓鍊肩殑hash絎﹀悎鏌愪竴鐗瑰緛錛屾瘮濡傚墠澶氬皯浣嶆槸000000錛岀敱浜庤繖涓榪囩▼鍙鑳戒緷璧栦笉鍋滅殑璇曢敊璁$畻hash,鎵浠ユ槸宸ヤ綔閲忚瘉鏄庛傝$畻瀹屾垚鍚庡叾浠栬妭鐐歸獙璇佺殑鍊肩﹀悎hash鐗瑰緛闈炲父瀹規槗楠岃瘉銆傞獙璇侀氳繃鍒欐垚涓烘垚涓哄悎娉曞尯鍧(涓嶄竴瀹氭槸鍏辮瘑鍖哄潡錛岄渶瑕佸湪鏈闀塊摼涓)銆
浠ュお鍧婁腑鐨勬寲鐭跨畻娉曠敤鍒2涓鏁版嵁闆嗭紝1涓灝忔暟鎹闆哻ache,1涓澶ф暟鎹闆咲AG銆傝繖2涓鏁版嵁闅忕潃鍖哄潡閾句腑鍖哄潡澧炲氭參鎱㈠彉澶э紝鍒濆嬪ぇ灝廲ache涓16M DAG涓1G銆
鎴戜滑鍏堟潵鐪嬭繖2涓鏁版嵁闆嗙殑鐢熸垚榪囩▼
cache鐢熸垚瑙勫垯涓烘湁1涓縐嶅瓙闅忔満鏁皊eed錛宑ache涓絎1涓鍏冪礌瀵箂eed鍙杊ash錛屽悗闈㈡暟緇勪腑姣忎釜鍏冪礌閮芥槸鍓1涓鍏冪礌鍙杊ash鑾峰緱銆
DAG鐢熸垚瑙勫垯涓?鎵懼埌cache涓瀵瑰簲鐨勫厓緔犲悗?鏍規嵁鍏冪礌涓鐨勫艱$畻鍑轟笅嬈¤佸繪壘鐨勪笅鏍囷紝寰鐜256嬈″悗鑾峰緱cache涓鏈緇堥渶瑕佺殑鍏冪礌鍊艱繘琛宧ash璁$畻寰楀埌DAG涓鍏冪礌鐨勫箋
鐒跺悗鎴戜滑鍐嶇湅鐪嬬熆宸ュ備綍榪涜屾寲鐭誇互鍙婅交鑺傜偣濡備綍楠岃瘉
鐭垮伐鎸栫熆鐨勮繃紼嬩負錛岄夋嫨Nonce鍊兼槧灝勫埌DAG涓鐨1涓猧tem錛岄氳繃item涓鐨勫艱$畻鍑轟笅嬈¤佹壘鐨勪笅鏍囷紝寰鐜64嬈★紝寰楀埌鏈緇坕tem錛屽皢item涓鐨勫糷ash璁$畻寰楀埌緇撴灉錛岀粨鏋滃拰target姣旇緝錛岀﹀悎鏉′歡
鍒欒瘉鏄庢寲鍒板尯鍧楋紝濡傛灉涓嶇﹀悎鍒欐洿鎹nonce緇х畫鎸栫熆銆傜熆宸ュ湪鎸栫熆榪囩▼涓闇瑕佸皢1G鐨凞AG璇誨彇鍒板唴瀛樹腑銆
杞昏妭鐐歸獙璇佽繃紼嬪拰鐭垮伐鎸栫熆榪囩▼鍩烘湰涓鑷達紝
灝嗗潡澶撮噷闈㈢殑Nonce鍊兼槧灝勫埌DAG涓鐨1涓猧tem錛岀劧鍚庨氳繃cache鏁扮粍璁$畻鍑鴻item鐨勫礆紝閫氳繃item涓鐨勫艱$畻鍑轟笅嬈¤佹壘鐨勪笅鏍囷紝寰鐜64嬈★紝寰楀埌鏈緇坕tem錛屽皢item涓鐨勫糷ash璁$畻寰楀埌緇撴灉錛岀粨鏋滃拰target姣旇緝錛岀﹀悎鏉′歡鍒欓獙璇侀氳繃銆傝交鑺傜偣鍦ㄩ獙璇佽繃紼嬩腑涓嶉渶瑕佸皢1G鐨凞AG璇誨彇鍒板唴瀛樹腑銆傛瘡嬈$敤鍒癉AG鐨剗tem鍊奸兘浣跨敤cache榪涜岃$畻銆
浠ュお鍧婁負浠涔堥渶瑕佽繖2涓涓嶅悓澶у皬鐨勬暟緇勮繘琛岃緟鍔﹉ash榪愮畻鍛錛岀洿鎺ヨ繘琛宧ash榪愮畻浼氭湁浠涔堥棶棰橈紵
濡傛灉鍙鏄榪涜岄噸澶嶈$畻浼氬艱嚧鎸栫熆璁懼囦笓涓氬寲錛屽噺灝戝幓涓蹇冨寲紼嬪害銆傚洜涓烘垜浠鏃ュ父浣跨敤鐨勮$畻鏈哄唴瀛樺拰璁$畻鍔涙槸閮介渶瑕佺殑錛屽傛灉鎸栫熆鍙闇瑕乭ash榪愮畻錛屾寲鐭胯懼囧垯浼氳捐″湴鎷ユ湁瓚呴珮綆楀姏錛屼絾瀵瑰唴瀛樺彲浠ョ緝灝忓埌寰堝皬鐢氳嚦娌℃湁銆傛墍浠ユ垜浠閫夌敤1G鐨勫ぇ鍐呭瓨澧炲姞瀵瑰唴瀛樿塊棶鐨勯戠巼錛屽炲姞鎸栫熆璁懼囧瑰唴瀛樿塊棶闇奼傦紝浠庤屾洿鎺ヨ繎浜庢垜浠鏃ュ父浣跨敤鐨勮$畻鏈恆
鎴戜滑鐪嬬湅鍦∟akamoto鍏辮瘑鏄濡備綍瑙e喅鎷滃崰搴灝嗗啗闂棰樼殑銆傞栧厛鐪嬬湅鍖哄潡閾句腑鐨勬嫓鍗犲涵灝嗗啗闂棰樻槸浠涔堬紵
鍖哄潡閾句腑闇瑕佽揪鎴愪竴鑷寸殑鏄鍝鏉¢摼涓轟富閾撅紝鉶界劧閲囩敤浜嗘渶闀塊摼鍘熷垯錛屼絾鐢變簬鍒嗗弶闂棰橈紝榪樻槸浼氬甫鏉ユ嫓鍗犲涵灝嗗啗闂棰樸
鏈鏉ヤ互澶鍧妏ow鐩鏍囨槸鎶墊姉51%浠ヤ笅鐨勬敾鍑伙紝浣嗗備笂鍥懼傛灉鎮舵剰鑺傜偣娌跨潃鑷宸辨寲鍑虹殑鍖哄潡涓嶆柇鎸栫熆錛岀敱浜庝富閾句笂鏈夊垎鍙夊瓨鍦錛屾伓鎰忚妭鐐逛笉闇瑕佽揪鍒51%綆楀姏灝卞彲浠ヨ秴榪囦富閾捐繘鑰屾垚涓烘柊鐨勪富閾撅紝涓烘や互澶鍧婁嬌鐢ㄤ簡ghost鍗忚緇欎笂鍥句腑鐨凚1鍜孋1涔熷垎閰嶅嚭鍧楀栧姳錛屽敖蹇鍚堝苟鍒頒富閾句腑錛岃繖鏍蜂富閾鵑暱搴(鎸夌収鍚堝苟鍚庣殑鎬婚暱搴︾畻錛岄暱搴﹀彧鏄鎶借薄姒傚康錛屼互澶鍧婁腑鎸夌収鍖哄潡鏉冮噸緔鍔)榪樻槸澶т簬鎮舵剰鑺傜偣鑷宸辨寲鐭跨殑銆
緗戠粶涓鐨勭敤鎴烽氳繃璐ㄦ娂涓瀹氭暟閲忕殑浠ュお鍧婃垚涓洪獙璇佽呫傛瘡嬈$郴緇熶粠榪欎簺楠岃瘉鑰呬粠闅忔満閫夋嫨鍑哄尯鍧楀壋寤鴻咃紝鍏朵綑楠岃瘉鑰呭幓楠岃瘉鍒涘緩鍑虹殑鍖哄潡鏄鍚﹀悎娉曘傞獙璇佽呬細鑾峰緱鍑哄潡濂栧姳錛屾病鏈夎閫変腑鐨勫尯鍧椾笉榪涜岄獙璇佸垯浼氳鎵i櫎涓瀹氳川鎶煎竵錛屽傛灉榪涜岄敊璇楠岃瘉鍒欎細琚鎵i櫎鍏ㄩ儴璐ㄦ娂甯併
濡備笂鍥撅紝鏉冪泭璇佹槑鍦ㄦ瘡闅斾竴瀹氬尯鍧楃殑鍦版柟璁劇疆涓涓媯鏌ョ偣錛屽瑰墠闈㈢殑鍖哄潡榪涜岄獙璇侊紝2/3楠岃瘉鑰呴氳繃鍒欓獙璇侀氳繃錛岄獙璇侀氳繃鍒欒ュ尯鍧楁墍鍦ㄩ摼鎴愪負鏈闀垮悎娉曢摼(涓嶈兘琚鍥炴粴)銆
鎴戜滑綆鍖栧湴鍙鍒嗘瀽浜嗘潈鐩婅瘉鏄庢湰韜錛屽湪浠ュお鍧婁腑鏉冪泭璇佹槑杈冧負澶嶆潅鐨勭偣鍦ㄤ簬鍜屽垎鐗囨満鍒剁粨鍚堝湪涓璧鋒椂鐨勮繍琛屾祦紼嬶紝榪欓儴鍒嗕細鍦ㄥ悗闈㈠崟鐙灝嗗垎鐗囨満鍒剁殑涓綃囨枃絝犱腑璇﹁堪銆
鏈綃囨枃絝犱富瑕佽ㄨ轟簡鍏辮瘑鏈哄埗鏄瑙e喅鍒嗗竷寮忕郴緇熶腑鐨勬嫓鍗犲涵灝嗗啗闂棰橈紝浠ュ強鍒嗘瀽浜嗕互澶鍧婁腑鐨勫叡璇嗘満鍒朵竴鑸鍖呮嫭鏈闀塊摼閫夋嫨鍜屼竴縐峴ybil鎶楁ф満鍒(pow鎴杙os)銆傞噸鐐瑰垎鏋愪簡pow鍜宲os鐨勬祦紼嬩互鍙婅捐℃濇兂銆傚悗緇灝嗗紑濮嬮噸鐐硅ㄨ烘櫤鑳藉悎綰︾殑閮ㄥ垎銆
浜屻佷粈涔堟槸浠ュお鍧婄殑鍏辮瘑鏈哄埗錛
鍖哄潡閾炬妧鏈鐨勬牳蹇冧紭鍔誇箣涓錛屽氨鏄鑳藉熷湪鍐崇瓥鏉冮珮搴﹀垎鏁g殑鍘諱腑蹇冨寲緋葷粺涓錛屼嬌寰楀悇鑺傜偣楂樻晥鍦伴拡瀵瑰尯鍧楁暟鎹鐨勬湁鏁堟у拰涓鑷存ц揪鎴愬叡璇嗐傜敱浜庣偣瀵圭偣緗戠粶涓嬪瓨鍦ㄨ緝楂樼殑緗戠粶寤惰繜錛屽悇涓鑺傜偣鎵瑙傚療鍒扮殑浜嬪姟鍏堝悗欏哄簭涓嶅彲鑳藉畬鍏ㄤ竴鑷淬傚洜姝ゅ尯鍧楅摼緋葷粺闇瑕佽捐′竴縐嶆満鍒訛紝瀵瑰湪宸涓嶅氭椂闂村唴鍙戠敓鐨勪簨鍔$殑鍏堝悗欏哄簭榪涜屽叡璇嗭紝榪欑嶅逛竴涓鏃墮棿紿楀彛鍐呯殑浜嬪姟鐨勫厛鍚庨『搴忚揪鎴愬叡璇嗙殑綆楁硶琚縐頒負鈥滃叡璇嗘満鍒垛濆叡璇嗘満鍒惰鐢ㄦ潵鍐沖畾鍖哄潡閾劇綉緇滀腑鐨勮拌處鑺傜偣錛屽苟瀵逛氦鏄撲俊鎮榪涜岀『璁ゅ拰涓鑷存у悓姝ャ備互澶鍧婂叡璇嗘満鍒跺叡鏈夊洓涓闃舵碉紝鍗矲rontier錛堝墠娌匡級銆丠omestead錛堝跺洯錛夈丮etropolis錛堝ぇ閮戒細錛夈丼erenity錛堝畞闈欙級銆備互澶鍧婂墠涓変釜闃舵甸噰鐢ㄧ殑鏄疨OW鍏辮瘑鏈恆傜鍥涗釜闃舵靛皢閲囩敤鑷宸卞壋寤虹殑POS鏈哄埗錛屽悕涓篊asper鎶曟敞鍏辮瘑錛岃繖縐嶆満鍒跺炲姞浜嗘儵緗氭満鍒訛紝騫跺熀浜嶱OS鐨勬濇兂鍦ㄨ拌處鑺傜偣涓閫夊彇楠岃瘉浜恆侾OW鍗沖伐浣滈噺璇佹槑錛屾槸姣旂壒甯佺郴緇熶腑閲囩敤鐨勫叡璇嗘満鍒躲傦紙鏈鏂囦富瑕佽茶В浠ュお鍧婄殑鍏辮瘑鏈哄埗錛夎皥璧稢asper鎶曟敞鍏辮瘑錛岃佸厛璇碢OS銆侾OS鍗蟲潈鐩婅瘉鏄庯紝涓昏佺壒鐐逛互鏉冪泭璇佹槑浠f浛宸ヤ綔閲忚瘉鏄庯紝鐢卞叿鏈夋渶楂樻潈鐩婄殑鑺傜偣瀹炵幇鏂板潡鍔犲叆鍜岃幏寰楁縺鍔辨敹鐩娿侾OS鍏辮瘑鏄涓鴻В鍐砅OW鍏辮瘑鏈哄埗鐨勮祫婧愭氮璐瑰拰瀹夊叏鎬х己闄瘋屾彁鍑虹殑鏇誇唬鏂規堛傚畠鐨勬湰璐ㄦ槸閲囩敤鏉冪泭璇佹槑鏉ヤ唬鏇縋OW涓鐨勫熀浜庡搱甯岀畻鍔涚殑宸ヤ綔閲忚瘉鏄庯紝鏄鐢辯郴緇熶腑鍏鋒湁鏈楂樻潈鐩婅岄潪鏈楂樼畻鍔涚殑鑺傜偣鑾峰緱鍖哄潡璁拌處鏉冦傛潈鐩婁綋鐜頒負鑺傜偣瀵圭壒瀹氭暟閲忚揣甯佺殑鎵鏈夋潈錛岀О涓哄竵榫勬垨甯佸ぉ鏁幫紙Coindays錛夈傚竵榫勬槸鐗瑰畾鏁伴噺鐨勫竵涓庡叾鏈鍚庝竴嬈′氦鏄撶殑鏃墮棿闀垮害鐨勪箻縐錛屾瘡嬈′氦鏄撻兘灝嗕細娑堣楁帀鐗瑰畾鏁伴噺鐨勫竵榫勩備緥濡傛煇浜哄湪涓絎斾氦鏄撲腑鏀跺埌10涓甯佸悗騫舵寔鏈10澶╋紝鍒欒幏寰100甯侀緞錛涜屽悗鍏惰姳鎺5涓甯佸悗鍒欐秷鑰楁帀50甯侀緞錛屾樉鐒墮噰鐢≒OS鍏辮瘑鏈哄埗鐨勭郴緇熷湪鐗瑰畾鏃墮棿鐐逛笂鐨勫竵榫勬繪暟鏄鏈夐檺鐨勶紝闀挎湡鎸佸竵鑰呮洿鍊懼悜浜庢嫢鏈夋洿澶氬竵榫勶紝鍥犳ゅ竵榫勫彲瑙嗕負鍏跺湪POS緋葷粺涓鐨勬潈鐩娿傛姇娉ㄥ叡璇嗘槸浠ュお鍧婁笅涓浠g殑鍏辮瘑鏈哄埗Casper錛堥奸┈灝忕簿鐏碉級寮曞叆鐨勪竴涓鍏ㄦ柊姒傚康錛屽睘浜嶱OS銆侰asper鐨勫叡璇嗘槸鎸夊尯鍧楄揪鎴愮殑錛岃屼笉鍍廝OS閭f牱鎸夐摼杈炬垚銆備負浜嗛槻姝㈤獙璇佷漢鍦ㄤ笉鍚岀殑涓栫晫涓鎻愪緵涓嶅悓鐨勬姇娉錛岃繕鏈変竴涓綆鍗曚弗鏍肩殑鏉℃撅細濡傛灉浣犱袱嬈$殑鎶曟敞搴忓彿涓鏍鳳紝鎴栬呰翠綘鎻愪氦浜嗕竴涓鏃犳硶璁〤asper渚濈収鍚堢害澶勭悊鐨勬姇娉錛屼綘灝嗗け鍘繪墍鏈変繚璇侀噾銆備粠榪欎竴鐐瑰彲浠ョ湅鍑猴紝Casper涓庝紶緇熺殑POS涓嶅悓鐨勬槸錛孋asper鏈夋儵緗氭満鍒訛紝榪欐牱闈炴硶鑺傜偣閫氳繃鎮舵剰鏀誨嚮緗戠粶涓嶄粎寰椾笉鍒頒氦鏄撹垂錛岃屼笖榪橀潰涓寸潃淇濊瘉閲戣娌℃敹鐨勯庨櫓銆侰asper鍗忚涓嬬殑楠岃瘉浜洪渶瑕佸畬鎴愬嚭鍧楀拰鎶曟敞涓や釜媧誨姩銆傚叿浣撳備笅錛氬嚭鍧楁槸涓涓鐙絝嬩簬鍏朵粬鎵鏈夋椂闂磋屽彂鐢熺殑榪囩▼錛岄獙璇佷漢鏀墮泦浜ゆ槗錛屽綋杞鍒頒粬浠鐨勫嚭鍧楁椂闂存椂錛屼粬浠灝卞埗閫犱竴涓鍖哄潡錛屽苟絳懼悕錛岀劧鍚庡彂閫佸埌緗戠粶涓娿傛姇娉ㄧ殑榪囩▼鏇翠負澶嶆潅涓浜涳紝鐩鍓岰asper榛樿ょ殑楠岃瘉浜虹瓥鐣ヨ璁捐′負妯′豢浼犵粺鐨勬嫓鍗犲涵瀹歸敊鍏辮瘑錛氳傚療鍏朵粬鐨勯獙璇佷漢濡備綍鎶曟敞錛屽彇33%澶勭殑鍊礆紝鍚0鎴1榪涗竴姝ョЩ鍔ㄣ傝屽㈡埛絝紜璁ゅ綋鍓嶇姸鎬佺殑榪囩▼鏄榪欐牱鐨勶細涓寮濮嬪厛涓嬭澆鎵鏈夌殑鍖哄潡鍜屾姇娉錛岀劧鍚庣敤涓婇潰鐨勭畻娉曟潵褰㈡垚鑷宸辯殑鎰忚侊紝浣嗘槸涓嶅叕甯冩剰瑙侊紱瀹冨彧鏄綆鍗曞湴鎸夐『搴忓湪姣忎釜楂樺害榪涜岃傚療錛屽傛灉涓涓鍖哄潡鐨勬傜巼楂樹簬0.5灝卞勭悊瀹冿紝鍚﹀垯灝辮煩榪囧畠銆傚湪澶勭悊鎵鏈夌殑鍖哄潡涔嬪悗錛屾墍寰楀埌鐨勭姸鎬佸氨鍙浠ユ樉紺轟負鍖哄潡閾劇殑鈥滃綋鍓嶇姸鎬佲濄傚㈡埛絝榪樺彲浠ョ粰鍑哄逛簬鈥滄渶緇堢『瀹氣濈殑涓昏傜湅娉曪細濡傛灉楂樺害k涔嬪墠鐨勬瘡涓鍖哄潡褰㈡垚鐨勬剰瑙侀珮浜99.999%鎴栬呬綆浜0.001%錛岄偅涔堝㈡埛絝鍙浠ヨや負鍓峩涓鍖哄潡宸茬粡鏈緇堢『瀹氥
涓夈佷粈涔堟槸浠ュお鍧?
閲嶅嶉棶棰樿佺櫨搴︾煡閬撶殑涓涓鍥炵瓟錛岀櫨搴︾煡閬撶瓟妗
❽ 如何使用 Etherscan 的 API
雖然以太坊提供了 Web3 和 Json Rpc 這 2 種 API,geth 也額外提供了一些 API ,但是對於開發以太坊應用來說還是顯得有些不足,比如說獲取交易記錄的時間,需要先通過交易的 hash 找到該交易對應的區塊 id,然後才能找到對應的時間,查詢起來相當不方便。
好在 Etherscan 對外提供了一些公共的 API,給我們提供了額外的能力來處理更多的業務場景。
為了方便開發人員更好地使用 ethersacn.io ,網站提供了 一系列 API 供開發人員使用。
API 的使用非常簡單,基本上都是 get 方法,通過 http 請求就可以直接調用,在每個 Api 的說明文檔都有對應的例子可以查看。
API 主要包含以下模塊:賬號、智能合約、交易、區塊、事件日誌、代幣及工具等。
賬號相關的 API,有獲取賬號金額,獲取交易記錄等,該模塊提供的 API 最多。
API 示例
https://api.etherscan.io/api?mole)=account&action=balance&address=&tag=latest&apikey=YourApiKeyToken
參數說明
其中 mole、action、apikey 是每個 API 都有的參數,其他的參數則因不同 API 而不同。
返回結果
API 示例
https://api.etherscan.io/api?mole=account&action=balancemulti&address=,,&tag=latest&apikey=YourApiKeyToken
參數說明
(前面有講過的參數就不講了,下同)
與單個賬號金額 API 相比,參數 address 用 , 號分隔多個賬號,最多可支持 20 個賬號的金額查詢。
返回結果
API 示例
https://api.etherscan.io/api?mole=account&action=txlist&address=&startblock=0&endblock=99999999&page=1&offset=10&sort=asc&apikey=YourApiKeyToken
參數說明
返回結果
API 示例
https://api.etherscan.io/api?mole=account&action=txlistinternal&address=&startblock=0&endblock=2702578&page=1&offset=10&sort=asc&apikey=YourApiKeyToken
參數說明
參數與上一個 API 基本相同,只有 action 是 txlistinternal 這一點不同,這 2 種交易的區別是什麼呢?簡單的理解就是「正常」的交易是會記錄到區塊鏈上的,而「內部」交易是指不會記錄到區塊鏈上的記錄,比如交易失敗的記錄。
另外這個 API 還可以通過交易 hash 查看交易的詳情。
https://api.etherscan.io/api?mole=account&action=txlistinternal&txhash=&apikey=YourApiKeyToken
返回結果
API 示例
參數說明
返回結果
API 示例
參數說明
返回結果
智能合約相關的 API,其實只有一個獲取智能合約介面的 API,但是這個 API 非常有用。
API 示例
參數說明
智能合約的 abi 就是一個 json 對象,通過這個對象我們可以調用其介面方法,後面會寫一篇文章介紹如何操作 abi 對象,敬請期待。
返回結果
返回結果內容比較長,這里省略,就是一個 json 對象,感興趣的可以自行調用該 API 看結果。
賬號和智能合約的 API 已經能滿足大部分的業務需求了,其他模塊的 API 感覺沒什麼太大的作用,這里就不介紹了,感興趣的讀者可以自行查閱。
這里再說下 API 的使用限制,剛才提到每個 API 都有一個 apikey 參數,如果 API 沒加上這個參數的話,每個 API 的請求次數不能超過 5 次每秒。
Etherscan 提供的這些 API 有些是和以太坊提供的 API 有重復的,比如說獲取賬號金額,獲取事件日誌記錄等,但有一些 API 給我們帶來了很大的便利性,比如獲取賬號交易記錄,有了這個 API 就不用使用幾個原生 API 進行各種數據拼接了。
另外 Etherscan 的這套 API 在 Rinkeby 測試網路也有一套一模一樣的,區別只是前面的 url 不同,Rinkeby 的是: api-rinkeby.etherscan.io ,感興趣的同學可以去試試。
❾ 銆愬繀鐪嬨慐TH浣庨庨櫓濂楀埄鐨勪竴縐嶆柟娉
璇濅笉澶氳達紝鐩存帴涓婂共璐с
榪戜竴孌靛叧娉‥OS浼楃規瘮杈冨氾紝鐪嬪埌鏈夊皬浼欎即鏍規嵁EOS/ETH鐨勬暟鎹錛屽彂浜嗗備笅涓寮犲浘錛
鍥句腑鏄庢樉鍙浠ョ湅鍑烘定璺屽懆鏈熷熀鏈浠23灝忔椂涓轟竴涓杞鍥烇紝濡傛灉鍦ㄦ瘡闂撮殧23灝忔椂楂樺崠浣庝拱涓嬈★紝綆楁槸涓縐嶆瘮杈冪ǔ濡ョ殑鑾峰埄鍔炴硶銆
浣犱竴瀹氬緢濂藉囷紝榪欑湡鐨勬槸涓涓瑙勫緥鍚楋紵鎴栬呰翠負浠涔堟槸榪欐牱鍛錛
榪欒繕瑕佷粠EOS浼楃瑰紑濮嬭磋搗銆侭M褰撴椂澶╂墠鐨勬彁鍑轟簡EOS浼楃圭殑鎯蟲硶錛屼互23灝忔椂涓哄懆鏈燂紝鎸佺畫涓騫達紝姝ょ嶄紬絳規柟寮忓彲璋撳墠鏃犲彜浜恆
鎴戠寽嫻婤M鏄涓嶆槸鑰冭檻鍖哄潡閾句箖鏄鍏ㄧ悆鍏卞悓鍏蟲敞鐨勯」鐩錛屽洜姝ゆ妸浼楃規椂闂村滻瀹氬湪鍑犵偣浼間箮閮戒笉鍚堥傦紝閭e共鑴嗚疆嫻侊紝姣忎釜鏃墮棿閮借疆鍒般
鐜板湪鎶奅TH鎹㈡垚EOS鏈変袱縐嶆柟寮忥紝涓鏄鍦ㄤ簩綰у競鍦轟拱鍏ワ紝浜屾槸鍙備笌涓綰у競鍦虹殑浼楃廣
鍋囪句竴綰у競鍦轟紬絳圭殑浠鋒牸鎸佺畫楂樹簬浜岀駭甯傚満涔板叆錛岄偅涔堝弬涓庝紬絳圭殑浜哄繀鐒惰秺鏉ヨ秺灝戱紝璁╁弬涓庝竴綰у競鍦轟紬絳圭殑浠鋒牸鎱㈡參闄嶄綆銆傞檷浣庡埌浠涔堢▼搴﹀憿錛熸瘮杈冨悎鐞嗙殑緇撴灉鏄錛氫竴綰у競鍦轟紬絳圭殑浠鋒牸鐣ヤ綆浜庢垨絳変簬浜岀駭甯傚満鐨勪環鏍箋
涓句竴涓渚嬪瓙灝辨槑鐧戒簡錛屼互涓嬫暟鎹浠呬負璇存槑鐢ㄣ
姣斿傚湪浜岀駭甯傚満錛堝氨鏄鍦ㄤ氦鏄撴墍涔板叆錛1涓狤TH鍙浠ユ崲40涓狤OS錛屼絾鏄鍦ㄤ竴綰у競鍦猴紙鍙備笌浼楃癸級1涓狤TH鍙浠ユ崲41涓狤OS錛岄偅蹇呯劧鏈変漢浼氱敤1涓狤TH鍙備笌浼楃規崲鏉41涓狤OS錛岀劧鍚庡湪浜岀駭甯傚満鎹㈠洖ETH錛岃繖鏍峰湪涓嶈冭檻鎵嬬畫璐圭殑鎯呭喌涓嬶紝1涓狤TH灝卞彉鎴愪簡1025涓狤TH錛岃幏鍒╀簡25%銆
榪戞湡闅忕潃EOS浠鋒牸鐨勮蛋楂橈紝姣忓ぉ鍙備笌浼楃圭殑ETH澶氳揪4涓囧氫釜銆
榪欓噷鑲瀹氭湁涓嶅皯姣斾緥鐨勮祫閲戞槸鍦ㄨ繘琛屼竴綰у競鍦哄拰浜岀駭甯傚満鐨勬惉鐮栧楀埄銆
濡傛灉鐭ラ亾浜嗚繖涓鍘熺悊錛岄偅涔堝彲浠ュ垎鏋愬嚭鍦‥OS鐨勪紬絳規椂闂寸偣灝辨槸涓涓狤OS浠鋒牸鐨勭浉瀵逛綆鐐癸紝榪欐椂鐢‥TH鎹㈡垚EOS錛岀瓑榪囦竴灝忔墊椂闂寸瓑EOS娑ㄤ笂鍘伙紝鍐嶆妸EOS鎹㈠洖ETH錛屽疄鐜板楀埄銆
浠ユ渶榪戜袱鍛ㄥ氱殑鏁版嵁鏉ュ垎鏋愶紝鍋囪懼湪姣忓ぉ浼楃圭殑鏃墮棿鐐規妸ETH鎹㈡垚EOS錛屽湪涓灝忔椂鍚庢妸EOS鎹㈠洖ETH錛屽彲浠ョ泩鍒╁氬皯鍛錛
緇忚繃璁$畻錛屾渶榪18澶╃殑鏀剁泭鎬昏′負36%錛岀湅璧鋒潵涓嶇畻澶氾紝濂藉勬槸椋庨櫓杈冨皬銆
濡傛灉璧勯噾閲忚緝澶ф敹鐩婄粷瀵規敹鐩婁篃姣旇緝鍙瑙傘
鍗充嬌鍙戠敓椋庨櫓錛孍OS鍜孍TH涔熼兘鏄澶у竵縐嶏紝涔熶笉浼氱牳鍦ㄦ墜閲屻
鐢變簬鏃墮棿浠撲績錛屾垜鍚庣畫浼氭洿鏂頒笂榪拌〃鏍礆紝琛ュ厖EOS浼楃瑰綋鏃剁殑浠鋒牸鍜屼紬絳1灝忔椂鍚庣殑浠鋒牸銆
鏈鍚庡皬緇撲竴涓嬫搷浣滄ラわ細
鈶犲湪EOS鐨勪紬絳圭綉絝欐煡璇㈡瘡澶〦OS鐨勪紬絳規椂闂
鈶″湪浼楃規椂闂寸偣錛屽湪浜ゆ槗緗戠珯錛堝傚竵瀹夛級鐢‥TH涔板叆EOS
鈶1灝忔椂鍚庡啀鎶奅OS鎹㈠洖ETH
榪欐槸涓縐嶄綆椋庨櫓濂楀埄鐨勬柟寮忥紝浣嗗苟涓嶄唬琛ㄦ病鏈夐庨櫓銆傛湁鏃朵簩綰у競鍦虹殑娉㈠姩姣旇緝澶э紝鍑虹幇鏆傛椂鐨勪簭鎹熶篃鏄姝e父鐨勩
濡傚湪鍥句腑鍙浠ョ湅鍒幫紝鍦4鏈29鏃ワ紝甯傚満娉㈠姩鏋佸ぇ錛屽湪浼楃瑰悗鐨勪竴涓灝忔椂鍐匛OS/ETH涓嬭穼浜41%銆
涓嶈繃鎴戜滑鍋氫簨鎯咃紝鍙瑕佸仛姒傜巼澶х殑浜嬫儏鍗沖彲銆傚傛灉鍍忛摱琛屽瓨嬈鵑偅鏍鳳紝鉶界劧鍑犱箮鏃犻庨櫓錛屼絾騫村寲鏀剁泭鐜囧彧鏈夊尯鍖175%銆
濡傛灉鐢ㄧ悊鎬ф垬鑳滀漢鎹熷け鍘屾伓鐨勬劅鎬э紝閭d箞浜虹殑鑳藉姏杈圭晫鏃犵枒灝辨墿澶т簡涓浜涖
榪欎篃鏄鍊熼壌浜嗛噺鍖栦氦鏄撶殑鎬濊礬錛屽傛灉紜璁や竴浠朵簨鎯呮槸澶ф傜巼鑾峰埄錛岄偅灝卞︿範鍐峰啺鍐扮殑璁$畻鏈猴紝姣鏃犳劅鎯呯殑鎵ц屽嵆鍙銆
榪欓噷鏈変竴鐐歸渶瑕佽存槑錛氱幇鍦ㄨ窛紱籈OS涓葷綉涓婄嚎榪樻湁鏈鍚庝竴涓鏈堬紝鎵浠ヨ繖縐嶄綆椋庨櫓濂楀埄鐨勫姙娉曞彧鑳藉啀鎸佺畫4鍛錛屾湁鍏磋叮灝濊瘯鐨勫皬浼欎即鍙瑕佹姄緔т簡銆
ETH鐨勬寲鐭垮師鐞嗕笌鏈哄埗
寰呭瓧闂轟腑寮鍙戜簡涓闂ㄥ尯鍧楅摼鏂歸潰鐨勮劇▼錛氥婃繁鍏ユ祬鍑篍TH鍘熺悊涓庢櫤鑳藉悎綰﹀紑鍙戙嬶紝椹鑹鑰佸笀璁叉巿銆傛ゆ枃闆嗚板綍鎴戠殑瀛︿範絎旇般
璇劇▼鍏8鑺傝俱傚叾涓錛屽墠鍥涜捐睧TH鍘熺悊錛屽悗鍥涜捐叉櫤鑳藉悎綰︺
絎鍥涜懼垎涓轟笁閮ㄥ垎錛
榪欑瘒鏂囩珷鏄絎鍥涜劇涓閮ㄥ垎鐨勫︿範絎旇幫細Ethash綆楁硶銆
榪欒妭璇句粙緇嶇殑鏄浠ュお鍧婇潪甯告牳蹇冪殑鎸栫熆綆楁硶銆
鍦ㄤ粙緇岴thash綆楁硶涔嬪墠錛屽厛璁蹭竴浜涜儗鏅鐭ヨ瘑銆傚叾瀹炲尯鍧楅摼鎶鏈涓昏佹槸瑙e喅涓涓鍏辮瘑鐨勯棶棰橈紝鑰屽叡璇嗘槸涓涓灞傛″緢涓板瘜鐨勬傚康錛岃繖閲屾妸鑼冪暣緙╁皬錛屽彧璁ㄨ哄尯鍧楅摼涓鐨勫叡璇嗐
浠涔堟槸鍏辮瘑錛
鍦ㄥ尯鍧楅摼涓錛屽叡璇嗘槸鎸囧摢涓鑺傜偣鏈夎拌處鏉冦傜綉緇滀腑鏈夊氫釜鑺傜偣錛岀悊璁轟笂閮芥湁璁拌處鏉冿紝棣栧厛闈涓寸殑闂棰樺氨鏄錛屽埌搴曡皝鏉ヨ板笎銆傚彟涓涓闂棰橈紝浜ゆ槗涓瀹氭槸鏈夐『搴忕殑錛屽嵆璋佸湪鍓嶏紝鍓嶅湪鍚庛傝繖鏍峰彲浠ヨВ鍐沖弻鑺遍棶棰樸傚尯鍧楅摼涓鐨勫叡璇嗘満鍒跺氨鏄瑙e喅榪欎袱涓闂棰橈紝璋佽板笎鍜屼氦鏄撶殑欏哄簭銆
浠涔堟槸宸ヤ綔閲忚瘉鏄庣畻娉
涓轟簡鍐沖畾浼楀氳妭鐐逛腑璋佹潵璁板笎錛屽彲浠ユ湁澶氱嶆柟妗堛傚叾涓錛屽伐浣滈噺璇佹槑灝辮╄妭鐐瑰幓綆椾竴涓鍝堝笇鍊礆紝婊¤凍闅懼害鐩鏍囧肩殑鑳滃嚭銆傝繖涓榪囩▼鍙鑳介氳繃鏋氫婦璁$畻錛岃皝綆楃殑蹇錛岃皝鑾瘋儨鐨勬傜巼澶с傛敹鐩婅窡鑺傜偣鐨勫伐浣滈噺鏈夊叧錛岃繖灝辨槸宸ヤ綔閲忚瘉鏄庣畻娉曘
涓轟粈涔堣佸紩鍏ュ伐浣滈噺璇佹槑綆楁硶錛
Hash Cash 鐢盇dam Back 鍦1997騫村彂琛錛屼腑鏈鑱棣栨″湪姣旂壒甯佷腑搴旂敤鏉ヨВ鍐沖叡璇嗛棶棰樸
瀹冩渶鍒濈敤鏉ヨВ鍐沖瀮鍦鵑偖浠墮棶棰樸
鍏朵富瑕佽捐℃濇兂鏄閫氳繃鏆村姏鎼滅儲錛屾壘鍒頒竴縐岯lock澶撮儴緇勫悎錛堥氳繃璋冩暣nonce錛変嬌寰楀祵濂楃殑SHA256鍗曞悜鏁e垪鍊艱緭鍑哄皬浜庝竴涓鐗瑰畾鐨勫礆紙Target錛夈
榪欎釜綆楁硶鏄璁$畻瀵嗛泦鍨嬬畻娉曪紝涓寮濮嬩粠CPU鎸栫熆錛岃漿鑰屼負GPU錛岃漿鑰屼負FPGA錛岃漿鑰屼負ASIC錛屼粠鑰屼嬌寰楃畻鍔涘彉寰楅潪甯擱泦涓銆
綆楀姏闆嗕腑灝變細甯︽潵涓涓闂棰橈紝鑻ユ湁涓涓鐭挎睜鐨勭畻鍔涜揪鍒51%錛屽垯瀹冨氨浼氭湁浣滄伓鐨勯庨櫓銆傝繖鏄姣旂壒甯佺瓑浣跨敤宸ヤ綔閲忚瘉鏄庣畻娉曠殑緋葷粺鐨勫紛絝銆傝屼互澶鍧婂垯鍚稿彇浜嗚繖涓鏁欒錛岃繘琛屼簡涓浜涙敼榪涳紝璇炵敓浜咵thash綆楁硶銆
Ethash綆楁硶鍚稿彇浜嗘瘮鐗瑰竵鐨勬暀璁錛屼笓闂ㄨ捐′簡闈炲父涓嶅埄鐢ㄨ$畻鐨勬ā鍨嬶紝瀹冮噰鐢ㄤ簡I/O瀵嗛泦鐨勬ā鍨嬶紝I/O鎱錛岃$畻鍐嶅揩涔熸病鐢ㄣ傝繖鏍鳳紝瀵逛笓鐢ㄩ泦鎴愮數璺鍒欎笉鏄閭d箞鏈夋晥銆
璇ョ畻娉曞笹PU鍙嬪ソ銆備竴鏄鑰冭檻濡傛灉鍙鏀鎸丆PU錛屾媴蹇冩槗琚鏈ㄩ┈鏀誨嚮錛涗簩鏄鐜板湪鐨勬樉瀛橀兘寰堝ぇ銆
杞誨瀷瀹㈡埛絝鐨勭畻娉曚笉閫備簬鎸栫熆錛屾槗浜庨獙璇侊紱蹇閫熷惎鍔
綆楁硶涓錛屼富瑕佷緷璧栦簬Keccake256 銆
鏁版嵁婧愰櫎浜嗕紶緇熺殑Block澶撮儴錛岃繕寮曞叆浜嗛殢鏈烘暟闃靛垪DAG錛堟湁鍚戦潪寰鐜鍥撅級錛圴italik鎻愬嚭錛
縐嶅瓙鍊煎緢灝忋傛牴鎹縐嶅瓙鍊肩敓鎴愮紦瀛樺礆紝緙撳瓨灞傜殑鍒濆嬪間負16M錛屾瘡涓涓栦唬澧炲姞128K銆
鍦ㄧ紦瀛樺眰涔嬩笅鏄鐭垮伐浣跨敤鐨勬暟鎹鍊礆紝鏁版嵁灞傜殑鍒濆嬪兼槸1G錛屾瘡涓涓栦唬澧炲姞8M銆傛暣涓鏁版嵁灞傜殑澶у皬鏄128Bytes鐨勭礌鏁板嶃
妗嗘灦涓昏佸垎涓轟袱涓閮ㄥ垎錛屼竴鏄疍AG鐨勭敓鎴愶紝浜屾槸鐢℉ashimoto鏉ヨ$畻鏈緇堢殑緇撴灉銆
DAG鍒嗕負涓変釜灞傛★紝縐嶅瓙灞傦紝緙撳瓨灞傦紝鏁版嵁灞傘備笁涓灞傛℃槸閫愭笎澧炲ぇ鐨勩
縐嶅瓙灞傚緢灝忥紝渚濊禆涓婁釜涓栦唬鐨勭嶅瓙灞傘
緙撳瓨灞傜殑絎涓涓鏁版嵁鏄鏍規嵁縐嶅瓙灞傜敓鎴愮殑錛屽悗闈㈢殑鏍規嵁鍓嶉潰鐨勪竴涓鏉ョ敓鎴愶紝瀹冩槸涓涓涓茶屽寲鐨勮繃紼嬨傚叾鍒濆嬪ぇ灝忔槸16M錛屾瘡涓涓栦唬澧炲姞128K銆傛瘡涓鍏冪礌64瀛楄妭銆
鏁版嵁灞傚氨鏄瑕佺敤鍒扮殑鏁版嵁錛屽叾鍒濆嬪ぇ灝1G錛岀幇鍦ㄧ害2涓狦錛屾瘡涓鍏冪礌128瀛楄妭銆傛暟鎹灞傜殑鍏冪礌渚濊禆緙撳瓨灞傜殑256涓鍏冪礌銆
鏁翠釜嫻佺▼鏄鍐呭瓨瀵嗛泦鍨嬨
棣栧厛鏄澶撮儴淇℃伅鍜岄殢鏈烘暟緇撳悎鍦ㄤ竴璧鳳紝鍋氫竴涓狵eccak榪愮畻錛岃幏寰楀垵濮嬬殑鍗曞悜鏁e垪鍊糓ix[0]錛128瀛楄妭銆傜劧鍚庯紝閫氳繃鍙﹀栦竴涓鍑芥暟錛屾槧灝勫埌DAG涓婏紝鑾峰彇涓涓鍊礆紝鍐嶄笌Mix[0]娣峰悎寰楀埌Mix[1]錛屽傛ゅ驚鐜64嬈★紝寰楀埌Mix[64]錛128瀛楄妭銆
鎺ヤ笅鏉ョ粡榪囧悗澶勭悊榪囩▼錛屽緱鍒 mix final 鍊礆紝32瀛楄妭銆傦紙榪欎釜鍊煎湪鍓嶉潰涓や釜灝忚妭銆 009錛欸HOST鍗忚 銆嬨併 010錛氭惌寤烘祴璇曠綉緇 銆嬮兘鍑虹幇榪囷級
鍐嶇粡榪囪$畻錛屽緱鍑虹粨鏋溿傛妸瀹冨拰鐩鏍囧肩浉姣旇緝錛屽皬浜庡垯鎸栫熆鎴愬姛銆
闅懼害鍊煎ぇ錛岀洰鏍囧煎皬錛屽氨瓚婇毦錛堝墠闈㈤渶瑕佺殑 0 瓚婂氾級銆
榪欎釜榪囩▼涔熸槸鎸栫熆闅撅紝楠岃瘉瀹規槗銆
涓洪槻姝㈢熆鏈猴紝mix function鍑芥暟涔熸湁鏇存柊榪囥
闅懼害鍏寮忚佽句歡鎴鍥俱
鏍規嵁涓婁竴涓鍖哄潡鐨勯毦搴︼紝鏉ユ帹綆椾笅涓涓銆
浠庡叕寮忕湅鍑猴紝闅懼害鐢變笁閮ㄥ垎緇勬垚錛岄栧厛鏄涓婁竴鍖哄潡鐨勯毦搴︼紝鐒跺悗鏄綰挎ч儴鍒嗭紝鏈鍚庢槸闈炵嚎鎬ч儴鍒嗐
闈炵嚎鎬ч儴鍒嗕篃鍙闅懼害鐐稿脊錛屽湪榪囦簡涓涓鐗瑰畾鐨勬椂闂磋妭鐐瑰悗錛岄毦搴︽槸鎸囨暟涓婂崌銆傚傛よ捐★紝鍏惰儗鍚庣殑鐩鐨勬槸錛屽湪浠ュお鍧婄殑欏圭洰鍛ㄦ湡涓錛屽湪澶ч兘浼氱増鏈鍚庣殑涓嬩竴涓鐗堟湰涓錛岃佽漿鎹㈠叡璇嗭紝鐢盤OW鍙樹負POW銆丳OS娣峰悎鍨嬬殑鍗忚銆傚熀閲戜細鐨勬剰鎬濆彲鑳芥槸浣垮緱鎸栫熆鍙樺緱娌℃剰鎬濄
闅懼害鏇茬嚎鍥炬樉紺猴紝2017騫10鏈堬紝闅懼害鏈変竴涓澶х殑涓嬮檷錛屽栧姳涔熺敱5涓鍙樹負3涓銆
鏈鑺備富瑕佷粙緇嶄簡Ethash綆楁硶錛屼笉瓚充箣澶勶紝璇鋒壒璇勬寚姝c
鍥藉唴eth鍗佸ぇ鐭挎睜鎺掑悕
浠ュお鍧婄殑鎸栫熆榪囩▼涓庢瘮鐗瑰竵鐨勫嚑涔庢槸涓鏍風殑銆侲TH閫氳繃鎸栫熆浜х敓錛屽鉤鍧囨瘡15縐掍駭鐢1涓鍧楋紝鎸栫熆鐨勬椂鍊欙紝鐭垮伐浣跨敤璁$畻鏈哄幓璁$畻涓閬撳嚱鏁拌$畻棰樼殑絳旀堬紝鐩村埌鏈夌熆宸ヨ$畻鍒版g『絳旀堝嵆瀹屾垚鍖哄潡鐨勬墦鍖呬俊鎮錛岃屼綔涓虹涓涓璁$畻鍑烘潵鐨勭熆宸ュ皢浼氬緱鍒3鏋欵TH鐨勫栧姳銆
濡傛灉鐭垮伐A鐜囧厛綆楀嚭姝g『鐨勭瓟妗堬紝閭d箞鐭垮伐A灝嗚幏寰椾互澶甯佷綔涓哄栧姳錛屽苟鍦ㄥ叏緗戝箍鎾鍛婅瘔鎵鏈夌熆宸モ滄垜宸茬粡鎶婄瓟妗堢畻鍑烘潵浜嗏濆苟璁╂墍鏈夊湪絳旈樼殑鐭垮伐浠榪涜岄獙璇佸苟鏇存柊姝g『絳旀堛傚傛灉鐭垮伐B綆楀嚭姝g『絳旀堬紝閭d箞鍏朵粬鐭垮伐灝嗕細鍋滄㈠綋鍓嶇殑瑙i樿繃紼嬶紝璁板綍姝g『絳旀堬紝騫跺紑濮嬪仛涓嬩竴閬撻橈紝鐩村埌綆楀嚭姝g『絳旀堬紝騫朵竴鐩撮噸澶嶆よ繃紼嬨
鐭垮伐鍦ㄨ繖涓娓告垙涓寰堥毦浣滃紛銆備粬浠鏄娌℃硶浼瑁呭伐浣滃張寰楀嚭姝g『絳旀堛傝繖灝辨槸涓轟粈涔堣繖涓瑙i樼殑榪囩▼琚縐頒負鈥滃伐浣滈噺璇佹槑鈥濓紙POW錛夈
瑙i樼殑榪囩▼澶х害姣12-15縐掞紝鐭垮伐灝變細鎸栧嚭涓涓鍖哄潡銆傚傛灉鐭垮伐鎸栫熆鐨勯熷害榪囧揩鎴栬呰繃鎱錛岀畻娉曚細鑷鍔ㄨ皟鏁撮樼洰鐨勯毦搴︼紝鎶婂嚭鍧楅熷害淇濇寔鍦13縐掑乏鍙熾
鐭垮伐鑾峰彇榪欎簺ETH甯佹槸鏈夐殢鏈烘х殑錛屾寲鐭跨殑鏀剁泭鍙栧喅浜庢姇鍏ョ殑綆楀姏錛屽氨鐩稿綋浣犵殑璁$畻鏈鴻秺澶氾紝浣犵瓟棰樼殑姝g『鐨勬傜巼涔熷氨瓚婇珮錛屾洿瀹規槗鑾峰緱鍖哄潡濂栧姳銆
1銆 浠ュお鍧
瀹冩槸鍏ㄧ悆棰嗗厛鐨勬瘮鐗瑰竵鏁版嵁鏈嶅姟鎻愪緵鍟嗗拰鐭挎睜鍜岄挶鍖呰В鍐蟲柟妗堟彁渚涘晢銆備粠2015騫村紑濮嬶紝鍥㈤槦浠庡尯鍧楁祻瑙堝櫒絳夎屼笟鍩虹璁炬柦鍏ユ墜錛岃嚧鍔涗簬鏋勫緩鍚勪釜瀛愰嗗煙鐨勬柊鏍囧噯銆傚搧鐗屽彲浠ュ湪閽卞寘銆佺熆奼犮佽屾儏銆佽祫璁絳夐嗗煙鐪嬪埌銆
2銆丗2Pool
F2Pool 鏄涓鍥芥渶澶х殑姣旂壒甯佸拰鑾辯壒甯佹寲鐭跨郴緇熺熆奼犱箣涓銆傛暟鎹鏄劇ず錛岄奔奼犵洰鍓嶆槸鍏ㄧ悆絎浜屽ぇ鐭挎睜錛屼粎嬈′簬鋩傝殎鐭挎睜銆
3銆侀挶鍗
紕ч煶鎴愮珛浜2017騫11鏈堬紝鐢卞師鏍稿績鍥㈤槦鎵撻犮傚洟闃熺殑浜у搧鍜屾妧鏈杈撳嚭鐜板湪鏈嶅姟浜庡叏緗戝ぇ閮ㄥ垎姣旂壒甯佺畻鍔涳紱涓ゅ勾鍐呮墦閫犱簡澶氫釜浜у搧錛岃法瓚婂尯鍧楅摼嫻忚堝櫒銆佺熆奼犮侀挶鍖呯瓑澶氫釜鍨傜洿棰嗗煙銆傜ⅶ闊崇熆奼犳槸涓涓涓撲笟鐨勭熆奼狅紝鏀鎸佹墍鏈変富嫻佸竵縐嶇殑鎸栫熆銆傜洰鍓嶆敮鎸佺殑甯佺嶅寘鎷錛欱TC銆丅CH銆丅SV銆乑EC銆丩TC銆丒TH銆丏CR銆丏ASH銆乆MR銆
4銆佺伀甯佺熆奼
鐏甯佺熆奼犳槸鍏ㄧ悆棣栦釜闆嗘暟瀛楄祫浜ф寲鎺樹笌浜ゆ槗浜庝竴浣撶殑鐭挎睜騫沖彴銆傚畠閲囩敤鍩轟簬POW鎸栫熆鏈哄埗鐨勫叏鏂板垎閰嶆ā鍨婩PPS銆傚競鍦轟笂澶ч儴鍒嗙熆奼犻噰鐢ㄤ紶緇熺殑PPS緇撶畻鍜屽垎閰嶆ā寮忋傜浉姣斾箣涓嬶紝鐏甯佺殑FPPS妯″紡闄嶄綆浜嗙熆宸ョ殑鎵撳寘璐癸紝姣忎釜鐭垮伐鍙浠ュ炲姞5%宸﹀彸鐨勫埄娑︺傜伀甯佺熆奼犻氳繃榪欎竴涓炬帾錛屽皢鍏朵笌鍏朵粬鐭挎睜鍖哄垎寮鏉ワ紝鍚稿紩鐭垮伐鍏ラ┗銆
5銆佽殏鋩佺熆奼
鋩傝殎鐭挎睜鏄疊itTaiwan鍒╃敤澶ч噺璧勬簮寮鍙戠殑楂樻晥鏁板瓧璐у竵鐭挎睜銆傝嚧鍔涗簬涓虹熆宸ユ彁渚涙洿鍙嬪ソ鐨勭晫闈銆佹洿瀹屽杽鐨勫姛鑳姐佹洿澶氱殑浣跨敤鏂歸潰銆佹洿涓板帤閫忔槑鐨勬敹鐩娿傝揣甯佺殑鍙戝睍鍋氬嚭鏇村氳礎鐚銆傝殏鋩佺熆奼犳槸涓涓楂樻晥鐨勬暟瀛楄揣甯佺熆奼狅紝鑷村姏浜庝負鐭垮伐鎻愪緵鏇村弸濂界殑鐣岄潰銆佹洿濂界殑鍔熻兘銆佹洿渚挎嵎鐨勪嬌鐢ㄥ拰鏇翠赴鍘氶忔槑鐨勬敹鐩娿傝殏鋩佺熆奼犱負澶氱嶆暟瀛楄揣甯佹彁渚涙瘮鐗瑰竵銆佽幈鐗瑰竵銆佷互澶鍧婃寲鐭挎湇鍔★紝鏀鎸丳PS銆丳PLNS銆丼OLO絳夊氱嶆敮浠樻柟寮忋
6銆佸井姣旂壒
寰姣旂壒鏄涓瀹朵笓涓氱殑鏁板瓧璐у竵鎶鏈鏈嶅姟鍟嗐傚叾鏈嶅姟鑼冨洿鍖呮嫭鏁板瓧璐у竵浜ゆ槗騫沖彴銆佹暟瀛楄揣甯佺熆奼犮佷簯鎸栫熆鍚堢害銆傛垚絝嬩簬2016騫5鏈堬紝鍚屽勾6鏈堜笂綰挎瘮鐗瑰竵鐭挎睜錛11鏈堜笂綰誇簯鎸栫熆浜у搧銆 2017騫3鏈堬紝寰姣旂壒鑾峰緱鐢盉itTaiwan棰嗘姇鐨2000涓囧厓A杞鋙嶈祫錛屼互鎷撳睍浜ゆ槗鎵涓氬姟銆 6鏈堬紝寰姣旂壒鍗沖皢涓婄嚎鏁板瓧璐у竵浜ゆ槗騫沖彴銆
7銆58COIN絎浜岀被鏄鍏朵粬鐭挎睜錛屽備互澶鍧婄熆奼犮丼park鐭挎睜錛涚涓夌被鏄浜ゆ槗鎵鐭挎睜錛屽傜伀甯佺熆奼犮丱K鐭挎睜銆佸竵瀹夌熆奼犮傚竵瀹変綔涓烘柊涓栫晫鐨勨滄暟瀛楃粡嫻庢搷浣滅郴緇熲濓紝鍦ㄦ暟瀛楄祫浜т氦鏄撴祦閫氶嗗煙錛屽湪鍖哄潡閾懼競鍦烘暀鑲查嗗煙錛屽湪鍘諱腑蹇冨寲嫻侀氭帰緔㈤嗗煙錛岃祫浜ф祦閫氬鉤鍙板湪浜戣$畻棰嗗煙錛屽湪甯傚満鍜屾暟瀛楄祫浜уぇ鏁版嵁棰嗗煙錛屽湪閲戣瀺琛嶇敓鍝侀嗗煙錛岀瓑鐢熸佺郴緇燂紝閮藉彇寰椾簡寰堝ソ鐨勬垚緇╋紝涔熷壋閫犱簡鍏ㄧ悆褰卞搷鍔涖傚綋鐒訛紝瀵逛簬鍖哄潡閾懼拰鏁板瓧緇忔祹棰嗗煙鐨勫疄浣撶粡嫻庯紝鈥滀簯綆楀姏騫沖彴鈥濓紝鍗崇熆奼狅紝甯佸畨涔熷湪鏋佺煭鐨勬椂闂村唴鍒涢犱簡鍙︿竴縐嶁滃晢涓氬唴娑碘濄
9銆丱KEXPool
鍦ㄥ叕甯冪殑鏁版嵁涓錛孫KExPool浠2019騫10鏈堢殑甯傚満浠介濈害0%榪呴熷彂灞曚負甯傚満浠介濈鍏澶х殑鐭挎睜銆備絾鏄錛屽湪綆楀姏瓚嬪娍鏇茬嚎涓婏紝OKExPool鍦2020騫1鏈堢畻鍔涘嚭鐜板ぇ騫呬笅婊戙傛湁甯傚満浜哄+瀵筆ANews琛ㄧず錛屾帹嫻嫿KExPool綆楀姏蹇閫熶笅婊戠殑鍘熷洜鍙鑳芥槸鍔犲叆浜嗘洿鍔犱腑蹇冨寲鐨勫皬鐭垮満錛岀洰鍓嶈繕緙轟箯鎶曡祫鑰呭姞鍏ョ畻鍔涚粨鏋勩
鉶界劧浜ゆ槗鎵鏅閬嶆槸鐭挎睜棰嗗煙鐨勬柊浜猴紝浣嗕氦鏄撴墍鎸佹湁鐨勭熆奼犱笟鍔$浉瀵逛簬浼犵粺鍏鍙鎬粛鏈変竴瀹氱殑澶╃劧浼樺娍銆
10銆丅TCTOP
Lybit鐭挎睜緇忚繃澶氬勾鐨勭ǔ瀹氳繍琛岋紝鏈鍒濇槸涓涓鍏ㄧ綉綆楀姏鏈澶х殑縐佹湁鐭挎睜銆傜幇闈㈠悜甯傚満浠ュお甯侊紝璇氶個鎵鏈夌熆宸ュ垎浜鍏舵妧鏈甯︽潵鐨勬寲鐭挎敹鐩娿傚叏鏂板崌綰ф敼鐗堢殑涔愭瘮鐗圭熆奼犵郴緇熸洿鍔犺創鍚堝㈡埛闇奼傦紝鍐呭規洿涓板瘜錛屾搷浣滄洿綆鍗曘