Design principles of the shade cipher
First Claim
1. A method of automatically transforming an input message block of binary data of predetermined length 2n into an output message block, where n is a positive integer, comprising steps of:
- dividing the message block into a first and a second half data block of equal length;
processing the message block by one or more transformation rounds, each transformation round further comprising the steps of;
determining a key;
processing the first half data block using a hash function to obtain a modified first half data block of length n;
combining the modified first half data block with the second half data block to obtain a modified second half data block of length n; and
appending the modified first half data block to the modified second half data block to obtain the output message block.
0 Assignments
0 Petitions
Accused Products
Abstract
A method of encrypting or decrypting an input message block of binary data of predetermined length 2n into an output message block by dividing the message block into two equal size halves, performing one or more transformation rounds on the message block halves, each transformation round further comprising the steps of determining a key, processing the first half data block using a hash function to obtain a modified first half data block of length n, and combining the modified first half data block with the second half data block to obtain a modified second half data block of length n; and, lastly, appending the first modified half data block to the second modified half data block to obtain the output message block.
64 Citations
38 Claims
-
1. A method of automatically transforming an input message block of binary data of predetermined length 2n into an output message block, where n is a positive integer, comprising steps of:
-
dividing the message block into a first and a second half data block of equal length; processing the message block by one or more transformation rounds, each transformation round further comprising the steps of; determining a key; processing the first half data block using a hash function to obtain a modified first half data block of length n; combining the modified first half data block with the second half data block to obtain a modified second half data block of length n; and appending the modified first half data block to the modified second half data block to obtain the output message block. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A data encryption system for transforming an input message block of binary data of predetermined length 2n into an output message block, where n is a positive integer, comprising:
-
a divider for dividing the message block into a first and a second half data block of equal length; a key generator; a hashing processor for processing the first half data block using a hash function to obtain a modified first half data block of length n; a data processor for combining the modified first half data block with the second half data block to obtain a modified second half data block of length n; and a concatenator for appending the modified first half data block to the modified second half data block to obtain an output message block. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
-
Specification