Method for designing a secure hash function and a system thereof
AssigneeTata Consultancy Services Limited
InventorNatarajan Vijayarangan
Life of this patent
Estimating the term…
Abstract
A system and method for designing a secure hash function is provided. Both of which have been designed for secure hash functionality, Secure Hash Algorithm (SHA-3) using pre processing (MP) methods and to help reduce hash collisions. It is a one way hash function which is a combination of message pre-processing which is a bijective function and the cipher block chaining mode (CBC).
Claims42
A method for establishing a secure hash function for computing an output message digest from an input message, said method comprising the steps of:
- (a) Receiving an input message for obtaining a corresponding output message digest;
- (b) Determining the length of said output message digest;
- (c) Selecting a secure hash function in terms of said length of said output message digest;
- (d) Dividing said input message into blocks of pre-defined length;
- (e) Engaging a comparator means for comparing the size of said input message with said message digest length;
- (f) Engaging a padding means for performing a padding function of adding an initialization vector to said input message if said input message size is less than said message digest length, said padding function being performed to obtain a padded message divided into m-blocks, each of said m-blocks having size equal to the length of said message digest,
- (g) Engaging a hash computation means in Cipher Block Chaining (CBC) mode with iterative rounds containing message pre-processing processes of Shuffling said padded message to obtain a shuffled message, passing said shuffled message to a T-function to obtain a T-functioned message, and passing the T-functioned message to a Linear Feedback Shift Register to obtain a hash computed value;
- and
- (h) Outputting a hash output value of the message after a pre-determined number of iterative rounds of said hash computation, each followed by said message pre-processing.
A system for establishing a secure hash function for computing an output message digest from an input message, said system comprising:
- input means adapted to input said message for obtaining a corresponding output message digest;
- determining means adapted to determine the length of said output message digest;
- selection means adapted to select a secure hash function in terms of number of said length of said output message digest;
- division means adapted to divide said input message into blocks of predefined length;
- comparator means adapted to compare the size of said input message with said message digest length;
- padding means adapted to perform a padding function of adding an initialization vector to said input message if said input message size is less than said message digest length, said padding function being performed to obtain a padded message divided into m-blocks, each of said m-blocks having size equal to the length of said message digest;
- hash computation means adapted to perform hash computation in Cipher Block Chaining mode to obtain hash computed value;
- message pre processing means containing shuffling means, T-functioning means, Linear Feedback Shift Registering means adapted to perform message pre processing on said hash computed value;
- and
- iteration means adapted to performing a pre-determined number of iterations of said hash computation in Cipher Block Chaining mode, each followed by said message pre processing to obtain a hash output value.
Dependencies are inferred from the claim text.