5. SISTEMA IRDETO

Il  sistema Irdeto, così come Seca, funziona mediante una gerarchia di chiavi; al livello più basso di tale scala troviamo la HMK (HexMasterKey – 10 byte), che è fissa e specifica per ogni SmartCard (neanche l’emittente TV può cambiarla); stesso discorso vale per un’altra chiave, il SerialHEX (3 byte), che lavora insieme al HMK per la decodifica di altre chiavi.

A un livello più alto, troviamo un’altra coppia di chiavi, la PMK (PlainMasterKey) e il ProvID; questi dati, al contrario di HMK e SerialHEX, possono essere cambiati dall’emittente TV, in particolar modo la PMK, che viene mandata dall’emittente TV in forma criptata MK (MasterKey), e viene decodificata in PMK dalla Smartcard tramite  un algoritmo che fa uso della HMK.

 

Le chiavi sono presenti nelle SmartCard in forma NON cifrata, cioè in chiaro, e si indicano col prefisso “plain”; per motivi di sicurezza la comunicazione tra CAM e Smartcard è criptata: in questo caso ci si riferirà alle Key senza il prefisso “plain”. 

 

Esempio

La MK è la MasterKey che la CAM invia alla SmartCard in forma criptata, PMK è la PlainMasterKey, cioè la MasterKey decifrata dalla Smartcard e contenuta nella sua eeprom.

 

Infine, ci sono le PK (PlainKey – 8 byte) che si distinguono per il KI (KeyIndex) che può assumere valori esadecimali (ad es. 02, 04, 06, 08, 0A, 0C ). Tali chiavi vengono aggiornate dalla SmartCard tramite l’algoritmo Irdeto e l’ausilio di PMK e DATE.

La CAM invia la Key in forma criptata alla Smartcard, quest’ultima provvede a metterla in chiaro (PK) mediante un algoritmo che fa uso della PMK e del DATE.

Il DATE è una sorta di contatore numerico, che tiene traccia della cronologia delle operazioni che il provider ha eseguito sulla SmartCard. Altro dato da prendere in considerazione è il ChID (Channel ID), che serve per abilitare la visione di singoli canali o pacchetti TV. 

 

Riassumendo, i dati utili sono:

HMK (HexMasterKey - 10 Byte)

 

SerialHEX (3 Byte)

 

PMKxx (PlainMasterKey - 8 Byte)  [ne sono due, PMK00 e PMK10 di 8 Byte l’una]

 

ProvIDxx (3 Byte) [ne sono due, ProvID00 e ProvID10 di 3 Byte l’una]

 

Key00 o ServiceKey (8 Byte)

 

PKxx (PlainKey - 8 Byte)

 

ChID (ChannelID - 2 Byte)

 

Queste informazioni sono necessarie per compilare i file con cui viene programmata una Smart Card.