Some Notes

Math.random()

 

16 Byte=128 Bit Symmetric Nibble Permutations:

There are 32 Nibbles. There are 31 possible position choices for the first Nibble. Because of Symmetry, when we select the position of the first Nibble we are also determining the position the Nibble in that position will occupy: If Nibble 0 goes to position 15 then the Nibble in position 15 goes to position 0. Therefore there is only 29 possible positions for the next available Nibble, and so on.

There are 31•29•27• • •1 Symmetric Nibble Permutations >> 10MATH


16 Byte=128 Bit XOR Bit Masking.

There are 2128   128 Bit XOR Bit Masks.


A Symmetric Encryption Algorithm


The key:   K=[P,M]
   P is a Symmetric Nibble Permutation of some size.
   M is an XOR Mask of the same size.

 

An Encryption Algorithm: Apply M to text T of the given size.
  Then apply P and send the result E.

An Decryption Algorithm: Apply P to E and then apply M.
  By the symmetry of each step, the result is T.

 

The Symmetric Encryption Algorithm:

The Decryption Algorithm: Use the Encryption Algorithm the result is T.
            MPMMPM = Id

 

An Attack?