8
$\begingroup$

Just to help form this question, this is a Feistel network:-

Feistel network

To me this looks like:-

bread

Why does the generic architecture have to have two halves? We already have asymmetry in some variants. As I understand it, the principal security comes from a secure permutation within the round function. All that happens outside of the round function is simple xor and swapping halves.

Could it have more than two halves then? Say five like the bread? Or perhaps it has to be an even number of plaits /halves, so say four? Or ten? Yes it would mean more rounds to ensure good mixing of halves and be secure, but that's doable. So for example, with six halves of 64 bits each, would you have a 384 bit cipher? Is there some intrinsic reason why this wouldn't work?

$\endgroup$
  • 1
    $\begingroup$ Clefia block cipher for example $\endgroup$ – Richie Frame Mar 4 '18 at 9:34
  • $\begingroup$ This guy has 3 thirds in the braid shape, i think two were sufficient for Mr Feistel, and anything more than 2 is a generalized Feistel network semanticscholar.org/paper/… $\endgroup$ – daniel Mar 5 '18 at 12:48
  • $\begingroup$ @daniel So you believe that it doesn't matter if the number of plaits is odd or even? $\endgroup$ – Paul Uszak Mar 5 '18 at 14:07
  • $\begingroup$ @PaulUszak I think it's like the number of wings on a plane, you can have 3, or 4, and it will still work, but 2 is the normal amount. Actually this analogy is bad, 2s the number that was picked and studied the most, other numbers might not be a good trade off for some reason I can't think of. $\endgroup$ – daniel Mar 5 '18 at 19:20
13
$\begingroup$

There are designs called generalised unbalanced feistel networks which do exactly this.

See the paper by Schneier and Kelsey here. The CAST cipher, an AES competition entry was an early example.

The article on cryptowiki gives a brief summary here

Here is an example:

enter image description here

$\endgroup$
  • $\begingroup$ I always thought that unbalanced only meant the split between one half and the other in terms of bit width. Thank you. $\endgroup$ – Paul Uszak Mar 4 '18 at 12:27
  • $\begingroup$ Not read your paper yet, but two things strike me. 1) Why two different round functions? 2) What's WK? $\endgroup$ – Paul Uszak Mar 4 '18 at 16:00
  • 1
    $\begingroup$ It is a whitening key, like in Rijndael. See crypto.stackexchange.com/questions/42632/… for more $\endgroup$ – kodlu Mar 4 '18 at 21:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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