Abstrakt. Antagandet av blockkedjebaserade distribuerade beräkningsplattformar växer snabbt. Vissa av dessa plattformar, t.ex. Ethereum, ger stöd för genomförandet av smarta kontrakt, som är tänkta att ha nya tillämpningar inom ett brett spektrum av områden, inklusive finansiering och Internet- of-Things. Ett betydande antal smarta kontrakt som används i praktiken lider dock av säkerhetsbrister, vilket gör det möjligt för skadliga användare att stjäla tillgångar från ett kontrakt eller orsaka skada. Sårbarheter utgör en allvarlig fråga eftersom kontrakt kan hantera finansiella tillgångar av betydande värde och kontraktsbuggar inte kan fastställas genom konstruktion. För att hjälpa utvecklare att skapa säkrare smarta kontrakt introducerar vi FSolidM, ett ramverk som bygger på strikt semantik för att designa kontrakt som Finite State Machines (FSM). Vi presenterar ett verktyg för att skapa FSM på ett lättanvänd grafiskt gränssnitt och för att automatiskt generera Ethereum-kontrakt. Vidare introducerar vi en uppsättning designmönster, som vi implementerar som plugins som utvecklare enkelt kan lägga till sina kontrakt för att förbättra säkerhet och funktionalitet.
Mavridou och Laszka REF införde FSolidM 12, ett ramverk som bygger på strikt semantik för att utforma smarta kontrakt som Finite State Machines (FSM).
Designing Secure Ethereum Smart Contracts: A Finite State Machine Based Approach
{'venue': 'ArXiv', 'journal': 'ArXiv', 'mag_field_of_study': ['Computer Science']}