BS ISO IEC 10118-1-2016 Information technology Security techniques Hash-functions General《信息技术 保密技术 信息函数 第1部分 综述》.pdf

上传人:arrownail386 文档编号:396177 上传时间:2018-10-18 格式:PDF 页数:22 大小:2MB
下载 相关 举报
BS ISO IEC 10118-1-2016 Information technology Security techniques Hash-functions General《信息技术 保密技术 信息函数 第1部分 综述》.pdf_第1页
第1页 / 共22页
BS ISO IEC 10118-1-2016 Information technology Security techniques Hash-functions General《信息技术 保密技术 信息函数 第1部分 综述》.pdf_第2页
第2页 / 共22页
BS ISO IEC 10118-1-2016 Information technology Security techniques Hash-functions General《信息技术 保密技术 信息函数 第1部分 综述》.pdf_第3页
第3页 / 共22页
BS ISO IEC 10118-1-2016 Information technology Security techniques Hash-functions General《信息技术 保密技术 信息函数 第1部分 综述》.pdf_第4页
第4页 / 共22页
BS ISO IEC 10118-1-2016 Information technology Security techniques Hash-functions General《信息技术 保密技术 信息函数 第1部分 综述》.pdf_第5页
第5页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、BS ISO/IEC 10118-1:2016 Information technology Security techniques Hash- functions Part 1: General BSI Standards Publication WB11885_BSI_StandardCovs_2013_AW.indd 1 15/05/2013 15:06BS ISO/IEC 10118-1:2016 BRITISH STANDARD National foreword This British Standard is the UK implementation of ISO/IEC 10

2、118-1:2016. It supersedes BS ISO/IEC 10118-1:1994 which is withdrawn. The UK participation in its preparation was entrusted to Technical Committee IST/33/2, Cryptography and Security Mechanisms. A list of organizations represented on this committee can be obtained on request to its secretary. This p

3、ublication does not purport to include all the necessary provisions of a contract. Users are responsible for its correct application. The British Standards Institution 2016. Published by BSI Standards Limited 2016 ISBN 978 0 580 83838 5 ICS 35.040 Compliance with a British Standard cannot confer imm

4、unity from legal obligations. This British Standard was published under the authority of the Standards Policy and Strategy Committee on 31 October 2016. Amendments/corrigenda issued since publication Date T e x t a f f e c t e dBS ISO/IEC 10118-1:2016 Information technology Security techniques Hash-

5、functions Part 1: General Technologies de linformation Techniques de scurit Fonctions de hachage Partie 1: Gnralits INTERNATIONAL STANDARD ISO/IEC 10118-1 Reference number ISO/IEC 10118-1:2016(E) Third edition 2016-10-15 ISO/IEC 2016 BS ISO/IEC 10118-1:2016ii ISO/IEC 2016 All rights reserved COPYRIG

6、HT PROTECTED DOCUMENT ISO/IEC 2016, Published in Switzerland All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on the internet or an intranet,

7、without prior written permission. Permission can be requested from either ISO at the address below or ISOs member body in the country of the requester. ISO copyright office Ch. de Blandonnet 8 CP 401 CH-1214 Vernier, Geneva, Switzerland Tel. +41 22 749 01 11 Fax +41 22 749 09 47 copyrightiso.org www

8、.iso.org ISO/IEC 10118-1:2016(E)BS ISO/IEC 10118-1:2016ISO/IEC 10118-1:2016(E)Foreword iv 1 Scope . 1 2 Normative references 1 3 T erms and definitions . 1 4 Symbols and abbreviated terms . 2 4.1 General symbols . 2 4.2 Symbols specific to this document . 3 4.3 Coding conventions . 3 5 Requirements

