draft-ietf-opsawg-hmac-sha-2-usm-snmp-new-02.txt | draft-ietf-opsawg-hmac-sha-2-usm-snmp-new-03.txt | |||
---|---|---|---|---|
OPSAWG J. Merkle, Ed. | OPSAWG J. Merkle, Ed. | |||
Internet-Draft Secunet Security Networks | Internet-Draft Secunet Security Networks | |||
Obsoletes: 7630 (if approved) M. Lochter | Obsoletes: 7630 (if approved) M. Lochter | |||
Intended status: Standards Track BSI | Intended status: Standards Track BSI | |||
Expires: July 17, 2016 January 14, 2016 | Expires: July 29, 2016 January 26, 2016 | |||
HMAC-SHA-2 Authentication Protocols in USM for SNMPv3 | HMAC-SHA-2 Authentication Protocols in USM for SNMPv3 | |||
draft-ietf-opsawg-hmac-sha-2-usm-snmp-new-02 | draft-ietf-opsawg-hmac-sha-2-usm-snmp-new-03 | |||
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 17, 2016. | This Internet-Draft will expire on July 29, 2016. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2016 IETF Trust and the persons identified as the | Copyright (c) 2016 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 2, line 39 | skipping to change at page 2, line 39 | |||
11.1. Normative References . . . . . . . . . . . . . . . . . . 12 | 11.1. Normative References . . . . . . . . . . . . . . . . . . 12 | |||
11.2. Informative References . . . . . . . . . . . . . . . . . 13 | 11.2. Informative References . . . . . . . . . . . . . . . . . 13 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 | |||
1. Introduction | 1. Introduction | |||
This memo defines a portion of the Management Information Base (MIB) | This memo defines a portion of the Management Information Base (MIB) | |||
for use with network management protocols. In particular, it defines | for use with network management protocols. In particular, it defines | |||
additional authentication protocols for the User-based Security Model | additional authentication protocols for the User-based Security Model | |||
(USM) for the Simple Network Management Protocol version 3 (SNMPv3) | (USM) for the Simple Network Management Protocol version 3 (SNMPv3) | |||
specified in RFC 3414 [RFC3414]. | specified in [RFC3414]. | |||
In RFC 3414, two different authentication protocols, HMAC-MD5-96 and | In RFC 3414, two different authentication protocols, HMAC-MD5-96 and | |||
HMAC-SHA-96, are defined based on the hash functions MD5 and SHA-1, | HMAC-SHA-96, are defined based on the hash functions MD5 and SHA-1, | |||
respectively. This memo specifies new HMAC-SHA-2 authentication | respectively. This memo specifies new HMAC-SHA-2 authentication | |||
protocols for USM using a Hashed Message Authentication Code (HMAC) | protocols for USM using a Hashed Message Authentication Code (HMAC) | |||
based on the SHA-2 family of hash functions [SHA] and truncated to | based on the SHA-2 family of hash functions [SHA] and truncated to | |||
128 bits for SHA-224, to 192 bits for SHA-256, to 256 bits for | 128 bits for SHA-224, to 192 bits for SHA-256, to 256 bits for | |||
SHA-384, and to 384 bits for SHA-512. These protocols are | SHA-384, and to 384 bits for SHA-512. These protocols are | |||
straightforward adaptations of the authentication protocols HMAC- | straightforward adaptations of the authentication protocols HMAC- | |||
MD5-96 and HMAC-SHA-96 to the SHA-2-based HMAC. | MD5-96 and HMAC-SHA-96 to the SHA-2-based HMAC. | |||
This document obsoletes RFC 7630, in which the MIB MODULE-IDENTITY | This document obsoletes RFC 7630, in which the MIB MODULE-IDENTITY | |||
value was incorrectly specified. | value was incorrectly specified. | |||
2. The Internet-Standard Management Framework | 2. The Internet-Standard Management Framework | |||
For a detailed overview of the documents that describe the current | For a detailed overview of the documents that describe the current | |||
Internet-Standard Management Framework, please refer to section 7 of | Internet-Standard Management Framework, please refer to section 7 of | |||
RFC 3410 [RFC3410]. | [RFC3410]. | |||
Managed objects are accessed via a virtual information store, termed | Managed objects are accessed via a virtual information store, termed | |||
the Management Information Base or MIB. MIB objects are generally | the Management Information Base or MIB. MIB objects are generally | |||
accessed through the Simple Network Management Protocol (SNMP). | accessed through the Simple Network Management Protocol (SNMP). | |||
Objects in the MIB are defined using the mechanisms defined in the | Objects in the MIB are defined using the mechanisms defined in the | |||
Structure of Management Information (SMI). This memo specifies a MIB | Structure of Management Information (SMI). This memo specifies a MIB | |||
module that is compliant to the SMIv2, which is described in STD 58, | module that is compliant to the SMIv2, which is described in | |||
RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 | [RFC2578], [RFC2579], and [RFC2580]. | |||
[RFC2580]. | ||||
3. Conventions | 3. Conventions | |||
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", | |||
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this | |||
document are to be interpreted as described in BCP 14, RFC 2119 | document are to be interpreted as described in BCP 14, RFC 2119 | |||
[RFC2119]. | [RFC2119]. | |||
4. The HMAC-SHA-2 Authentication Protocols | 4. The HMAC-SHA-2 Authentication Protocols | |||
This section describes the HMAC-SHA-2 authentication protocols, which | This section describes the HMAC-SHA-2 authentication protocols, which | |||
use the SHA-2 hash functions (described in FIPS PUB 180-4 [SHA] and | use the SHA-2 hash functions (described in FIPS PUB 180-4 [SHA] and | |||
RFC 6234 [RFC6234]) in the HMAC mode (described in RFC 2104 [RFC2104] | [RFC6234]) in the HMAC mode (described in [RFC2104] and RFC 6234), | |||
and RFC 6234), truncating the output to 128 bits for SHA-224, 192 | truncating the output to 128 bits for SHA-224, 192 bits for SHA-256, | |||
bits for SHA-256, 256 bits for SHA-384, and 384 bits for SHA-512. | 256 bits for SHA-384, and 384 bits for SHA-512. RFC 6234 also | |||
RFC 6234 also provides source code for all the SHA-2 algorithms and | provides source code for all the SHA-2 algorithms and HMAC (without | |||
HMAC (without truncation). It also includes test harness and | truncation). It also includes test harness and standard test vectors | |||
standard test vectors for all the defined hash functions and HMAC | for all the defined hash functions and HMAC examples. | |||
examples. | ||||
The following protocols are defined: | The following protocols are defined: | |||
usmHMAC128SHA224AuthProtocol: uses SHA-224 and truncates the | usmHMAC128SHA224AuthProtocol: uses SHA-224 and truncates the | |||
output to 128 bits (16 octets); | output to 128 bits (16 octets); | |||
usmHMAC192SHA256AuthProtocol: uses SHA-256 and truncates the | usmHMAC192SHA256AuthProtocol: uses SHA-256 and truncates the | |||
output to 192 bits (24 octets); | output to 192 bits (24 octets); | |||
usmHMAC256SHA384AuthProtocol: uses SHA-384 and truncates the | usmHMAC256SHA384AuthProtocol: uses SHA-384 and truncates the | |||
skipping to change at page 5, line 38 | skipping to change at page 5, line 38 | |||
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. Values of the constants M | authentication protocols defined above. Values of the constants M | |||
and N, and the hash function H are as defined in Section 4.2 and are | and N, and the hash function H are as defined in Section 4.2 and are | |||
selected based on which authentication protocol is configured for the | selected based on which authentication protocol is configured for the | |||
given USM usmUser Table entry. | given USM usmUser Table entry. | |||
1. The msgAuthenticationParameters field is set to the serialization | 1. The msgAuthenticationParameters field is set to the serialization | |||
of an OCTET STRING containing N zero octets; it is serialized | of an OCTET STRING containing N zero octets; it is serialized | |||
according to the rules in RFC 3417 [RFC3417]. | according to the rules in [RFC3417]. | |||
2. Using the secret authKey of M octets, the HMAC is calculated over | 2. Using the secret authKey of M octets, the HMAC is calculated over | |||
the wholeMsg according to RFC 6234 with hash function H. | the wholeMsg according to RFC 6234 with hash function H. | |||
3. The N first octets of the above HMAC are taken as the computed | 3. The N first octets of the above HMAC are taken as the computed | |||
MAC value. | MAC value. | |||
4. The msgAuthenticationParameters field is replaced with the MAC | 4. The msgAuthenticationParameters field is replaced with the MAC | |||
obtained in the previous step. | obtained in the previous step. | |||
skipping to change at page 6, line 43 | skipping to change at page 6, line 43 | |||
7. The newly calculated MAC is compared with the MAC saved in step | 7. The newly calculated MAC is compared with the MAC saved in step | |||
2. If they do not match, then a failure and an errorIndication | 2. If they do not match, then a failure and an errorIndication | |||
(authenticationFailure) are returned to the calling module. | (authenticationFailure) are returned to the calling module. | |||
8. The authenticatedWholeMsg and statusInformation indicating | 8. The authenticatedWholeMsg and statusInformation indicating | |||
success are then returned to the caller. | success are then returned to the caller. | |||
5. Key Localization and Key Change | 5. Key Localization and Key Change | |||
For any of the protocols defined in Section 4, key localization and | For any of the protocols defined in Section 4, key localization and | |||
key change SHALL be performed according to RFC 3414 [RFC3414] using | key change SHALL be performed according to [RFC3414] using the same | |||
the same SHA-2 hash function as in the HMAC-SHA-2 authentication | SHA-2 hash function as in the HMAC-SHA-2 authentication protocol. | |||
protocol. | ||||
6. Structure of the MIB Module | 6. Structure of the MIB Module | |||
The MIB module specified in this memo does not define any managed | The MIB module specified in this memo does not define any managed | |||
objects, subtrees, notifications, or tables; rather, it only defines | objects, subtrees, notifications, or tables; rather, it only defines | |||
object identities (for authentication protocols) under a subtree of | object identities (for authentication protocols) under a subtree of | |||
an existing MIB. | an existing MIB. | |||
7. Relationship to Other MIB Modules | 7. Relationship to Other MIB Modules | |||
skipping to change at page 7, line 19 | skipping to change at page 7, line 19 | |||
RFC 3414 specifies the MIB module for USM for SNMPv3 (SNMP-USER- | RFC 3414 specifies the MIB module for USM for SNMPv3 (SNMP-USER- | |||
BASED-SM-MIB), which defines authentication protocols for USM based | BASED-SM-MIB), which defines authentication protocols for USM based | |||
on the hash functions MD5 and SHA-1, respectively. The following MIB | on the hash functions MD5 and SHA-1, respectively. The following MIB | |||
module defines new HMAC-SHA2 authentication protocols for USM based | module defines new HMAC-SHA2 authentication protocols for USM based | |||
on the SHA-2 hash functions [SHA]. The use of the HMAC-SHA2 | on the SHA-2 hash functions [SHA]. The use of the HMAC-SHA2 | |||
authentication protocols requires the usage of the objects defined in | authentication protocols requires the usage of the objects defined in | |||
the SNMP-USER-BASED-SM-MIB. | the SNMP-USER-BASED-SM-MIB. | |||
7.2. Relationship to SNMP-FRAMEWORK-MIB | 7.2. Relationship to SNMP-FRAMEWORK-MIB | |||
RFC 3411 [RFC3411] specifies the SNMP-FRAMEWORK-MIB, which defines a | [RFC3411] specifies the SNMP-FRAMEWORK-MIB, which defines a subtree | |||
subtree snmpAuthProtocols for SNMP authentication protocols. The | snmpAuthProtocols for SNMP authentication protocols. The following | |||
following MIB module defines new authentication protocols in the | MIB module defines new authentication protocols in the | |||
snmpAuthProtocols subtree. | snmpAuthProtocols subtree. | |||
7.3. MIB Modules Required for IMPORTS | 7.3. MIB Modules Required for IMPORTS | |||
The following MIB module IMPORTS definitions from SNMPv2-SMI | The following MIB module IMPORTS definitions from SNMPv2-SMI | |||
[RFC2578] and SNMP-FRAMEWORK-MIB [RFC3411]. | [RFC2578] and SNMP-FRAMEWORK-MIB [RFC3411]. | |||
8. Definitions | 8. Definitions | |||
SNMP-USM-HMAC-SHA2-MIB DEFINITIONS ::= BEGIN | SNMP-USM-HMAC-SHA2-MIB DEFINITIONS ::= BEGIN | |||
skipping to change at page 9, line 35 | skipping to change at page 9, line 35 | |||
- 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 7 } | ::= { snmpAuthProtocols 7 } | |||
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 RFC 3414 [RFC3414] also apply to the | The security considerations of [RFC3414] also apply to the HMAC-SHA-2 | |||
HMAC-SHA-2 authentication protocols defined in this document. | authentication protocols defined in this document. | |||
9.2. Cryptographic Strength of the Authentication Protocols | 9.2. Cryptographic Strength of the Authentication Protocols | |||
At the time of publication of this document, all of the HMAC-SHA-2 | At the time of publication of this document, all of the HMAC-SHA-2 | |||
authentication protocols provide a very high level of security. The | authentication protocols provide a very high level of security. The | |||
security of each HMAC-SHA-2 authentication protocol depends on the | security of each HMAC-SHA-2 authentication protocol depends on the | |||
parameters used in the corresponding HMAC computation, which are the | parameters used in the corresponding HMAC computation, which are the | |||
length of the key (if the key has maximum entropy), the size of the | length of the key (if the key has maximum entropy), the size of the | |||
hash function's internal state, and the length of the truncated MAC. | hash function's internal state, and the length of the truncated MAC. | |||
For the HMAC-SHA-2 authentication protocols, these values are as | For the HMAC-SHA-2 authentication protocols, these values are as | |||
End of changes. 11 change blocks. | ||||
24 lines changed or deleted | 21 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/ |