區塊鏈之以太坊學習

2021-09-14 04:17:00 字數 1780 閱讀 9184

區塊鏈通常被定義為去中心的分布式記賬系統,該系統中的節點無需互相信任,通過統一的共識機制共同維護乙份賬本。在前幾年,大家會關注位元幣而不會單獨談論區塊鏈這個技術。直到2023年,區塊鏈這一概念才被單獨提出來為更多人所了解,且向著更廣泛的應用場景發展。發生在這個時間點的主要原因之一是以太坊的出現和日益成熟。

以太幣是以太坊發行的一種數字貨幣, 在以太坊上發起任何一筆交易都需要支付一定的以太幣.

以太幣**包括: 礦前 + 區塊獎勵 + 叔區塊獎勵 + 數區塊引用獎勵, 具體分配大致如下:

以太幣發行:

以太坊的交易指的是乙個外部賬戶傳送到區塊鏈上另一賬戶的訊息的簽名資料報,該訊息中主要包含 傳送者簽名, 接收者位址, 交易的eth數量等內容.在以太坊上的每一筆交易都需要支付一定的費用, 該費用主要用於支付執行交易所需要的計算開銷. 以太坊中gas是執行開銷的基本單位.

交易費用

以太坊中採用gas和gasprice來對交易所需的手續費進行定價:

交易內容

一筆交易會包含一下內容:

不同場景下, 交易的三種型別:

web3.eth.sendtransaction(from:sendaddress, to:receiveaddress, value:10000000000)

web3.eth.sendtransaction(from:sendaddress,data:「contract binary code」)

web3.eth.sendtransaction(from:sendaddress, to:「contract address」, data:「hash of the invoked method signature and encoded parameters」)

現實生活中經常遇到這樣的場景:買家與賣家要進行一筆交易,為了保證交易的順利進行,雙方簽訂了乙份合約,合約中宣告雙方各自的身份、權利和義務(買家付錢、賣家交貨的時間節點和方式等),一式兩份,各自儲存。這樣,當交易出現糾紛時,合約將成為尋求法律援助的依據,而法律將成為確保合約執行的強制力保障。

雖然合約為交易的順利進行提供了一些保障,但是也存在很多不足之處。一旦交易中發生了糾紛,比如賣家拖延發貨或者買家拒絕付款,即使在法律的援助下解決了糾紛,交易的效率也會大大降低。甚至在一些情況下,合約將會失去約束效力,比如合約中存在歧義或者合約丟失等。

那麼有沒有一種更有效的方式來保證交易的進行呢?假設有乙個絕對可信和公正的交易**人,賣家將商品交給**人,買家與**人進行一手交錢一手交貨的當面交易。如果買家拒絕購買,賣家可以從**人手中取回商品;買家也不會存在付錢後拿不到商品的風險。

智慧型合約就可以充當這樣乙個**人。簡單地說,智慧型合約就是區塊鏈上乙個包含合約**和儲存空間的虛擬賬戶,智慧型合約的行為由合約**控制,而智慧型合約的賬戶儲存則儲存了合約的狀態。

相比較傳統合約,區塊鏈智慧型合約在很多方面具有優勢:

理論上講,任意計算複雜度的金融互動過程均可以由智慧型合約安全、自動地完成。除了金融方面的應用,以太坊平台還可以在如財產登記、投票、智慧型交通、物聯網等任何需要信任、安全和效能兼顧的環境中進行部署和使用。

在以太坊平台上,智慧型合約的**執行在以太坊虛擬機器(evm)中,evm是乙個圖靈完備的虛擬機器,是以太坊協議的核心。在以太坊的點對點(p2p)網路中,每個全節點上都包含乙個以太坊虛擬機器,當節點需要打包或驗證區塊時,便將交易相關的可執行**送入evm中執行,執行的結果更新了以太坊賬戶的狀態並被記錄在區塊鏈上。

以太坊網路中的每個節點都需要在各自的evm中執行**,這就導致了兩個問題:

以太坊區塊鏈

由私鑰控制.與 無關聯 可以建立發起交易給另外乙個賬戶.外部賬號之間的交易是轉賬 外部賬戶轉賬到合約賬戶可以啟用合約賬戶 被合約 控制,有關聯的 可以響應外部賬戶發起的交易 這裡需要注意的是這裡的merkle樹並不是位元幣的merkle樹,以太坊使用的是mpt樹.merkle樹的變種,功能更強大.可...

以太坊 理解區塊鏈

目錄 一直都說在聽說區塊鏈,都說是什麼劃時代的技術,一種顛覆性的技術,繼人工智慧後的一種革命性的技術。各種光鮮詞彙全用在區塊鏈上,就一直沒明白它到底高深在何處?今天的網際網路世界可以說是資訊網際網路,以前一直說地球村,網際網路將地球變小了,你在地球的這邊可以隨時和地球的另一邊進行交流,如果說資訊網際...

區塊鏈2 0 以太坊

如果把位元幣說成是一本全球賬本,以太坊就可以被看作一台全球計算機 乙個任何人都可以上傳和執行應用程式,並且程式的有效執行能得到保證的地方,這種保證依賴的正是以太坊系統去中心化的,由全球成千上萬的計算機組成的共識網路。以太坊需要數以千計的人在他們的個人電腦上執行乙個軟體來支撐整個網路。網路中的每個節點...