Ökningen av moderna blockkedjor har underlättat uppkomsten av smarta kontrakt: autonoma program som lever och kör på blockkedjan. Smarta kontrakt har sett en snabb stigning till framskjuten ställning, med tillämpningar som förutspås inom juridik, näringsliv, handel och styrning. Smarta kontrakt är vanligtvis skrivna på ett språk på hög nivå som Ethereum's Solidity, och översatt till kompakt låg nivå bytekod för distribution på blockkedjan. När bytekoden är utplacerad, körs den autonomt, vanligtvis av en virtuell maskin. Som med alla program, smarta kontrakt kan vara mycket sårbara för skadliga attacker på grund av bristfälliga programmeringsmetoder, språk och verktygskedjor, inklusive buggy kompilatorer. Samtidigt är smarta kontrakt också högvärdiga mål, ofta med stora mängder kryptovaluta. Därför behöver utvecklare och revisorer säkerhetsramar som kan analysera bytekod på låg nivå för att upptäcka potentiella säkerhetssårbarheter. I detta dokument presenterar vi Vandal: en ram för säkerhetsanalys av Ethereums smarta kontrakt. Vandal består av en analys pipeline som omvandlar låg nivå Ethereum Virtual Machine (EVM) bytecode till semantiska logiska relationer. Användarna av ramverket kan uttrycka säkerhetsanalyser på ett deklarativt sätt: en säkerhetsanalys uttrycks i en logisk specifikation skriven på Soufflé-språket. Vi genomför en storskalig empirisk studie för en uppsättning gemensamma smarta kontrakt säkerhetssårbarheter, och visar effektiviteten och effektiviteten i Vandal. Vandal är både snabb och robust och analyserar framgångsrikt över 95% av alla 141k unika kontrakt med en genomsnittlig körtid på 4,15 sekunder; överträffar den nuvarande state of the art tools-Oynte, EthIR, Mythril, och Rattle-under likvärdiga förhållanden. * Gemensamt första upphovsmannaskap.
Vandal Ref presenterar en ram för säkerhetsanalys för Ethereum smarta kontrakt.
Vandal: A Scalable Security Analysis Framework for Smart Contracts
{'venue': 'ArXiv', 'journal': 'ArXiv', 'mag_field_of_study': ['Computer Science']}