⑴ 以太坊公鏈上的智能合約有哪些
是一種旨在以信息化方式傳播、驗證或執行合同的計算機協議。
網路中的每個節點(電腦)都用來運行以太坊虛擬機(EthereumVirtualMachine,EVM)。可以把EVM想像成是一個操作系統,它能夠理解並且執行用以太坊上特定的編程語言編寫的軟體。由EVM所執行的軟體或者應用就叫作「智能合約」。
智能合約允許在沒有第三方的情況下進行可信交易,這些交易可追蹤且不可逆轉。這是因為一個合約寫好以後,就無法再被編輯或者修改。因此,你可以保證無論合約的內容是什麼,它都會無條件執行。智能合約提供的是一種優於傳統合同方法的安全,並減少與合同相關的其他交易成本。要在以太坊系統上運行智能合約,你需要付費。但是,並不是使用美元、英鎊等常規貨幣進行支付。而是使用以太坊燃料—gas。
⑵ 以太坊的智能合約是什麼意思
以太坊智能合約是指,部署在以太坊上的智能合約,是一段程序,運行在以太坊的虛擬機EVM中,程序可以按照事先約定的某種規則自動執行操作,執行合約的條款。
同時,智能合約對接收到的信息進行反應,它既可以接收和儲存價值,也可以向外發送信息和價值。
介紹
以太坊創始人V神指出過,以太坊智能合約中的「『合約』不應被理解為需要執行或遵守的東西,而應看成是存在於以太坊執行環境中的『自治代理』(autonomous agents),它擁有自己的以太坊賬戶,它們收到交易信息後就相當於被捅了一下,然後自動執行一段代碼。」
智能合約可以調用其它的智能合約,這就是開啟創立自治代理的能力,代理可以自己進行交易。在區塊鏈上,我們存儲的信息都是「狀態」,而智能合約就是它用於狀態轉換的方式。
⑶ 以太坊的智能合約
智能合約是運行在計算機裡面的,用於保證讓參與方執行承諾的代碼,般情況下,普通合約上記錄了甲方與乙方各方面的關系條款,並通常是通過法律強制執行或保護的,而「智能合約」則是用密碼或密鑰來執行關系。以更加直接的角度來理解的話,即「智能合約」的程序內容將同-開始大家一起設定好的那樣百分百執行,並且零差錯。
舉個例子,以太坊用戶可以使用智能合約在特定日期向朋友發送10個以太幣。在這種情況下,用戶可以操作創建一個合約,然後將程序推人該合約中進行特殊計算,以便它能夠執行所需的命令。而以太坊就是專門把精力集中在這件事上的這么一個平台。
比特幣是第一個支持「智能契約」的資源幣種,因為網路的價值在於把價值或數據從一個點或人轉移到另一個點或人身上。節點網路只在滿足某些條件時才會進行驗證,但是,比特幣僅限於貨幣用例。相反,以大坊取代了比特幣那種帶有不小限制性的編程語言,取而代之的是一種允許開發人員編寫自己程序的語言。以太坊允許開發人員編寫他們自己的「智能契約」,即「自主代理」或「自治代理」,正如ETH白皮書所稱的那樣。該編程語言是「圖靈完備」語言,這意味著它支持一組更廣泛的計算指令。智能合約能做些什麼呢?
1.「多簽名」賬戶功能,只有在一定比例的人同意時才能使用資金。這個功能經常用在與眾籌或募捐類似的活動中。
2.管理用戶之間所簽訂的協議。例如,一方從另一方購買保險服務3.為其他合同提供實用程序。
4.存儲有關應用程序的信息,如「域注冊信息」或「會員信息記錄」。概念有時候比較晦澀,我們舉一個募捐的智能合約的例子來幫助理解:假設我們想向全網用戶發起募捐,那就可以先定義一個智能賬戶,它有三個狀態:當前募捐總量,捐款目標和被捐贈人的地址,然後給它定義兩個函數:接收募捐函數和捐款函數。
接收募捐函數每次收到發過來的轉賬請求,先核對下發送者是否有足夠多的錢(EVM會提供發送請求者的地址,程序可以通過地址獲取到該人當前的區塊鏈財務狀況),然後每次募捐麗數調用時,都會比較下當前募捐總量跟捐款目標的比較,如果超過目標,就把當前收到的捐款全部發送到指定的被捐款人地址,否則的話,就只更新當前募捐總量狀態值。
捐款函數將所有捐款發送到保存的被捐贈人地址,並且將當前捐款總量清零。每一個想要募捐的人,用自己的ETH地址向該智能賬戶發起一筆轉賬,並且指明了要調用接受其募捐函數。於是我們就有一個募捐智能合約了,人們可以往裡面捐款,達到限額後錢會自動發送到指定賬戶,全世界的礦工都在為這個合約進行計算和擔保,不再需要人去盯著看有沒有被挪用,這就是智能合約的魅力所在。