什麼是以太坊?什麼是智慧合約?

langyahappy發表於2018-06-04

以太坊智慧合約

以太坊是一個分散式的計算平臺。它會生成一個名為Ether的加密貨幣。程式設計師可以在以太坊區塊鏈上寫下“智慧合約”,這些以太坊智慧合約會根據程式碼自動執行。

以太坊是什麼?

以太坊經常與比特幣相提並論,但情況卻有所不同。比特幣是一種加密貨幣和分散式支付網路,允許比特幣在使用者之間轉移。

相關:什麼是比特幣?它是如何工作的?

以太坊專案有更大的目標。正如Ethereum網站所說,“以太坊是一個執行智慧合約的分散式平臺”。這些智慧合約執行在“以太坊虛擬機器”上,這是一個由所有執行乙太網節點的裝置組成的分散式計算網路。

“分散式平臺”部分意味著任何人都可以建立並執行以太坊節點,就像任何人都可以執行比特幣節點一樣。任何想要在節點上執行“智慧合約”的人都必須向Ether中的這些節點的運營商付款,這是一個與以太坊相關的加密貨幣。因此,執行乙太網節點的人提供計算能力,並在乙太網中獲得支付,這與執行比特幣節點的人提供雜湊能力並以比特幣支付的方式類似。

換句話說,雖然比特幣僅僅是一個區塊鏈和支付網路,但以太坊是一個分散式計算網路,其區塊鏈可以用於許多其他事情。以太坊白皮書中提供了詳細資訊。

以太是什麼?

乙太網是與以太坊區塊鏈相關的數字標記(或者說就是加密貨幣)。換句話說,以太是代幣,以太坊是平臺。但是,現在人們經常交替使用這些術語。例如,Coinbase允許你購買以太坊代幣(Ethereum),即代表以太幣代幣。

這在技術上就是“altcoin”,這實際上意味著一個非比特幣加密貨幣。和比特幣一樣,Ether也受到分散式區塊鏈支援 - 在這種情況下是以太坊區塊鏈。

想要在以太坊區塊鏈上建立應用程式或以太坊 智慧合約的開發人員需要乙太網代幣來支付節點來託管它,而基於以太坊的應用程式的使用者可能需要乙太網來支付這些應用程式中的服務費用。人們也可以在以太坊網路之外銷售服務,並接受乙太網支付,或者可以在交易所以現金形式出售以太幣代幣 - 就像比特幣一樣。

為什麼分散式應用程式有趣?

以太坊區塊鏈應用程式

比特幣區塊鏈儲存比特幣交易的歷史,就是這樣。以太坊區塊鏈將以太幣代幣儲存在人們的錢包中,但它還儲存每個智慧合約的最新狀態以及每個智慧合約的程式碼。

區塊鏈是儲存在多個位置的分散式賬本,所以這意味著智慧合約資料由那些以太坊節點儲存。如果您在區塊鏈上建立“智慧合約”(也稱為應用程式),則會以分散式的方式進行儲存和執行。

為了比較,請考慮我們今天使用的許多應用程式。這包括Gmail等電子郵件應用程式,Microsoft OneNote等筆記記錄應用程式,以及使用應用程式並將資料儲存在公司伺服器上的任何其他應用程式。如果儲存資料的公司禁止您的帳戶,關閉應用程式或停業,那麼除非您有離線備份副本,否則您將丟失該應用程式中的所有資料。

如果您使用的是構建在以太坊之上的應用程式,組成應用程式的程式碼(智慧合約程式碼)和個人資料(智慧合約的狀態)將儲存在區塊鏈中。每當您使用應用程式並更改資料時,所有以太坊節點都會更新智慧合約的狀態。這意味著沒有中央“失敗點”可能會阻止您訪問資料或關閉您使用的應用程式。您的資料和應用程式的程式碼本身將在全球範圍內備份,並且沒有人可以將所有這些備忘錄離線。當然,您的資料將通過區塊鏈進行加密,所以沒有其他人可以讀取它。

什麼是智慧合約?

智慧合約是在以太坊虛擬機器上執行的應用程式。這是一個分佈的“世界計算機”,計算能力由所有以太坊節點提供。提供計算能力的任何節點都將以Ether數字貨幣作為資源支付。

他們被命名為智慧合約,因為您可以編寫滿足要求時自動執行的“合同”。

例如,想象一下在以太坊之上建立一個類似Kickstarter的眾籌服務。有人可以建立一個以太坊智慧合約,將資金彙集到別人身上。這個智慧合約可以寫成這樣的話:當將100,000美元的貨幣新增到池中時,它將全部傳送給收件人。或者,如果一個月內沒有達到100,000美元的門檻,所有的貨幣都將被髮回給貨幣的原始持有人。當然,這將使用以太幣代替美元。

這一切都將根據智慧合同程式碼進行,智慧合同程式碼可自動執行交易,而無需可信任的第三方持有貨幣並簽署交易。例如,Kickstarter在5%的付款處理費之上收取5%的費用,這意味著在$ 100,000的眾籌專案中將收取8000到10000美元的費用。智慧合約不需要向像Kickstarter這樣的第三方支付費用。

智慧合約可以用於許多不同的事情。開發人員可以建立智慧合約,為其他智慧合約提供功能,類似於軟體庫的工作方式。或者,智慧合約可以簡單地用作應用程式來儲存以太坊區塊鏈上的資訊。

為了真正執行智慧合同程式碼,有人必須傳送足夠的乙太網代幣作為交易費 - 多少取決於所需的計算資源。這為以太坊節點參與並提供計算能力付出了代價。

CryptoKitties使用智慧合約

CryptoKitties 智慧合約

在以太坊網路上使用智慧合約構建的最知名的應用之一是CryptoKitties,它自稱是“世界上第一款基於區塊鏈技術構建的遊戲”。

從本質上講,CryptoKitties是儲存在以太坊區塊鏈中的一種數字“可收集”形式。 CryptoKitties提供了在Ethereum網路上儲存和交換數字專案的能力的良好演示。

新的CryptoKitties是通過“繁殖”生成的。這涉及到選擇兩個基本的CryptoKitties並花費以太幣代幣執行智慧合約。合約使用兩隻選擇的貓來產生新的CryptoKitty。這些小貓和繁殖過程的細節儲存在以太坊區塊鏈的公共賬本上。

您可以“擁有”CryptoKitties,它們儲存在以太坊區塊鏈分類賬中。您可以將其出售或交易給其他人,也可以購買。這與使用允許您購買,交易和養殖貓的智慧手機應用程式不同。這些通常會儲存在應用程式自己的伺服器上,如果公司關閉應用程式或禁止您的帳戶,則可能會丟失珍貴的數字寵物。但是,因為CryptoKitties儲存在區塊鏈中,所以不會發生。沒有人能把你的小貓帶走。

2017年12月 - 巧合的是,在比特幣的歷史最高價格附近,人們花費了超過1200萬美元的CryptoKitties的Ether費用,而最昂貴的CryptoKitty售價約為12萬美元。

像乙太網,比特幣和昂貴的繪畫一樣,CryptoKitties值得人們準備為它們付錢。

原文:howtogeek.com/350322/what-is-ethereum-and-what-are-smart-contracts 作者: Chris Hoffman

另外推薦大家一個適合區塊鏈開發新手入門的DApp實戰開發: 以太坊教程

相關文章