gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-anastasis] 02/03: worked on related work - thesis


From: gnunet
Subject: [taler-anastasis] 02/03: worked on related work - thesis
Date: Sun, 31 May 2020 16:10:17 +0200

This is an automated email from the git hooks/post-receive script.

dennis-neufeld pushed a commit to branch master
in repository anastasis.

commit 0ea337bbda9ccd28cdef10d2f25dd992db6928c5
Author: Dennis Neufeld <dennis.neufeld@students.bfh.ch>
AuthorDate: Sat May 30 13:44:29 2020 +0000

    worked on related work - thesis
---
 doc/thesis/bibliothek.bib   | 25 +++++++++++++++++++++++++
 doc/thesis/related_work.tex | 10 +++++++++-
 2 files changed, 34 insertions(+), 1 deletion(-)

diff --git a/doc/thesis/bibliothek.bib b/doc/thesis/bibliothek.bib
index d3da8b0..8fe49d2 100644
--- a/doc/thesis/bibliothek.bib
+++ b/doc/thesis/bibliothek.bib
@@ -154,4 +154,29 @@
   year=2012,
   publisher={International Journal of Computer Science Issues (IJCSI)}
 }
+@article{BCK1996,
+  title={Message authentication using hash functions: The HMAC construction},
+  author={Bellare, Mihir and Canetti, Ran and Krawczyk, Hugo},
+  journal={RSA Laboratories’ CryptoBytes},
+  volume={2},
+  number={1},
+  pages={12--15},
+  year=1996
+}
+@inproceedings{krawczyk2010,
+  title={Cryptographic extraction and key derivation: The HKDF scheme},
+  author={Krawczyk, Hugo},
+  booktitle={Annual Cryptology Conference},
+  pages={631--648},
+  year={2010},
+  organization={Springer}
+}
+@inproceedings{BDK2016,
+  title={Argon2: new generation of memory-hard functions for password hashing 
and other applications},
+  author={Biryukov, Alex and Dinu, Daniel and Khovratovich, Dmitry},
+  booktitle={2016 IEEE European Symposium on Security and Privacy (EuroS\&P)},
+  pages={292--302},
+  year={2016},
+  organization={IEEE}
+}
 
diff --git a/doc/thesis/related_work.tex b/doc/thesis/related_work.tex
index 5c6a186..71b5aae 100644
--- a/doc/thesis/related_work.tex
+++ b/doc/thesis/related_work.tex
@@ -3,7 +3,7 @@
 This chapter explains some important cryptographic functions and why they are 
useful for Anastasis.
 
 \subsubsection{Hash function}
-Hash functions "compress a string of arbitrary length to a string of fixed 
length [...]" \cite{Preneel1999}. The output of a hash function often is called 
a "hash". Cryptographic hash functions need to fulfil additional security 
requirements which are called:
+Hash functions "compress a string of arbitrary length to a string of fixed 
length [...]" \cite{Preneel1999}. The output of a hash function often is called 
a "hash".  Hash functions in general should be very fast to compute. 
Cryptographic hash functions need to fulfil additional security requirements 
which are called:
 \begin{itemize}
        \item pre-image resistance
        \item second pre-image resistance
@@ -15,10 +15,18 @@ The definition of collision resistance slightly differs 
from the second pre-imag
 
 There are several applications for cryptographic hash functions. For example 
you can store the hash value of a pass-phrase instead of the pass-phrase itself 
in a computer to protect the pass-phrase. Another important application is 
verification of message integrity: Before and after transmission of a message 
you can calculate the hash values of it and compare them to determine if the 
message changed during transmission.
 
+In Anastasis we use SHA-512 for hashing data.
+
 \subsubsection{HMAC}
+When it comes to integrity of messages during communication of two parties 
over an insecure channel Keyed-Hash Message Authentication Codes (HMAC) are 
used as check values. An HMAC function is based on a hash function and takes 
two arguments, a key K and a message M:
+HMAC\textsubscript{K}(M) = H(K $\oplus$ opad,H(K $\oplus$ ipad, M)) with 
"ipad" and "opad" being constants which fill up the key K to the blocksize of 
the hash function \cite{BCK1996}. The blocksize of a modern hash function like 
SHA-512 is 64 Byte.
 
 \subsubsection{HKDF}
+While HMAC functions are at least not used directly in Anastasis, we use 
so-called HKDFs. A HKDF is a key derivation function (KDF) based on a HMAC. A 
KDF "is a basic and essential component of crypto-
+graphic systems: Its goal is to take a source of initial keying material, 
usually containing some good amount of randomness, but not distributed 
uniformly or for which an attacker has some partial knowledge, and derive from 
it one or more cryptographically strong secret keys" \cite{krawczyk2010}.
+
 \subsubsection{Argon2}
+Hash functions like SHA-512 are very fast to compute. Therefor passwords 
stored in a hashed form are vulnerable to dictionary attacks with new hardware 
architectures like FPGAs and dedicated ASIC modules. But those architectures 
"experience difficulties when operating on large amount of memory" 
\cite{BDK2016}.
 
 \subsection{Secret sharing}
 Secret splitting, also known as secret sharing, is a technique for 
distributing a secret amongst multiple recipients. This is achieved by 
assigning a share of the secret to each recipient. By combining a sufficient 
number of those shares, it is possible to reconstruct the secret.

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]