Skip to main content

Featured Post

Ed Scheidts Mayan Symbols - Can we solve the puzzle?

In this post I want to talk about a thing from the Kryptos universe that are not directly related to the statue. But i think it may be an indirect hint to some Kryptos related methods. The Mayan Symbols in Ed Scheidts driveway I think everyone who knows Kryptos knows Ed Scheidt. The former Chairman of the Cryptographic Center at the CIA and founder of the cryptosystems used around the Kryptos statue. As already shown in Part 4 of my Kryptos series, in the driveway of Ed Scheidts house, there are two symbols: Figure 1 - Garage driveway of Ed Scheidt We denote the left symbol set with $S_1$ and the right one with $S_2$. It took me a while to find his house on Google Maps - Street View. To save you some time, here is the link with a view on the driveway. I you go back in time in Streetview, you can see that the symbols were already there in 2012. But it is impossible to say when they were built. $S_1$ is clearly visible from the street, $S_2$ is hidden in the view. But you can u...

[Paper Review] Non-uniform cracks in the concrete: the power of free precomputation

Again, another paper discussion. It is the paper from D.J. Bernstein and T. Lange that will be presented on the Asiacrypt this year. It is a very special paper with the titel "Non-uniform cracks in the concrete: the power of free precomputation". It subtle criticizes the way security proofs are made in the area of provable cryptography. They describe that the current proofs do not cover the free will of an attacker correctly. E.g., they argue, that the proofs do not consider the possibility of precomputation or the option for an attacker to trade success probability for an easier to find algorithm.

# Background #

Koeblitz and Menenzes did something similar before and they were criticized due to scratching at the base elements of provable cryptography. From my point of view, i can understand both sides and i don't like blaming the other side for having a different opinion.

All the achievements in provable cryptography gave us nice and beautiful tools to work with. These tools seem to work very well and having them in the toolbox are by far better than having nothing at hand. However, trying to enhance a current situation in order to give people even better tools at hand, can not be bad at all. And whenever there is an argument that could falsify some theorems systematically (not just because of bad / wrong proofs), one has to somehow incorporate those arguments. Are they correct, are they relevant? Could previous definitions slightly changed to cover those new arguments to increase the security strength to a higher level?

The attacks presented in the paper are not efficient enough to pose a security risk in practise, but show that the theoretical lower bounds from given standard assumptions/theorems can be beaten significantly.


# An example from the paper # 

Let me restate the first example from their paper. Since the paper is very long, you better read the rest for yourself.  

In their first attack, they show that the output blocks of $\mathsf{AES}$ (or any other block cipher) could be distinguished from a uniform distribution with a much higher probability than previously assumed. 
W.l.o.g. they chose $\mathsf{AES}$-128 bit. Normally one would expect, that for a given random plaintext block $b$ and uniformly distributed $128$-bit keys $\mathcal{k}$, the output blocks $c = \mathsf{AES}_\mathcal{k}(b)$ are also uniformly distributed in the $\{0,1\}^{128}$ cipher space. But that's not what Bernstein and Lange directly attacked. Instead they argued that the concatenation of $\mathsf{AES}_\mathcal{k}(b_i)|\mathsf{AES}_\mathcal{k}(b_{i+1})$ is far away from being uniformly distributed in the $\{0,1\}^{256}$ space. Surely, the concatenation $$ S_1 := \mathsf{AES}_\mathcal{k}(b_i)|\mathsf{AES}_\mathcal{k}(b_{i+1}) $$ is only capable to produce $2^{128}$ possible $256$-bit strings. The reason is, that even if the first part, $\mathsf{AES}_\mathcal{k}(b_i)$, is able to produce $2^{128}$ different string, the second part depends on the key of the first part and hence there is only one possible encryption for $\mathsf{AES}_\mathcal{k}(b_{i+1})$. They compare that string with the output of a function $P$ that executes a random permutation a given $128$-bit string. So the concatenation $$ S_2 := P(0)|P(1) $$
produces $2^{128}\cdot 2^{128} - 2^{128} $ $256$-bit strings. The subtraction term is due to the fact that $P(0)$ and $P(1)$ do execute never the same permutation. But, how to distinguish the distribution of the $S_1$ strings from the distribution of the $S_2$ strings?

