• 沒有找到結果。

第二章 相關研究與技術背景

2.1 區塊鏈

區塊鏈的概念是由 Satoshi Nakamoto 在 2008 年所提出。區塊鏈是一種共享式的公開帳 本,採用分佈式分類帳技術,將資料散布於各個區塊中,使資料無法被單一實體所掌控,

讓交易資料具備安全、透明、可永久記錄等特性。區塊鏈本身維護不斷增長的記錄列表 稱之為區塊,每一個區塊中包含了時間戳記與前一個區塊的鏈接,透過這種方式可以使 區塊中的資料不能被追溯與修改。比特幣則是一種區塊鏈技術的實際應用,其原理是由 數個節點組成一個網路,當其中某一個節點發起一筆交易時,這節點會將此交易傳遞給 其它的節點,而所有節點皆可以透過共識演算法決定誰可以驗證這筆交易。

2014 年區塊鏈技術有著顯著的提升,稱之為 Blockchain 2.0,指的是分佈式區塊鏈資料 庫的新應用術語。第二代區塊鏈衍伸出了實現可撰寫程式語言於區塊鏈上的一種應用,

即一種區塊鏈上的程式語言,允許使用者撰寫更為複雜的智能合約,從而創建一些商業 化的應用,這些應用還能包含到貨時一併遞交發票,分享憑證,甚至當股息到達一定水 準之後,系統會將利潤自動發送至股票所有者。Blockchain 2.0 技術超越了一般傳統交易 模式,達成了沒有中介機構作為貨幣和信息仲裁者的價值交換核心。不但可以排除人為 因素涉入全球經濟,也可以保護隱私和人民,並提供確保創作者獲得知識產權的能力。

圖 2.1 區塊鏈示意圖,本圖取自【5】

4

2.1.1 Consensus

Proof of Work:工作量證明是為了讓每個參與的節點能共同參與交易的驗證。也是一個

能多方共同維護並共享同一份交易紀錄的帳本。在工作量證明中,記帳節點需要使用一

Proof of Stake:權益證明是數位貨幣另一種共識機制,與基於工作量證明的加密貨幣不

同(如:比特幣)。此種演算法並不在於解決複雜的加密問題,也不是透過驗證交易和創建 新區塊而獲得獎勵。權益證明的演算法中是以確定性或偽隨機的方式選擇下一個區塊,

而選擇一個參與者帳號的機會取決於其手上的貨幣價值。通常所有的硬幣都是在開始創 建的,硬幣的總數從不改變。因此,在權益證明的演算法中,並沒有所謂的區塊獎勵。

5

圖 2.2 Proof of Work vs Proof of Stake,本圖取自【13】

2.1.2 Consistent Hashing

Consistent Hashing 又稱為一致性雜湊算法,是由麻省理工學院的 Karger 及其合作者於 1997 年所提出的一種分散式雜湊表(Distributed Hash Table, DHT)的實現算法,使得分 散式雜湊表(DHT)可以在 P2P 環境中真正得到應用。以下為判定雜湊算法好壞的四個 定義:

(1) 平衡性(Balance):平衡性是指雜湊的結果能夠盡可能分佈到所有的緩衝中,這樣 可以使得所有的緩衝空間都得到利用,很多雜湊算法都能夠滿足這一條件。

(2) 單調性(Monotonicity):單調性是指如果已經有一些內容通過雜湊分派到了相應的 緩衝中,又有新的緩衝加入到系統中,雜湊的結果應能夠保證原有已分配的內容可

6 有沒有,如此疊代。這樣的方式容易形成廣播風暴,因此,一般會設置 TTL(Time to live),

來限制廣播傳播的範圍來解決這個問題。

2.1.4 Digital Signature

數位簽章是透過橢圓曲線加密技術的公私鑰來實現。其中包含著兩個概念:

公私鑰是非對稱加密技術,公鑰是可以公佈在外的一組金鑰,而私鑰則需要自己妥善保

7

存,公私鑰的生成方式,是基於私鑰生成時產生相對應的公鑰。

公鑰加密的資訊則需要對應的私鑰才能解密。而相對的,私鑰加密的內容,則需要由該 私鑰產生出來的公鑰才能解密。

數位簽章整個概念主要是透過私鑰將要發送出去的訊息進行加密,然後透過公鑰進行驗 證與解密,如果驗證原訊息與透過私鑰加密過後的訊息是相同的,則此訊息可以驗證為 該私鑰擁有者的數位簽章。

圖 2.3 Digital Signature,本圖取自【14】

相關文件