【TX】

  • tx.gasprice (uint): 發起調用的交易中的 gas 價格

  • tx.origin (address):(從EOA, External Owned Accounts)交易發送方地址

我曾經在搜尋資料時發現在智慧合約中使用 tx.origin (address) 進行身份驗證會使合約容易受到類似網路釣魚的攻擊的言論,更多的時候是使用 msg.sender == owner 來進行判斷。

拒絕外部合約呼叫當前合約則可使用 require(tx.origin ==msg.sender)來進行實現。

這三者的內置變量都預設式 address payable

  • msg.sender

  • tx.origin

  • block.coinbase

除了上述我們會提到的全局訊息(變量)們,this 以及之後在繼承會提到的 super 都屬於全局訊息。

Last updated

Was this helpful?