亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
欧美中文字幕久久| 亚洲色图欧美激情| 亚洲丝袜美腿综合| 美国欧美日韩国产在线播放| www.成人在线| 精品国产亚洲一区二区三区在线观看| 亚洲女人的天堂| 国产91清纯白嫩初高中在线观看| 欧美高清视频一二三区 | 亚洲欧美偷拍另类a∨色屁股| 午夜精品在线视频一区| 97se亚洲国产综合自在线| 久久理论电影网| 人人精品人人爱| 91福利在线观看| 一色桃子久久精品亚洲| 国产激情一区二区三区四区 | av成人动漫在线观看| 精品日韩成人av| 日本欧美一区二区三区乱码| 色欧美日韩亚洲| 国产精品国产三级国产a| 国产一区二区女| 精品国产一区久久| 另类小说欧美激情| 日韩欧美国产综合| 久久成人羞羞网站| 欧美mv日韩mv国产网站app| 日韩**一区毛片| 欧美一区二区大片| 理论电影国产精品| 日韩欧美国产1| 国产一区二区三区在线观看精品| 日韩美女视频在线| 激情综合一区二区三区| 精品美女在线播放| 国v精品久久久网| 国产精品久久久久影院| 91在线云播放| 夜夜夜精品看看| 欧美另类一区二区三区| 免费一级欧美片在线观看| 麻豆视频一区二区| 欧美日韩久久一区二区| 香蕉影视欧美成人| 日韩欧美一区在线| 紧缚奴在线一区二区三区| 欧美成人a∨高清免费观看| 狠狠色丁香婷婷综合| 国产日韩欧美精品一区| 国产69精品久久777的优势| 日韩一区日韩二区| 欧美三级电影在线看| 日韩有码一区二区三区| ww亚洲ww在线观看国产| 国产98色在线|日韩| 亚洲精品中文字幕在线观看| 欧美人伦禁忌dvd放荡欲情| 精品中文av资源站在线观看| 国产精品少妇自拍| 欧美精品九九99久久| 久久er精品视频| 国产精品免费视频观看| 欧美色中文字幕| 韩国欧美国产1区| 亚洲啪啪综合av一区二区三区| 欧美日韩国产小视频在线观看| 久久超碰97人人做人人爱| 亚洲日本在线天堂| 精品欧美一区二区在线观看| 色综合久久综合网| 九九精品视频在线看| 依依成人综合视频| 久久久久久久免费视频了| 在线精品视频免费观看| 激情综合网天天干| 香蕉久久夜色精品国产使用方法| 国产调教视频一区| 777午夜精品视频在线播放| 国产91清纯白嫩初高中在线观看| 午夜精品福利久久久| 国产精品视频yy9299一区| 日韩欧美二区三区| 欧美性生活久久| 国产成人午夜精品5599| 五月天丁香久久| 中文字幕中文字幕在线一区 | 亚洲欧美视频在线观看| 日韩一级成人av| 97se亚洲国产综合自在线不卡| 捆绑紧缚一区二区三区视频| 亚洲精品国产一区二区精华液| 26uuu久久天堂性欧美| 欧美猛男超大videosgay| 91网站黄www| 成人免费不卡视频| 精品一区二区三区视频在线观看| 亚洲一区二区精品视频| 国产精品久久午夜| 国产拍揄自揄精品视频麻豆| 日韩午夜电影在线观看| 欧美精品三级日韩久久| 91黄视频在线| 一本久道久久综合中文字幕| 成人久久久精品乱码一区二区三区| 理论片日本一区| 日本午夜一区二区| 日本欧美一区二区三区乱码| 婷婷综合久久一区二区三区| 夜夜精品浪潮av一区二区三区| 一区二区中文字幕在线| 国产欧美日本一区视频| 国产视频一区二区在线观看| 精品久久久久av影院| 亚洲精品一区二区三区香蕉| 日韩午夜在线观看| 欧美成人一区二区三区片免费| 欧美剧情电影在线观看完整版免费励志电影 | 香蕉成人伊视频在线观看| 亚洲电影视频在线| 爽好久久久欧美精品| 秋霞成人午夜伦在线观看| 青青草原综合久久大伊人精品优势| 五月综合激情网| 日本强好片久久久久久aaa| 免费精品视频在线| 国产综合一区二区| 成人avav在线| 99精品欧美一区二区三区小说| 99久久99久久精品免费观看 | 777午夜精品免费视频| 日韩一区二区麻豆国产| 欧美成人欧美edvon| 中文字幕av一区二区三区高| 国产精品久久久久影院亚瑟| 一区二区三区蜜桃| 日韩激情一二三区| 国产资源在线一区| 91视视频在线观看入口直接观看www | 午夜免费久久看| 精品一区二区三区影院在线午夜| 国产精品一区二区在线观看网站| www.成人在线| 7777精品久久久大香线蕉| 久久久国产精华| 一区二区三区在线播放| 丝袜诱惑制服诱惑色一区在线观看 | 97成人超碰视| 欧美一区二区三区四区五区 | 99久久精品免费看国产免费软件| 色94色欧美sute亚洲线路一ni| 9191久久久久久久久久久| 久久久久久电影| 亚洲成av人片一区二区梦乃| 国产成人啪午夜精品网站男同| 欧洲精品一区二区| 国产日韩欧美制服另类| 亚洲午夜私人影院| 国产不卡免费视频| 3d成人h动漫网站入口| 中文字幕一区二区三中文字幕| 日韩电影在线一区二区三区| 不卡的av在线| 精品av久久707| 香蕉成人伊视频在线观看| jlzzjlzz亚洲日本少妇| 日韩精品一区二区三区四区视频| 日韩毛片精品高清免费| 国精品**一区二区三区在线蜜桃| 欧美视频在线不卡| 国产精品国产三级国产aⅴ中文| 六月丁香婷婷久久| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 欧美精品久久99久久在免费线| 国产精品电影院| 国产成人丝袜美腿| 精品国产凹凸成av人网站| 亚洲综合一区二区三区| 不卡一区在线观看| 久久女同互慰一区二区三区| 日韩不卡一区二区三区| 欧美天堂一区二区三区| 亚洲欧美在线视频观看| 国产成人精品aa毛片| 久久亚洲私人国产精品va媚药| 亚洲成人午夜影院| 欧美午夜寂寞影院| 亚洲卡通动漫在线| 99精品欧美一区二区蜜桃免费| 国产网红主播福利一区二区| 韩国理伦片一区二区三区在线播放 | 欧美日韩亚洲丝袜制服| 亚洲在线观看免费| 99国产一区二区三精品乱码| 国产精品毛片a∨一区二区三区| 精品一区在线看| 精品国产乱子伦一区| 美女视频第一区二区三区免费观看网站| 欧美偷拍一区二区| 亚洲第一av色|