Skip to main content
Log in

Influence of addition modulo 2n on algebraic attacks

  • Published:
Cryptography and Communications Aims and scope Submit manuscript

Abstract

Many modern ciphers have a substitution-permutation (SP) network as a main component. This design is well researched in relation to Advanced Encryption Standard (AES). One of the ways to improve the security of cryptographic primitives is the use of additional nonlinear layers. However, this replacement may not have any effect against particular cryptanalytic attacks. In this paper we use algebraic attacks to analyze an SP network with addition modulo 2n as the key mixing layer. In particular, we show how to reduce the number of intermediate variables in round functions based on SP networks. We also apply the proposed method to the GOST 28147-89 block cipher that allows us to break reduced 8- and 14-round versions with complexity at most 2155 and 2215.4, respectively.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Similar content being viewed by others

References

  1. Dolmatov, V.: GOST 28147-89: encryption, decryption, and message authentication code (MAC) algorithms. RFC 5830 (Informational) (2010)

  2. FIPS PUB 197: Advanced Encryption Standard (AES), National Institute of Standards and Technology (2001)

  3. Knudsen, L. R., Robshaw M.: The block cipher companion, information security and cryptography. Springer, Berlin Heidelberg (2011)

    Book  MATH  Google Scholar 

  4. Kazymyrov, O., Kazymyrova, V.: Extended criterion for absence of fixed points. In: Pre-proceedings of 2nd workshop on current trends in cryptology (CTCrypt 2013), pp 177–191 (2013)

  5. Schilling, T., Raddum, H.: Solving compressed right hand side equation systems with linear absorption. In: Helleseth, T., Jedwab, J. (eds.) Sequences and their applications – SETA 2012, vol. 7280 of lecture notes in computer science, pp 291–302. Springer, Berlin Heidelberg (2012)

    Google Scholar 

  6. Rudell, R.: Dynamic variable ordering for ordered binary decision diagrams. Proceedings of the 1993 IEEE/ACM International Conference on Computer-Aided Design 12, 42–47 (1993)

    Google Scholar 

  7. Kazymyrov, O., Raddum, H.: Algebraic attacks using binary decision diagrams. In: Pre-proceedings of BalkanCryptSec 2014, pp 31–44 (2014)

  8. Knuth, D.E.: The art of computer programming, bitwise tricks & techniques, binary decision diagrams, vol. 4. Addison-Wesley (2009)

  9. Albrecht, M.: Algorithmic algebraic techniques and their application to block cipher cryptanalysis. Ph.D. thesis, Royal Holloway. University of London, the United Kingdom (2010)

    Google Scholar 

  10. Courtois, N., Pieprzyk, J.: Cryptanalysis of block ciphers with overdefined systems of equations. In: Zheng, Y. (ed.) Advances in cryptology — ASIACRYPT 2002, vol. 2501 of lecture notes in computer science, pp 267–287. Springer, Berlin Heidelberg (2002)

    Google Scholar 

  11. Kazymyrov, O., Oliynykov, R.: Choosing substitutions for symmetric cryptographic algorithms based on the analysis of their algebraic properties. In: Mathematical modeling, information technology, automated control systems, vol. 925, pp 79–86. V.N. Karazin Kharkov National University, Ukraine (In Russian) (2010)

    Google Scholar 

  12. Pieprzyk, J., Tombak, L.: Soviet encryption algorithm, electronic source (1994). URL https://www.thc.org/root/phun/stego-challenge/gost-spec.pdf

  13. GOST R __.__-20__ (draft): Information technology. Cryptographic data security. Block ciphers, Electronic source (2014). URL http://www.tc26.ru/standard/draft/GOSTR-bsh.pdf (In Russian)

  14. Popov, V., Kurepkin, I., Leontiev, S.: Additional cryptographic algorithms for use with GOST 28147-89, GOST R 34.10-94, GOST R 34.10-2001, and GOST R 34.11-94 algorithms. RFC 4357 (Informational) (2006)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Oleksandr Kazymyrov.

Appendix A: Propagation of carry bits in a modular adder

Appendix A: Propagation of carry bits in a modular adder

Theorem 1

