亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rfc-2104.txt

?? keyring是一種用于保護PALM中關鍵信息的系統
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
Network Working Group                                       H. KrawczykRequest for Comments: 2104                                          IBMCategory: Informational                                      M. Bellare                                                                   UCSD                                                             R. Canetti                                                                    IBM                                                          February 1997             HMAC: Keyed-Hashing for Message AuthenticationStatus of This Memo   This memo provides information for the Internet community.  This memo   does not specify an Internet standard of any kind.  Distribution of   this memo is unlimited.Abstract   This document describes HMAC, a mechanism for message authentication   using cryptographic hash functions. HMAC can be used with any   iterative cryptographic hash function, e.g., MD5, SHA-1, in   combination with a secret shared key.  The cryptographic strength of   HMAC depends on the properties of the underlying hash function.1. Introduction   Providing a way to check the integrity of information transmitted   over or stored in an unreliable medium is a prime necessity in the   world of open computing and communications. Mechanisms that provide   such integrity check based on a secret key are usually called   "message authentication codes" (MAC). Typically, message   authentication codes are used between two parties that share a secret   key in order to validate information transmitted between these   parties. In this document we present such a MAC mechanism based on   cryptographic hash functions. This mechanism, called HMAC, is based   on work by the authors [BCK1] where the construction is presented and   cryptographically analyzed. We refer to that work for the details on   the rationale and security analysis of HMAC, and its comparison to   other keyed-hash methods.Krawczyk, et. al.            Informational                      [Page 1]RFC 2104                          HMAC                     February 1997   HMAC can be used in combination with any iterated cryptographic hash   function. MD5 and SHA-1 are examples of such hash functions. HMAC   also uses a secret key for calculation and verification of the   message authentication values. The main goals behind this   construction are   * To use, without modifications, available hash functions.     In particular, hash functions that perform well in software,     and for which code is freely and widely available.   * To preserve the original performance of the hash function without     incurring a significant degradation.   * To use and handle keys in a simple way.   * To have a well understood cryptographic analysis of the strength of     the authentication mechanism based on reasonable assumptions on the     underlying hash function.   * To allow for easy replaceability of the underlying hash function in     case that faster or more secure hash functions are found or     required.   This document specifies HMAC using a generic cryptographic hash   function (denoted by H). Specific instantiations of HMAC need to   define a particular hash function. Current candidates for such hash   functions include SHA-1 [SHA], MD5 [MD5], RIPEMD-128/160 [RIPEMD].   These different realizations of HMAC will be denoted by HMAC-SHA1,   HMAC-MD5, HMAC-RIPEMD, etc.   Note: To the date of writing of this document MD5 and SHA-1 are the   most widely used cryptographic hash functions. MD5 has been recently   shown to be vulnerable to collision search attacks [Dobb].  This   attack and other currently known weaknesses of MD5 do not compromise   the use of MD5 within HMAC as specified in this document (see   [Dobb]); however, SHA-1 appears to be a cryptographically stronger   function. To this date, MD5 can be considered for use in HMAC for   applications where the superior performance of MD5 is critical.   In   any case, implementers and users need to be aware of possible   cryptanalytic developments regarding any of these cryptographic hash   functions, and the eventual need to replace the underlying hash   function. (See section 6 for more information on the security of   HMAC.)Krawczyk, et. al.            Informational                      [Page 2]RFC 2104                          HMAC                     February 19972. Definition of HMAC   The definition of HMAC requires a cryptographic hash function, which   we denote by H, and a secret key K. We assume H to be a cryptographic   hash function where data is hashed by iterating a basic compression   function on blocks of data.   We denote by B the byte-length of such   blocks (B=64 for all the above mentioned examples of hash functions),   and by L the byte-length of hash outputs (L=16 for MD5, L=20 for   SHA-1).  The authentication key K can be of any length up to B, the   block length of the hash function.  Applications that use keys longer   than B bytes will first hash the key using H and then use the   resultant L byte string as the actual key to HMAC. In any case the   minimal recommended length for K is L bytes (as the hash output   length). See section 3 for more information on keys.   We define two fixed and different strings ipad and opad as follows   (the 'i' and 'o' are mnemonics for inner and outer):                   ipad = the byte 0x36 repeated B times                  opad = the byte 0x5C repeated B times.   To compute HMAC over the data `text' we perform                    H(K XOR opad, H(K XOR ipad, text))   Namely,    (1) append zeros to the end of K to create a B byte string        (e.g., if K is of length 20 bytes and B=64, then K will be         appended with 44 zero bytes 0x00)    (2) XOR (bitwise exclusive-OR) the B byte string computed in step        (1) with ipad    (3) append the stream of data 'text' to the B byte string resulting        from step (2)    (4) apply H to the stream generated in step (3)    (5) XOR (bitwise exclusive-OR) the B byte string computed in        step (1) with opad    (6) append the H result from step (4) to the B byte string        resulting from step (5)    (7) apply H to the stream generated in step (6) and output        the result   For illustration purposes, sample code based on MD5 is provided as an   appendix.Krawczyk, et. al.            Informational                      [Page 3]RFC 2104                          HMAC                     February 19973. Keys   The key for HMAC can be of any length (keys longer than B bytes are   first hashed using H).  However, less than L bytes is strongly   discouraged as it would decrease the security strength of the   function.  Keys longer than L bytes are acceptable but the extra   length would not significantly increase the function strength. (A   longer key may be advisable if the randomness of the key is   considered weak.)   Keys need to be chosen at random (or using a cryptographically strong   pseudo-random generator seeded with a random seed), and periodically   refreshed.  (Current attacks do not indicate a specific recommended   frequency for key changes as these attacks are practically   infeasible.  However, periodic key refreshment is a fundamental   security practice that helps against potential weaknesses of the   function and keys, and limits the damage of an exposed key.)4. Implementation Note   HMAC is defined in such a way that the underlying hash function H can   be used with no modification to its code. In particular, it uses the   function H with the pre-defined initial value IV (a fixed value   specified by each iterative hash function to initialize its   compression function).  However, if desired, a performance   improvement can be achieved at the cost of (possibly) modifying the   code of H to support variable IVs.   The idea is that the intermediate results of the compression function   on the B-byte blocks (K XOR ipad) and (K XOR opad) can be precomputed   only once at the time of generation of the key K, or before its first   use. These intermediate results are stored and then used to   initialize the IV of H each time that a message needs to be   authenticated.  This method saves, for each authenticated message,   the application of the compression function of H on two B-byte blocks   (i.e., on (K XOR ipad) and (K XOR opad)). Such a savings may be   significant when authenticating short streams of data.  We stress   that the stored intermediate values need to be treated and protected   the same as secret keys.   Choosing to implement HMAC in the above way is a decision of the   local implementation and has no effect on inter-operability.Krawczyk, et. al.            Informational                      [Page 4]RFC 2104                          HMAC                     February 19975. Truncated output   A well-known practice with message authentication codes is to   truncate the output of the MAC and output only part of the bits   (e.g., [MM, ANSI]).  Preneel and van Oorschot [PV] show some   analytical advantages of truncating the output of hash-based MAC   functions. The results in this area are not absolute as for the   overall security advantages of truncation. It has advantages (less   information on the hash result available to an attacker) and   disadvantages (less bits to predict for the attacker).  Applications   of HMAC can choose to truncate the output of HMAC by outputting the t   leftmost bits of the HMAC computation for some parameter t (namely,   the computation is carried in the normal way as defined in section 2   above but the end result is truncated to t bits). We recommend that   the output length t be not less than half the length of the hash   output (to match the birthday attack bound) and not less than 80 bits   (a suitable lower bound on the number of bits that need to be   predicted by an attacker).  We propose denoting a realization of HMAC   that uses a hash function H with t bits of output as HMAC-H-t. For   example, HMAC-SHA1-80 denotes HMAC computed using the SHA-1 function   and with the output truncated to 80 bits.  (If the parameter t is not   specified, e.g. HMAC-MD5, then it is assumed that all the bits of the   hash are output.)6. Security   The security of the message authentication mechanism presented here   depends on cryptographic properties of the hash function H: the   resistance to collision finding (limited to the case where the   initial value is secret and random, and where the output of the   function is not explicitly available to the attacker), and the   message authentication property of the compression function of H when   applied to single blocks (in HMAC these blocks are partially unknown   to an attacker as they contain the result of the inner H computation   and, in particular, cannot be fully chosen by the attacker).   These properties, and actually stronger ones, are commonly assumed   for hash functions of the kind used with HMAC. In particular, a hash   function for which the above properties do not hold would become   unsuitable for most (probably, all) cryptographic applications,   including alternative message authentication schemes based on such   functions.  (For a complete analysis and rationale of the HMAC   function the reader is referred to [BCK1].)Krawczyk, et. al.            Informational                      [Page 5]RFC 2104                          HMAC                     February 1997   Given the limited confidence gained so far as for the cryptographic   strength of candidate hash functions, it is important to observe the   following two properties of the HMAC construction and its secure use   for message authentication:   1. The construction is independent of the details of the particular   hash function H in use and then the latter can be replaced by any   other secure (iterative) cryptographic hash function.   2. Message authentication, as opposed to encryption, has a   "transient" effect. A published breaking of a message authentication   scheme would lead to the replacement of that scheme, but would have   no adversarial effect on information authenticated in the past.  This   is in sharp contrast with encryption, where information encrypted   today may suffer from exposure in the future if, and when, the   encryption algorithm is broken.   The strongest attack known against HMAC is based on the frequency of   collisions for the hash function H ("birthday attack") [PV,BCK2], and   is totally impractical for minimally reasonable hash functions.   As an example, if we consider a hash function like MD5 where the   output length equals L=16 bytes (128 bits) the attacker needs to   acquire the correct message authentication tags computed (with the

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕欧美激情| 成人性生交大片免费看中文网站| 国产一区视频在线看| 99久久精品99国产精品| 欧美一区二区在线看| 亚洲青青青在线视频| 九一九一国产精品| 欧美日韩极品在线观看一区| 中文字幕不卡在线播放| 开心九九激情九九欧美日韩精美视频电影| www.欧美.com| 久久先锋影音av鲁色资源网| 亚洲成av人在线观看| 91片在线免费观看| 国产精品久久久久一区| 国产剧情一区二区| 欧美大胆一级视频| 免费在线观看精品| 69久久99精品久久久久婷婷| 亚洲中国最大av网站| 一本到不卡精品视频在线观看| 中文字幕免费不卡| 丰满岳乱妇一区二区三区| 久久亚洲综合色一区二区三区| 午夜精品久久久久久久久| 91国内精品野花午夜精品| 亚洲乱码中文字幕| 91色视频在线| 夜夜嗨av一区二区三区网页 | 日韩欧美国产综合一区| 亚洲成av人在线观看| 欧美丝袜丝nylons| 午夜日韩在线电影| 欧美久久久久久久久| 日韩电影网1区2区| 日韩一区二区三区电影| 久久国产精品区| 精品国产一区二区三区四区四 | 欧美一级一区二区| 日韩中文字幕一区二区三区| 8x8x8国产精品| 久久99精品国产.久久久久久| 日韩欧美一区二区在线视频| 蜜臀av性久久久久蜜臀av麻豆| 日韩视频中午一区| 国产精品私人影院| 成人91在线观看| 国产精品麻豆一区二区| 一本大道久久a久久综合| 一区二区国产盗摄色噜噜| 日韩欧美一级二级| 精品在线免费视频| 国产清纯在线一区二区www| av午夜一区麻豆| 亚洲国产综合视频在线观看| 91精品国模一区二区三区| 国产一区二区0| 中文字幕亚洲精品在线观看| 欧美系列在线观看| 精品写真视频在线观看| 欧美日本在线播放| 国产精品原创巨作av| 一区二区三区自拍| 欧美一级在线视频| 99视频一区二区| 免费成人你懂的| 中文字幕乱码亚洲精品一区| 欧美日韩电影在线播放| 国产精品69久久久久水密桃| 亚洲午夜三级在线| 国产日韩精品一区二区浪潮av| 欧美做爰猛烈大尺度电影无法无天| 日本欧美一区二区| 国产精品久久久久婷婷二区次| 欧美日韩国产色站一区二区三区| 免费观看日韩电影| 亚洲日本电影在线| 精品日韩成人av| 欧美日韩一区二区三区四区| 国产成人超碰人人澡人人澡| 天堂蜜桃91精品| 中文字幕一区二区三区在线观看| 日韩一卡二卡三卡国产欧美| 波多野结衣亚洲| 韩国av一区二区三区四区| 亚洲第一搞黄网站| 中文字幕一区二区三区在线不卡 | 91在线小视频| 强制捆绑调教一区二区| 一级精品视频在线观看宜春院| 国产午夜精品一区二区三区四区| 欧美剧情片在线观看| 93久久精品日日躁夜夜躁欧美| 国产资源精品在线观看| 三级欧美在线一区| 亚洲裸体xxx| 日本一区二区成人| 2022国产精品视频| 91精品国产入口| 欧美性一级生活| 色天使色偷偷av一区二区| 北条麻妃一区二区三区| 国产99精品视频| 国产精一品亚洲二区在线视频| 久久国产夜色精品鲁鲁99| 日韩电影一区二区三区| 三级成人在线视频| 亚洲一二三四区| 亚洲国产毛片aaaaa无费看| 亚洲欧洲www| 中文字幕一区二区日韩精品绯色| 久久久91精品国产一区二区三区| 日韩免费观看2025年上映的电影| 7777精品伊人久久久大香线蕉 | 91麻豆蜜桃一区二区三区| 国产91精品久久久久久久网曝门| 国产一区二区成人久久免费影院 | 欧洲人成人精品| 色视频欧美一区二区三区| 91国产精品成人| 日本韩国一区二区| 欧美亚洲国产bt| 欧美一区二区成人6969| 91精品国产福利在线观看| 日韩欧美激情一区| 久久精品视频一区二区| 久久精品视频在线免费观看| 国产精品麻豆久久久| 中文字幕在线观看不卡| 亚洲精品久久7777| 天天综合色天天| 国产一区二区在线免费观看| 成人精品国产免费网站| 91久久精品日日躁夜夜躁欧美| 日本韩国一区二区三区视频| 欧美人体做爰大胆视频| 精品国产精品一区二区夜夜嗨| 国产性做久久久久久| 日韩一区日韩二区| 亚洲国产精品一区二区尤物区| 麻豆精品一区二区三区| 国产黄色精品视频| 91丝袜美女网| 7777精品伊人久久久大香线蕉经典版下载| 91精品国产高清一区二区三区蜜臀| 久久综合色天天久久综合图片| 中文av一区二区| 天堂va蜜桃一区二区三区| 久久不见久久见中文字幕免费| 不卡一区在线观看| 欧美日韩激情一区二区三区| 久久九九影视网| 亚洲综合色自拍一区| 精品一区二区日韩| 91小视频在线观看| 91精品国产综合久久久久| 欧美激情一区二区三区四区| 丝袜美腿亚洲综合| 不卡视频一二三| 日韩精品一区二| 一区二区三区日韩欧美精品| 国产在线看一区| 欧美久久久久免费| 亚洲欧美区自拍先锋| 国产麻豆午夜三级精品| 在线观看日韩毛片| 欧美激情艳妇裸体舞| 免费看日韩精品| 欧美三级在线看| 国产精品网友自拍| 激情文学综合网| 91精品免费观看| 亚洲与欧洲av电影| 成人精品视频.| 久久精品网站免费观看| 蜜桃久久av一区| 欧美蜜桃一区二区三区| 日韩一区中文字幕| 国产美女视频91| 欧美成人一区二区| 日韩av成人高清| 欧美久久久久久久久| 亚洲麻豆国产自偷在线| www..com久久爱| 久久精品视频网| 国产一区二区美女| 精品欧美乱码久久久久久1区2区| 天堂资源在线中文精品| 91麻豆精品一区二区三区| 国产欧美一区二区三区沐欲| 久久激五月天综合精品| 欧美一区二区福利视频| 亚洲电影在线播放| 欧洲一区在线电影| 亚洲一区二区三区中文字幕| 色综合久久中文字幕| 亚洲精品日产精品乱码不卡| 色哟哟一区二区在线观看| 亚洲欧美一区二区在线观看| 91免费视频网址|