看板 DigiCurrency 關於我們 聯絡資訊
: 推 minminpp: 實際情況應該是MEV會賄絡礦工,讓MEV的前置交易和後置 11/21 00:27 : → minminpp: 交易剛好夾住目標交易。也就是讓打包交易的礦工決定一 11/21 00:28 : → minminpp: 個block中的交易順序,所謂的MEV就是這樣產生。當交易 11/21 00:28 : → minminpp: 順序可以調整+插入特定交易,利潤就出來了。 11/21 00:28 : 推 minminpp: 所以flashloan 不適用這種sandwich attack。 而MEV跟fla 11/21 00:30 : → minminpp: shbots有關 11/21 00:30 : → ripple0129: 被賄賂的礦工沒有保證出塊吧? 11/21 02:08 : → ripple0129: 換句話說還要賭出塊機率? 11/21 02:09 想到有個買保險的方法 https://docs.soliditylang.org/en/latest/units-and-global-variables.html #block-and-transaction-properties EVM可以取得區塊的coinbase資訊: block.coinbase (address payable): current block miner’s address 所以可以在前置交易呼叫的合約內放入 require( block.coinbase == 合作礦工ADDRESS ); 和礦工合作的Tx多半不會廣播(?),但有可能被重放。但加入這個檢查後,即使被 包在其他礦工挖出來的區塊,前置交易也會直接無效,就不會在交易上賠錢了。 花一點gas fee而已。(後置交易相對比較不重要,也可以同樣方式處理) 雖然coinbase可以填別人的位址(不確定POS後是怎麼樣,POW時期是可以的), 但這樣就是攔截的礦工要把出礦獎勵送給別人,發生的機會更小一點。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.243.21.9 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/DigiCurrency/M.1700565352.A.0A7.html ※ 編輯: Ayukawayen (111.243.21.9 臺灣), 11/21/2023 19:23:00
ripple0129: 這些應該是先寫好程式碼在等人失手吧? 11/21 19:54
MACD: 送到flashbot 的tx不會廣播,有成功的話會直接打包出去,所 11/21 20:30
MACD: 以如果不是合作礦工打包的,會直接消失,連失敗的資訊都不 11/21 20:30
MACD: 會出現在鏈上 11/21 20:30
MACD: 所以其實不用檢查 11/21 20:32
Ayukawayen: 重放應該是做得到的,但大費周章去重放的機會也不高 11/21 20:35
MACD: 你重放意思是指什麼,目標tx被打包了就會直接 11/21 20:39
MACD: 退回套利的tx了 11/21 20:39
Ayukawayen: 我覺得買這個保險意義不大沒錯 XD 11/21 20:40
MACD: 嗯,沒有必要XD,直接夾就對了 11/21 20:41
Ayukawayen: 鏈reorg的時候Tx被重新包進區塊內。話說現在還會reorg 11/21 20:42
Ayukawayen: 嗎? 以前是可以發起一條攻擊鏈去置換現行鏈啦 11/21 20:43
MACD: 這部分就不清楚了,PoS這樣做被抓到好像會沒收質押的代幣 11/21 20:46
Ayukawayen: POS自己簽過的區塊提案之後否定掉應該會被罰沒,還沒 11/21 20:48
Ayukawayen: 簽的或許還可以不簽,這樣或許在比較前面的階段就要出 11/21 20:49
Ayukawayen: 手了,總之好像很麻煩。如果只有低機率的天然reorg, 11/21 20:50
Ayukawayen: 那真的也不需要防。 11/21 20:50
Ayukawayen: 因為Tx可以不廣播,但Block總是要廣播的,以前如果合 11/21 20:53
Ayukawayen: 作礦工包了一個有完美三明治的區塊丟出去,結果發現自 11/21 20:54
Ayukawayen: 己不是最長鏈,那就尷尬了 XD 11/21 20:55
Ayukawayen: 當然以前可以自己先雙花掉啦,這手法好像也很常聽到。 11/21 20:57