<cite id="1ndtl"></cite>
<ruby id="1ndtl"></ruby>
<strike id="1ndtl"></strike>
<span id="1ndtl"><dl id="1ndtl"></dl></span><span id="1ndtl"><dl id="1ndtl"></dl></span>
<strike id="1ndtl"></strike>
<strike id="1ndtl"><dl id="1ndtl"><del id="1ndtl"></del></dl></strike>
<span id="1ndtl"></span>
<span id="1ndtl"><dl id="1ndtl"></dl></span>
<strike id="1ndtl"></strike>
<strike id="1ndtl"></strike><span id="1ndtl"><dl id="1ndtl"></dl></span>
<strike id="1ndtl"></strike><strike id="1ndtl"></strike>
<strike id="1ndtl"></strike>
<span id="1ndtl"></span>
<span id="1ndtl"><dl id="1ndtl"></dl></span>
<th id="1ndtl"><noframes id="1ndtl"><span id="1ndtl"><video id="1ndtl"><strike id="1ndtl"></strike></video></span> <strike id="1ndtl"></strike>
<strike id="1ndtl"></strike>
<span id="1ndtl"><dl id="1ndtl"></dl></span>
  1. 首頁
  2. 以太坊去中心化交易所(以太坊:下一代智能合約和去中心化應用平臺)

以太坊去中心化交易所(以太坊:下一代智能合約和去中心化應用平臺)

中本聰2009年發明的比特幣經常被視作貨幣和通貨領域內一次激進的發展,這種激進首先表現為一種沒有資產擔保或內生價值[插圖],也沒有中央發行者或控制者的數字資產。然而,在比特幣這場實驗里面,更重要的創新可能是其底層作為分布式共識實現機制的區塊鏈技術,它一出現,便迅速吸引了人們的注意力。常常被人們提及的區塊鏈技術的其他應用包括使用鏈上數字資產來代表定制貨幣和金融工具(彩色幣[插圖]),某種基礎物理硬件的所有權(智能資產[插圖]),如域名一樣的沒有可替代性的資產(域名幣[插圖]),更復雜的應用包括數字資產直接被一段可以執行任意條款的代碼控制(智能合約[插圖]),甚至還有基于區塊鏈的“去中心化自治組織”(DAOs[插圖])。以太坊的目標就是提供一個內置成熟的圖靈完備語言的區塊鏈,用這種語言可以創建“合約”,編碼任意狀態轉換功能。以太坊將允許用戶通過簡單的幾行代碼實現邏輯,創建上面提到的所有系統,以及更多的我們尚未想到的新系統。

以太坊

以太坊的目標是創建一個可實現去中心化應用的替代性協議,并提供一種不同的權衡模式,這在很多去中心化應用的實踐中是非常有用的。我們特別強調,時間快速發展的狀態、簡單稀有應用的安全性、不同應用有效地相互作用的能力都是很重要的。以太坊通過圖靈完備編程語言的區塊鏈來實現這一點。以太坊允許任何人編寫智能合約和去中心化的應用,并允許在其中自定義所有權規則、交易格式和狀態轉換函數。要使用以太坊,對于一個準域名幣的系統,只需要兩行代碼就可以完成,而其他的諸如貨幣和信譽系統,也可以用不到二十行代碼完成。智能合約(包含價值且只有達成某些條件時才能打開的加密“箱子”)也可以在以太坊平臺上創建,由于增加了圖靈完備性(Turing-Completeness)、價值知曉(Value-Awareness)、區塊鏈知曉(Blockchain-Awareness)和狀態(State)等特點,以太坊所能提供的智能合約比比特幣腳本提供的(智能合約)功能強大得多。

以太坊賬戶

在以太坊系統中,狀態是由被稱為“賬戶”(每個賬戶有一個20字節的地址)的對象和在兩個賬戶之間轉移價值與信息的狀態轉換構成的。以太坊的賬戶包含4個部分:

1)隨機數,用于確定一筆交易只能被處理一次的計數器。

2)賬戶目前的以太幣余額。

3)賬戶的合約代碼(如果有的話)。

4)賬戶的存儲(默認為空)。以太幣(Ether)是以太坊內部的主要加密燃料(Crypto-Fuel),用于支付交易費用。一般來說,以太坊有兩種類型的賬戶:外部所有者賬戶(由私鑰控制)和合約賬戶(由合約代碼控制)。外部所有者賬戶沒有代碼,人們可以通過創建和簽署一筆交易而從一個外部所有者賬戶發送消息;每當合約賬戶收到一條可以激活其內部代碼的消息,就會允許它對內部存儲進行讀寫,發送其他消息或者創建新的相應合約。

注意,以太坊中使用的“合約”不應該被看作某些應該被“完成”或者“遵守”的東西,它們更像是生活在以太坊執行環境內部的“自動代理人”,當被某條消息或者交易“撥動”時,他們總是執行某個特定的代碼,對以太幣余額和秘鑰/價值存儲直接控制,對賬戶的變化持續追蹤。

交易和消息

交易

以太坊中使用的“交易”是指從外部所有者的賬戶簽發包含消息的數據包。交易包括:

● 消息的接收者。

● 驗證發送者的簽名。

● 從發送者到接收者轉移的以太幣的數量。

● 一個可選的數據區。

● 一個STARTGAS值,代表交易執行過程中被允許的計算步驟的最大值。

● 一個GASPRICE值,發送者為每一步計算支付的費用。

前三步在任何加密貨幣體系中都是可預期的標準步驟。可選的數據區目前并沒有任何默認功能,但是有這樣的操作碼,即允許合約引用這里的數據。

在以太坊抵抗拒絕服務攻擊的模式中,STARTGAS和GASPRICE字段是關鍵的部分。為了防止代碼中出現計算浪費,乃至出現意外或者惡意定義的無限循環,每個交易被要求設定一個代碼執行過程可以使用的計算步驟的上限。計算的基本單位是“瓦斯”(gas),通常一步計算消耗1gas,但是有些計算由于更加復雜,或者增加了作為狀態的一部分而必需存儲的數據量,會消耗更多的瓦斯。每一個字節的交易數據也會消耗5gas。費用系統的初衷在于要求攻擊者為他們消耗的資源支付相應的代價,比如計算能力、帶寬、存儲等。因此會帶來更多網絡消耗的交易也要支付大致相應的交易費(瓦斯)。

消息

交易可以向其他合約發送“消息”,消息是虛擬的,永遠不會序列化,只存在于以太坊執行環境中。一則消息包括:

● 消息的發送者(隱式的)。

● 消息的接收者。

● 與消息同時傳遞的以太幣的數量。

● 一個可選的數據區。

● 一個STARTGAS值。

基本上,除了消息是由一個合約而不是外部所有者賬戶發出之外,消息和交易類似。當一個合約執行“CALL”操作碼的時候,消息產生,該操作碼的功能就是生成和執行消息。像交易一樣,消息可以使接受消息的合約執行自己的代碼。因此合約可以和外部所有者的賬戶一樣,與其他賬戶發生關系。

相關文章
美女网站色