Skip to content

Commit 0b86d41

Browse files
committed
Sandesh feedback chap2
- move definition of cyclic group up to group axioms - countless small things
1 parent 7a694b6 commit 0b86d41

File tree

1 file changed

+32
-26
lines changed

1 file changed

+32
-26
lines changed

thesis/chapters/02_background.tex

+32-26
Original file line numberDiff line numberDiff line change
@@ -116,11 +116,12 @@ \subsection{Access Structures}\label{sec:access-structures}
116116

117117
Let $U = \{A_1, \dots, A_n\}$ be the universe of attributes.
118118
A set $\mathcal{A} \subseteq 2^{U}$ is monotone if for all $B \in \mathcal{A}$ and $C \supseteq B$, $C \in \mathcal{A}$.
119-
An access structure $\mathcal{A}$ is a non-empty subset of $2^U$, i.e. $\mathcal{A} \in 2^U \backslash \{\emptyset\}$. A monotone access structure is an access structure that is monotone.
119+
An access structure $\mathcal{A}$ is a non-empty subset of $2^U$, i.e. $\mathcal{A} \in 2^U \backslash \{\emptyset\}$.
120+
A monotone access structure is an access structure that is monotone.
120121
The sets in $\mathcal{A}$ are called the \emph{authorized sets}, those not in $\mathcal{A}$ are called the \emph{unauthorized sets}.
121122
\end{definition}
122123

123-
Intuitively, the monotonicity of an access structure means that adding an attribute to an authorized set cannot result in an unauthorized set.
124+
Intuitively, if an access structure is monotone it means that adding an attribute to an authorized set cannot result in an unauthorized set.
124125

125126
\subsection{Access Trees}\label{sec:access-trees}
126127

