• 沒有找到結果。

第二章 文獻探討

2.3 以太坊 (Ethereum)

"18AFFdLPk7Sg1zu8HZanVYZ1dBkhheRr7Z"。

轉帳是針對比特幣位址,此位址用於接收比特幣,它類似銀行卡的卡號。

若只公開位址不必擔心裡面的比特幣被盜走,必須使用其成對產生的私鑰解 鎖才能動用帳戶內的比特幣。

2.3 以太坊(Ethereum)

Ethereum(乙太坊) 是由 Vitalik Buterin 創建。於 2014 年 8 月獲得 1800 萬美 金價值的比特幣 ICO 募資。

Ethereum(乙太坊)是一個平台和一種程式設計語言(Solidity),使程式開發人 員可以建立和發佈智能合約程式(Smart Contract)。Ethereum 是使用甲醚(Gas)作 為燃料,以激勵其網路的第一個圖靈完備 cryptocurrency,本次論文所使用的智 能合約信用狀區塊鏈系統開發便是使用 Ethereum 達成。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

26

圖 2-8 數位簽章 Digital Signature 資料來源:本研究整理自(左瑞麟,2016)

圖 2-9 加解密

資料來源:本研究整理自(左瑞麟,2016)

當產生一個以太幣錢包或者比特幣錢包,那段長長的 0xfd...0a 地址實際上是 個公鑰,對應的私鑰保存在某處。類似雲端的在線錢包可以幫你保管私鑰,

當然你也可以自己保管。但如果弄丟了存有資金的錢包的私鑰,你就等於永 遠失去了那筆資金,因此最好對私鑰做好備份。

2. 點對點網絡(Peer to Peer):就像 BitTorrent,以太坊分佈式網絡中的所有節點 都地位平等,屬於分散式架構,沒有中心服務器。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

27

3. 區塊鏈: 結合密碼學與網路通訊科技的「共享帳簿」,也有人稱為分散式帳 本或自動複寫紙,主要是透過網路參與者共同維護交易紀錄,雖排除了中介 機構,亦能確保交易安全與正確。

其區塊鏈技術的發展可分為底層、平台層和應用層,「以太坊」

(Ethereum)為底層技術代表,屬於區塊鏈應用的基礎建設;應用層是因應 不同行業需求,開發出如交易清算、資產版權保護、物聯網等應用。

4. 以太坊虛擬機(EVM):它讓你能在以太坊上寫出更強大的程式。它有時也用 在以太坊區塊鏈,負責執行智能合約。

5. 節點(Enode):你可以通過節點(Enode)讀寫以太坊區塊鏈。完全節點(Full Node)需要下載整個區塊鏈的區塊資料。輕節點則不須完全下載,方便行動 裝置連結區塊鏈使用,例如使用手機區塊鏈錢包軟體 indieSquare APP,便 不需下載完整區塊鏈資料。差別只在於 Full Node ,才可以驗證 Transaction 以及挖礦及擁有話語權。

6.礦工(Miner):挖礦,也就是處理區塊鏈上區塊的節點。驗證 Transaction,將之 記錄到區塊鏈上。

圖 2-10 礦工(Miner)挖礦 資料來源:本研究參考文獻[23]

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

28

7. 工作量證明(Proof Of Work):礦工們總是在競爭解決一些數學方程式問題。

第一個解出答案(算出下一個區塊取得記帳權的)礦工,將獲得以太幣作為獎 勵。接著所有節點都會同步更新自己的區塊鏈。所有想要算出下一個區塊的 礦工都必需與其他節點保持同步,並維護驗證紀錄同一個區塊鏈,使整個網 路節點能全部達到共識。

8. 以太幣(Ether):縮寫 ETH。一種可以購買和使用的區塊鏈數字貨幣。

9. Gas(汽油):在以太坊上執行智能合約程式及保存數據都要消耗一定數量的 以太幣,智能合約的程式執行是需要費用的,Gas 是以太幣轉換而成,採用 這個機制用來保證不會發生 recurrence(無限遞迴)情況發生。

10.DApp:以太坊社群把智能合約的應用稱之「去中心化的應用程式」

(Decentralized App)。DApp 的目標是讓你的智能合約有一個友好的界面,可 以外加一些額外的東西,例如 IPFS(可以存儲和讀取數據的去中心化網 絡,IPFS 雖不是出自以太坊團隊但有類似的精神,此論文程式也是有使用 IPFS 達成)。DApp 可以執行在一台能與以太坊節點交互連結的中心化服務 器上,也可以執行在任意一個以太坊節點上。

而撰寫智能合約用的程式語言,有幾種語言可選:有點類似 Javascript 的 Solidity,文件副檔名是.sol,和 Python 接近的 Serpent,文件副檔名名以.se 結 尾,以及類似 Lisp 的 LLL。

Serpent 過去曾經流行過一段時日,但現在最流行而且最穩定的則是 Solidity 這 程式語言,也是本研究使用的程式語言開發工具。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

29

相關文件