【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?