EP0848518A2

Method and apparatus for generating a hash value

Abstract

A method and apparatus for generating a highly secured hash value without deteriorating the processing speed is provided. A hash function such that when a message M is given, the message M is compressed so as to have a certain kind of characteristics of cipher is realized. In a step, (1) one to one expanding process so that divided data of the message is inputted and longer data is outputted is executed, and (2) a plurality of cyclic shifting processes in which the number of shifting is different are executed. Consequently, the hash function can be calculated at higher speed than a conventional method of simple repetitive compression of divided data of a message.

EP0848518A2, drawing sheet 1
Sheet 1 of 32

Term

Term ended

Projected expiry passed 8 December 2017, 8.8 years ago.

  1. Priority
  2. Filed
  3. Published
  4. Projected expiry
  5. Today

20 claims: 12 independent, 8 dependent

  1. 1
    A hash value generating method of transforming a message so that the transformed message is difficult to be inversely transformed comprising:a step of dividing the message into a plurality of blocks and executing multiplication to first intermediate data of (N) bits obtained by transforming the block derived by dividing the message;a step of dividing data of (2 × N) bits obtained by the multiplication into second intermediate data of (N) bits and third intermediate data of (N) bits;and a step of executing cyclic shifting calculation to data obtained by transforming the second intermediate data and executing cyclic shifting calculation also to data derived by transforming the third intermediate data.
  2. 2
    A hash value generating method for transforming a message so that the transformed message is difficult to be inversely transformed comprising:a step of dividing the message into a plurality of parts and performing one to one expansion transformation to each divided message obtained by the division so that output values are always different when input values are different and the length of the output value is longer than the length of the input value,    wherein the one to one expansion transformation to a certain divided message changes depending on other divided message.
  3. 6
    A block enciphering method of enciphering a message block having a predetermined length and outputting a cryptogram block having a predetermined length, comprising:a step of executing multiplication to first intermediate data of (N) bits obtained by transforming the message block;a step of dividing data of (2 × N) bits obtained as a result of the multiplication into second intermediate data of (N) bits and third intermediate data of (N) bits;and a step of executing cyclic shifting calculation to both of data derived by transforming the second intermediate data and data derived by transforming the third intermediate data.
  4. 7
    A hash value generating apparatus for transforming a message so that the transformed message is difficult to be inversely transformed comprising:means for dividing a message into a plurality of blocks and executing multiplication to first intermediate data of (N) bits obtained by transforming the message block;means for dividing data of (2 × N) bits obtained as a result of the multiplication into second intermediate data of (N) bits and third intermediate data of (N) bits;and means for executing cyclic shifting calculation to both of data derived by transforming the second intermediate data and data derived by transforming the third intermediate data.
  5. 8
    A hash value generating apparatus for transforming a message so that it is difficult to inversely transform the transformed message, comprising:means for dividing the message into a plurality of parts and executing one to one expansion transformation to each of the divided messages obtained by the division so that output values are always different when input values are different and the length of the output value is longer than the length of the input value,    wherein the one to one expansion transformation to a certain divided message changes depending on other divided message.
  6. 12
    A block cipher apparatus for enciphering a message block having a predetermined length and outputting a cryptogram block having a predetermined length, comprising:means for executing multiplication to first intermediate data of (N) bits obtained by transforming the message block;means for dividing data of (2 x N) bits obtained as a result of the multiplication into second intermediate data of (N) bits and third intermediate data of (N) bits;and means for executing cyclic shifting calculation to both of data obtained by transforming the second intermediate data and data obtained by transforming the third intermediate data.
  7. 13
    A compressing and enciphering method of compressing and enciphering a message so as to be inversely transformed and outputting a cryptogram, comprising:a process for compressing and transforming a part of a message by using data obtained by transforming a key as a parameter, further executing one to one transformation to the compressed data, and outputting the resultant data as a part of the cryptogram;and a process for compressing and transforming another part of the message by using intermediate generation data, as a parameter, obtained during the process of the one to one transformation;and a process for executing multiplication and a process for executing cyclic shifting calculation in a step of the one to one transformation.
  8. 14
    A masking data generating method of transforming input data having an arbitrary length to data having an arbitrary length so that the resultant data is difficult to be inversely transformed, comprising:a step of generating a hash value of data generated from the input data and random number data;a step of executing one to one transformation to a part of the input data by using the hash value as a parameter and outputting the resultant data as a part of masking data;and a step of executing the one to one transformation to a part of the input data by using intermediate generation data obtained during the one to one transformation.
  9. 15
    An open key enciphering method of inputting an open key and a normal description and outputting a cryptogram, comprising:a random number generating step;a step of compressing or enciphering a part of the normal description by using data, as a parameter, obtained by acting a random number generated in the random number generating step and the open key;and a step of compressing or enciphering another part of the normal description by using data obtained during the compressing or enciphering transformation as a parameter.
  10. 17
    An open key enciphering method of inputting an open key and a normal description and outputting a cryptogram, comprising:a random number generating step;a step of compressing or enciphering a part of the normal description by using data, as a parameter, obtained by transforming data by a hash function, which is derived by acting a random number generated in the random number generating step and the open key;and a step of compressing or enciphering another part of the normal description by using data obtained during the compressing or enciphering transformation as a parameter.
  11. 18
    An open key enciphering apparatus for inputting an open key and a normal description and outputting a cryptogram, comprising:random number generating means;means for compressing or enciphering a part of the normal description by using data, as a parameter, obtained by acting a random number generated in the random number generating step and the open key;and means for compressing or enciphering another part of the normal description by using data obtained during the compressing or enciphering transformation as a parameter.
  12. 20
    An open key enciphering apparatus for inputting an open key and a normal description and outputting a cryptogram, comprising:random number generating means;means for transforming data by a hash function, which is derived by acting a random number generated by the random number generating means and the open key and compressing or enciphering a part of the normal description by using the derived data as a parameter;and means for compressing or enciphering another part of the normal description by using data obtained during the compressing or enciphering transformation as a parameter.