-
Notifications
You must be signed in to change notification settings - Fork 0
/
__latexindent_temp.tex
179 lines (141 loc) · 6.13 KB
/
__latexindent_temp.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
%
% This is a basic LaTeX Template
% for the Informatics Research Review
\documentclass[a4paper,11pt]{article}
% Add local fullpage and head macros
\usepackage{head,fullpage}
% Add graphicx package with pdf flag (must use pdflatex)
\usepackage[pdftex]{graphicx}
% Better support for URLs
\usepackage{url}
% Date formating
\usepackage{datetime}
\newdateformat{monthyeardate}{%
\monthname[\THEMONTH] \THEYEAR}
\parindent=0pt % Switch off indent of paragraphs
\parskip=5pt % Put 5pt between each paragraph
\Urlmuskip=0mu plus 1mu % Better line breaks for URLs
% This section generates a title page
% Edit only the following three lines
% providing your exam number,
% the general field of study you are considering
% for your review, and name of IRR tutor
\newcommand{\examnumber}{2187344}
\newcommand{\field}{Detecting Ethereum Smart Contract Security Loopholes}
\newcommand{\supervisor}{Lorenzo Martinico}
\begin{document}
\begin{minipage}[b]{110mm}
{\Huge\bf School of Informatics
\vspace*{17mm}}
\end{minipage}
\hfill
\begin{minipage}[t]{40mm}
\makebox[40mm]{
\includegraphics[width=40mm]{crest.png}}
\end{minipage}
\par\noindent
% Centre Title, and name
\vspace*{2cm}
\begin{center}
\Large\bf Research Methods In Security, Privacy, and Trust \\
\Large\bf \field
\end{center}
\vspace*{1.5cm}
\begin{center}
\bf \examnumber\\
\monthyeardate\today
\end{center}
\vspace*{5mm}
%
% Insert your abstract HERE
%
\begin{abstract}
\end{abstract}
\vspace*{1cm}
\vspace*{3cm}
Date: \today
\vfill
{\bf Supervisor:} \supervisor
\newpage
% Through page and setup
% fancy headings
\setcounter{page}{1} % Set page number to 1
\footruleheight{1pt}
\headruleheight{1pt}
\lfoot{\small School of Informatics}
\lhead{Informatics Research Review}
\rhead{- \thepage}
\cfoot{}
\rfoot{Date: \date{\today}}
%
\section{Introduction}
Ethereum is a general-purpose Blockchain, providing a platform to run
decentralized applications executing code called Smart Contracts. Smart Contracts
mainly manage valuable digital assets, and thus securing them is a top priority.
Yet, it is typical for any piece of code to have bugs. However, Smart Contract
bug fixes on the fly are not feasible since blockchain is an immutable
append-only data structure. Hence, detecting code bugs and vulnerabilities
before deploying Smart Contracts is vital.
In recent years there have been several attempts to create practical
vulnerability detection tools for Smart Contracts. This is a niche topic, and
there are several schools of thought when it comes to detecting security
loopholes. This literature review aims to probe associated studies, focusing on
different methods of detecting Smart Contract vulnerabilities, comparing
different approaches, and taxonomizing existing frameworks.
\section{Methodology}
In this literature review, we explore the most prominent research attempts
towards creating an effective vulnerability detection tool for Ethereum Smart
Contracts. The method used to filter relevant studies comprised both bottom-up
and top-down strategies. Their combination significantly accelerated identifying
adequate quality papers to include in this literature review.\\
During the bottom-up stage, we sought several papers related to frameworks that
identify Smart Contract vulnerabilities. To achieve that, we employed
trustworthy academic search engines such as \emph{Google Scholar} and \emph{IEEE
Explorer}. We noticed that most of the retrieved writings had a joint primary
related work, which guided us to discover this research topic's essence
paper\cite{luu2016making}. \\
Subsequently, we aimed to find any derivative studies related to the paper we
found in the previous phase. To do so, we used a graph representation
tool\cite{connectedpapers} that links relevant papers. This mechanism allowed us
to identify remarkable research articles rapidly. Afterward, we manually
inspected the search results and included the most reliable in our under
investigation list.\\
Namely, we collected forty-seven papers, but we only consider 20 of them in this
literature review. The selection criteria span the context of the studies and
their research contribution. We measure their contribution according to their
citations and release year. According to their publication year, studies are
assigned a weight ranging from 1 to 4. Papers in the span of 2016-2017,
2018, 2019, 2020 receive 1, 2, 4, 8 points, respectively, for each
citation they hold. Using this metric, we evaluate the studies shown in the
table ...\\
\begin{table}[htpb]
\begin{center}
\begin{tabular}{||l|c|c|c|c||}
\hline
Study & Year & Citations & Score & Reference \\
\hline
\hline
Making Smart Contracts Smarter & 2016 & 1445 & 1445 & \cite{luu2016making} \\
A Survey of Attacks on Ethereum Smart Contracts (SoK) & 2016 & 1445 & 1445 & \cite{luu2016making} \\
Making Smart Contracts Smarter & 2016 & 1445 & 1445 & \cite{luu2016making} \\
Making Smart Contracts Smarter & 2016 & 1445 & 1445 & \cite{luu2016making} \\
Making Smart Contracts Smarter & 2016 & 1445 & 1445 & \cite{luu2016making} \\
\end{tabular}
\end{center}
\end{table}
\section{Literature Review}
\subsection{Smart Contract Attack Surface}
\subsection{Static Analysis}
\subsection{Dynamic Analysis}
\subsection{Symbolic Execution}
\subsection{Fuzzing}
\subsection{The Machine Learning Approach}
\section{Summary \& Conclusion}
\nocite{*}
% Now build the reference list
\bibliographystyle{unsrt} % The reference style
% This is plain and unsorted, so in the order
% they appear in the document.
\small
\bibliography{main} % bib file(s).
\end{document}