以太坊智慧型合約Hello World示例程式

2021-08-16 09:52:29 字數 2702 閱讀 8218

文章**:

簡介

以太坊(ethereum)是一提供個智慧型合約(smart contract)功能的公共區塊鏈(blockchain)平台. 本文介紹了乙個簡單的以太坊智慧型合約的開發過程.

開發環境

在以太坊上開發應用,首先需要安裝其客戶端,本文使用基於go語言的geth, 其官網為

第一步

在命令列環境中輸入以下命令, 連線到以太坊測試網路

第二步在geth提示符下輸入以下**, 建立乙個使用者並設定密碼

第三步在geth提示符下輸入以下**, 確認新使用者的賬戶餘額為0, 並開始」挖礦」(mine)

第四步新開乙個命令列視窗並輸入以下命令, 將這個視窗連線到正在挖礦的視窗

第五步在geth提示符下輸入以下**, 確認新使用者的賬戶餘額有所增長

第六步

第七步編譯器生成的**如下

var _greeting = /* var of type string here */ ;

var helloworldcontract = web3.eth.contract([,],"name":"setgreeting","outputs":,"payable":false,"type":"function"},],"payable":false,"type":"function"},],"type":"constructor"}]);

var helloworld = helloworldcontract.new(

_greeting,

, function (e, contract)

})

設定顯示的字串以及減少費用(gas)

var _greeting = "hello world" ;

gas: 300000

第九步將修改完的**複製到第四步的視窗中, 如果出現 

error: account is locked undefined

錯誤的話, 則使用 

personal.unlockaccount(eth.accounts[0], 'password')

命令將使用者解鎖.

第十步

等候一段時間之後, geth視窗就會出現contract mined! address..., 表明合約**發布成功 

第十一步

使用helloworld.greet()命令來執行該合約 

總結

本文介紹了乙個簡單的以太坊智慧型合約的開發過程.

智慧型合約 以太坊

智慧型合約是執行在可複製 共享的賬本上的電腦程式,可以處理資訊,接收 儲存和傳送價值。2.1 什麼是以太坊 以太坊 ethereum 是乙個分布式計算機,有許多的節點,其中的每乙個節點都會執行智慧型合約,然後把結果存在區塊鏈上。由於整個網路是分布式的,且應用就是乙個個的狀態組成,儲存了狀態就有了服務...

以太坊和智慧型合約

1 什麼是以太坊?以太坊的官方 告訴我們 以太坊是乙個執行著智慧型合約的分布式平台 應用程式完全按照程式執行,不存在故障 審查 欺詐或第三方干預的可能性 2 智慧型合約就是可以處理資金的指令碼。開發語言 solidity 整合開發工具ide remix,乙個基於瀏覽器的整合開發環境 開發框架 tru...

以太坊智慧型合約安全

智慧型合約就是自主執行的合約,其條款是用 規定的。雖然這個概念已經存在一段時間了,但至少從1996年nick szabo提出了這一概念以來,直到圖靈完備的以太坊區塊鏈來臨,智慧型合約的使用才變得普遍。對智慧型合約理念的字面解釋造成了 即法律 code is law 的正規化理解,意思是那些智慧型合約...