summaryrefslogtreecommitdiff
path: root/ma/safety_reset.tex
diff options
context:
space:
mode:
Diffstat (limited to 'ma/safety_reset.tex')
-rw-r--r--ma/safety_reset.tex40
1 files changed, 21 insertions, 19 deletions
diff --git a/ma/safety_reset.tex b/ma/safety_reset.tex
index bb0d46d..544d095 100644
--- a/ma/safety_reset.tex
+++ b/ma/safety_reset.tex
@@ -6,7 +6,7 @@
backend=biber,
style=numeric,
natbib=true,
-% url=true,
+ url=false,
doi=true,
eprint=false
]{biblatex}
@@ -163,6 +163,8 @@ performance under real-world conditions. Based on these simulations we implement
proposed safety reset controller as part of a realistic smart meter demonstrator. Finally we experimentally validate our
results and give an outline of further steps towards practical implementation.
+\chapter{Fundamentals}
+
\section{Structure and operation of the electrical grid}
Since this thesis is filed under \emph{computer science} we will provide a very brief overview of some basic aspects of
@@ -803,10 +805,10 @@ Since thorough formal verification of code is not yet within reach for either la
heavy in side-effects such as embedded firmware or industrial control software\cite{pariente01} the two most effective
measures for embedded security is reducing the amount of code on one hand, and labour-intensively checking and
double-checking this code on the other hand. A smart electricity manufacturer does not have a say in the former since it
-is bound by the official regulations it has to comply with, and will almost certainly not have sufficient
-resources for the latter. We are left with an impasse: Manufacturers in this field likely do not have the saftey
-resources to keep up with complex standards requirements. At the same time they have no option to reduce the scope of
-their implementation to alleviate the burden on firmware security.
+is bound by the official regulations it has to comply with, and will likely not have sufficient resources for the
+latter. We are left with an impasse: Manufacturers in this field likely do not have the saftey resources to keep up with
+complex standards requirements. At the same time they have no option to reduce the scope of their implementation to
+alleviate the burden on firmware security.
\subsection{Attack avenues in the smart grid}
@@ -1091,7 +1093,7 @@ simple to reduce attack surface there.
\subsection{Regulatory and economical constraints}
%FIXME
-\subsection{Safety vs. Security: Opting for restoration instead of prevention}
+\subsection{Safety vs. security: Opting for restoration instead of prevention}
By implementing our reset system as a physically separate microcontroller we sidestep most security issues around the
main application microcontroller. There are some simple measures that can be taken to harden this firmware.
@@ -1573,7 +1575,7 @@ corresponding key must not be re-used for other signatures. This is intutively c
part of the private key as the signature, and if we were to publish a signature for another message an attacker could
derive additional signatures by ``mixing'' the two published signatures.
-\subsubsection{Winternitz Signatures}
+\subsubsection{Winternitz signatures}
An improvement to basic Lamport signatures as described above are Winternitz signatures as detailed in
\textcite{merkle01} and \textcite{dods01}. Winternitz signatures reduce public key length as well as signature length
@@ -1640,7 +1642,7 @@ amplitude as well as parameters of our modulation scheme we need a frequency spe
(that is $\mathcal F\left(f(V(t))\right)$: Taking mains frequency $f(x)$ as a variable, the frequency spectrum of that
variable, as opposed to the frequency spectrum of mains voltage $V(t)$ itself).
-\subsection{Grid Frequency Estimation}
+\subsection{Grid frequency estimation}
\label{frequency_estimation}
In commercial power systems Phasor Measurement Units (PMUs) are used to precisely measure parameters of a mains voltage
@@ -2559,43 +2561,43 @@ correctly configure than it is to simply use separate hardware and secure the in
\includenotebook{Frequency sensor clock stability analysis}{gps_clock_jitter_analysis}
\includenotebook{DSSS modulation experiments}{dsss_experiments-ber}
-\chapter{Frequency Sensor Schematics}
-\fancyhead[C]{Frequency Sensor Schematics (1/3)}
+\chapter{Frequency sensor schematics}
+\fancyhead[C]{Frequency sensor schematics (1/3)}
\fancyfoot[C]{}
\fancyhead[R]{\thepage}
\includepdf[fitpaper,landscape,pagecommand={\thispagestyle{fancy}}]{resources/platform-export-pg1.pdf}
-\fancyhead[C]{Frequency Sensor Schematics (2/3)}
+\fancyhead[C]{Frequency sensor schematics (2/3)}
\includepdf[fitpaper,pagecommand={\thispagestyle{fancy}}]{resources/platform-export-pg2.pdf}
-\fancyhead[C]{Frequency Sensor Schematics (3/3)}
+\fancyhead[C]{Frequency sensor schematics (3/3)}
\includepdf[fitpaper,landscape,pagecommand={\thispagestyle{fancy}}]{resources/platform-export-pg3.pdf}
\fancyfoot[C]{\thepage}
-\chapter{Firmware Source Code Excerpts}
+\chapter{Firmware source code excerpts}
\section{DMA-backed ADC capture (adc.c)}
\inputminted[fontsize=\footnotesize,linenos,firstline=18,lastline=115,breaklines]{C}{../gm_platform/fw/adc.c}
-\section{Frequency Sensor Packetized Serial Interface}
+\section{Frequency sensor packetized serial interface}
\subsection{serial.c}
\inputminted[fontsize=\footnotesize,linenos,breaklines]{C}{../gm_platform/fw/serial.c}
\subsection{packet\_interface.c}
\inputminted[fontsize=\footnotesize,linenos,breaklines]{C}{../gm_platform/fw/packet_interface.c}
\subsection{cobs.c}
\inputminted[fontsize=\footnotesize,linenos,breaklines]{C}{../gm_platform/fw/cobs.c}
-\subsection{Client application (tw\_test.py)}
+\subsection{Host data logging utility (tw\_test.py)}
\inputminted[fontsize=\footnotesize,linenos,breaklines]{python}{../gm_platform/fw/tw_test.py}
-\section{Frequency Estimation (freq\_meas.c)}
+\section{Frequency estimation (freq\_meas.c)}
\inputminted[fontsize=\footnotesize,linenos,breaklines]{C}{../controller/fw/src/freq_meas.c}
-\section{DSSS Demodulation (dsss\_demod.c)}
+\section{DSSS demodulation (dsss\_demod.c)}
\inputminted[fontsize=\footnotesize,linenos,breaklines]{C}{../controller/fw/src/dsss_demod.c}
-\section{Cryptographic Protocol Handling}
+\section{Cryptographic protocol handling}
\subsection{protocol.c}
\inputminted[fontsize=\footnotesize,linenos,breaklines]{C}{../controller/fw/src/protocol.c}
\subsection{crypto.c}
\inputminted[fontsize=\footnotesize,linenos,breaklines]{C}{../controller/fw/src/crypto.c}
-\chapter{Demonstrator Firmware Symbol Size Map}
+\chapter{Demonstrator firmware symbol size map}
\label{symbol_size_chart}
\includepdf[fitpaper]{resources/safetyreset-symbol-sizes.pdf}