Connected: An Internet Encyclopedia
3. Digest Authentication Protocol

Up: Connected: An Internet Encyclopedia
Up: Requests For Comments
Up: RFC 1446
Prev: 2. SNMPv2 Party
Next: 3.1. Generating a Message

3. Digest Authentication Protocol

3. Digest Authentication Protocol

This section describes the Digest Authentication Protocol. It provides both for verifying the integrity of a received message (i.e., the message received is the message sent) and for verifying the origin of a message (i.e., the reliable identification of the originator). The integrity of the message is protected by computing a digest over an appropriate portion of a message. The digest is computed by the originator of the message, transmitted with the message, and verified by the recipient of the message.

A secret value known only to the originator and recipient of the message is prefixed to the message prior to the digest computation. Thus, the origin of the message is known implicitly with the verification of the digest.

A requirement on parties using this Digest Authentication Protocol is that they shall not originate messages for transmission to any destination party which does not also use this Digest Authentication Protocol. This restriction excludes undesirable side effects of communication between a party which uses these security protocols and a party which does not.

Recall from [1] that a SNMPv2 management communication is represented by an ASN.1 value with the following syntax:

        SnmpMgmtCom ::= [2] IMPLICIT SEQUENCE {
          dstParty
             OBJECT IDENTIFIER,
          srcParty
             OBJECT IDENTIFIER,
          context
             OBJECT IDENTIFIER,
          pdu
             PDUs
        }

For each SnmpMgmtCom value that represents a SNMPv2 management communication, the following statements are true:

For each SnmpAuthMsg value that represents a SNMPv2 authenticated management communication, the following statements are true:

In support of the Digest Authentication Protocol, an authInfo component is of type AuthInformation:

        AuthInformation ::= [2] IMPLICIT SEQUENCE {
          authDigest
             OCTET STRING,
          authDstTimestamp
             UInteger32,
          authSrcTimestamp
             UInteger32
        }

For each AuthInformation value that represents authentication information, the following statements are true:


Next: 3.1. Generating a Message

Connected: An Internet Encyclopedia
3. Digest Authentication Protocol