DEATHStr è partito in modo caotico. Purtroppo ho perso la corsa iniziale, ma ho trovato un problema che era stato trascurato, che ho comunicato al team ed è ora stato risolto. DEATHStr è progettato per acquistare NFT e metterli in vendita a un prezzo inferiore del 20%, con l'intento di far crollare i floor degli NFT a beneficio di DEATHStr stesso (i proventi vengono utilizzati per acquistare e bruciare il token). Tuttavia, non c'è alcun ritardo o altro meccanismo per prevenire un arbitraggio puro - chiunque possieda un Moonbird potrebbe effettivamente raccogliere il 20% delle commissioni del contratto in qualsiasi momento. La funzione sopra è sufficiente per qualsiasi possessore di Moonbird per prendere in modo atomico e senza rischi il 20% delle commissioni disponibili di DEATHSTR. In ordine, essa: - Determina le commissioni disponibili - genera un'inserzione Seaport per quell'importo - dice a DEATHSTR di acquistare quell'inserzione - Legge il prezzo a cui DEATHSTR ha messo in vendita l'NFT (dovrebbe essere uno sconto del 20%) - Riacquista l'NFT L'utente finisce con lo stesso NFT con cui è partito, + un po' di ETH fresco. Questo potrebbe essere eseguito finché `currentFees() * 0.2` risulta maggiore del gas necessario per l'esecuzione. Correzione suggerita: implementare un ritardo di un blocco prima che un NFT possa essere riacquistato da DEATHSTR. Questo rimuove l'atomicità e fa sì che qualsiasi NFT venduto al protocollo abbia una possibilità equa di essere acquistato da chiunque nel mondo, quindi vendere a un prezzo inferiore al floor diventa improvvisamente un rischio, e probabilmente una perdita garantita per l'utente. Per ora, il team ha semplicemente aggiunto un controllo degli accessi a buyTargetNFT, quindi solo gli indirizzi approvati possono attivare gli acquisti. Questo va bene a breve termine, ma mi piacerebbe vedere una soluzione più aperta a lungo termine.
Considererei questo più un problema narrativo che meccanico. DEATHSTR continua a essere acquistato e bruciato allo stesso modo, tuttavia non c'è più alcun aspetto che possa essere considerato un "attacco" ai piani degli nft. In effetti, lo disconnette completamente dalla collezione che sta mirando, a parte il fatto che l'arbitragista deve possedere un nft della collezione target per poter raccogliere le commissioni.
29