Sincronizzazione di Key Exchange con Flusso di dati

Il processo di scambio delle chiavi può iniziare prima dell'elaborazione di tutti i dati della chiave precedente. Un esempio di questo sarebbe nella transizione dal titolo del trailer impostato nel titolo del programma principale impostato su alcuni film. Esiste un flag nel membro TypeSpecificFlags della struttura KSSTREAM_HEADER per ogni pacchetto di dati. Questo flag è KS_AM_UseNewCSSKey, definito in ksmedia.h. Indica che l'esempio di dati immediatamente dopo tale intestazione è il primo esempio di dati a cui si applica la nuova chiave del titolo.

Se il decrittografatore può elaborare un nuovo scambio di chiavi durante l'uso della chiave precedente, il minidriver del decodificatore DVD deve elaborare lo scambio di chiavi quando riceve le proprietà. Se il decrittografatore deve attendere fino a quando non vengono elaborati tutti i dati del filmato che richiedono la chiave precedente, il decrittografatore contiene l'SRB per la proprietà Set . Il decrypter usa la struttura KS_DVDCOPY_SET_COPY_STATE con il parametro KS_DVDCOPYSTATE_INITIALIZE o KS_DVDCOPYSTATE_INITIALIZE_TITLE fino a quando non ha ricevuto il flag KS_AM_UseNewCSSKey su tutti i flussi connessi. Successivamente, il minidriver del decodificatore DVD elabora tutti i pacchetti ricevuti fino a quel punto. Ciò impedisce l'uso della chiave non corretta nei dati.