3.2.4.2 Commit Action

In order to perform the Commit action, the control point MUST attach a <Commit> body to the DTAG SOAP message that contains the <HostID>, <Iteration>, and <HostValidateAuthenticator> elements. This action is only supported when TrustState is 2 (Committing).

On this action, the following checks MUST be performed:

  1. The <HostID>, <Iteration>, and <HostValidateAuthenticator> (_HostValidateAuthenticatorIter) elements MUST be syntactically validated.

  2. The <HostID> MUST match the value of the _HostID obtained in the Exchange action.

If successful, the service:

  1. MUST change TrustState from 2 (Committing) to 3 (Validating).

  2. MUST generate _DeviceValidateNonceIter.

  3. MUST set the following element and return with status 200 (success).

    • The <DeviceValidateAuthenticator>, an HMAC as specified in section 3.1.1, calculated as:

      Base64 ( HMAC( _DeviceValidateNonceIter, UTF-8( Iter + OTPIter + _DeviceID + _DeviceCertificate ) ).

If this action fails, the device MUST find the appropriate error code from the table in section 2.2.3.1 and send a SOAP fault message to the control point, as specified in section 2.2.2.1.