iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 2
0
Blockchain

文組也該知道的區塊鏈技術知識系列 第 2

起手式:以太坊上的一筆交易【Day 2】

  • 分享至 

  • xImage
  •  

要了解 ETH or BTC 是如何運作,從一筆交易來切入是很好的著力點,因為幾乎所有的區塊鏈概念與原理都是圍繞著交易來發生的。我們將從一筆普通的 ETH 交易與一筆 BTC 交易來檢視架構上的異同,藉以了解各自之運作原理。

下方是一筆在 Etherscan( 以太坊的區塊瀏覽器,任何在鏈上發生的交易都可以在 Etherscan 一覽無遺 )上隨機擷取的交易,我們先來解析一下這筆交易內容包含的資訊。


以太坊上的一筆普通交易

第1點「交易雜湊值」,即這筆交易的 ID,是唯一識別值,如我們的身分證字號一般。這個值是由這筆交易的所有資訊雜湊而成。

第2點「所在區塊」,為這筆交易位在的區塊,亦即「區塊高度」。後方灰標籤中的 “13 Block Confirmations” 代表在這個區塊之後已經接了 12 個區塊(包含本區塊共有 13 個區塊已經確認)。因為有可能有分叉的問題,故通常在一筆交易出塊後,要等到 5 個以上的區塊確認,才較能確保本交易是在最長的區塊鏈之上,相關資訊不會再被更動。

第3點「時間戳記」,為礦工打包本筆交易上鏈的時間,時間以 UTC(世界協調時間)表示,和台灣有 8 個小時的時差。

第4點「來自地址」,表示本筆交易是從哪個地址送出。

第5點「接收地址」,表示本筆交易的金額將被哪個地址接收。

第6點「交易金額」,表示本筆交易中所轉移了多少顆以太幣,後方會以檢視時的時價來換算。

第7點「手續費」,在以太坊中進行交易,必須經由礦工運算打包後上鏈,故需要支付給礦工手續費。一筆一般的以太坊轉帳交易會使用 21,000 的 Gas(燃料),可以理解成點對點網路要花多少資源去做這筆交易的運算。

以太坊交易手續費公式:
  Tx Fee(7手續費)= Gas Used(7-2燃料用量) * Gas Price(7-3單位燃料價格)

用比喻來說明的話,可以理解成台北開車至台中的油錢:
  油錢 = 使用公升數 * 每公升油價

而 Gas Limit 比較像是出發前你要加多少公升的油,如果加的油不足你旅程需要的油,那這趟旅程(這筆交易)就會失敗。

發送交易時,部分錢包的 Gas Price & Gas Limit 是可以自己設定的,Gas Limit 基本上只要大過交易所需的用量,不要交易失敗即可。比較需要注意的是,在以太坊如果因為 Gas Limit 設不夠等原因交易失敗,那麼手續費還是會被收取,不會退回。(因為礦工還是花資源下去幫你算了)

因為交易的 Gas Used 是礦工實際在運算時才會被決定的,故 Gas Price 成為決定要支付給礦工多少手續費的決定因子。原則上手續費越高會越優先被礦工打包上鏈,交易的等待時間會越短。由於以太坊上交易量會隨時間改變,欲知道當前即時狀況以決定手續費要設多少,可以到 ETH gas station 查看。

第8點「Nonce」,目前比較沒有一個比較統一的翻譯,我個人覺得可以理解為序次,前方的值 “22954”表示這個「來自地址」截至本交易為止,已發送了 22954 筆交易。
後方的值 “210” 則表示這筆交易是在這個「所在區塊」中的第 210 筆交易。

第9點「額外註記」,則是可以寫上額外的文字作為這筆交易的註記,也會牽涉到以太坊與比特幣最大的不同處之一:智慧合約,我們會在未來的日子詳述。

Day 2 先介紹至此。

若有任何:
A. 不夠清楚或寫錯的地方
B. 撰寫上改進的建議
C. 希望我能夠撰寫分享的區塊鏈技術知識題目
都非常歡迎在底下留言回覆,希望我的文章能幫助到更多曾像我一樣想學習區塊鏈技術與知識的朋友,謝謝大家!


上一篇
序:給想更深入了解區塊鏈技術卻求助無門的朋友【Day 1】
下一篇
以太坊與比特幣的架構介紹(Account vs UTXO)【Day 3】
系列文
文組也該知道的區塊鏈技術知識5
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言