Attacks on Smart Contracts
Title: | Attacks on Smart Contracts |
Author(s): | Porkka, Otto |
Contributor: | University of Helsinki, Faculty of Science |
Degree program: | Master's Programme in Computer Science |
Specialisation: | Networks |
Language: | English |
Acceptance year: | 2022 |
Abstract: |
Lohkoketjuteknologiat ja kryptovaluutat ovat olleet murroksessa viime vuosina. Kryptovaluuttojen alkuperäinen ajatus pelkästään hajautetusta ja avoimesta virtuaalivaluutasta on laajentunut huomattavasti älysopimusten myötä, sillä älysopimukset sallivat valuuttasiirtojen lisäksi myös koodin tallentamisen ja ajamisen hajautetusti lohkoketjussa. Nykyään voidaankin puhua jo paremminkin teknologia-alustoista kuin vain kryptovaluutoista. Älysopimukset tuovat luonnollisesti mukanaan myös omat tietoturvaongelmansa.
Tässä tutkielmassa annamme ajantasaisen katsauksen tämänhetkisistä yleisimmistä älysopimusten tietoturvaongelmista. Lohkoketjuteknologiat ja älysopimukset esitellään ensin lyhyesti, jonka jälleen käydään läpi yleisimmät älysopimusten hyökkäystyypit ja niiden vastakeinoja. Sen jälkeen tehdyt havainnot ja löydökset analysoidaan ja käydään läpi.
Havainnoista selviää, että suurin osa esitellyistä hyökkäyksistä pystyttäisiin estämään tai ainakin osittain torjumaan olemalla huolellisempi älysopimuksia kehitettäessä. Hyvät kehityskäytänteet ja hyväksi todetut kehitysmallit auttavat tässä huomattavasti. Osa ongelmista pystyttäisiin välttämään myös tekemällä muutoksia itse lohkoketjuteknologiaan, mutta tämä on usein liian raskas ja työläs tapa torjua ongelmia joihin löytyy usein helpompiakin keinoja. Havainnoista selviää myös, että automaatiotyökaluja käytetään yhä enenevässä määrin torjumaan ja havaitsemaan älysopimusten tietoturva-aukkoja.
Blockchain technologies and cryptocurrencies have gained massive popularity in the past few years. Smart contracts extend the utility of these distributed ledgers to distributed state machines, where anyone can store and run code and then mutually agree on the next state. This opens up a whole new world of possibilities, but also many new security challenges.
In this thesis we give an up-to-date survey on smart contract security issues. First we give a brief introduction to blockchains and smart contracts and explain the most common attack types and some mitigations against them. Then we sum up and analyse our findings.
We find out that many of the attacks could be avoided or at least severely mitigated if the coders followed good coding practices and used design patterns that are proven to be good. Another finding is that changing the underlying blockchain technology to counter the issues is usually not the best way, as it is hard and troublesome to do and might restrict the usability of contracts too much. Lastly, we find out that many new automated tools for security are being developed and used, which indicates movement towards more conventional coding where automated tools like scanners and analysers are being used to cover a large set of security issues.
|
Keyword(s): | smart contracts blockchains cryptocurrencies |
Files in this item
Files | Size | Format | View |
---|---|---|---|
20220607_Porkka_Pro_Gradu_FINAL.pdf | 579.4Kb |
This item appears in the following Collection(s)
-
Faculty of Science [3911]