Solidity
如果使用 Metamask 帳戶進行的交易是由腳本執行的,我可以從 tx 元數據中檢測到嗎?
我有一個 Metamask 帳戶,我使用 web3.js/web3.py/或任何 web3 庫來買賣代幣。是否可以判斷交易是從 Metamask Chrome 外掛界面完成的,還是由僅使用帳戶私鑰的腳本執行的?它會改變有效載荷或任何元數據嗎?交易數據中是否有任何跡象表明“此事件是由腳本發送的”而不是人類?我讀到可以檢測地址是錢包還是合約,但我找不到任何有關此的資訊。
不,無論您是從 Metamask 還是從腳本發送,從區塊鏈的角度來看,tx 都是相同的。公平地說,Metamask 本身就是一組腳本……
我讀到可以檢測地址是錢包還是合約,但我找不到任何有關此的資訊。
您肯定指的是EXTCODESIZE操作碼,以獲取與特定地址/帳戶關聯的程式碼大小。但它也可以像這裡描述的那樣被欺騙。
因此,無論您對 vue 的看法是什麼,都無法 100% 確定 tx 是由人類行為或腳本對事件的反應發送的,也無法 100% 確定內部呼叫是不是來自智能合約。