ISO/IEC 10118-2:1994
(Main)Information technology — Security techniques — Hash-functions — Part 2: Hash-functions using an n-bit block cipher algorithm
Information technology — Security techniques — Hash-functions — Part 2: Hash-functions using an n-bit block cipher algorithm
Technologies de l'information — Techniques de sécurité — Fonctions de brouillage — Partie 2: Fonctions de brouillage utilisant un algorithme de chiffrement par blocs de n bits
General Information
Relations
Standards Content (Sample)
INTERNATIONAL
ISO/IEC
STANDARD
10118-2
First edition
1994-1 O-l 5
Information technology - Security
techniques - Hash-functions -
Part 2:
Hash-functions using an n-bit block tipher
algorithm
Technologies de i’information - Techniques de s&urit6 - Fonctions de
bro uillage -
Partie 2: Fonctions de brouillage utilisant un algorithme de chiffremen t par
blocs de n bits
Reference number
lSO/IEC 10118-2:1994(E)
---------------------- Page: 1 ----------------------
ISO/IEC 10118=2:1994(E)
Foreword
ISO (the International Organization for Standardization) and IEC (the Inter-
national Electrotechnical Commission) form the specialized System for
worldwide standardization. National bodies that are members of ISO or
IEC participate in the development of International Standards through
technical committees established by the respective organization to deal
with particular fields of technical activity. ISO and IEC technical com-
mittees collaborate in fields of mutual interest. Other international organ-
izations, governmental and non-governmental, in liaison with ISO and IEC,
also take part in the work.
In the field of information technology, ISO and IEC have established a joint
technical committee, lSd/lEC JTC 1. Draft International Standards adopted
by the joint technical committee are circulated to national bodies for vot-
ing. Publication as an International Standard requires approval by at least
75 % of the national bodies casting a vote.
International Standard lSO/IEC 10118-2 was prepared by Joint Technical
Committee ISO/IEC JTC 1, Information technology.
lSO/IEC 10118 consists of the following Parts, under the general title %n-
forma tion technology - Security techniques - Hash-functions:
- Part 7: General
- Part 2: Hash-functions using an n-bit block tipher aigorithm
Annexes A, B and C of this part of lSO/IEC 10118 are for information only.
0 ISO/IEC 1994
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced
or utilized in any form or by any means, electronie or mechanical, including photocopying and
microfilm, without Permission in writing from the publisher.
I SO/l EC Copyright Office l Case Postale 56 l CH-l 211 Geneve 20 e Switzerland
Printed in Switzerland
---------------------- Page: 2 ----------------------
Information technology - Security techniques - Hash-functions
Part 2 : Hash-functions using an mbit block tipher algorithm
n-bit blockcipheralgorithm (see ISO/IEC 10116)
e
1 Scope
K Key for the algorithm e (see ISO/IEC 10116)
This patt of ISO/IEC 10118 specifies hash-functions which
make use of an n-bit block tipher algorithm. They are
Operation of encipherment using the algorithm
eK
therefore suitable for an environment in which such an
e and the key K(see ISO/IEC 10116)
algorithm is already implemented.
u or u’ Transformation of one n-bit block into a
Twotypes of hash-functions arespecified. Thefirst provides
key for the algorithm e
hash-Codes of length smaller than or equal to n, where n is
the block-length of the algorithm used. The second provides
- when n is even, the string composed of the
hash-Codes of length less than or equal to 217.
n/2 leftmost bits of the block T
when n is odd, the string composed of the
- (n+1)/2 leftmost bits of the block T
2 Normative reference
T - when n is even, the string composed of the
The following Standard contains provisions which, through
[righ t]
n/2 rightmost bits of the block T
reference in this text, constitute provisions of this part of
- when n is odd, the string composed of the
ISO/IEC 10118. At the time of publication, the edition
(n-l)/2 rightmost bits of the block T
indicated was valid. All Standards are subject to revision
and Parties to agreements based on this part of ISOIIEC
10118 are encouraged to investigate the possibility of
applying the most recent edition of the Standard indicated
5 Requirements
below. Members of IEC and ISO maintain registers of
currently valid International Standards.
Userswhowishtouseahash-functionfromthispartof ISO/
IEC 10118 shall select
ISO/1 EC 10118-1 : 1994, Information technology- Security
- an n-bit block tipher algorithm e;
techniques - Hash-functions - Part 1 : General.
- one (two) transformation u (and uy;
- one (two) initializing value(s) IV(and IV ’);
- a padding method;
3 Definitions
- the length of H (L&.
For the purposes of this patt of ISO/IEC 10118, the
An example of such a selection is presented in annex A.
definitions given in ISO/IEC 10118-1 and the following
The n-bit block tipher algorithm to be used is not specified
definition apply:
in this partof ISO/IEC 10118 and may be selected fromthe
Register of Cryptographic Algorithms, as defined in ISO/
n-bit block tipher algorithm: A block tipher algorithm
IEC 9979, or from another Source. Nonetheless, it should
with the propertythat plaintext blocks andciphertext blocks
be taken intoconsideration that acryptographic property of
are n bits in length. [ISO/IEC 10116]
the algorithm used may introduce some weakness into the
resulting hash-function.
The two types of hash-functions make use of either one
4 Symbols and notation
transformation, called u, or two transformations, called u
and u ’, which are not specified in thispartof ISO/IEC 10118,
Forthepurposesofthispartof ISO/lEC 10118,thesymbols
as they depend on the algorithm used. If this algorithm has
andabbrevationsgiven in ISO/IEC 104 18-1 andthefollowing
been selected from the Register of Cryptographic
Symbols and abbreviations apply:
Algorithms, and the transformations uand u ’are specified,
users are encouraged to use them.
1
---------------------- Page: 3 ----------------------
0 ISO/IEC
ISO/lEC 10118-2 : 1994 (E)
6.2.2 Step 2 (padding)
6 Hash-functions providing a Single
length hash-code
The data are padded in Order to ensure that the last block
has length n. The padding method is beyond the scope of
6.1 General
this part of ISOAEC 10118. Examples of such a method are
presented in annex B of patt 1 of ISOAEC 10118,
The hash-functions which are specified in this clause
provide hash-Codes of length L,, where L,, is less than or
6.2.3 Step 3 (iteration)
equal to n.
Let D,, Q2, . . . . D4 be the n-bit blocks of the data after
One transformation denoted by u is used, the purpose of
padding. Set H,equal to W. The output blocks H, , HZ, “. . 9 H
which is to transform an output block into a suitable LK-bit 4
are calculated iteratively in the following way, for i from 1
keyfor the algorithm e. The specification of uis beyond the
to q:
scope of this part of ISOAEC 10118.
Ki= U(Hi 1)
6.2 Hashing Operation
Let e be an n-bit block tipher algorithm and IV be an Hi = eKi( DJ CB Di
initializing value of length ra. Wshall be selected from a
prescribed set of fixed values, the specification of which is Step 3 is shown in figure 1.
beyond the scope of this part of ISOAEC 10118.
6.2.4 Step 4 (truncation)
The hash-code Hof the data D is calculated in four Steps.
The hash-code His derived by taking the leftmost L, bits
6.2.1 Step 1 (splitting)
of the final output block Hqa
The data D are Split into n-bit blocks D,, Dz, .-.
lmplete (i.e., its
NOTE - The last block may be inco
may be less than n).
Di
Ki
H
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.