update
This commit is contained in:
38
crypto.tex
38
crypto.tex
@@ -32,12 +32,12 @@
|
||||
\maketitle
|
||||
\section{Introduction}
|
||||
Cryptography is ubiquitous in our modern world.
|
||||
While the origins of cryptography date back thousands of years, evidence of its use in ancient is sparse.
|
||||
While the origins of cryptography date back thousands of years, evidence of its use in ancient times is sparse.
|
||||
\cite{luenberger}
|
||||
Most of its use seemed to be reserved for political and military leaders, e.g. notably Mary Queen of Scots,
|
||||
Historically, most of its use seemed to be reserved for political and military leaders, e.g. notably Mary Queen of Scots,
|
||||
who while in prison, plotted to kill Queen Elizabeth using encrypted letters \cite{enwiki:maryofscots}.
|
||||
With the widespread adoption of the internet, the need for several cryptographical functions arose.
|
||||
Due to its intended original use as a trusted research network (ARPANET),
|
||||
Much later, with the widespread adoption of the internet, the need for several cryptographical functions arose.
|
||||
Due to its intended use as a trusted research network (ARPANET),
|
||||
almost none of the original protocols were 'secure' in any sense of the word.
|
||||
|
||||
Most notably still today is SMTP, the \textit{Simple Mail Transfer Protocol}, used to send email to servers.
|
||||
@@ -72,6 +72,7 @@ It is closely related to Shannon's maxim, stating that
|
||||
This is opposed to \textit{security through obscurity}, which doesnt allow for verification of the cryptographic
|
||||
algorithm through a scientific process in the public domain.
|
||||
|
||||
|
||||
\subsection{Hash Functions}
|
||||
A general hash function $h(m)$ is a function that takes a message $m$ of arbitrary and produces an output $h$ called \textit{hash}
|
||||
of fixed length. However, not every mathematical function can be considered a hash function.
|
||||
@@ -96,7 +97,6 @@ They are also often used in combination with public key cryptography, allowing t
|
||||
to prove not only integrity but authenticity.
|
||||
|
||||
|
||||
|
||||
\subsection{Encryption}
|
||||
Even though the properties of hash functions are similar to encryption, the fact that the input message is reduced to a fixed size hash
|
||||
also means that inevitably information is lost by every hash function.
|
||||
@@ -114,31 +114,47 @@ In the process of encoding, A is therefore replaced (substituted) with D, B with
|
||||
Upon reception of the message, the same process is done in reverse, i.e. shifted by $-3$.
|
||||
|
||||
\begin{table}[h]
|
||||
\resizebox{\textwidth}{!}{%
|
||||
\resizebox{\textwidth}{!}{
|
||||
\begin{tabular}{c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c|c}
|
||||
A&B&C&D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X&Y&Z \\
|
||||
\hline
|
||||
D&E&F&G&H&I&J&K&L&M&N&O&P&Q&R&S&T&U&V&W&X&Y&Z&A&B&C
|
||||
|
||||
\end{tabular}%
|
||||
\end{tabular}
|
||||
}
|
||||
\caption{A simple substitution cipher demonstrated by a 3-letter shift.}
|
||||
\label{tab:caesar}
|
||||
\end{table}
|
||||
|
||||
This simple encryption is easy to break however for several reasons.
|
||||
Caesar ciphers in general only offer 26 different keys as further shifts only wrap around to $29 \mod 26 = 3$, with a shift of 26
|
||||
Caesar ciphers in general only offer 26 different keys as further shifts only wrap around to e.g. $29 \mod 26 = 3$, with a shift of 26
|
||||
being equal to the cleartext. \newline
|
||||
Furter, by shifting every letter by the same amount,
|
||||
the properties of the source language such as word spacing and letter frequencies are retained in the ciphertext,
|
||||
leaving it vulnerable to simple attacks.
|
||||
properties of the source language such as word spacing and letter frequencies are retained in the ciphertext,
|
||||
leaving it vulnerable to simple statistical attacks.
|
||||
|
||||
|
||||
\paragraph{Transposition} is the process of reordering the plaintext to obtain a ciphertext.
|
||||
Here, the key can be understood as instructions on how to re-order the ciphertext to obtain the original message.
|
||||
The \textit{scytale} is one of the earliest implementations of a transposition cipher.
|
||||
The implementation involves a rope or band of text as well as a stick of known circumference as the key.
|
||||
The band is wrapped in a spiral around the stick and the message written across the spiral.
|
||||
When the stick is removed and the band unwrapped, the letters on the band appear scrambled by a fixed offset determined
|
||||
by the stick's circumference.
|
||||
|
||||
\paragraph{Confusion and Diffusion} \cite{enwiki:confusion-diffusion}
|
||||
\paragraph{Diffusion} is one of two properties of a secure cipher introduced by Shannon in 1945.
|
||||
It is closely related to the \textit{collision resistance} of hash functions
|
||||
and means that for a 1-bit change of the plaintext, about half the bits of the ciphertext should change.
|
||||
The purpose of diffusion is to hide the statistical statistical relationship between plaintext and ciphertext
|
||||
exhibited by simple encryption methods.
|
||||
% Block ciphers achieve this by "diffusing" the information about the plaintext's structure across the rows and columns of the cipher.
|
||||
|
||||
\paragraph{Confusion} similarly aims to obscure the connection of ciphertext and key,
|
||||
requiring each bit of the ciphertext to depend on multiple parts of the key.
|
||||
Confusion and diffusion are often mistaken for substitution and transposition, as block ciphers achieve
|
||||
confusion through substitution boxes (S-box) and
|
||||
diffusion through permutation boxes (P-box).
|
||||
\cite{enwiki:confusion-diffusion}
|
||||
|
||||
\section{DES}\label{sec:des}
|
||||
The \acrfull{DES} is a symmetric (or private-key) cipher developed in the 1970s at IBM as an archetypal block cipher.
|
||||
|
||||
Reference in New Issue
Block a user