和雲計算相似,占用區塊鏈的資源(不管是簡單的轉賬交易,還是合約的部署和執行)同樣需要付出相應的費用。
以太坊上用gas機制來計費,gas也可以認為是乙個工作量單位,智慧型合約越複雜(計算步驟的數量和型別,占用的記憶體等),用來完成執行就需要越多gas。
gas**由執行合約的人在提交執行合約請求的時候規定,以確定他為這次交易付出的費用:gas**(用以太幣計價) * gas數量。
礦工收取相應的工作量費用。
引入gas來解耦。把市場的波動和計算的開銷來解耦,也就是說以太幣和gas之間是有匯率的,以太幣漲沒關係,gas**下降就可以了。它要保證我做同樣的計算,消耗的法幣是一致的。防止出現這種情況:今天做乙個加法需要十塊錢,明天做乙個加法需要一百塊錢。
solc智慧型合約編譯器將**編譯成成evm位元組碼,然後將evm位元組碼通過geth的rpc介面傳送到以太坊網路,經過全網驗證後,同時寫入到每個geth管理的區塊鏈中。
**先經過solc編譯變為了二進位製碼,然後通過一筆交易來建立智慧型合約,該筆交易包含了建立者賬號、智慧型合約內容、智慧型合約的位址這幾個關鍵資訊。
部署過程中,需要通過交易來部署,同時資料要儲存到區塊鏈上,這些需要使用到gas。
區塊鏈本身不能執行**,**的執行是在本地的evm中。
可以理解區塊鏈為乙個資料庫,而客戶端從資料庫中讀取了儲存的執行**,並在本地執行後,將結果寫入到了區塊鏈這個資料庫中。
區塊鏈學習筆記 智慧型合約
智慧型合約這個詞首次出現的時間是在1994年由尼克薩博提出的概念。而尼克薩博所提出的智慧型合約的概念是這樣描述 乙個智慧型合約是一套以數字形式定義的約定,包括合約參與方可以在上面執行這些約定的協議。智慧型合約的基本思想是,各種各樣的合約條款可以嵌入到我們使用的硬體和軟體中從而使得攻擊者需要很大的代價...
區塊鏈智慧型合約開發小記
使用 python和 solidity語言,drf框架開發智慧型合約的一些踩坑記錄。compile source和compile standard方法都無法import 檔案進行編譯,提示找不到檔案,使用compile files方法吧。compile files 方法裡面合約路徑不能有冒號,使用相...
區塊鏈智慧型合約是什麼?
2017 年底,位元幣漲到了最高達十二萬元人民幣,區塊鏈技術也慢慢走進了技術圈的視野。隨著以太坊 ethereum 的興起,這個開源的擁有智慧型合約功能的區塊鏈平台,也引起了大家的注意。什麼是智慧型合約?智慧型合約 smart contract 是一種旨在以資訊化方式傳播 驗證或執行合同的計算機協議...