溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

區(qū)塊鏈智能合約是什么

發(fā)布時間:2022-01-15 14:12:35 來源:億速云 閱讀:152 作者:iii 欄目:互聯(lián)網(wǎng)科技

本文小編為大家詳細介紹“區(qū)塊鏈智能合約是什么”,內(nèi)容詳細,步驟清晰,細節(jié)處理妥當(dāng),希望這篇“區(qū)塊鏈智能合約是什么”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識吧。

什么是智能合約?

正常合約是兩個或更多方之間的協(xié)議,將他們與未來的某些東西聯(lián)系起來。Alice可能會向Bob支付一些錢以換取使用Bob的房子(即租金)。Charlie可能會同意修復(fù)Denise汽車未來的任何損壞,以換取每月付款(又稱汽車保險)。

區(qū)塊鏈智能合約是什么

智能合約的不同之處在于條件由計算機代碼評估和執(zhí)行,使其無須信任。因此,如果Alice同意從現(xiàn)在開始3個月(也就是未來)向Bob支付500美元用于交付,那么一些代碼可以確定條件是否正確(Alice已經(jīng)支付了Bob?已經(jīng)3個月了嗎?)并執(zhí)行(從托管中提供)而不給任何一方提供退出的能力。

智能合約的關(guān)鍵特征是它具有無信任的執(zhí)行力。也就是說,你不需要依賴第三方來執(zhí)行各種條件。一個聰明的合約執(zhí)行應(yīng)該及時和客觀地發(fā)生的事情,而不是依靠另一方兌現(xiàn)他們的言論甚至更糟,依靠律師和法律制度來糾正事情。

智能合約

使用“聰明”這個詞意味著這些合約具有一些與生俱來的智慧。其實不是。合約的明智之處在于不需要對方的合作來執(zhí)行協(xié)議。一個“聰明”的合約將把非付費租房者鎖定在他們的公寓之外,而不是必須踢出沒有付款的租房者。商定的后果的執(zhí)行使智能合約變得強大,而不是合約內(nèi)在的信息。

一份真正聰明的合約會考慮到所有情有可原的情況,看看合約的精神,即使在最黑暗的情況下也要做出公平的裁決。換句話說,一個真正聰明的合約就像一個非常好的判斷。相反,在這種情況下,“智能合約”根本不是智能的。它實際上是基于規(guī)則的,遵循規(guī)則到T,不能考慮任何次要考慮因素或法律的“精神”。

換句話說,使合約無須信任意味著我們真的不能有任何模棱兩可的空間,這會帶來下一個問題。

智能合約真的很難

由于以太坊的大量集中營銷,人們錯誤地認為智能合約只存在于以太坊。這不是真的。比特幣從2009年開始就有一種非常廣泛的智能合約語言叫做Script。事實上,智能合約早在1995年就存在于比特幣之前。比特幣的智能合約語言與以太坊的區(qū)別在于以太坊是圖靈完備的。也就是說,Solidity(ETH的智能合約語言)允許更復(fù)雜的合約,但卻使它們更難以分析。

區(qū)塊鏈智能合約是什么

復(fù)雜性有一些重大后果。雖然復(fù)雜的合約可以允許更復(fù)雜的情況,但復(fù)雜的合約也很難確保。即使在正常合約中,合約越復(fù)雜,執(zhí)法越難,因為并發(fā)癥會增加更多的不確定性和解釋空間。通過智能合約,安全意味著處理合約可以執(zhí)行的每種可能方式,并確保合約符合作者的意圖。

圖靈完備環(huán)境中的執(zhí)行非常棘手且難以分析。保護圖靈完整的智能合約相當(dāng)于證明計算機程序沒有錯誤。我們知道這非常困難,因為現(xiàn)有的幾乎所有計算機程序都存在錯誤。

考慮寫正常合約需要多年的學(xué)習(xí)和非常艱苦的各種考試才能勝任。智能合約至少需要這種能力水平,但目前很多都是由不了解其需要安全性的新手撰寫的。從各種已被證明存在缺陷的合約中可以清楚地看出這一點。

比特幣解決這個問題的方法就是沒有圖靈完整性。這使得合約更容易分析,因為程序的可能狀態(tài)更容易枚舉和檢查。

以太坊的解決方案是將負擔(dān)放在智能合約編寫者身上。合約編寫者需要確保合約符合他們的意圖。

智能合約不是真正的合約(至少在ETH上)

雖然在理論上將保證合約的責(zé)任留給作者聽起來很好,但在實踐中,這已經(jīng)產(chǎn)生了一些嚴(yán)重的集中化后果。

以太坊推出了“代碼就是法律”的想法。也就是說,以太坊的合約是最終的權(quán)威,任何人都無法否決合約。我們的想法是向聰明的合約開發(fā)者表明他們是獨立的。如果你搞砸了自己的智能合約,那么從某種意義上說,你應(yīng)該得到它。當(dāng)DAO事件發(fā)生時,這就停止了。

DAO代表“去中心化的自治組織”,并在以太坊創(chuàng)建了一個基金,作為展示平臺可以做什么的一種方式。用戶可以將錢存入DAO,并根據(jù)DAO的投資獲得回報。決策本身將是眾包和去中心化的。當(dāng)ETH交易價格在20美元左右時,DAO在ETH籌集了1.5億美元。這在理論上聽起來都很好,但是有一個問題。代碼沒有得到很好的保護,導(dǎo)致有人找到一種方法來消耗DAO的錢。

