Re: MC2




Miroslav Stampar wrote:
> Well, then I wouldn't have anything against if you help me make F
> function better. I know that some new ciphers shortcircuit this problem
> with bad boxes by taking them from Rijndael (AES), but I am not that
> kind of guy.

AES wasn't the first cipher to use inversion [also known as
"exponential" sboxes]. See MISTY1, Square, SHARK and a few others I
think.

Inversion sboxes [exponential ... x^3 in odd sized fields is also
another, infact x^3 has the best DC and LC profiles of all possible
functions. It also is weak against algebraic attacks which gets you
the catch-22].

Basic properties of an sbox you want

Security [implementation agnostic]
1. Low [but not minimal] DC and LC profiles
2. High algebraic degree [e.g. you want each output bit to be a
function of highest degree of all input bits, and you want them to be
linearly independent]
3. Usually avoiding points of involution and fixed points is ideal
4. Usually bijections are more ideal

Security [implementation specific]
1. You want a sbox with a good hardware footprint, e.g. efficiently
computable in the smallest area with an eye to DPA
2. You want a sbox with a good software implementation, e.g. small,
computable in fixed time over the entire domain.

Generally from a practical standpoint a random sbox is better than an
exponential. Conventional wisdom used to be you want the LC and DC
profiles as low as possible [hence Misty1, SQUARE, SHARK and AES] but
more and more they're become troublesome. The problem is that they're
highly subject to algebraic modelling in their respective fields
[usually GF(2)[x]] . Introducing things line non-linear addition or
multiplication [e.g. in Z or Z/pZ] influence the LC and DC profile and
make the design harder to analyze.

So in generally in practice you're better off with a scheme where sbox
counting is easy [e.g. wide-trail] with a random [but well scrutinized]
sbox.

[plug] My CS^2 cipher shows how to use small 4x4s to make an 8x8 and
then use that in a 16-point FPHT. The cipher achieves perfect
diffusion [resists integration attacks], has a branch of 12 [resists LC
and DC] and is ideally high on the algebraic order [e.g. more difficult
to get a MVQ condition]. I use the round function as the key schedule
which makes a pipeline with high key agility a possibility [it also
makes the key schedule resistant to related key attacks]. In software
the design sucks. It was designed solely for hardware.

Then you have people like DJB with Salsa20 where they use a series of
rotations plus "non isomorphic" operations to achieve a good deal of
non-linearity. The design in practice is secure but it's hard to
analyze. He did this for a high level of timing security on 32-bit
processors at an expense of simplicty. Similarly with Phelix...

A good tradeoff is the Noekeon design which is almost wide-trail [I
disproved that a while ago] but achieves good branch with the specific
sbox and it's entirely timing invariant. It isn't as fast as Salsa20
or Phelix but it's easier to analyze [it's like Serpent and THREEWAY in
that respect].

.....

Too much info ... 12:31am ...

Tom

.



Relevant Pages

  • Re: Key-schedules as separate entities from encryption algorithms
    ... > design a strong round function and then to graft a strong key schedule ... The differences between Twofish and Rijndael are more than just looks. ... seperate from the cipher design. ...
    (sci.crypt)
  • Re: AES: basic question on SBoxes
    ... > If I was to change the contents of the SBox and fill it up with 256 ... > the cipher? ... You can find about the design of AES in the ...
    (sci.crypt)
  • Re: Schneiers "Helix" cipher is remarkably similar to the "generic feistel cipher&qu
    ... >> So what exactly is so original in your design that Helix copied? ... SHA-1 is in fact a cipher at it's core. ... > (key schedule in Davies-Meyer parlance) with a hash ... You want to hash the key before the hash? ...
    (sci.crypt)
  • Re: SHA1 broken
    ... consider the simple 64-bit cipher ... XOR round key ... Apply 8x8 sbox in parallel on all 8 bytes ... I did the above design off the top of my head but look at Khazad. ...
    (sci.crypt)
  • Re: A revised "FFT" hash function.
    ... I use a different mixing network for the sbox. ... The NLO is now 7 not 5. ... I've also lowered the round count to 10 because I strongly disbelieve that a ... Mads has expressed interest in "papering" up the design [I wrote it for him ...
    (sci.crypt)