DTLS CertificateVerify considera la frammentazione dei pacchetti quando si firmano i messaggi di handshake?

1

Per DTLS con autenticazione client, al client è richiesto di inviare un messaggio CertificateVerify, che ha la seguente struttura:

struct {
           digitally-signed struct {
               opaque handshake_messages[handshake_messages_length];
           }
      } CertificateVerify;

In base alle specifiche DTLS ( RFC 6347 - Sezione 4.2.6 ), messaggi finiti ( che coinvolge anche l'hash della concatenazione di tutti i messaggi di handshake) non considera la frammentazione dei pacchetti:

CertificateVerify and Finished messages have the same format as in TLS. Hash calculations include entire handshake messages, including DTLS-specific fields: message_seq, fragment_offset, and fragment_length. However, in order to remove sensitivity to handshake message fragmentation, the Finished MAC MUST be computed as if each handshake message had been sent as a single fragment.

Questo è anche il caso di CertificateVerify, ovvero CertificateVerify firma la concatenazione dei messaggi di handshake considerando ogni messaggio come un singolo frammento? In caso contrario, c'è qualche motivo specifico per mantenere i due calcoli diversi? Le implementazioni dovrebbero diventare più semplici (minori requisiti di archiviazione) se sono uguali.

    
posta Naruto999 22.08.2016 - 23:14
fonte

0 risposte

Leggi altre domande sui tag