What they did is: They pick the $\mathsf{MD5}$ hash function and feed it with the strings $S_1$ and $S_2$. Actually, they replaced the first bit of $\mathsf{MD5}$ with a uniform function from $\{0,1\}^{256} \rightarrow \{0,1\}$. Then they argue that, since $S_2$ is picked from the uniform distribution
  • The first bit of $\mathsf{MD5}(S_1|S_2)$ will be $0$ or $1$ with almost nearly $50\%$ probability.
  • The first bit of $\mathsf{AES}_\mathcal{k}(b_i)|\mathsf{AES}_\mathcal{k}(b_{i+1})$ may diverge from being $0$ or $1$ with $50\%$ probability, since the $\mathsf{AES}$ operation chooses a random subset of size $2^{128}$ from $2^{256}$ and that could result into a slightly predomination of $0$ or $1$, according to which subset was chosen.
Comment: I guess another way to show this, is to utilize the birthday-paradox. In the distribution of $S_1$ string you are likely more to see an element appear twice than in the distribution of $S_2$ string. After a certain amount of detected collisions, you can distinguish this two distributions probably with a much higher probability than $2^{-128}$.

Then they present method to increase the success probabilities of such attacks, e.g., by precomputing certain values. They show similar attacks also regarding the NIST P-256 elliptic curve, DSA-3072, RSA-3072.

# Rescue Strategy #

In the later part of the paper, they present ideas how to overcome the disadvantages of the previous definitions. They suggest to make the following changes:
  1. switching the defi nitions from the RAM metric used in [...] to the NAND metric, an "alternative" mentioned in [...]
  2. switching the de finitions to the AT metric, a standard hardware-design metric formally de fined by Brent and Kung in [..]
  3. adding constructivity to the de finitions, by a simple trick that we have not seen before (see Appendix B.4);
  4. adding uniformity to the de finitions.
I am curious to see, if this new suggestions are going to be used by the rest of the community in the future.

Comments

Popular posts from this blog

Kryptos - The Cipher (Part 4) - Correctly positioned decryption of the word BERLIN

EASTNORTHEAST - This is not exactly the hint Jim Sanborn (JS) gave for K4 on the 29th of January this year. He only gave NORTHEAST - which refers to the positions 26-34 of K4's plaintext.  Beside BERLIN and CLOCK it is the third revealed plaintext word of K4. However, also this hint does not seem to help much.  However, it just so happened, that a member in the yahoo kryptos group had a conversation with Jim Sanborn due to a submitted solution. Sandborn's answer to the question contained again the last clue which surprisingly was EASTNORTHEAST at position 22-34. Jim Sanborns compass rose at CIA There is disagreement if Jim revealed this on purpose or he did it accidentially, but the new extended clue seem to be serious and valid.Interestingly, EASTNORTHEAST is exactly the direction which is illustrated on the compass rose on one of the stones around kryptos, also created by Jim Sanborn. Actually, i dont really kn...

Kryptos - The Cipher (Part 1) - Introduction

Introduction. Since I think that KRYPTOS does not need any introduction, I will only give you a brief description of one of the most famous and only partially solved ciphers known today: KRYPTOS - Von Jim Sanborn - Jim Sanborn, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=8253447 KRYPTOS was constructed in Nov. 1990 on the ground of the CIA Headquarter in Langley, Virginia by Jim Sanborn It contains 4 ciphers (K1,K2,K3,K4) on its left side and some kind of Vigenère-Table on its right side K1, K2 and K3 were solved by James Gillogly in 1999. Afterwards, the CIA and later the NSA claimed that they had a solution to the first three ciphers at an earlier point in time Ed Scheidt, a cryptoanalyst and former director of the CIA, gave Sanborn the input of possible cryptographic techniques to use K1 is a variant of the Vigenère-Cipher (Quagmire 3) with the codewords KRYPTOS and PALIMPSES...

Kryptos - The Cipher (Part 3)

This post is about is more or less a collection of several approaches and facts that has been said as well as some speculations. B-ary integer representation According to [1] during a Question and Answer round, Jim Sanborn was asked again about the hint BERLIN. The question was if N decodes to B, Y decodes to E, etc, etc. and Jim confirmed it does. Emphatically . It is written, that Jim Sanborn rattled through the entire crib: \begin{align}   \texttt{N} &\stackrel{\text{decode}}{\rightarrow} \texttt{B} \\   \texttt{Y} &\stackrel{\text{decode}}{\rightarrow}  \texttt{E} \\   \texttt{P} &\stackrel{\text{decode}}{\rightarrow}  \texttt{R} \\   \texttt{V} &\stackrel{\text{decode}}{\rightarrow}  \texttt{L} \\   \texttt{T} &\stackrel{\text{decode}}{\rightarrow}  \texttt{I} \\   \texttt{T} &\stackrel{\text{decode}}{\rightarrow}  \texttt{N} \end{align} When the same q...