11.3. Conformance
11.3. Conformance
This section addresses conformance issues related to the User-based Security Model.
Mandatory Protocols
An implementation of this USM MUST support:
- HMAC-MD5-96 Authentication Protocol (as described in section 6)
- CBC-DES Privacy Protocol (as described in section 8)
These protocols are mandatory to ensure interoperability between different SNMPv3 implementations.
Optional Protocols
An implementation of this USM MAY also support:
- HMAC-SHA-96 Authentication Protocol (as described in section 7)
- Other authentication and privacy protocols as they are defined and registered with IANA
No Authentication and No Privacy
An implementation MUST also support:
- Authentication without privacy (
authNoPriv) - No authentication and no privacy (
noAuthNoPriv)
These options are required to support scenarios where security is not needed or where only authentication (without encryption) is required.
MIB Module Conformance
Implementations MUST comply with the MIB module defined in section 5, including:
- The
usmUserTablefor user configuration - The
usmStatsgroup for monitoring USM statistics - The conformance statements defined in the MIB module
Protocol Operations
An implementation MUST correctly implement:
- Discovery procedures (section 4) - for learning the authoritative engine's snmpEngineID
- Time synchronization (section 2.3) - for maintaining synchronized time values
- Message processing (sections 3.1 and 3.2) - for generating and processing secured SNMP messages
- Key management - including key localization (section 2.6) and key changes
Interoperability Requirements
To ensure interoperability:
- Implementations MUST accept messages from other compliant implementations using the mandatory authentication and privacy protocols.
- Implementations SHOULD provide clear error messages when they receive messages using unsupported optional protocols.
- Implementations MUST correctly generate and process all USM-related error reports (e.g.,
usmStatsUnsupportedSecLevels,usmStatsWrongDigests,usmStatsDecryptionErrors).
Algorithm Identifiers
The following algorithm identifiers MUST be supported:
usmNoAuthProtocol- for no authenticationusmHMACMD5AuthProtocol- for HMAC-MD5-96 authenticationusmNoPrivProtocol- for no privacy
The following algorithm identifier MAY be supported:
usmHMACSHAAuthProtocol- for HMAC-SHA-96 authenticationusmDESPrivProtocol- for CBC-DES privacy (MANDATORY)