許多人稱這個人把錢的DAO當(dāng)作“黑客”。從某種意義上說,“黑客”找到了一種以創(chuàng)作者不想要的方式從合約中取錢的方法,這是事實。但從廣義上講,這根本就不是黑客,只是有人利用智能合約中的怪癖來發(fā)揮自己的優(yōu)勢。這與創(chuàng)造性的注冊會計師找出稅收漏洞以節(jié)省客戶資金并沒有太大差別。

接下來發(fā)生的事情是,以太坊決定代碼不再是法律并且還原了進入DAO的所有資金。換句話說,合約編寫者和投資者做了一些愚蠢的事情,以太坊開發(fā)商決定將他們拯救出局。

這一事件的后果已有詳細記錄。以太坊經(jīng)典誕生了,保留了DAO,并保留了“代碼是法律”的原則。此外,開發(fā)人員開始回避使用以太坊的Turing-completeness屬性,因為它被證明很難保證。ERC20和ERC721標(biāo)準(zhǔn)是以太坊中最常用的智能合約模板,重要的是要指出兩種類型的合約都可以在沒有任何圖靈完整性的情況下編寫。

智能合約僅適用于數(shù)字化

即使沒有圖靈完整性,智能合約聽起來也不錯。畢竟,誰喜歡不得不上法庭才能獲得合理地屬于他們的東西?是不是比普通合約更容易使用智能合約?

例如,智能合約不會使房地產(chǎn)受益嗎?Alice可以證明她擁有這所房子。Bob可以為房子匯款并換取房子。沒有所有權(quán),無信任,機器快速執(zhí)行,不需要法官,官僚或產(chǎn)權(quán)保險的問題。聽起來很棒,對嗎?

這里有兩個問題。首先,集中方執(zhí)行智能合約并不是真正的信任。你仍然需要信任集中方執(zhí)行。無信任是關(guān)鍵特性,因此集中執(zhí)行并不真正有意義。要使智能合約真正無信任,你需要一個實際上去中心化的平臺。

這導(dǎo)致我們遇到第二個問題。在去中心化的環(huán)境中,只有在數(shù)字版本和物理版本之間存在明確的聯(lián)系時,智能合約才有效。也就是說,每當(dāng)房屋的數(shù)字版本改變所有權(quán)時,物理版本也必須改變所有權(quán)。數(shù)字世界需要“了解”物理世界。這被稱為“Oracle問題”。

當(dāng)Alice將房子轉(zhuǎn)移給Bob時,智能合約需要知道她實際將房子轉(zhuǎn)讓給Bob。有幾種方法可以做到這一點,但它們都有同樣的基本問題。必須要有一些信任某些第三方來驗證物理世界中的事件。

例如,房子可以表示為以太坊上的不可替代的標(biāo)記。Alice可以通過原子交換將房子轉(zhuǎn)移給Bob以獲得一定數(shù)量的ETH。這是問題所在。Bob需要相信該Token實際上代表了房子。必須有一些Oracle確保將房屋Token轉(zhuǎn)移給他實際上意味著房子是他的合法房屋。

此外,即使政府當(dāng)局表示Token實際上代表了房屋,如果Token被盜,會發(fā)生什么呢?房子現(xiàn)在屬于小偷嗎?如果Token丟失怎么辦?房子不再可以出售嗎?房屋代幣可以重新簽發(fā)嗎?如果是這樣,由誰?

將數(shù)字資產(chǎn)與實物資產(chǎn)聯(lián)系起來存在一個難以解決的問題,無論是水果,汽車還是房屋,至少在去中心化的背景下。物理資產(chǎn)受你所在的司法管轄區(qū)的監(jiān)管,這意味著除了你創(chuàng)建的智能合約之外,它們在某種意義上信任某些東西。這意味著在智能合約中占有并不一定意味著在現(xiàn)實世界中擁有并且遭受與正常合約相同的信任問題。信任第三方的智能合約消除了無信任的殺手特征。

即使是電子書,健康記錄或電影等數(shù)字資產(chǎn)也會遇到同樣的問題。這些數(shù)字資產(chǎn)的“權(quán)利”最終由其他權(quán)威機構(gòu)決定,Oracle需要得到信任。

從這個角度來看,神諭就是愚蠢的法官。你實際得到的不僅僅是機器執(zhí)行和簡化執(zhí)行,而是必須使用主觀性和人類判斷風(fēng)險對所有可能結(jié)果進行編碼的復(fù)雜性。換句話說,通過使合約“變得聰明”,你在寫作的同時仍然不得不信任某人,這使得寫作變得更加復(fù)雜。

沒有Oracle的唯一可行的是數(shù)字承載工具。從本質(zhì)上講,交易的雙方不僅需要數(shù)字化,還需要承載工具。也就是說,Token的所有權(quán)不能具有智能合約平臺之外的依賴性。只有當(dāng)智能合約具有數(shù)字持票人工具時,智能合約才真正無信任。

讀到這里,這篇“區(qū)塊鏈智能合約是什么”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI