Project:Sandbox

Rainbow chains is an improvement of Time-Memory Trade-Off proposed by Oechslin in 2013.

The problem with the Hellman's Time-Memory Trade-Off is the number of false alarm. When two sequences collide, they merge and cause false alarms. The idea of Oechslin is to create a lookup table where the sequences can collide without merging.

=Concept=

Rainbow chains
Instead of using a single reduction function $$R$$ for a lookup table, the idea is to use a different reduction function for each column of the table. In such a table, if two rows collide in two different columns, they don't merge as we use two different reduction functions for the following step. However, if two sequences collide in the same column, they still merge.

=Theoretical analysis= With rainbow chains, the probability of a merging after collision is $$1/t$$.

The probability of success for a $$m \times t$$ table is given by $$P(S)=1-\product\limits_{i=1}^t(1-\fra{m_i}{N})$$ where $$m_1=m$$ and $$m_{n+1}=N(1-e^{-\frac{m_n}{N}})$$.

It is interesting to note that the probability of success of $$t$$ $$m \times t$$ tables is approximately equal that the probability of success of a $$m \times t^2$$ rainbow table.

=Complexity=

=See also=
 * Algorithmic efficiency

=References=

=External links=
 * Philippe Oechslin: Making a Faster Cryptanalytic Time-Memory Trade-Off.
 * Once Upon a Time-Memory Tradeoff.