Joomla! Joomla!

The basic point to make Dicelock feasible, it's the performance of block (using operation modes like CBC, CFB and OFB) and stream ciphers to generate randomized-encrypted text sequences.
In this section we provide the research performed grouped by random number test and by encryption cipher.
 
Grouped by
By Random Number Test
By Encryption Cipher
 

DiceLock encrypts text sequences and applies random number tests to the encrypted sequence to check for randomness, if the sequence is not at random, it encrypts again the text sequence with a transformation (like the key) until it is at random.

Obviously it takes:

 - encryption time, plus

 - random number test time

  - and reencryption and random test time if the sequence is not at random (for the algorithm execution time analysis see our Time Analysis section).

So it's very important that the reencryption is not done too often in order to provide randomized-encrypted text sequences that can be used in any production environment (file encryption, secure software and hardware communications, Internet, ...).

We analyze here the probabilities of cipher algorithms to generate randomized-encrypted text sequences. 

DiceLock is composed at this moment of the following random number tests:

- Frequency Test,

- Block Frequency Test,

- Cumulative Sum Forward Test,

- Cumulative Sum Reverse Test,

- Runs Test,

- Longest Run Of Ones Test,

- Rank Test,

- Universal Test,

- Approximate Entropy Test,

- Serial Test,

- Discrete Fourier Transform Test.

We have checked each one with the following ciphers:

- block cipher AES 128 with CBC, CFB and OFB operation modes,

- block cipher AES 192 with CBC, CFB and OFB operation modes,

- block cipher AES 256 with CBC, CFB and OFB operation modes, and

- stream ciphers HC 128 and HC 256.

Obviously, 11 random number tests and 11 different ciphers gives us a total of 121 test to be implemented.

In order to structure correctly all the tests they have been grouped by algorithm type:

- by random number test (with the results obtained with each cipher algorithm), and

- by encryption cipher (with the results obtained with each random number test algorithm).