I read that the S-boxes introduce the much needed nonlinear behavior to DES. Can someone give me a lay mans explanation of why the effect of the S-boxes is said to be non-linear?

  • $\begingroup$ because you can't achieve the same transformatios solely using XOR on bits and changing their position. $\endgroup$
    – SEJPM
    Commented Dec 19, 2015 at 19:58

1 Answer 1


If you take an Sbox and two different inputs $x_1,x_2$ (binary vectors of length 6) the exclusive or ("sum") of the two inputs is does not propagate to the output. So $$S(x_1)\oplus S(x_2) \neq S(x_1\oplus x_2)$$ in general. This means that there is no shortcut allowing one to predict outputs "bit by bit" and build efficient search tables, by just considering the list of outputs


and obtaining

$$S(a_1~a_2~a_3~a_4~a_5~a_6)=a_1 S(100000)+a_2 S(010000)+\cdots+a_6 S(000001).$$

by linearity. This would lead to very efficient attacks when applied to all 8 Sboxes.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.