@@ -309,39 +310,47 @@ \subsection{Secret Sharing in Attribute Based Encryption}\label{sec:lss-in-acces
309310
\section{Elliptic Curves}
310311
\label{sec:ec}
311312

312-
The mathematics of modern cryptosystems (including, but not limited to ABE) work any group that satisfies the axioms (see below), and \glspl{ec} are just one of them.
313-
Because \Glspl{ec} allow for shorter key lengths than, e.g. groups modulo a prime, they have become very popular for use in cryptography.
313+
The mathematics of modern cryptosystems (including, but not limited to ABE) work on any group that satisfies the axioms (see below), and \glspl{ec} are just one of them.
314+
Because \Glspl{ec} allow for shorter key lengths than, e.g. groups modulo a prime, they have become very popular in cryptography.
314315
Exact definitions and notations differ, these are taken from the textbook \emph{Introduction to Modern Cryptography} by Katz and Lindell~\cite{katz_introduction_2015}.
315316

316317
\subsection{Group Axioms}\label{sec:group}
317-
\begin{definition}~\cite{katz_introduction_2015}. A \emph{Group} $\langle \mathbb{G}, \circ, e \rangle$ consists of a set $\mathbb{G}$ together with a binary operation $\circ$ for which these four conditions hold:
318+
\begin{definition}~\cite{katz_introduction_2015}. A \emph{Group} $\langle \mathbb{G}, +, 0 \rangle$ consists of a set $\mathbb{G}$ together with a binary operation $+$ and an element $0 \in \mathbb{G}$ for which these four conditions hold:
318319
\begin{itemize}
319-
\item Closure: For all $g, h \in \mathbb{G}$, $g \circ h \in \mathbb{G}$.
320-
\item Existence of identity: There is an element $e \in \mathbb{G}$, called the \emph{identity}, such that for all $g \in \mathbb{G}$, $g \circ e = g = e \circ g$.
321-
\item Existence of inverse: For every $g \in \mathbb{G}$ there exists an \emph{inverse} element $h \in \mathbb{G}$ such that $g \circ h = e = h \circ g$.
322-
\item Associativity: For all $g_1, g_2, g_3 \in \mathbb{G}$, $(g_1 \circ g_2) \circ g_3 = g_1 (\circ g_2 \circ g_3)$.
320+
\item Closure: For all $g, h \in \mathbb{G}$, $g + h \in \mathbb{G}$.
321+
\item Existence of identity: There is an element $0 \in \mathbb{G}$, called the \emph{identity}, such that for all $g \in \mathbb{G}$, $g + 0 = g = 0 + g$.
322+
\item Existence of inverse: For every $g \in \mathbb{G}$ there exists an \emph{inverse} element $h \in \mathbb{G}$ such that $g + h = 0 = h + g$.
323+
\item Associativity: For all $g_1, g_2, g_3 \in \mathbb{G}$, $(g_1 + g_2) + g_3 = g_1 (+ g_2 + g_3)$.
323324
\end{itemize}
324325
If $\mathbb{G}$ has a finite number of elements, the group $\mathbb{G}$ is called finite and $|\mathbb{G}|$ denotes the order of the group.
325326

326-
A group $\mathbb{G}$ with operation $\circ$ is called \emph{abelian} or commutative if, in addition, the following holds:
327+
A group $\mathbb{G}$ with operation $+$ is called \emph{abelian} or commutative if, in addition, the following holds:
327328
\begin{itemize}
328-
\item Commutativity: For all $g, h \in \mathbb{G}, g \circ h = h \circ g$.
329+
\item Commutativity: For all $g, h \in \mathbb{G}, g + h = h + g$.
329330
\end{itemize}
330331

331332
When the binary operation is clear from context, we simply use $\mathbb{G}$ to denote the group.
332333

333-
We also define \emph{Group Exponentiation}: $g \in \mathbb{G}, m \in \mathbb{N}^+$, then $mg = \underbrace{g \circ \cdots \circ g}_{m \text{ times}}$.
334+
We also define \emph{Group Exponentiation}: $g \in \mathbb{G}, m \in \mathbb{N}^+$, then $mg = \underbrace{g + \cdots + g}_{m \text{ times}}$.
334335
\end{definition}
335336

336337

337-
Usually, the symbol used to denote the group operation is not the $\circ$ from above, but either $+$ or $\cdot$. These are called \emph{additive} and \emph{multiplicative} notation, respectively.
338-
It is important to remember, though, that the group operation might be defined completely differently!
338+
This notation (``$+$'' for the group operation and $0$ for neutral element) is called \emph{additive notation}.
339+
Sometimes, \emph{multiplicative notation} is used: The group operation is denoted by ``$\cdot''$ and the neutral element by ``$1$''.
340+
341+
It is important to remember that even though the symbols $+$ and $\cdot$ are used, they might be defined completely differently from regular addition and multiplication!
339342
340343
In multiplicative notation, the group exponentiation of $g \in \mathbb{G}$ with $m \in \mathbb{N}^+$ is written as $g^m$, in additive groups it is written as $m \cdot g$.
341344
345+
\begin{definition}
346+
An (additive) group $\mathbb{G}$ is cyclic if there is an element $g \in \mathbb{G}$ that generates $\mathbb{G}$, i.e. $\mathbb{G} = \langle g \rangle = \{k \cdot g | k \in \mathbb{Z}\}$.
347+
\end{definition}
348+
342349
An example for an additive group is $\langle \mathbb{Z}_N, +_N, 0 \rangle$ with $\mathbb{Z}_N = \{0, 1, \dots, N-1\}$ and $+_N$ the normal addition modulo $N$.
343350
This group is cyclic with generator $1$.
344-
If $p$ is prime, then $\langle \mathbb{Z}^*_p, \cdot_p, 1 \rangle$ is a group with $\mathbb{Z}^*_p = \{k \in \mathbb{Z}_p | \text{gcd}(k,p) = 1\}$ and $\cdot_p$ the normal multiplication modulo $p$.
351+
If $p$ is prime, then $\langle \mathbb{Z}^*_p, \cdot_p, 1 \rangle$ is a multiplicative group with $\mathbb{Z}^*_p = \{k \in \mathbb{Z}_p | \text{gcd}(k,p) = 1\}$ and $\cdot_p$ the normal multiplication modulo $p$.
352+
353+
345354
346355
\subsection{Elliptic Curves}
347356
@@ -380,7 +389,7 @@ \subsection{Point Addition}
380389
381390
\begin{figure}
382391
\includegraphics[width=\textwidth]{figures/ecc_point_addition.pdf}
383-
\caption[Elliptic curve point addition]{Elliptic curve point addition\\(Image by \href{https://commons.wikimedia.org/wiki/File:ECClines-2.svg}{SuperManu}, licensed under \href{https://creativecommons.org/licenses/by-sa/3.0/deed.en}{Creative Commons}.)}
392+
\caption[Elliptic curve point addition]{Elliptic curve point addition (note that here, $\mathcal{O}$ is denoted by $0$)\\(Image by \href{https://commons.wikimedia.org/wiki/File:ECClines-2.svg}{SuperManu}, licensed under \href{https://creativecommons.org/licenses/by-sa/3.0/deed.en}{Creative Commons}.)}
384393
\label{fig:ecc-point-addition}
385394
\end{figure}
386395
@@ -399,19 +408,17 @@ \subsection{Groups on Elliptic Curves}
399408
The points of an \gls{ec} $E(\mathbb{Z}_p)$ plus the addition law as stated in Definition~\ref{def:point-add} form an abelian (commutative) group~\cite{katz_introduction_2015, washington_elliptic_2008}:
400409
\end{theorem}
401410
\begin{proof}
402-
A formal proof is outside the scope of this thesis, but here's some informal reasoning about the group axioms:
411+
A formal proof is outside the scope of this thesis, but consider this informal reasoning about the group axioms:
403412
\begin{itemize}
404413
\item Existence of Identity: $P + \mathcal{O} = P$ (as per definition)
405-
\item Commutativity: For all $P_1, P_2 \in E(\mathbb{Z}_p)$, $P_1 + P_2 = P_2 + P_1$ (because the line through $P_1$ and $P_2$ will be the same)
406414
\item Unique inverse: For all $P = (x,y) \in E(\mathbb{Z}_p)$, the unique inverse is $-P = (x, -y)$ (because the line through $P$ and $-P$ will be vertical).
407415
\item Associativity: For all $P_1, P_2, P_3 \in E(\mathbb{Z}_p)$, $(P_1 + P_2) + P_3 = P_1 + (P_2 + P_3)$ (much less obvious, see e.g.~\cite[chapter 2.4]{washington_elliptic_2008} for a proof).
416+
\item Commutativity: For all $P_1, P_2 \in E(\mathbb{Z}_p)$, $P_1 + P_2 = P_2 + P_1$ (because the line through $P_1$ and $P_2$ will be the same)
408417
\end{itemize}
409418
\end{proof}
410419
411420
Of particular interest to cryptography are \emph{cyclic} groups on \glspl{ec}:
412-
\begin{definition}
413-
An (additive) group $\mathbb{G}$ is cyclic if there is an element $g \in \mathbb{G}$ that generates $\mathbb{G}$, i.e. $\mathbb{G} = \langle g \rangle = \{k \cdot g | k \in \mathbb{Z}\}$.
414-
\end{definition}
421+
415422
416423
Translated to our \glspl{ec}, this means that there is a generator point $P \in E(\mathbb{Z}_p)$, such that every point $Q \in E(\mathbb{Z}_p)$ can be obtained by repeatedly adding $P$ to itself using the point addition from Definition~\ref{def:point-add}.
417424
@@ -428,7 +435,7 @@ \subsection{Groups on Elliptic Curves}
428435
There is an important consequence to this fact: If a group has prime order, all points except the identity are generators.
429436
This stems from the fact that a prime number has exactly two divisors: One (the order of the identity) and itself (the order of all other points).
430437
431-
Again, translated to \glspl{ec} this means that if the number of points $\#E(\mathbb{Z}_p)$ on a curve is prime, all points except $\mathcal{O}$ are generators.
438+
Again, translated to \glspl{ec} this means that if the number of points $|E(\mathbb{Z}_p)|$ on a curve is prime, all points except $\mathcal{O}$ are generators.
432439
These cyclic \gls{ec} groups are exactly the groups we are interested in for doing actual cryptography.
433440
The ease of finding generators is one reason, but not the only one.
434441
For a detailed explanation, see \cite[p.~321]{katz_introduction_2015}.
@@ -458,8 +465,7 @@ \subsection{Groups on Elliptic Curves}
458465
\subsection{Bilinear Pairings}\label{sec:bilinear-pairings}
459466
460467
\begin{definition}Bilinear pairing~\cite{kiraz_still_2016}.\\
461-
Let $\mathbb{G}_1$ and $\mathbb{G}_2$ denote cyclic groups with prime order $n$.
462-
Let $\mathbb{G}_T$ be another cyclic group of the same order $n$.
468+
Let $\mathbb{G}_1$, $\mathbb{G}_2$ and $\mathbb{G}_T$ denote cyclic groups with prime order $n$.
463469
$\mathbb{G}_1$ and $\mathbb{G}_2$ are written additively, $\mathbb{G}_T$ is written using multiplicative notation.\\
464470
A \emph{bilinear pairing} then is a function $e: \mathbb{G}_1 \times \mathbb{G}_2 \rightarrow \mathbb{G}_T$ with the following properties:
465471
\begin{itemize}
@@ -483,10 +489,10 @@ \subsection{Bilinear Pairings}\label{sec:bilinear-pairings}
483489
484490
\subsection{Use of elliptic curves and pairings in ABE}
485491
Elliptic curves are already widely used in \glslink{pkes}{asymmetric cryptography}.
486-
Bilinear pairings, on the other hand, are relatively new and have given rise to a whole new class of cryptographic algorithms, the \emph{pairing-based cryptography}.
492+
Bilinear pairings, on the other hand, are relatively new and have given rise to a whole new class of cryptographic algorithms, the so-called \emph{pairing-based cryptography}.
487493
For example, pairings are used to construct \gls{ibe}, a three-party \gls{dh}~\cite{joux_one_2000} or short \glspl{dss}~\cite{boneh_short_2001}.
488494
489495
Most \acrshortpl{abes} make use of bilinear pairings, and even pairing-free schemes (see next section) need an implementation of the \gls{ec} operations.
490496
These operations are the building blocks of the \acrshortpl{abes} presented in chapter~\ref{chapter:constructions} and by far the most expensive operations performed by the schemes.
491497
Therefore, the performance of an \acrshort{abe} implementation greatly depends on the performance of the \gls{ec} and pairing implementation.
492-
For this reason, pairing implementations are considered in chapter~\ref{chap:related-work} and our own pairing implementation is evaluated separately in chapter~\ref{chap:evaluation}.
498+
For this reason, pairing implementations from literature are considered in chapter~\ref{chap:related-work} and our pairing library is evaluated separately in chapter~\ref{chap:evaluation}.

0 commit comments

Comments
 (0)