9、3 6 General model for hash-functions 3 6.1 General . 3 6.2 Hashing operation 4 6.2.1 General 4 6.2.2 Step 1 (padding) . 4 6.2.3 Step 2 (splitting) 4 6.2.4 Step 3 (iteration) 4 6.2.5 Step 4 (output transformation) . 4 6.3 Use of the general model 5 Annex A (normative) Padding methods 6 Annex B (norma

10、tive) Criteria for submission of hash-functions for possible inclusion in ISO/IEC 10118 (all parts) 7 Annex C (informative) Security considerations .10 Bibliography .12 ISO/IEC 2016 All rights reserved iii Contents PageBS ISO/IEC 10118-1:2016ISO/IEC 10118-1:2016(E) Foreword ISO (the International Or

11、ganization for Standardization) and IEC (the International 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

12、respective organization to deal with particular fields of technical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of info

13、rmation technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1. The procedures used to develop this document and those intended for its further maintenance are described in the ISO/IEC Directives, Part 1. In particular the different approval criteria needed for the diffe

14、rent types of document should be noted. This document was drafted in accordance with the editorial rules of the ISO/IEC Directives, Part 2 (see www.iso.org/directives). Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. ISO and IEC s

15、hall not be held responsible for identifying any or all such patent rights. Details of any patent rights identified during the development of the document will be in the Introduction and/or on the ISO list of patent declarations received (see www.iso.org/patents). Any trade name used in this documen

16、t is information given for the convenience of users and does not constitute an endorsement. For an explanation on the meaning of ISO specific terms and expressions related to conformit y assessment, as well as information about ISOs adherence to the World Trade Organization (WTO) principles in the T

17、echnical Barriers to Trade (TBT) see the following URL: www.iso.org/iso/foreword.html. The committee responsible for this document is ISO/IEC JTC 1, Information technology, Subcommittee SC 27, IT Security techniques. This third edition cancels and replaces the second edition (ISO/IEC 10118-1:2000),

18、which has been technically revised. A list of all parts in the ISO/IEC 10118 series can be found on the ISO website.iv ISO/IEC 2016 All rights reservedBS ISO/IEC 10118-1:2016INTERNATIONAL ST ANDARD ISO/IEC 10118-1:2016(E) Information technology Security techniques Hash- functions Part 1: General 1 S

19、cope ISO/IEC 10118 (all parts) specifies hash-functions and is therefore applicable to the provision of authentication, integrity and non-repudiation services. Hash-functions map strings of bits of variable (but usually upper bounded) length to fixed-length strings of bits, using a specified algorit

20、hm. They can be used for reducing a message to a short imprint for input to a digital signature mechanism, and committing the user to a given string of bits without revealing this string. NOTE The hash-functions specified in ISO/IEC 10118 (all parts) do not involve the use of secret keys. However, t

21、hese hash-functions may be used, in conjunction with secret keys, to build message authentication codes. Message Authentication Codes (MACs) provide data origin authentication as well as message integrity. Techniques for computing a MAC using a hash-function are specified in ISO/IEC 9797-2 1 . This

22、document contains definitions, symbols, abbreviations and requirements that are common to all the other parts of ISO/IEC 10118. The criteria used to select the algorithms specified in subsequent parts of ISO/IEC 10118 are defined in Annex B of this document. 2 Normative references There are no norma

23、tive references in this document. 3 T erms a nd definiti ons For the purposes of this document, the following terms and definitions apply. ISO and IEC maintain terminological databases for use in standardization at the following addresses: IEC Electropedia: available at http:/ /www.electropedia.org/

24、 ISO Online browsing platform: available at http:/ /www.iso.org/obp 3.1 collision-resistant hash-function hash-function satisfying the following property: it is computationally infeasible to find any two distinct inputs which map to the same output Note 1 to entry: Computational feasibility depends

25、on the specific security requirements and environment. Refer to Annex C. 3.2 data string data string of bits which is the input to a hash-function ISO/IEC 2016 All rights reserved 1BS ISO/IEC 10118-1:2016ISO/IEC 10118-1:2016(E) 3.3 hash-code string of bits which is the output of a hash-function Note

26、 1 to entry: The literature on this subject contains a variety of terms that have the same or similar meaning as hash-code. Modification Detection Code, Manipulation Detection Code, digest, hash-result, hash-value and imprint are some examples. 3.4 hash-function function which maps strings of bits o

27、f variable (but usually upper bounded) length to fixed-length strings of bits, satisfying the following two properties: for a given output, it is computationally infeasible to find an input which maps to this output; for a given input, it is computationally infeasible to find a second input which ma

28、ps to the same output Note 1 to entry: Computational feasibility depends on the specific security requirements and environment. Refer to Annex C. 3.5 initializing value value used in defining the starting point of a hash-function Note 1 to entry: The literature on this subject contains a variety of

29、terms that have the same or similar meaning as initializing value. Initialization vector and starting value are examples. 3.6 output transformation transformation or mapping of the output of the iteration stage to obtain the hash-code 3.7 padding appending extra bits to a data string 3.8 round-funct

30、ion function that transforms two binary strings of lengths L 1and L 2to a binary string of length L 2 that is used iteratively as part of a hash-function, where it combines a data string of length L 1with the previous output of length L 2or the initializing value Note 1 to entry: The literature on t

31、his subject contains a variety of terms that have the same or similar meaning as round-function. Compression function and iterative function are some examples. 4 Symbols and abbreviated terms 4.1 General symbols For ISO/IEC 10118 (all parts), the following symbols and abbreviations are used: a byte

32、D data a block derived from the data string D after the padding process h hash-function2 ISO/IEC 2016 All rights reservedBS ISO/IEC 10118-1:2016ISO/IEC 10118-1:2016(E) H hash-code a string of L 2 bits which is used in the hashing operation to store an intermediate result initializing value L 1 lengt

33、h (in bits) of the first of the two input strings to the round-function L 2 length (in bits) of the second of the two input strings to the round-function, the output string from the round-function, and of the initializing value length (in bits) of a string of bits X round-function (phi) T an output

34、transformation function, e.g. truncation | concatenation of strings of bits X and Y in the indicated order exclusive-or of strings of bits X and Y (where = ) 4.2 S ymbols specific t o this document For the purpose of this document, the following symbol applies: q number of blocks in the data string

35、after the padding and splitting process 4.3 Coding conventions In contexts where the terms “most significant bit/byte” and “least significant bit/byte” have a meaning (e.g. where strings of bits/bytes are treated as numerical values), the leftmost bits/bytes of a block shall be the most significant.

36、 5 Requirements The use of a hash-function requires that the parties involved shall operate upon precisely the same bit string, even though the representation of the data may be different in each entitys environment. This may require one or more of the entities to convert the data into an agreed bit

37、-string representation prior to applying a hash-function. Some of the hash-functions specified in ISO/IEC 10118 (all parts) require padding, so that the data string is of the required length. Several padding methods are presented in Annex A of this document; additional padding methods may be specifi

38、ed in each part of ISO/IEC 10118 where padding is needed. 6 General model for hash-functions 6.1 General The hash-functions specified in ISO/IEC 10118 (all parts) require the use of a round-function . In subsequent parts of ISO/IEC 10118, several alternatives for the function are specified. The hash

39、-functions which are specified in subsequent parts of ISO/IEC 10118 provide hash-codes of length , where is less than or equal to the value of L 2for the round-function being used. ISO/IEC 2016 All rights reserved 3BS ISO/IEC 10118-1:2016ISO/IEC 10118-1:2016(E) 6.2 Hashing operation 6.2.1 General Le

40、t be a round-function and be an initializing value of length L 2 . For the hash-functions specified in subsequent parts of ISO/IEC 10118, the value of the shall be fixed for a given hash-function . The hash-code H of the data D shall be calculated using the following four steps. 6.2.2 Step 1 (paddin

41、g) The data string D is padded in order to ensure that its length is an integer multiple of L 1 . See Annex A for more information. 6.2.3 Step 2 (splitting) The padded version of the data string D is split into L 1 -bit blocks , where D 1represents the first L 1bits of the padded version of D , D 2r

42、epresents the next L 1bits, and so on. The padding and splitting processes are illustrated in Figure 1. Figure 1 Padding and splitting processes NOTE Sometimes, it is more efficient to have the splitting occur before the padding. The padding is then done on the last block. 6.2.4 Step 3 (iteration) L

43、et be the L 1 -bit blocks of the data after padding and splitting. Let H 0be a bit string equal to . The L 2 -bit strings are calculated iteratively in the following way. for i from 1 to q : 1 . 6.2.5 Step 4 (output transformation) The hash-code H is derived by performing a transformation T on , the

44、 output of step 3, to obtain the bits of the final hash-code. EXAMPLE The transformation T may be a truncation operation.4 ISO/IEC 2016 All rights reservedBS ISO/IEC 10118-1:2016ISO/IEC 10118-1:2016(E) 6.3 Use of the general model In subsequent parts of ISO/IEC 10118, examples of hash-functions base

45、d on the general model are specified. Specification of an individual hash-function will in each case require the following to be defined: parameters LL , ; the padding method; the initializing value ; the round-function ; the output transformation T . Practical use of a hash-function defined using t

46、he general model will also require the choice of the parameter . ISO/IEC 2016 All rights reserved 5BS ISO/IEC 10118-1:2016ISO/IEC 10118-1:2016(E) Annex A (normative) Padding methods A.1 General The calculation of a hash-code, as specified in other parts of ISO/IEC 10118, may require the selection of

47、 a padding method. The padding method will always output a padded data string whose length (in bits) is a multiple of L 1 . Two methods are presented in this annex. The padding bits (if any) need not be stored or transmitted with the data. The verifier shall know whether or not the padding bits have

48、 been stored or transmitted, and which padding method is in use. A.2 Method 1 The data for which the hash-code is to be calculated is appended with a single “1” bit. The resulting data are then appended with as few (possibly zero) “0” bits as are necessary to obtain the required length. NOTE Method

49、1 always requires the addition of at least one padding bit. A.3 Method 2 This padding method requires the selection of a parameter r (where r L 1 ), e.g. r = 64, and a method for encoding the bit length of the data D , i.e. , as a bit string of length r . The choice for r will limit the length of D ,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 标准规范 > 国际标准 > BS

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1