home *** CD-ROM | disk | FTP | other *** search
/ ftp.rsa.com / 2014.05.ftp.rsa.com.tar / ftp.rsa.com / pub / pkcs / pkcs-1 / pkcs-1v2-1errata.txt < prev    next >
Text File  |  2014-05-02  |  7KB  |  181 lines

  1.              PKCS #1 v2.1 Errata
  2.              -------------------
  3. $Revision: 2.0 $
  4.  
  5. December, 2005
  6.  
  7. Copyright (C) 2005 RSA Laboratories, a division of RSA Security
  8. Inc. License to copy this document is granted provided that it is
  9. identified as "RSA Security Inc. Public-Key Cryptography Standards
  10. (PKCS)" in all material mentioning or referencing this document.
  11.  
  12. This note lists known errors in PKCS #1: RSA Cryptography Standard,
  13. version 2.1, and should be incorporated into that version. Some of 
  14. these errors were previously published in PKCS #1 v2.1 Errata and some
  15.  were previously published as part of IETF RFC 3447 Errata.
  16.  
  17. -Section 5.1.2: Note should refer to step 2.b rather than 2.a.
  18.  
  19. -Section 5.2.1: Note should refer to step 2.b rather than 2.a.
  20.  
  21. -Section 7.1.1: {RSAES-OAEP} Encryption Operation - page 21
  22.  Figure 1 does not represent correctly DB as specified in
  23.  step 2.c. on page 20 
  24.  
  25. - Modify Figure 1 from:
  26.  
  27.                               
  28.                     +----------+---------+-------+
  29.                DB = |  lHash   |    PS   |   M   |
  30.                     +----------+---------+-------+
  31.                                    |     
  32.           +----------+             V
  33.           |   seed   |--> MGF --->xor
  34.           +----------+             |
  35.                |                   |
  36.       +--+     V                   |
  37.       |00|    xor <----- MGF <-----|
  38.       +--+     |                   |
  39.         |      |                   |
  40.         V      V                   V
  41.       +--+----------+----------------------------+
  42. EM =  |00|maskedSeed|          maskedDB          |
  43.       +--+----------+----------------------------+
  44.  
  45.  
  46. -to:
  47.                     +----------+--------+--+-------+
  48.                DB = |  lHash   |   PS   |01|   M   |
  49.                     +----------+--------+--+-------+
  50.                                    |
  51.          +----------+              V
  52.          |   seed   |--> MGF ---> xor
  53.          +----------+              |
  54.                |                   |
  55.       +--+     V                   |
  56.       |00|    xor <----- MGF <-----|
  57.       +--+     |                   |
  58.         |      |                   |
  59.         V      V                   V
  60.       +--+----------+------------------------------+
  61. EM =  |00|maskedSeed|          maskedDB            |
  62.       +--+----------+------------------------------+
  63.  
  64.  
  65.  
  66. -Section "8.2.2 {RSASSA-PKCS1-v1_5} Signature verification
  67. -Operation"
  68.  
  69. -In 'step 2.c.', in fact "EM" is computed, not "EM'" -- as stated
  70. -in the text; see also 'step 3.' below.
  71.  
  72. - Therefore replace:
  73.        c. Convert the message representative m to an encoded message
  74.            EM of length k octets (see Section 4.1):
  75.                EM' = I2OSP (m, k).
  76. -by:
  77.        c. Convert the message representative m to an encoded message
  78.            EM of length k octets (see Section 4.1):
  79.                EM = I2OSP (m, k).
  80.  
  81. -Section B.1: Hash functions
  82. -The new "Secure Hash Standard", FIPS Pub 180-2 has been published
  83. -on "2002 August 1" and became "effective on February 1, 2003".
  84.  
  85. -Therefore, in the first sentence of the second paragraph Appendix B.1 
  86. -replace:
  87.      Six hash functions are given as examples for the encoding methods
  88.      in this document: MD2 [33], MD5 [41], SHA-1 [38], and the
  89.      proposed algorithms SHA-256, SHA-384, and SHA-512 [39].
  90. -by:
  91.      Six hash functions are given as examples for the encoding methods
  92.      in this document: MD2 [33], MD5 [41], and the algorithms SHA-1,
  93.      SHA-256, SHA-384, and SHA-512 [38].
  94.  
  95. -In the NIST parameters field definition for the SHA algorithms 
  96. -implementations containing a SHA algorithm MUST accept 
  97. -AlgorithmIdentifier values both without parameters and with NULL
  98. -parameters.
  99.  
  100. -Therefore to align PKCS #1 v2.1 with the NIST definitions in the first 
  101. -paragraph following the ASN.1 statements replace the text:
  102.  
  103.   The parameters field associated with these OIDs in a value of
  104.   type AlgorithmIdentifier shall have a value of type NULL.
  105.  
  106. -with the text:
  107.  
  108.   The parameters field associated with id-md2 and id-md5 in a value of
  109.   type AlgorithmIdentifier shall have a value of type NULL.
  110.  
  111.   The parameters field associated with id-sha1, id-sha256, id-sha384,
  112.   and id-sha512 should generally be omitted, but if present, shall have
  113.   a value of type NULL.
  114.  
  115.   This is to align with the definitions originally promulgated by NIST.
  116.   For the SHA algorithms, implementations MUST accept
  117.   AlgorithmIdentifier values both without parameters and with NULL
  118.   parameters.
  119.     
  120.   Exception: When formatting the DigestInfoValue in EMSA-PKCS1-V1.5 
  121.   (see 9.2), the parameters field associated with id-sha1, id-sha256, 
  122.   id-sha384 and id-sha512 SHALL have a value of type NULL. This is to 
  123.   maintain compatibility with existing implementations and with the 
  124.   numeric information values already published for EMSA-PKCS1-V1.5 
  125.   which are also reflected in IEEE 1363a-2004[27].
  126.    
  127.  
  128. -Section C: After the definition of PKCS1-v1_5 DigestAlgorithms, add
  129. the text
  130.  
  131.   -- When id-md2 and id-md5 are used in an AlgorithmIdentifier the
  132.   -- parameters field SHALL have a value of type NULL.
  133.  
  134.   -- When id-sha1, id-sha256, id-sha384 and id-sha512 are used in an
  135.   -- AlgorithmIdentifier the parameters (which are optional) SHOULD
  136.   -- be omitted, but if present, SHALL have a value of type NULL.
  137.   -- However, implementations MUST accept AlgorithmIdentifier values 
  138.   -- both without parameters and with NULL parameters.
  139.  
  140.   Exception: When formatting the DigestInfoValue in EMSA-PKCS1-V1.5 
  141.   (see 9.2), the parameters field associated with id-sha1, id-sha256, 
  142.   id-sha384 and id-sha512 SHALL have a value of type NULL. This is to 
  143.   maintain compatibility with existing implementations and with the 
  144.   numeric information values already published for EMSA-PKCS1-V1.5 
  145.   which are also reflected in IEEE 1363a-2004[27].
  146.  
  147. -Also, although not errors, the references should be updated as
  148. -follows to reflect new publication data:
  149.  
  150.    [25]  Housley, R., "Cryptographic Message Syntax (CMS)", RFC 3369,
  151.          August 2002.  Housley, R., "Cryptographic Message Syntax (CMS)
  152.          Algorithms", RFC 3370, August 2002.
  153.  
  154.    [27]  IEEE 1363a-2004: Standard Specifications For Public Key 
  155.          Cryptography - Amendment 1: Additional Techniques, 2004, 
  156.          Available from http://grouper.ieee.org/groups/1363/P1363a/
  157.  
  158.    [32]  J. Jonsson and B. Kaliski.  On the Security of RSA Encryption
  159.          in TLS.  In M. Yung, editor, Advances in Cryptology - CRYPTO
  160.          2002, vol. 2442 of Lecture Notes in Computer Science, pp. 127 -
  161.          142.  Springer Verlag, 2002.
  162.  
  163.    [38]  National Institute of Standards and Technology (NIST).
  164.          FIPS Publication 180-2: Secure Hash Standard.  February 
  165.       2002.
  166.  
  167. -Reference [39] should be deleted (it is superseeded by the updated [38]).
  168.  
  169.      
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.