新聞中心
當前位置:網站(zhàn)首頁 > 新聞中心
什(shén)麽是區(qū)塊鏈智能(néng)合約?
關于區(qū)塊鏈智能(néng)合約的第一件事(shì)是它們不是合約、智能(néng)合約,也(yě)不一定在區(qū)塊鏈上(shàng)。
要了(le)解區(qū)塊鏈智能(néng)合約的第一件事(shì)是它們不是合約、智能(néng)合約,也(yě)不是必須在區(qū)塊鏈上(shàng)。事(shì)實上(shàng),它們的名字很(hěn)奇怪。
讓我們以相反的順序解決這(zhè)些(xiē)問題,我們應該在此過程中确切地找出智能(néng)合約實際上(shàng)是什(shén)麽。首先,介紹什(shén)麽是交易,什(shén)麽不是交易。
交易和(hé)非交易簡介
最著名的區(qū)塊鏈是像比特币這(zhè)樣的加密貨币。2關于貨币的事(shì)情——無論是虛拟的還是非虛拟的——是你(nǐ)主要想做的是使用(yòng)它們買賣東西。你(nǐ)想要的是一個簡單的交易模型:“一旦我爲你(nǐ)提供這(zhè)項服務,你(nǐ)就會(huì)給我這(zhè)個數量的貨币。”我們知(zhī)道(dào)這(zhè)是如何運作(zuò)的,因爲每次我們在商店(diàn)或網上(shàng)購買東西時(shí),都會(huì)發生這(zhè)樣的情況:起始狀态是“我有x數量”,交易完成後的狀态是“我有xy數量,并且你(nǐ)有y數量。”4這(zhè)是在你(nǐ)完成交易之前你(nǐ)關心的從(cóng)一種狀态轉移到(dào)另一種狀态。大(dà)多數加密貨币都被設置爲支持這(zhè)種類型的構造。
這(zhè)很(hěn)好(hǎo),但(dàn)一些(xiē)聰明(míng)的人意識到(dào)實際上(shàng)有很(hěn)多不同的方法可以做到(dào)這(zhè)一點。以太坊是非交易結構大(dà)獲成功的地方,Solidity是最著名的例子。我很(hěn)高(gāo)興地說,兩者都是開(kāi)源項目。爲什(shén)麽不在我交出我正在交出的任何東西之前需要滿足一組更複雜(zá)的條件?而且——這(zhè)是一個聰明(míng)的地方——爲什(shén)麽不寫那些(xiē)可以被計(jì)算(suàn)機執行的代碼呢(ne)?你(nǐ)可能(néng)希望貨币——或其他(tā)任何東西——隻在一段時(shí)間後釋放(fàng),或者如果股票價格保持在一組特定的範圍内,或者如果某個人繼續擔任總理(lǐ),5或者如果沒有意外(wài)eclipse在接下(xià)來(lái)的五天内。6你(nǐ)也(yě)可能(néng)有複雜(zá)的依賴關系:隻有當我連續三周寫一篇新文(wén)章并且沒有人對(duì)其中任何一個寫令人不快(kuài)的評論時(shí)才完成。7編寫這(zhè)段代碼,如果條件滿足,然後進入下(xià)一個狀态。
不僅适用(yòng)于區(qū)塊鏈
開(kāi)始解決那些(xiē)“非”陳述。
現(xiàn)在,在區(qū)塊鏈中,重要的是一旦狀态發生變化,您就确保将其記錄在區(qū)塊鏈上(shàng),以便它是公開(kāi)的,沒有人可以更改或挑戰它。但(dàn)是區(qū)塊鏈技術還有其他(tā)用(yòng)途,正如我在“區(qū)塊鏈是一個安全主題嗎?”中解釋的那樣。無許可系統,通常被稱爲分布式賬本技術(DLT),非常适合非交易狀态模型,主要是因爲對(duì)它們感興趣的人是封閉的組織團體,他(tā)們希望以前滿足複雜(zá)的條件集他(tā)們移動到(dào)下(xià)一個狀态。根據最嚴格的定義,這(zhè)些(xiē)不是區(qū)塊鏈。銀行和(hé)其他(tā)金(jīn)融機構可能(néng)是DLT獲得吸引力的最明(míng)顯例子,但(dàn)它們在供應鏈領域非常有用(yòng),例如,您可能(néng)會(huì)遇到(dào)有關不斷變化的市場利率、可用(yòng)性和(hé)運輸時(shí)間或成本的條件,這(zhè)可能(néng)所有這(zhè)些(xiē)都會(huì)影響所提供的商品或服務的最終價格。
沒那麽聰明(míng)
智能(néng)合約可以是智能(néng)的,但(dàn)對(duì)我來(lái)說,這(zhè)意味着複雜(zá)并且能(néng)夠對(duì)意外(wài)或不太可能(néng)的情況做出反應。我認爲人們稱它們爲“智能(néng)”是因爲它們體現(xiàn)在代碼中,而不是出于我上(shàng)面建議(yì)的原因。
我認爲這(zhè)實際上(shàng)是一件非常好(hǎo)的事(shì)情,因爲我認爲我們不希望他(tā)們表達我的意思。我所知(zhī)道(dào)的“智能(néng)合約”的大(dà)多數用(yòng)法是兩個或多個組織根據一組已知(zhī)且受充分約束的條件就系統的一組可能(néng)結果達成一緻。這(zhè)就是合同的一般含義,雖然我也(yě)即将與命名法的那部分争論,但(dàn)在這(zhè)種情況下(xià)它是相當合适的。
通常,您想要的不是意外(wài)或不太可能(néng)的情況以及人工(gōng)智能(néng)/機器學習類型的智能(néng)處理(lǐ),因爲如果您這(zhè)樣做了(le),那麽結果可能(néng)會(huì)令人驚訝,并且可能(néng)會(huì)讓一個或多個人不高(gāo)興當事(shì)人。簡單——或者至少很(hěn)容易定義——是你(nǐ)想要内置到(dào)系統中的一個關鍵屬性。例如,Solidity項目似乎至少意識到(dào)了(le)其中的一些(xiē)陷阱,并建議(yì)使用(yòng)智能(néng)合約的人采用(yòng)形式驗證,但(dàn)正如我們将在下(xià)面看(kàn)到(dào)的,這(zhè)隻是觸及了(le)問題的表面。
不是合同
當然,有一些(xiē)合同——“在現(xiàn)實生活中”的合同——用(yòng)于管理(lǐ)複雜(zá)和(hé)意外(wài)的情況。它們存在于明(míng)确的法律管轄範圍内。構成它們的單詞和(hé)短語受特定和(hé)明(míng)确定義的過程的約束,當合同條件不滿足或違反時(shí),會(huì)受到(dào)已知(zhī)的制裁和(hé)懲罰。經常有挑戰這(zhè)些(xiē)的情況,但(dàn)同樣存在應對(duì)此類挑戰的明(míng)确機制。
目前,“智能(néng)合約”不符合對(duì)合約的這(zhè)種描述。将法律合同措辭映射到(dào)計(jì)算(suàn)機代碼是一個非常複雜(zá)的過程,并且代碼處理(lǐ)容易出現(xiàn)的錯誤類型在司法系統中沒有一個很(hěn)好(hǎo)的類比。還有管轄權的問題。這(zhè)通常在合同條款中描述,但(dàn)如果“智能(néng)合同”的處理(lǐ)發生在與相關方不同的司法管轄區(qū),甚至是未知(zhī)的司法管轄區(qū),該怎麽辦?這(zhè)應該重要嗎?這(zhè)有關系嗎?我不知(zhī)道(dào),我也(yě)不知(zhī)道(dào)一旦人們開(kāi)始以具有法律強制力的方式依賴這(zhè)些(xiē)結構,我也(yě)不知(zhī)道(dào)還有什(shén)麽其他(tā)問題會(huì)從(cóng)木(mù)制品中爬出來(lái),但(dàn)我懷疑它們會(huì)受到(dào)歡迎。
同樣,當IT人員談論軟件合同時(shí),他(tā)們談論的是完全不同的東西:這(zhè)是系統在已知(zhī)輸入和(hé)啓動條件的上(shàng)下(xià)文(wén)中所宣傳的行爲,這(zhè)對(duì)我們也(yě)沒有幫助。
這(zhè)和(hé)安全有什(shén)麽關系?
一旦交易——或“智能(néng)合約”——完成并進入區(qū)塊鏈或分布式賬本,它幾乎是不可變的,根據定義。但(dàn)是在它完成之前呢(ne)?好(hǎo)吧,本文(wén)開(kāi)頭描述的這(zhè)種類型的簡單交易是原子的——它們發生或不發生,用(yòng)行話(huà)來(lái)說,它們是“不可分割和(hé)不可約的”。對(duì)于大(dà)多數目的,它們是瞬時(shí)的。
“智能(néng)合約”并非如此。它們需要處理(lǐ),因此會(huì)随着時(shí)間的推移而存在。這(zhè)意味着在處理(lǐ)它們時(shí),它們會(huì)受到(dào)任何系統都可能(néng)容易受到(dào)攻擊的各種攻擊。标準清單是:
?保密。“智能(néng)合約”的狀态可能(néng)會(huì)受到(dào)窺探,這(zhè)可能(néng)導緻不對(duì)稱的知(zhī)識或洩露給未經批準的各方。
?正直。這(zhè)是許多“智能(néng)合約”的噩夢。如果一個實體——無論是基礎合同的一方與否——可以(有意或無意地)改變執行“智能(néng)合約”的代碼的内部狀态,那麽該“智能(néng)合約”的結果将不會(huì)像它們一樣預期是這(zhè)樣,并且任何相關方都可能(néng)有充分的理(lǐ)由對(duì)結果提出異議(yì)。更重要的是,這(zhè)樣的糾紛甚至可能(néng)不依賴于喪失誠信的證據,而隻是依賴于懷疑。在執行上(shàng)下(xià)文(wén)中證明(míng)運行時(shí)完整性——更不用(yòng)說在它被證明(míng)丢失時(shí)進行緩解——是極其困難的。
?可用(yòng)性。如果一方發現(xiàn)與“智能(néng)合約”相關的條件對(duì)他(tā)們不利,他(tā)們可能(néng)會(huì)試圖影響構成“智能(néng)合約”的系統任何部分的可用(yòng)性,無論是代碼本身、系統的輸入或系統的輸出。其中任何一個都可能(néng)對(duì)現(xiàn)實生活的結果産生重大(dà)影響。
這(zhè)篇文(wén)章的開(kāi)頭似乎是對(duì)命名約定的迂腐攻擊。我想可能(néng)會(huì)很(hěn)清楚,8我對(duì)“智能(néng)合約”這(zhè)個詞感到(dào)不舒服,這(zhè)主要是因爲我認爲它讓一些(xiē)人認爲這(zhè)些(xiē)結構是他(tā)們所不具備的。反過來(lái),這(zhè)可能(néng)意味着人們會(huì)在不合适的情況下(xià)使用(yòng)它們。
人們還擔心,因爲文(wén)字會(huì)帶來(lái)包袱,這(zhè)會(huì)導緻人們沒有充分考慮安全性對(duì)這(zhè)些(xiē)結構的影響。我認爲影響可能(néng)非常大(dà)。所以,如果你(nǐ)正在研究這(zhè)些(xiē)結構,請(qǐng)睜大(dà)眼睛。我在這(zhè)篇文(wén)章中沒有過多地談論緩解措施,但(dàn)存在一些(xiē)緩解措施。
上(shàng)一篇 雲計(jì)算(suàn)技術特點:彌漫性、無所不在的分布性和(hé)社會(huì)性 下(xià)一篇 邊緣計(jì)算(suàn)會(huì)成爲2021年的新雲嗎?
|