
一、什么是智能合約
傳統(tǒng)意義上的合約,就是雙方或者多方共同協(xié)議做或者不做某事來換取某些東西。合同中的每一方必須信任彼此能夠履行義務(wù)。而智能合約的特點是:同樣是彼此之間同意做或者不做某事,但是無須再信任彼此。這是因為智能合約不但是由代碼進(jìn)行定義的,也是由代碼強(qiáng)制執(zhí)行的,完全自動且無法干預(yù)。智能合約一旦編寫好就可以被用戶信賴,合約條款不能被篡改,不需依賴第三方執(zhí)行合約,消除了中間人,大大減少了花費在合約上的金錢和時間。
下面以一個大家所熟知的房租租賃為例讓你更了解智能合約。
1.房屋出租的智能合約應(yīng)用場景
假設(shè)王昭君與貂蟬需要構(gòu)建一個區(qū)塊鏈智能合約,目的是王昭君將其房屋出租給貂蟬,租金為2000元一個月,押二付一,每月月初支付,租期為一年。假設(shè)王昭君的房屋門鎖可通過互聯(lián)網(wǎng)控制,其開鎖密碼為pwd(每月生成一次),王昭君的銀行賬戶為A,貂蟬的銀行賬戶為B。智能合約的執(zhí)行包含以下步驟:
1.王昭君與貂蟬提交合約構(gòu)建申請給智能合約服務(wù)器,生成合約并由服務(wù)器發(fā)布到區(qū)塊鏈生效。
2.王昭君將密碼pwd以及銀行賬戶A提供給智能合約服務(wù)器。
3.貂蟬通過銀行賬戶B向智能合約服務(wù)器支付2000*2=4000元的資金作為抵押,并支付第一個月的房租2000共計6000元。
4.合約開始執(zhí)行,智能合約服務(wù)器將密碼發(fā)送給貂蟬,并從貂蟬在該合約中的資金扣除2000元,發(fā)送到王昭君的賬戶,同時生成參與對象記錄存入?yún)^(qū)塊鏈。
5.每個月智能合約都會定期檢查,如果合約未到期,則繼續(xù)從合約資金中扣除2000元發(fā)送到王昭君的賬戶中,并發(fā)送密碼給貂蟬;若合約資金不足4000,將停止發(fā)送密碼。最后生成參與對象記錄存入?yún)^(qū)塊鏈。
6.所有參與者都可以通過區(qū)塊鏈查詢合約執(zhí)行情況。
7.租約到期后,智能合約服務(wù)器將4000押金退還貂蟬,并生成一條合約記錄,標(biāo)示合約終止并發(fā)布到區(qū)塊鏈,合約停止執(zhí)行。
2.智能合約與傳統(tǒng)合約的異同
智能合約與傳統(tǒng)合約有相似之處,比如均需要明確合約參與者的權(quán)利、義務(wù),違約方均會受到懲罰等。但是智能合約與傳統(tǒng)合約存在著顯著的區(qū)別,如下表所示:

在上面的房屋租賃例子中,雙方無需通過紙質(zhì)合同進(jìn)行約定,只要按照雙方達(dá)成的共識構(gòu)建智能合約即可,后續(xù)所有的事情都會由智能合約強(qiáng)制執(zhí)行。房東不需要擔(dān)心租客不付房租了,一旦租客違約,租客將無法得到房屋的密碼。
二、什么是以太坊
以太坊(Ethereum)是一個能夠在區(qū)塊鏈上實現(xiàn)智能合約、開源的底層開發(fā)平臺,每個人都可以利用以太坊開發(fā)出自己的虛擬貨幣體系。它是在2013年年底由Vitalik Buterin 所提出的技術(shù)。以太坊和比特幣相似,是一個開源的,基于區(qū)塊鏈技術(shù)的分布式計算平臺,它強(qiáng)調(diào)自己是一個智能合約系統(tǒng)。
為了支持這個系統(tǒng),Vitalik Buterin和他的團(tuán)隊在2014年的7月至8月,針對公眾銷售了他們自己的以太坊系統(tǒng)上的貨幣 —— 以太幣( Ether , 簡稱 ETH )
三、什么是以太坊上的代幣(ERC20 Token)
1.初識代幣
前文已經(jīng)提到,以太坊可以創(chuàng)建任何智能合約,包括可以表示數(shù)字資產(chǎn)的智能合約,而這些數(shù)字資產(chǎn)被稱為以太坊代幣,比如今年夏天火爆的各種ICO,如Bigone,Qash等以太坊代幣。這有點類似于 Apple商店是提供 iOS apps 的平臺,其中部分 apps 會在它們的游戲或平臺中發(fā)行數(shù)字貨幣。然而,和 Apple 不同的是,以太坊沒有中心實體來控制哪些 apps 可以上 App Store,每個人都可以在以太坊上發(fā)行代幣(去中心化)。
2.以太坊代幣標(biāo)準(zhǔn)ERC20
在以太坊上,代幣遵循相同的標(biāo)準(zhǔn),這樣代幣之間的兌換和Dapp(去中心化應(yīng)用)支持就會變得容易。
目前以太坊主流的代幣標(biāo)準(zhǔn)是ERC20。
ERC20 標(biāo)準(zhǔn)在2015年11月份提出,使用這種規(guī)則的代幣,表現(xiàn)出一種通用的和可預(yù)測的方式。簡言之,任何 ERC-20 代幣都能立即兼容以太坊錢包(幾乎所有支持以太幣的錢包,包括Jaxx、MEW、imToken等,都支持 ERC-20的代幣),由于交易所已經(jīng)知道這些代幣是如何操作的,它們可以很容易地整合這些代幣。這就意味著,在很多情況下,這些代幣都是可以立即進(jìn)行交易的,為資金流動提供了極大的方便。