draft-ietf-opsawg-hmac-sha-2-usm-snmp-01.txt   draft-ietf-opsawg-hmac-sha-2-usm-snmp-02.txt 
OPSAWG J. Merkle, Ed. OPSAWG J. Merkle, Ed.
Internet-Draft Secunet Security Networks Internet-Draft Secunet Security Networks
Intended status: Informational M. Lochter Intended status: Standards Track M. Lochter
Expires: July 23, 2015 BSI Expires: August 21, 2015 BSI
January 19, 2015 February 17, 2015
HMAC-SHA-2 Authentication Protocols in USM for SNMP HMAC-SHA-2 Authentication Protocols in USM for SNMP
draft-ietf-opsawg-hmac-sha-2-usm-snmp-01 draft-ietf-opsawg-hmac-sha-2-usm-snmp-02
Abstract Abstract
This memo specifies new HMAC-SHA-2 authentication protocols for the This memo specifies new HMAC-SHA-2 authentication protocols for the
User-based Security Model (USM) for SNMPv3 defined in RFC 3414. User-based Security Model (USM) for SNMPv3 defined in RFC 3414.
Status of This Memo Status of This Memo
This Internet-Draft is submitted in full conformance with the This Internet-Draft is submitted in full conformance with the
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
skipping to change at page 1, line 32 skipping to change at page 1, line 32
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on July 23, 2015. This Internet-Draft will expire on August 21, 2015.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2015 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 4, line 19 skipping to change at page 4, line 19
OPTIONAL. OPTIONAL.
4.1. Deviations from the HMAC-SHA-96 Authentication Protocol 4.1. Deviations from the HMAC-SHA-96 Authentication Protocol
All the HMAC-SHA-2 authentication protocols are straightforward All the HMAC-SHA-2 authentication protocols are straightforward
adaptations of the HMAC-MD5-96 and HMAC-SHA-96 authentication adaptations of the HMAC-MD5-96 and HMAC-SHA-96 authentication
protocols. Precisely, they differ from the HMAC-MD5-96 and HMAC- protocols. Precisely, they differ from the HMAC-MD5-96 and HMAC-
SHA-96 authentication protocols in the following aspects: SHA-96 authentication protocols in the following aspects:
o The SHA-2 hash function is used to compute the message digest in o The SHA-2 hash function is used to compute the message digest in
the HMAC computation according to [RFC2104], as opposed to the MD5 the HMAC computation according to [RFC2104] and [RFC6234], as
hash function [RFC1321] and SHA-1 hash function [SHA] used in opposed to the MD5 hash function [RFC1321] and SHA-1 hash function
HMAC-MD5-96 and HMAC-SHA-96, respectively. Consequently, the [SHA] used in HMAC-MD5-96 and HMAC-SHA-96, respectively.
length of the message digest prior to truncation is 224 bits for Consequently, the length of the message digest prior to truncation
SHA-224 based protocol, 256 bits for SHA-256 based protocol, 384 is 224 bits for SHA-224 based protocol, 256 bits for SHA-256 based
bits for SHA-384 based protocol, and 512 bits for SHA-512 based protocol, 384 bits for SHA-384 based protocol, and 512 bits for
protocol. SHA-512 based protocol.
o The resulting message digest (output of HMAC) is truncated to o The resulting message digest (output of HMAC) is truncated to
* 16 octets for usmHMAC128SHA224AuthProtocol * 16 octets for usmHMAC128SHA224AuthProtocol
* 24 octets for usmHMAC192SHA256AuthProtocol * 24 octets for usmHMAC192SHA256AuthProtocol
* 32 octets for usmHMAC256SHA384AuthProtocol * 32 octets for usmHMAC256SHA384AuthProtocol
* 48 octets for usmHMAC384SHA512AuthProtocol * 48 octets for usmHMAC384SHA512AuthProtocol
skipping to change at page 5, line 42 skipping to change at page 5, line 42
This section describes the procedure followed by an SNMP engine This section describes the procedure followed by an SNMP engine
whenever it must authenticate an outgoing message using one of the whenever it must authenticate an outgoing message using one of the
authentication protocols defined above. authentication protocols defined above.
1. The msgAuthenticationParameters field is set to serialization, 1. The msgAuthenticationParameters field is set to serialization,
according to the rules in [RFC3417], of an OCTET STRING according to the rules in [RFC3417], of an OCTET STRING
containing N zero octets. containing N zero octets.
2. From the secret authKey of M octets, calculate the HMAC-SHA-2 2. From the secret authKey of M octets, calculate the HMAC-SHA-2
digest over it according to HMAC [RFC6234]. Take the first N digest over it according to [RFC6234]. Take the first N octets
octets of the final digest - this is the Message Authentication of the final digest - this is the Message Authentication Code
Code (MAC). (MAC).
3. Replace the msgAuthenticationParameters field with the MAC 3. Replace the msgAuthenticationParameters field with the MAC
obtained in the previous step. obtained in the previous step.
4. The authenticatedWholeMsg is then returned to the caller together 4. The authenticatedWholeMsg is then returned to the caller together
with statusInformation indicating success. with statusInformation indicating success.
4.2.2. Processing an Incoming Message 4.2.2. Processing an Incoming Message
Values of the constants M and N are the same as in Section 4.2.1, and Values of the constants M and N are the same as in Section 4.2.1, and
skipping to change at page 8, line 17 skipping to change at page 8, line 17
postal: Postfach 200363 postal: Postfach 200363
D-53133 Bonn D-53133 Bonn
Germany Germany
phone: +49 228 9582 5643 phone: +49 228 9582 5643
email: manfred.lochter@bsi.bund.de" email: manfred.lochter@bsi.bund.de"
DESCRIPTION "Definitions of Object Identities needed DESCRIPTION "Definitions of Object Identities needed
for the use of HMAC-SHA2 by SNMP's User-based for the use of HMAC-SHA2 by SNMP's User-based
Security Model. Security Model.
Copyright (C) The Internet Society (2004). Copyright (C) The Internet Society (2015).
This version of this MIB module is part of RFC TBD; This version of this MIB module is part of RFC TBD;
see the RFC itself for full legal notices. see the RFC itself for full legal notices.
Supplementary information may be available on Supplementary information may be available on
http://www.ietf.org/copyrights/ianamib.html." http://www.ietf.org/copyrights/ianamib.html."
-- RFC Ed.: replace TBD with actual RFC number & remove this line -- RFC Ed.: replace TBD with actual RFC number & remove this line
REVISION "201501150000Z" REVISION "201501150000Z"
DESCRIPTION "Initial version, published as RFC TBD" DESCRIPTION "Initial version, published as RFC TBD"
-- RFC Ed.: replace TBD with actual RFC number & remove this line -- RFC Ed.: replace TBD with actual RFC number & remove this line
::= { snmpModules nn } -- nn to be assigned by IANA ::= { snmpModules nn } -- nn to be assigned by IANA
-- RFC Ed.: replace nn with actual number assigned by IANA & remove this line -- RFC Ed.: replace nn with actual number assigned by IANA & remove this line
usmHMAC128SHA224Protocol OBJECT-IDENTITY usmHMAC128SHA224AuthProtocol OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION "The Authentication Protocol usmHMAC128SHA224AuthProtocol. DESCRIPTION "The Authentication Protocol usmHMAC128SHA224AuthProtocol.
Uses HMAC-SHA-224 and truncates output to 128 bits." Uses HMAC-SHA-224 and truncates output to 128 bits."
REFERENCE "- Krawczyk, H., Bellare, M., and R. Canetti, HMAC: REFERENCE "- Krawczyk, H., Bellare, M., and R. Canetti, HMAC:
Keyed-Hashing for Message Authentication, RFC 2104. Keyed-Hashing for Message Authentication, RFC 2104.
- National Institute of Standards and Technology, - National Institute of Standards and Technology,
Secure Hash Standard (SHS), FIPS PUB 180-4, 2012." Secure Hash Standard (SHS), FIPS PUB 180-4, 2012."
::= { snmpAuthProtocols aa } -- aa to be assigned by IANA ::= { snmpAuthProtocols aa } -- aa to be assigned by IANA
-- RFC Ed.: replace aa with actual number assigned by IANA & remove this line -- RFC Ed.: replace aa with actual number assigned by IANA & remove this line
usmHMAC192SHA256Protocol OBJECT-IDENTITY usmHMAC192SHA256AuthProtocol OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION "The Authentication Protocol usmHMAC192SHA256AuthProtocol. DESCRIPTION "The Authentication Protocol usmHMAC192SHA256AuthProtocol.
Uses HMAC-SHA-256 and truncates output to 192 bits." Uses HMAC-SHA-256 and truncates output to 192 bits."
REFERENCE "- Krawczyk, H., Bellare, M., and R. Canetti, HMAC: REFERENCE "- Krawczyk, H., Bellare, M., and R. Canetti, HMAC:
Keyed-Hashing for Message Authentication, RFC 2104. Keyed-Hashing for Message Authentication, RFC 2104.
- National Institute of Standards and Technology, - National Institute of Standards and Technology,
Secure Hash Standard (SHS), FIPS PUB 180-4, 2012." Secure Hash Standard (SHS), FIPS PUB 180-4, 2012."
::= { snmpAuthProtocols bb } -- bb to be assigned by IANA ::= { snmpAuthProtocols bb } -- bb to be assigned by IANA
-- RFC Ed.: replace cc with actual number assigned by IANA & remove this line -- RFC Ed.: replace cc with actual number assigned by IANA & remove this line
usmHMAC256SHA384Protocol OBJECT-IDENTITY usmHMAC256SHA384AuthProtocol OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION "The Authentication Protocol usmHMAC256SHA384AuthProtocol. DESCRIPTION "The Authentication Protocol usmHMAC256SHA384AuthProtocol.
Uses HMAC-SHA-384 and truncates output to 256 bits." Uses HMAC-SHA-384 and truncates output to 256 bits."
REFERENCE "- Krawczyk, H., Bellare, M., and R. Canetti, HMAC: REFERENCE "- Krawczyk, H., Bellare, M., and R. Canetti, HMAC:
Keyed-Hashing for Message Authentication, RFC 2104. Keyed-Hashing for Message Authentication, RFC 2104.
- National Institute of Standards and Technology, - National Institute of Standards and Technology,
Secure Hash Standard (SHS), FIPS PUB 180-4, 2012." Secure Hash Standard (SHS), FIPS PUB 180-4, 2012."
::= { snmpAuthProtocols cc } -- cc to be assigned by IANA ::= { snmpAuthProtocols cc } -- cc to be assigned by IANA
-- RFC Ed.: replace dd with actual number assigned by IANA & remove this line -- RFC Ed.: replace dd with actual number assigned by IANA & remove this line
usmHMAC384SHA12Protocol OBJECT-IDENTITY usmHMAC384SHA12AuthProtocol OBJECT-IDENTITY
STATUS current STATUS current
DESCRIPTION "The Authentication Protocol usmHMAC384SHA512AuthProtocol. DESCRIPTION "The Authentication Protocol usmHMAC384SHA512AuthProtocol.
Uses HMAC-SHA-512 and truncates output to 384 bits." Uses HMAC-SHA-512 and truncates output to 384 bits."
REFERENCE "- Krawczyk, H., Bellare, M., and R. Canetti, HMAC: REFERENCE "- Krawczyk, H., Bellare, M., and R. Canetti, HMAC:
Keyed-Hashing for Message Authentication, RFC 2104. Keyed-Hashing for Message Authentication, RFC 2104.
- National Institute of Standards and Technology, - National Institute of Standards and Technology,
Secure Hash Standard (SHS), FIPS PUB 180-4, 2012." Secure Hash Standard (SHS), FIPS PUB 180-4, 2012."
::= { snmpAuthProtocols dd } -- dd to be assigned by IANA ::= { snmpAuthProtocols dd } -- dd to be assigned by IANA
-- RFC Ed.: replace ff with actual number assigned by IANA & remove this line -- RFC Ed.: replace ff with actual number assigned by IANA & remove this line
END END
9. Security Considerations 9. Security Considerations
9.1. Use of the HMAC-SHA-2 authentication protocols in USM 9.1. Use of the HMAC-SHA-2 authentication protocols in USM
The security considerations of [RFC3414] also apply the use of all The security considerations of [RFC3414] also apply to the use of all
the HMAC-SHA-2 authentication protocols in USM. the HMAC-SHA-2 authentication protocols in USM.
9.2. Cryptographic strength of the authentication protocols 9.2. Cryptographic strength of the authentication protocols
At the time of this writing, all of the HMAC-SHA-2 authentication At the time of this writing, all of the HMAC-SHA-2 authentication
protocols provide a very high level of security. The security of protocols provide a very high level of security. The security of
each HMAC-SHA-2 authentication protocol depends on the parameters each HMAC-SHA-2 authentication protocol depends on the parameters
used in the corresponding HMAC computation, which are the length of used in the corresponding HMAC computation, which are the length of
the key, the size of the hash function's internal state, and the the key (if the key has maximum entropy), the size of the hash
length of the truncated MAC. For the HMAC-SHA-2 authentication function's internal state, and the length of the truncated MAC. For
protocols these values are as follows (values are given in bits). the HMAC-SHA-2 authentication protocols these values are as follows
(values are given in bits).
+------------------------------+---------+----------------+---------+ +------------------------------+---------+----------------+---------+
| Protocol | Key | Size of | MAC | | Protocol | Key | Size of | MAC |
| | length | internal state | length | | | length | internal state | length |
+------------------------------+---------+----------------+---------+ +------------------------------+---------+----------------+---------+
| usmHMAC128SHA224AuthProtocol | 224 | 256 | 128 | | usmHMAC128SHA224AuthProtocol | 224 | 256 | 128 |
| usmHMAC192SHA256AuthProtocol | 256 | 256 | 192 | | usmHMAC192SHA256AuthProtocol | 256 | 256 | 192 |
| usmHMAC256SHA384AuthProtocol | 384 | 512 | 256 | | usmHMAC256SHA384AuthProtocol | 384 | 512 | 256 |
| usmHMAC384SHA512AuthProtocol | 512 | 512 | 384 | | usmHMAC384SHA512AuthProtocol | 512 | 512 | 384 |
+------------------------------+---------+----------------+---------+ +------------------------------+---------+----------------+---------+
skipping to change at page 11, line 11 skipping to change at page 11, line 11
of the password as often as necessary, truncating accordingly, and of the password as often as necessary, truncating accordingly, and
using the resulting string as the input to the hash function H. using the resulting string as the input to the hash function H.
The resulting digest, termed "digest1", is used in the next step. The resulting digest, termed "digest1", is used in the next step.
o a second string is formed by concatenating digest1, the SNMP o a second string is formed by concatenating digest1, the SNMP
engine's snmpEngineID value, and digest1. This string is used as engine's snmpEngineID value, and digest1. This string is used as
input to the hash function H. input to the hash function H.
9.4. Access to the SNMP-USM-HMAC-SHA2-MIB 9.4. Access to the SNMP-USM-HMAC-SHA2-MIB
None of the objects defined in SNMP-USM-HMAC-SHA2-MIB is writable, The SNMP-USM-HMAC-SHA2-MIB module defines OBJECT IDENTIFIER values
and the information they represent is not deemed to be particularly for use in other MIB modules. It does not define any objects that
sensitive. However, if they are deemed sensitive in a particular can be accessed. As such, the SNMP-USM-HMAC-SHA2-MIB does not, by
environment, access to them should be restricted through the use of itself, have any effect on the security of the Internet.
appropriately configured Security and Access Control models.
The values defined in this module are expected to be used with the
usmUserTable defined in the SNMP-USER-BASED-SM-MIB [RFC3414]. The
considerations in Section 11.5 of [RFC3414] should be taken into
account.
10. IANA Considerations 10. IANA Considerations
IANA is requested to assign an OID for IANA is requested to assign an OID for
+--------------------+-------------------------+ +--------------------+-------------------------+
| Descriptor | OBJECT IDENTIFIER value | | Descriptor | OBJECT IDENTIFIER value |
+--------------------+-------------------------+ +--------------------+-------------------------+
| snmpUsmHmacSha2MIB | { snmpModules nn } | | snmpUsmHmacSha2MIB | { snmpModules nn } |
+--------------------+-------------------------+ +--------------------+-------------------------+
skipping to change at page 12, line 35 skipping to change at page 12, line 35
"Conformance Statements for SMIv2", STD 58, RFC 2580, "Conformance Statements for SMIv2", STD 58, RFC 2580,
April 1999. April 1999.
[RFC3414] Blumenthal, U. and B. Wijnen, "User-based Security Model [RFC3414] Blumenthal, U. and B. Wijnen, "User-based Security Model
(USM) for version 3 of the Simple Network Management (USM) for version 3 of the Simple Network Management
Protocol (SNMPv3)", STD 62, RFC 3414, December 2002. Protocol (SNMPv3)", STD 62, RFC 3414, December 2002.
[SHA] National Institute of Standards and Technology, "Secure [SHA] National Institute of Standards and Technology, "Secure
Hash Standard (SHS)", FIPS PUB 180-4, March 2012. Hash Standard (SHS)", FIPS PUB 180-4, March 2012.
[RFC6234] Eastlate 3rd, D. and T. Hansen, "US Secure Hash Algorithms
(SHA and SHA-based HMAC and HKDF)", RFC 6234, May 2011.
11.2. Informative References 11.2. Informative References
[RFC1321] Rivest, R., "The MD5 Message-Digest Algorithm", RFC 1321, [RFC1321] Rivest, R., "The MD5 Message-Digest Algorithm", RFC 1321,
April 1992. April 1992.
[RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, [RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart,
"Introduction and Applicability Statements for Internet- "Introduction and Applicability Statements for Internet-
Standard Management Framework", RFC 3410, December 2002. Standard Management Framework", RFC 3410, December 2002.
[RFC3411] Harrington, D., Presuhn, R., and B. Wijnen, "An [RFC3411] Harrington, D., Presuhn, R., and B. Wijnen, "An
Architecture for Describing Simple Network Management Architecture for Describing Simple Network Management
Protocol (SNMP) Management Frameworks", STD 62, RFC 3411, Protocol (SNMP) Management Frameworks", STD 62, RFC 3411,
December 2002. December 2002.
[RFC3412] Case, J., Harrington, D., Presuhn, R., and B. Wijnen,
"Message Processing and Dispatching for the Simple Network
Management Protocol (SNMP)", STD 62, RFC 3412, December
2002.
[RFC3417] Presuhn, R., "Transport Mappings for the Simple Network [RFC3417] Presuhn, R., "Transport Mappings for the Simple Network
Management Protocol (SNMP)", STD 62, RFC 3417, December Management Protocol (SNMP)", STD 62, RFC 3417, December
2002. 2002.
[RFC4231] Nystrom, M., "Identifiers and Test Vectors for HMAC-SHA- [RFC4231] Nystrom, M., "Identifiers and Test Vectors for HMAC-SHA-
224, HMAC-SHA-256, HMAC-SHA-384, and HMAC-SHA-512", RFC 224, HMAC-SHA-256, HMAC-SHA-384, and HMAC-SHA-512", RFC
4231, December 2005. 4231, December 2005.
[RFC6234] Eastlate 3rd, D. and T. Hansen, "US Secure Hash Algorithms
(SHA and SHA-based HMAC and HKDF)", RFC 6234, May 2011.
[BCK] Bellare, M., Canetti, R., and H. Krawczyk, "Keyed Hash [BCK] Bellare, M., Canetti, R., and H. Krawczyk, "Keyed Hash
Functions for Message Authentication", Advances in Functions for Message Authentication", Advances in
Cryptology - CRYPTO 99, Lecture Notes in Computer Science Cryptology - CRYPTO 99, Lecture Notes in Computer Science
1109, Springer Verlag, 1996. 1109, Springer Verlag, 1996.
Authors' Addresses Authors' Addresses
Johannes Merkle (editor) Johannes Merkle (editor)
Secunet Security Networks Secunet Security Networks
Mergenthaler Allee 77 Mergenthaler Allee 77
 End of changes. 16 change blocks. 
37 lines changed or deleted 37 lines changed or added

This html diff was produced by rfcdiff 1.42. The latest version is available from http://tools.ietf.org/tools/rfcdiff/