Skip to content

Commit 4b0ccee

Browse files
committed
Added 6.033 design project proposal.
1 parent 3a7802a commit 4b0ccee

5 files changed

+51
-1
lines changed
355 KB
Binary file not shown.

6.033/dp1_proposal_diagram.png

14.3 KB
Loading

6.033/dp1_proposal_diagram.xcf

56.4 KB
Binary file not shown.
290 KB
Loading

6.857/lecture4.tex

+51-1
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,56 @@ \subsection{Random Oracle Model (ROM)}
8181

8282
Oracle's Process: Receives $x$. If $x$ is in the book, look up $h(x)$ and return it. Otherwise, flip a coin $d$ times and call that $h(x)$. Write this $h(x)$ in the book and return it.
8383

84-
This is both consistent and random (the ideal of a cryptographic hash function).
84+
This is both consistent and random (the ideal of a cryptographic hash function). In the random oracle model, if $x \neq y$:
85+
\begin{eqnarray}
86+
P[h(x) = h(y)] = \frac{1}{2^d}
87+
\end{eqnarray}
88+
89+
\subsection{Properties}
90+
91+
\begin{itemize}
92+
\item One-wayness (OW) - preimage resistance. If $h(x) = y$ then $x$ is the preimage of $y$ and $y$ is the image of $x$. It should be hard to go from $y$ back to $x$.
93+
94+
Infeasible for anyone given $y \in_{r} \{0, 1\}^d$ (where $\in_r$ denotes randomly chosen) to find any $x$ such that $h(x) = y$. Infeasible means that work is proportional to $2^d$, which is just brute forcing every possible $x$ and checking if it matches a $y$. Maybe take $d \geq 90$ to make this hard.
95+
96+
\item Collision resistance (strong collision resistance).
97+
98+
Infeasible for anyone to find $x$ and $x'$ such that $x \neq x'$ and $h(x) = h(x')$.
99+
100+
In Random Orcale Model, difficulty is $\theta(2^{d/2})$ for finding any collision. The work should eceed $2^90$ if $d > 180$. You lose a factor of 2 because of the birthday paradox.
101+
\begin{eqnarray}
102+
x_1 &\to& y_1 \\
103+
x_2 &\to& y_2 \\
104+
&\vdots& \\
105+
x_n &\to& y_n
106+
\end{eqnarray}
107+
108+
\begin{eqnarray}
109+
E[\textrm{collisions}] &=& \sum_{i \neq j} Pr[h(x_i) = h(x_j)] \\
110+
&=& \sum_{i \neq j} \frac{1}{2^d} \\
111+
&=& { {n \choose 2 } } 2^{-d} \\
112+
&=& \frac{n (n-1)}{2} \frac{1}{2^{d}}
113+
\end{eqnarray}
114+
115+
This is roughly $n^2 2^{-d}$, which means that if $n > 2^{-d/2}$, the expected number of collisions is greater than 1.
116+
117+
\item Weak collision resistance (target collision resistance) (WCR).
118+
119+
Infeasible given $x \in_r \{0, 1\}^*$ to find $x' \neq x$ such that $h(x) = h(x')$. Like pairwise resistance, work is $\theta(2^d)$ in ROM.
120+
121+
\item Pseudorandomness. Indistinguishable from a random oracle. Hard to define well.
122+
123+
\item Non-malleability.
124+
125+
Infeasible given $h(x)$ to produce $h(x')$ where $x$ and $x'$ are related.
126+
\end{itemize}
127+
128+
\subsection{Applications}
129+
130+
\begin{itemize}
131+
\item Password storage: store $h(p)$ instead of string $p$. System compares $h(p)$ to $h(t)$ where $t$ is the typed in password attempt. For a given user, this depends on the one-wayness property.
132+
\item
133+
134+
\end{itemize}
85135

86136
\end{document}

0 commit comments

Comments
 (0)