Dr. Svetla Petkova-Nikova


Home Research Publications Projects Teaching Other Activities

TI Tools for the 3x3 and 4x4 S-boxes

The tool consists of four programs - 2 for Windows and 2 for Linux.

Windows: For the case n=3 and for n=4.

Linux: For the case n=3 and for n=4.

The menus (also given below) are hopefully self-explanatory:


The Threshold Implementation Helper for 4x4 S-boxes Offers:


1. Returns for a given S-box from the Alternating group its decompositions.
2. Returns the decompositions of all classes of S-boxes which are from the Alternating group.
3. Returns for a given S-box not in the Alternating group its decompositions.
4. Returns the decompositions of all classes of S-boxes which are not in the Alternating group.
5. Returns for a given quadratic S-box its (direct or transfrom to a direct) uniform 3 shares sharing (if it exists).
6. Returns for all quadratic classes an instance of (direct or transform to a direct) uniform 3 shares sharing (if it exists).
7. Returns for a given S-box its (direct or transform to a direct) uniform 4 shares sharing (if it exists).
8. Returns for all classes an instance of (direct or transform to a direct) uniform 4 shares sharing (if it exists).
9. Returns for a given S-box its (direct or transform to a direct) uniform 5 shares sharing.
A. Returns for all classes an instance of (direct or transform to a direct) uniform 5 shares sharing.
B. Returns for a given S-box certain chareacteristics.

Please, enter your choice?
  In case of choise 1, 3, 5, 7, 9 or B
Please, input also your S-box in HEX:



The Threshold Implementation Helper for 3x3 S-boxes Offers:


1. Returns for a given S-box its decompositions.
2. Returns the decompositions of all classes of S-boxes.
3. Returns for a given S-box its (direct or transfrom to a direct) uniform 3 shares sharing (if it exists).
4. Returns for all classes an instance of (direct or transform to a direct) uniform 3 shares sharing (if it exists).
5. Returns for a given S-box its (direct or transform to a direct) uniform 4 shares sharing (if it exists).
6. Returns for all classes an instance of (direct or transform to a direct) uniform 4 shares sharing (if it exists).
7. Returns for a given S-box its (direct or transform to a direct) uniform 5 shares sharing.
8. Returns for all classes an instance of (direct or transform to a direct) uniform 5 shares sharing.
9. Returns for a given S-box certain chareacteristics.

Please, enter your choice?
  In case of choise 1, 3, 5, 7 or 9
Please, input also your S-box in OCT:



The txt files below contain the results as outputed by the programs:

The files sharing_sNumber_nNumber.txt, where s is the number of shares and n is the S-box dimension provide the sharings.
The printout format enumerates for each class:
   The Class number
   The iteration number in which an uniform sharing is found for the first time (starting form the class representative with the Affine=Identity - 1)
   Sbox in HEX
   Abox in HEX (if Identity it is not printed)

The files xyzDecompositions_nNumber.txt, where n is the S-box dimension and xyz specifies whether it is from the Alternating group or not in the case n=4 .
The printout format enumerates for each class representative S its decomposition using the representatives:
- of the quadratic classes (here F and G) and the affine transforms (A1, A and A2):
   Format S = A1*F*A*G*A2 or S = A1*G*A*F*A2 for n=3 and n=4 the classes in the Alternating group.
- of the quadratic class F and a cubic class G (one of 001, 003, 013 or 301) and affine transforms (A1, A and A2):
   Format S = A1*F*A2*G*A or S = A*G*A1*F*A2 for those classes not in the Alternating group (n=4).
The classes representatives and affine transforms are given in HEX.

The xls files collect and present the same information in a different format.