Let Σ n be an n-bit length adder implementing addition in the group \(\mathbb {Z}_{2^{n}}\) . The first input to Σ n is a random uniformly chosen group element, and the second input is a group element with the bit representation I 0 =i n i n−1 …i s+b+1 00…0i b i b−1 …i 1 , where i j ∈ {0, 1}. Let S0 =C 0 ||E 0 ||V 0 ||B 0 be an output value of the adder with \(S_{0} \in \mathbb {Z}_{2^{n}}\) , \(C_{0} = r_{c}^{(C_{0})} r_{c-1}^{(C_{0})} {\ldots } r_{1}^{(C_{0})}\) , \(E_{0} = r_{e}^{(E_{0})} r_{e-1}^{(E_{0})} {\ldots } r_{1}^{(E_{0})}\) , \(V_{0} = r_{s}^{(V_{0})} r_{s-1}^{(V_{0})} {\ldots } r_{1}^{(V_{0})}\) and \(B_{0} = r_{b}^{(B_{0})}r_{b-1}^{(B_{0})} {\ldots } r_{1}^{(B_{0})}\) , where c>1, e>1,s>1,b>1, and c+e+s+b=n. If values I J =i n i n−1 …i s+b+1 j s j s−1 …j 1 i b i b−1 …i 1 with j s j s−1 …j 1 =J∈{1,…,2 s −1} are sequentially taken as the second adder input, then for the output values S J =C J ||E J ||V J ||B J , where B J =B 0 (i.e. constant), the probability of the event that C J =C 0 for all inputs I J (J∈{1,…,2 s −1}) is equal to \(1 - \frac {2^{s}-1}{2^{se}}\).

Proof

Assume that an output value of the adder Σ n is divided into the following 4 groups of bits

  • B is a constant number;

  • V is a variable part of the sum;

  • E is a very likely variable part of the sum because of carry bits generated by V when zero input bits are changed to ones;

  • C is an unlikely changed part of the sum, since carry bits generated by V is very likely to be stopped at E.

Thus, the output values definitely changes at block V and may affect higher blocks E and C through carry bits from V. It is necessary to estimate the probability of the event that there is no carry bit from V to E, or the propagation of the carry bits will not affect C via E, so C remains constant (C J = C 0).

From the theorem description follows that at least one different value C J C 0 for any J breaks the theorem conditions. It means that it is sufficient to take into consideration only the value J = 1 s 1 s−1…1211 as long as J (the block of the second input corresponding V) is taking all values from 0 s 0 s−1…0201 till 1 s 1 s−1…1211. If a carry bit appears for any other value of J, it definitely appears for J = 1 s 1 s−1…1211. The probability of the event that a given random block of s bit length with the second input 1 s 1 s−1…1211 of the adder Σ n will trigger E is equal to \(\frac {2^{s} - 1}{2^{s}}\).

Now it is necessary to estimate the probability of the event that for I 0 there is no carry bit from E to C, but it appears for I J I 0. For this case the corresponding bits of the first and the second input of the adder must form the output value 1 e 1 e−1…1211. The probability of this event is 2e (taking into account all pairs of input values given the necessary sum). Since the first argument of the adder is chosen randomly and independently, the propagation probability of carry bits from E to C with the second input I J , and with absence of carry bits for I 0, is calculated as the product \(2^{-e} \cdot \frac {2^{s} - 1}{2^{s}}\). Accordingly, the probability of the complement event, that is the block C remains constant, is \(1 - \frac {2^{s}-1}{2^{se}}\).

Finally, to obtain the situation when the block B has influence on the probability the following condition must be satisfied: the carry bits of V 0 and V J are different. The case when the carry bit is already presented for V 0 (due to the carry bit from B) leads to C J = C 0 (the carry bit is already presented and cannot change the higher bits). The number of variants when the input value results in the carry bit for C 0 is equal to number of variants when the carry bit appears only for C J . Thus, the carry bits from B have no influence on the probability of the event C J C 0.

Therefore, the probability of the event that for B J = B 0 the bits of C J and C 0 are the same for all I J equals \(1 - \frac {2^{s}-1}{2^{se}}\). □

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Kazymyrov, O., Oliynykov, R. & Raddum, H. Influence of addition modulo 2n on algebraic attacks. Cryptogr. Commun. 8, 277–289 (2016). https://doi.org/10.1007/s12095-015-0136-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12095-015-0136-7

Keywords

Mathematics Subject Classification

Navigation