On Github obkson / CryptoArticle
(published in CT-RSA 2010)
Presented by: Olof Karlsson
Low footprint in hardware and software
i.e. small size & low cost
"PRESENT: An Ultra-Lightweight Block Cipher" (Bogdanov et al. 2007)
ISO/IEC standard since 2012
Block Cipher
31-round Substitution-Permutation Network (SPN)
64-bit block size
80-bit or 128-bit key
$$ \alpha \cdot P \oplus \beta \cdot C \oplus \gamma \cdot K = 0 $$
The best approximation: $\epsilon = 2^{-42}$
Rule of thumb: need $\frac{1}{\epsilon^2}$ plaintexts
=> $2^{84}$ plaintexts needed to have any chance of finding the right subkey faster than brute force
More than $2^{64}$ in plaintext space $\Rightarrow$ secure against linear cryptanalysis!
Use more than 1 linear approximation
M. Hermelin, K. Nyberg and J. Cho
Instead of a bias for your single approximation
"Capacity"
$$ C_p = \sum_i \frac{(p_i - u_i)^2}{u_i} $$
(Hermelin, M., Cho, J., Nyberg, K. 2009)
$$ N = \frac{\sqrt{4 M \alpha_{\chi^2}} + 4 \Phi^{-2}(2 P_s - 1)}{C_p} $$
or
$$ \alpha_{\chi^2} = \frac{(N C_p - 4\Phi^{-2}(2 P_s -1))^2}{4M} \approx 8 $$
Advantage $\alpha_{\chi^2} = \log_2(\frac{2^{32}}{2^0}) = 32$ bits
With prob $P_s = 0.95$
Have $M = 9 \cdot (2^8-1)$ linear approximations
With capacity $C_p^{[25-2]} = 2^{-55.38}$
$$ N = \frac{\sqrt{4 M \alpha_{\chi^2} \cdot} + 4 \Phi^2(2 P_s - 1)}{C_p} \approx 2^{64.98} $$
Use full plaintext space $N = 2^{64}$
Success prob $P_s = 0.95$
Have $M = 9 \cdot (2^8-1)$ linear approximations
With capacity $C_p^{[25-2]} = 2^{-55.38}$
$$ \alpha_{\chi^2} = \frac{(N C_p - 4\Phi^{-2}(2 P_s -1))^2}{4M} \approx 8 $$
$rank(K_r) \leq 2^{32-8} = 2^{24}$
Although still unrealistic, less than the predicted $2^{84}$
Consequences for security
Proven to be secure against linear and differential cryptoanalysis?