天天看點

區塊鍊學堂(1):區塊鍊引子 以太坊 智能合約是什麼?

相信正在看這篇文章的讀者一定已經聽說過區塊鍊了,并且也相信區塊鍊是一項前景美妙,甚至是颠覆性的技術。但是也許同時也會感到困惑,對于區塊鍊雖然有一些大緻概念,但是具體到如何應用區塊鍊技術,如何進行區塊鍊程式設計就會發現并不是那麼容易。那麼恭喜你!來對地方了。本教程主要介紹的是區塊鍊技術的一個主要流派:以太坊的程式設計,希望讀者閱讀完本教程後,可以學會并掌握以太坊及其智能合約的程式設計,并能夠将區塊鍊技術落地到實際的項目開發中去。

區塊鍊到底是什麼?

    區塊鍊(英:Blockchain) 是一種分布式資料庫,起源自比特币,區塊鍊是一串使用密碼學方法相關聯産生的資料塊,每一個資料塊中包含了若幹次比特币網絡交易的資訊,用于驗證其資訊的有效性(防僞)和生成下一個區塊。(摘自wiki)

區塊鍊技術的定義:

    區塊鍊是一個分布式賬本,一種通過去中心化、去信任的方式集體維護一個可靠資料庫的 技術方案 。

從資料的角度看:

    區塊鍊是一種幾乎不可能被更改的 分布式資料庫 , ”分布式“有兩個含義,一個是分布式存儲,一個是所有參與者共同維護。

區塊鍊技術的幾個特性

  • (1) 匿名
  • (2)不可篡改和加密安全性
  • (3)無須信任系統
  • (4)分布式去中心化
  • (5)交易透明

    基于以上的幾個優點,比特币系統實作了一個自我運作的,成交量數十億的交易系統,全球化7*24小時穩定的運作了多年。任何兩個賬戶之間的比特币買賣都被忠實的記錄在大量備援的賬本上。

    在比特币網絡中,任何賬号都是匿名的,任何賬号之間的交易都是不可篡改,且會被記錄在每一個節點上。然後通過對挖礦的比特币激勵機制,實作了這個網絡的自運作,無需任何中心化的交易系統。

以太坊

那麼以太坊是什麼?

    以太坊是一個開源的有智能合約功能的公共區塊鍊平台,通過其專用加密貨币以太币提供去中心化的虛拟機(EVM)來處理點對點合約(摘自wiki)

    最簡單的說法就是:區塊鍊技術+智能合約。

    以太坊在繼承了區塊鍊技術的基礎上,實作了對智能合約的支援,進而使得區塊鍊技術可以和商業化應用結合,并實作項目的落地。

    在以太坊的網絡中,智能合約也被看做一個特殊的賬戶,進而使得使用者可以通過和該賬戶進行交易,實作對該賬戶中的屬性和方法的調用。進而從底層技術上支援了智能合約的實作。

技術架構圖

智能合約是什麼?

    之前說過區塊鍊技術的五個特性。以太坊繼承了上面這所有的區塊鍊技術的基礎上,提供了智能合約的支援。進而使區塊鍊技術從原來的賬戶與賬戶之間的交易功能,擴充為一個可以實作智能合約的平台。這個智能合約可以是一個衆籌合約,也可以是一個數學公式,或者是一個完全的随機數。

隻要智能合約 被部署到以太坊的網絡上去,他就天生帶有了區塊鍊技術的5個特征,同時因為他是由類 javascript 的語言撰寫,是以可以實作很多複雜的業務邏輯。

本教程主要介紹的就是對智能合約的程式設計,通過編寫符合自己商業邏輯的智能合約,就可以輕松的實作各種基于區塊鍊的項目落地。

下一章,我們将從一個最簡單的智能合約入手,給大家快速介紹一下智能合約長什麼樣?

原文釋出時間為:2018年03月28日

本文作者:lala_wang

本文來源:

CSDN

,如需轉載請聯系原作者。

繼續閱讀