[go: up one dir, main page]

ES2325222T3 - Procedimiento de establecimiento de una clave de sesion y unidades para la puesta en practica del procedimiento. - Google Patents

Procedimiento de establecimiento de una clave de sesion y unidades para la puesta en practica del procedimiento. Download PDF

Info

Publication number
ES2325222T3
ES2325222T3 ES06808056T ES06808056T ES2325222T3 ES 2325222 T3 ES2325222 T3 ES 2325222T3 ES 06808056 T ES06808056 T ES 06808056T ES 06808056 T ES06808056 T ES 06808056T ES 2325222 T3 ES2325222 T3 ES 2325222T3
Authority
ES
Spain
Prior art keywords
unit
key
received
message
during
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES06808056T
Other languages
English (en)
Inventor
Jean-Pierre Vigarie
Pierre Fevrier
Franck Baudot
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Viaccess SAS
Original Assignee
Viaccess SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Viaccess SAS filed Critical Viaccess SAS
Application granted granted Critical
Publication of ES2325222T3 publication Critical patent/ES2325222T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/162Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing
    • H04N7/163Authorising the user terminal, e.g. by paying; Registering the use of a subscription channel, e.g. billing by receiver means only
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/26606Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing entitlement messages, e.g. Entitlement Control Message [ECM] or Entitlement Management Message [EMM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4623Processing of entitlement messages, e.g. ECM [Entitlement Control Message] or EMM [Entitlement Management Message]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

Procedimiento de establecimiento de una clave K s de sesión simétrica común entre una unidad de desaleatorización de señales multimedia aleatorizadas con una palabra de control y una unidad criptográfica amovible adecuada para descifrar la palabra de control necesaria para la desaleatorización, en el que: a) una de las unidades, denominada primera unidad, produce (152, 164) un primer número aleatorio y lo envía a la otra unidad, b) la otra unidad, denominada segunda unidad, construye (160, 180) un término alfa a partir del cual la primera unidad puede establecer la clave K s de sesión según la relación siguiente: Ks = alfa beta mod n en la que beta es un segundo número aleatorio producido por la primera unidad y n es un número primo, caracterizado porque: c) la segunda unidad envía (166, 184) a la primera unidad un mensaje que contiene conjuntamente el primer número aleatorio recibido, el término alfa y una firma del número aleatorio y/o del término beta realizada con una clave K3Pr privada de la segunda unidad, y después d) la primera unidad verifica (168, 192) la firma con ayuda de una clave K3pu pública correspondiente a la clave K 3pr privada y compara (174, 198) el primer número aleatorio recibido con el enviado, y e) si la firma es incorrecta o si el primer número aleatorio recibido no corresponde al enviado, entonces la primera unidad no pasa a las siguientes etapas que permiten establecer la clave de sesión.

Description

Procedimiento de establecimiento de una clave de sesión y unidades para la puesta en práctica del procedimiento.
La presente invención se refiere a un procedimiento de establecimiento de una clave de sesión y a unidades para la puesta en práctica del procedimiento.
Un procedimiento ampliamente conocido para el establecimiento de una clave de sesión entre una primera y una segunda unidad es el de Diffie Hellman también conocido por el término de protocolo STS (Station-To-Station).
En el procedimiento de Diffie Hellman, cada unidad construye un término \alpha a partir del cual la otra unidad puede establecer una clave K_{s} de sesión según la relación siguiente:
K_{s} = \alpha^{\beta} modulo n
en la que:
- \beta es un número aleatorio, y
- n es un número primo.
El procedimiento de Diffie Hellman es vulnerable frente al ataque del interceptor y frente al ataque por repetición.
El ataque del interceptor se describe en detalle en el documento siguiente: Douglas Stinson, "Cryptographie Théorie et Pratique", International Thomson Publishing France, París, 1996 (sección 8.4.1).
El ataque por repetición consiste esencialmente en grabar los mensajes enviados por la primera unidad hacia la segunda unidad y después en reutilizar más tarde los mensajes grabados para engañar a la segunda unidad.
El documento DIFFIE W. et AL: "AUTHENTICATION AND AUTHENTICATED KEY EXCHANGES" en DESIGNS, CODES AND CRYPTOGRAPHY, KLUWER ACADEMIC PUBLISHERS, BOSTON, EE.UU., vol. 2, n.º 2, 1992, páginas 107-125, describe el protocolo STS (Station-To-Station) que comprende las dos primeras etapas del procedimiento descrito más adelante en el presente documento. Dicho documento describe también el envío, de la segunda unidad a la primera unidad, de un mensaje que contiene el término \alpha y una firma del número aleatorio y/o del término \alpha realizada con la clave privada de la segunda unidad.
En las secciones 22.1 y 22.2 del libro de BRUCE SCHNEIER, "Cryptographie Appliquée", Edición WILEY, se propone un procedimiento de establecimiento de una clave de sesión robusta frente al ataque del interceptor y el ataque por repetición. Este procedimiento funciona correctamente, pero puede llevar a ejecutar operaciones inútiles en caso de ataque, lo que se traduce en la movilización inútil de recursos informáticos en una u otra de las unidades.
Este problema de movilización inútil de recursos informáticos es particularmente importante en el caso en el que debe ponerse en práctica un procedimiento de este tipo entre una unidad de desaleatorización y una unidad criptográfica amovible de un dispositivo de recepción de señales multimedia aleatorizadas. En efecto, tradicionalmente, la unidad de desaleatorización y la unidad criptográfica amovible disponen de pocos recursos informáticos. Esto es particularmente cierto para la unidad criptográfica amovible que se presenta en forma de una tarjeta de chip.
La invención pretende por tanto solucionar este problema en el contexto de los dispositivos de recepción de señales multimedia aleatorizadas proponiendo un procedimiento de establecimiento de una clave de sesión entre una unidad de desaleatorización y una unidad criptográfica amovible que ahorre más recursos informáticos.
La invención tiene, por tanto, como objeto un procedimiento de establecimiento de una clave de sesión en el que:
a)
una de las unidades, denominada primera unidad, produce un primer número aleatorio y lo envía a la otra unidad,
b)
la otra unidad, denominada segunda unidad, construye un término \alpha a partir del cual la primera unidad puede establecer la clave K_{s} de sesión según la relación siguiente:
K_{s} = \alpha^{\beta} mod n
en la que \beta es un segundo número aleatorio producido por la primera unidad y n es un número primo,
c)
la segunda unidad envía a la primera unidad un mensaje que contiene conjuntamente el primer número aleatorio recibido, el término \alpha y una firma del número aleatorio recibido y/o del término \alpha realizada con una clave K_{3pr} privada de la segunda unidad, y después
\global\parskip0.930000\baselineskip
d)
la primera unidad verifica la firma con ayuda de una clave K_{3pu} pública correspondiente a la clave K_{3pr} privada y compara el primer número aleatorio recibido con el enviado, y
e)
si la firma es incorrecta o si el primer número aleatorio recibido no corresponde al enviado, entonces la primera unidad no pasa a las etapas siguientes que permiten establecer la clave de sesión.
Si se produce un ataque del interceptor, éste se detecta durante la etapa d) al verificar la firma de manera que no se ejecuta ninguna etapa adicional con vistas a establecer la clave de sesión.
Si se produce un ataque por repetición, éste también se detecta durante la etapa d) al comparar el número aleatorio enviado con el recibido, de manera que no se ejecuta ninguna etapa adicional con vistas a establecer la clave de sesión.
Así, el procedimiento anterior permite ahorrar recursos informáticos con respecto al procedimiento divulgado en las secciones 22.1 y 22.2 del libro de SCHNEIER. En efecto, el procedimiento descrito en el libro de SCHNEIER no permite interrumpir el procedimiento de construcción de la clave de sesión en cuanto se produce un ataque del interceptor o un ataque por repetición. De ahí que las operaciones de construcción de la clave de sesión se ejecuten aunque no sean necesarias ya que, cuando se descubre el ataque, la clave de sesión construida o en curso de construcción, por ejemplo, se abandona.
Los modos de realización de este procedimiento de establecimiento de una clave de sesión pueden comprender una o varias de las características siguientes:
-
las etapas a) a e) se repiten una segunda vez invirtiendo los papeles de las unidades primera y segunda;
-
previamente a las etapas a) a e), la unidad de desaleatorización y la unidad criptográfica amovible intercambian mutuamente:
+
una primera clave K_{1pu} pública,
+
un primer certificado que comprende al menos una segunda clave K_{2pu} pública, estando este certificado firmado con ayuda de una primera clave K_{1pr} privada correspondiente a la primera clave K_{1pu} pública, y
+
un segundo certificado que comprende al menos una tercera clave K_{3pu} pública, estando este certificado firmado con ayuda de una segunda clave K_{2pr} privada correspondiente a la segunda clave K_{2pu} pública, la tercera clave K_{3pu} pública correspondiente a la clave K_{3pr} privada utilizada para realizar la firma durante la etapa c), y
-
la unidad de desaleatorización y la unidad criptográfica amovible verifican cada una los certificados primero y segundo recibidos y pasan a las etapas a) a e) únicamente si la unidad de desaleatorización y la unidad criptográfica amovible han podido verificar con éxito la autenticidad de los certificados primero y segundo recibidos por cada una de ellas;
-
al menos una de las unidades incrementa un primer contador interno en función del número de mensajes enviados hacia y/o recibidos desde la otra unidad y activa automáticamente el establecimiento de una nueva clave de sesión si el primer contador supera un primer umbral predeterminado;
-
la otra unidad incrementa un segundo contador interno en función del mismo número de mensajes y provoca automáticamente la detención de la desaleatorización de las señales multimedia si el segundo contador supera un segundo umbral predeterminado superior al primer umbral;
-
cada una de las unidades incrementa un contador interno en función del número de mensajes enviados y/o recibidos, al menos una de las unidades añade a cada mensaje enviado hacia la otra unidad un código de redundancia calculado en función del contenido del mensaje que va a enviarse y del valor actual de su contador interno, y la otra unidad verifica la exactitud del mensaje recibido comparando el código de redundancia añadido con un código de redundancia calculado en función del contenido del mensaje recibido y del valor actual de su propio contador interno.
Estos modos de realización del procedimiento de establecimiento de una clave de sesión presentan, además, las ventajas siguientes:
-
el intercambio de certificados entre la unidad de desaleatorización y la unidad criptográfica permite, por ejemplo, garantizar que sólo fabricantes autorizados por una autoridad de confianza, es decir, en posesión de un primer certificado válido, pueden construir unidades de desaleatorización o unidades criptográficas funcionales;
-
activar el establecimiento de una nueva clave de sesión en función del valor de un contador interno de mensajes permite modificar de manera regular la clave de sesión, lo que aumenta la seguridad de los intercambios de información entre las dos unidades;
\global\parskip1.000000\baselineskip
-
activar la detención de la desaleatorización de las señales multimedia si un segundo contador interno de mensajes supera un segundo umbral predeterminado permite luchar contra la utilización de unidades de desaleatorización o de unidades criptográficas piratas, que nunca activarían el establecimiento de una nueva clave de sesión;
-
utilizar contadores internos de mensajes en cada una de las unidades y utilizar el valor de estos contadores para calcular y verificar un código de redundancia permite verificar la sincronización de los mensajes intercambiados entre las dos unidades y contribuye a hacer difícil un ataque por repetición; y
-
cifrar el conjunto de los mensajes intercambiados entre las dos unidades, incluyendo los mensajes del procedimiento de intercambio de certificado y de puesta en clave de sesión hace el análisis criptográfico de la información intercambiada más difícil.
La invención también tiene como objeto unidades adecuadas para utilizarse en el procedimiento anterior de establecimiento de una clave de sesión.
La invención se comprenderá mejor con la lectura de la descripción siguiente, dada únicamente a título de ejemplo y realizada haciendo referencia a los dibujos, en los que:
- la figura 1 es una ilustración esquemática de la arquitectura de un sistema de transmisión de señales multimedia aleatorizadas que comprende un dispositivo de recepción de estas señales;
- la figura 2 es un organigrama de un procedimiento de establecimiento de certificados criptográficos para el dispositivo de recepción de la figura 1;
- las figuras 3A y 3B son un organigrama de un procedimiento de establecimiento de una clave de sesión entre una unidad de desaleatorización y una unidad criptográfica amovible del dispositivo de recepción de la figura 1; y
- la figura 4 es un organigrama de un procedimiento de intercambio de mensajes desaleatorizados en una unidad de desaleatorización y una unidad criptográfica amovible del dispositivo de recepción de la figura 1.
La figura 1 representa un sistema 2 de transmisión y de recepción de señales multimedia aleatorizadas tal como, por ejemplo, señales audiovisuales o programas multimedia. El sistema 2 comprende un emisor 4 adecuado para difundir simultáneamente hacia varios dispositivos de recepción las señales multimedia aleatorizadas con ayuda de una palabra de control. Este emisor 4 también es adecuado para transmitir hacia cada uno de los dispositivos de recepción mensajes ECM (Entitlement Control Message) que contienen la palabra de control que puede utilizarse para desaleatorizar las señales multimedia así como mensajes EMM (Entitlement Management Message) que contienen información de gestión de los derechos de acceso de los abonados.
Para simplificar la figura 1, se representa únicamente un dispositivo 6 de recepción. En el presente documento se describen únicamente los detalles del dispositivo 6 necesarios para la comprensión de la invención.
El dispositivo 6 está formado, por ejemplo, por tres entidades, es decir:
-
un decodificador 10 equipado con una antena 12 para recibir las señales multimedia aleatorizadas difundidas por el emisor 4 y para decodificarlas tras su desaleatorización,
-
una unidad 14 de desaleatorización de las señales multimedia recibidas; y
-
una unidad criptográfica amovible, tal como un procesador 16 de seguridad amovible, adecuado para descifrar la palabra de control contenida en un mensaje ECM.
En lo que sigue, la referencia a una palabra de control se aplica a una o varias de las palabras de control de un ECM.
El decodificador 10 también está conectado a una unidad 20 de visualización, tal como un equipo de televisión, en la que se visualizan las señales multimedia desaleatorizadas por la unidad 14.
La unidad 14 se presenta, por ejemplo, en forma de una tarjeta PCMCIA (Personal Computer Memory Card International Association) amovible, destinada a insertarse en el decodificador 10 según la norma EN 50221 "Common Interface Specification for Conditional Access and other Digital Video Broadcasting Decoder Applications". Para ello, el decodificador 10 y la unidad 14 están equipados, cada uno, con conectores de acoplamiento y de desacoplamiento mecánico de la unidad 14 y del decodificador 10. Esta unidad 14 comprende un desaleatorizador 22 adecuado para desaleatorizar la señal multimedia aleatorizada con ayuda de la palabra de control.
La unidad 14 comprende medios de almacenamiento de la información representados en este caso en forma de una memoria 26, así como un módulo 28 de cifrado y de descifrado.
El módulo 28 es adecuado para cifrar y descifrar todo o parte de cada mensaje intercambiado entre la unidad 14 y el procesador 16 con una clave K_{s} de sesión. Los algoritmos de cifrado y de descifrado utilizados son, por ejemplo, el DES (Data Encryption Standard).
La memoria 26 contiene tres certificados C_{1T}, C_{2T} y C_{3T} criptográficos. El certificado C_{1T} contiene al menos:
-
una clave K_{T1pu} pública,
-
una fecha de expiración de este certificado, y
-
una firma S_{ign1}K_{T1pr} realizada a partir de los datos contenidos en el certificado C_{1T} y con ayuda de una clave K_{T1pr} privada correspondiente a la clave K_{T1pu} pública (certificado autofirmado).
El certificado C_{2T} contiene al menos:
-
una clave K_{T2pu} pública,
-
una fecha de expiración de este certificado, y
-
una firma S_{ign2}K_{T1pr} realizada a partir de los datos contenidos en el certificado C_{2T} y con ayuda de la clave K_{T1pr} privada.
Finalmente, el certificado C_{3T} contiene al menos una clave K_{T3pu} pública, una fecha de expiración y una firma S_{ign3}K_{T2pr}. La firma S_{ign3}K_{T2pr} está realizada a partir del contenido del certificado C_{3T} y con ayuda de una clave K_{T2pr} privada correspondiente a la clave K_{T2pu} pública.
La memoria 26 contiene también una clave K_{T3pr} privada, un umbral S_{1}, una clave K_{sp} de sesión precargada, un número n primo grande así como un número g que pertenece al conjunto Z_{n}, siendo el conjunto Z_{n} el conjunto de enteros comprendidos entre 0 y n-1.
La clave K_{T3pr} privada corresponde a la clave K_{T3pu} pública.
El conjunto de los datos descritos en este caso como contenidos en la memoria 26 se graba, por ejemplo, en esta memoria 26 durante la fabricación de la unidad 14. La unidad 14 comprende también un contador 30 de mensajes intercambiados entre la unidad 14 y el procesador 16, un registro 32 que contiene la fecha actual y un calculador 34 adecuado para establecer un código de redundancia de un mensaje enviado al procesador 16 y para verificar el código de redundancia de un mensaje recibido.
El procesador 16 de seguridad se presenta, por ejemplo, en forma de una tarjeta de chip adecuada para insertarse en la unidad 14 de desaleatorización. Con este fin, la unidad 14 y el procesador 16 comprenden cada uno interfaces de conexión, tales como conectores mecánicos de acoplamiento y desacoplamiento de la unidad 14 y del procesador 16.
Este procesador de seguridad comprende un módulo 52 adecuado para cifrar y descifrar todo o parte de un mensaje intercambiado entre el procesador 16 y la unidad 14 utilizando algoritmos de cifrado y de descifrado compatibles con los utilizados por el módulo 28.
El procesador 16 comprende además un módulo 50 de extracción y de descifrado de una palabra de control contenida en un mensaje ECM.
El procesador 16 comprende también:
-
un calculador 54 adecuado para calcular el código de redundancia de un mensaje enviado a la unidad 14 y para verificar el código de redundancia de un mensaje recibido de la unidad 14,
-
un contador 56 interno de mensajes intercambiados entre la unidad 14 y el procesador 16,
-
un registro 58 interno que contiene la fecha actual, y
-
medios de almacenamiento de información representados en forma de una memoria 60.
La memoria 60 contiene tres certificados C_{1c}, C_{2c} y C_{3c} criptográficos.
El certificado C_{1c} contiene al menos la clave K_{C1pu} pública, una fecha de expiración del certificado y una firma S_{ign1}K_{C1pr}. La firma S_{ign1}K_{C1pr} está realizada a partir del contenido del certificado C_{1c} con ayuda de una clave K_{C1pr} privada. La clave K_{C1pr} corresponde a la clave K_{C1pu} pública (certificado autofirmado).
El certificado C_{2c} contiene al menos una clave pública K_{C2pu}, una fecha de expiración del certificado C_{2c} y una firma S_{ign2}K_{C1pr} realizada a partir del contenido del certificado C_{2c} y con ayuda de la clave privada K_{C1pr}.
Le certificado C_{3c} contiene la clave K_{C3pu} pública, una fecha de expiración de este certificado C_{3c}, y una firma S_{ign3}K_{C2pr}. La firma S_{ign3}K_{C2pr} está realizada a partir del contenido del certificado C_{3c} y con ayuda de la clave K_{C2pr} privada.
La memoria 60 contiene también una clave K_{C3pr} privada, la clave K_{sp} de sesión precargada, un umbral S_{2} superior al umbral S_{1}, el número n primo y el número g. La clave K_{C3pr} privada corresponde a la clave K_{C3pu} pública. La clave K_{sp} precargada en la memoria 60 tiene el mismo valor que la clave K_{sp} cargada en la memoria 26.
Los datos contenidos en la memoria 60 descrita anteriormente se graban, por ejemplo, durante la fabricación del procesador 16.
El procesador 16 puede intercambiar mensajes con la unidad 14 únicamente cuando éste está insertado en la unidad 14.
Igualmente, la unidad 14 puede transmitir una señal multimedia desaleatorizada al decodificador 10 únicamente cuando esta unidad 14 está insertada en el decodificador 10.
El emisor 4 difunde señales multimedia aleatorizadas con ayuda de una palabra de control. Esta palabra de control se transmite en forma cifrada al dispositivo 6 en un mensaje ECM.
El dispositivo 6 recibe las señales multimedia aleatorizadas y el mensaje ECM, así como mensajes EMM (Entitlement Management Message) de gestión de los derechos de acceso y de la seguridad del sistema. Los mensajes ECM y EMM se transmiten por la unidad 14 al procesador 16. En particular, el mensaje ECM se transmite al módulo 50 del procesador 16 que extrae del mensaje ECM la palabra de control y la descifra.
La palabra de control así descifrada se transmite entonces a la unidad 14 en la que se aplica al desaleatorizador 22. El desaleatorizador 22 utiliza la palabra de control descifrada para desaleatorizar las señales multimedia aleatorizadas recibidas. Las señales multimedia desaleatorizadas se envían entonces al decodificador 10 que las decodifica y las envía a la unidad 20 de visualización para presentarlas a un usuario.
En el dispositivo 6, los mensajes intercambiados entre la unidad 14 y el procesador 16 se cifran con ayuda de la clave K_{s} de sesión. Según la realización, cada mensaje se cifra así en su totalidad en parte. En el caso de un cifrado parcial de cada mensaje, la palabra de control extraída del ECM y transmitida desde el procesador 16 a la unidad 14 constituye la parte sistemáticamente cifrada por el módulo 52.
La clave K_{s} de sesión la conocen únicamente el procesador 16 y la unidad 14. En particular, la clave K_{s} es diferente de un dispositivo de recepción a otro. Así, la intercepción de los mensajes intercambiados entre el procesador 16 y la unidad 14 se vuelve difícil e inutilizable por otro dispositivo de recepción.
A continuación va a describirse el funcionamiento del dispositivo 6 con respecto a los organigramas de las figuras 2, 3A, 3B y 4.
La figura 2 representa un procedimiento de establecimiento de los certificados C_{1T}, C_{2T}, C_{3T}, C_{1C}, C_{2c} y C_{3c}.
Inicialmente, una autoridad de confianza está dotada del certificado C_{1T}, del certificado C_{1c} y de las claves K_{T1pr} y K_{C1pr} privadas. Esta autoridad de confianza es, por ejemplo, la entidad encargada de garantizar la fiabilidad de los intercambios de mensajes entre la unidad 14 y el procesador 16.
Durante una etapa 80, la autoridad de confianza elige para un fabricante de unidades de desaleatorización un par de claves K_{T2pr}/K_{T2pu} privadas/públicas.
A continuación, durante una etapa 82, la autoridad construye para este fabricante el certificado C_{2T} y lo firma con ayuda de su clave K_{T1pr} privada.
Durante una etapa 84, el certificado C_{2T} construido durante la etapa 82, el certificado C_{1T} y la clave K_{T2pr} privada se transmiten al fabricante de unidades de desaleatorización.
Las etapas 80 a 84 se repiten para cada fabricante de unidades de desaleatorización. A cada fabricante de unidades de desaleatorización, durante la etapa 80, se le asigna un par de claves K_{T2pr}/K_{T2pu} privada/pública diferentes de las asignadas a otros fabricantes.
A continuación, cada fabricante, durante una etapa 86, elige un par de claves K_{T3pr}/K_{T3pu} privada/pública para cada unidad de desaleatorización fabricada. El par de claves K_{T3pr}/K_{T3pu} privada/pública es, preferiblemente única, para cada unidad de desaleatorización fabricada.
A continuación, durante una etapa 88, el fabricante construye el certificado C_{3T} de la unidad de desaleatorización y lo firma con ayuda de la clave K_{T2pr} privada que ha recibido durante de la etapa 84.
Finalmente, durante una etapa 90, los certificados C_{1T}, C_{2T}, C_{3T} y la clave K_{T3pr} privada se graban en la memoria 26 de la unidad 14.
Durante la etapa 90, la clave K_{sp} de sesión precargada y los números n y g se graban también en la memoria 26.
En paralelo a las etapas 80 a 84, durante las etapas 92 a 96, la autoridad de confianza realiza las mismas tareas que las realizadas para los fabricantes de unidades de desaleatorización, pero esta vez para los fabricantes de procesadores de seguridad. Por ejemplo, las etapas 92, 94 y 96 son, respectivamente, idénticas a las etapas 80, 82 y 84 con la excepción del hecho de que el índice "T" en los certificados C_{1T} y C_{2T} así como en las claves K_{T1pr}, K_{T2pr}, K_{T2pu} se sustituye por el índice "C".
Igualmente, en paralelo a las etapas 86 a 90, durante las etapas 98 a 102, el fabricante de procesadores de seguridad efectúa las mismas tareas que las descritas para los fabricantes de unidades de desaleatorización. Por ejemplo, las etapas 98, 100 y 102 son respectivamente idénticas a las etapas 86, 88 y 90 con la excepción del hecho de que el índice "T" en los términos C_{1T}, C_{2T}, C_{3T}, K_{T2pr}, K_{T3pr}, K_{T3pu} se sustituye por el índice "C".
Este apilamiento de tres niveles de certificados permite garantizar que únicamente un fabricante autorizado por la autoridad de confianza puede fabricar una unidad de desaleatorización o un procesador de seguridad susceptibles de funcionar en el dispositivo 6. En efecto, por ejemplo, un fabricante no autorizado de la unidad 14 de desaleatorización no puede generar un certificado C_{3T} firmado por una clave K_{T2pr} privada correspondiente a un certificado C_{2T} válido.
Una vez fabricada, la unidad 14 se inserta en el decodificador 10 y el procesador 16 se inserta en la unidad 14 para poder desaleatorizar las señales emitidas por el emisor 4.
Se ejecuta entonces el procedimiento de las figuras 3A y 3B de establecimiento de una clave de sesión simétrica común.
Inicialmente, durante una fase 110, el procesador 16 y la unidad 14 verifican mutuamente su autenticidad intercambiando sus certificados criptográficos.
Más precisamente, durante una etapa 112, la unidad 14 envía el certificado C_{1T} al procesador 16. Durante una etapa 114, el procesador 16 extrae del certificado C_{1T} la clave K_{T1pu} pública.
A continuación, durante una etapa 116, el procesador 16 verifica que el certificado C_{1T} recibido es válido. Durante esta etapa 116, verifica la firma del certificado C_{1T} con ayuda de la clave K_{T1pu} pública y compara la fecha de expiración contenida en este certificado con la fecha actual contenida en el registro 58.
Si el certificado no está correctamente firmado o si este certificado ha caducado (es decir la fecha actual es posterior a la fecha de expiración), durante una etapa 118, el procesador 16 envía a la unidad 14 un mensaje que ordena la detención de esta unidad 14 y se detiene. El procedimiento de establecimiento de una clave de sesión se interrumpe por tanto inmediatamente.
En caso contrario, es decir si el certificado C_{1T} recibido es válido, el procesador 16 envía, durante una etapa 120, el certificado C_{1C} a la unidad 14.
Durante una etapa 122, la unidad 14 extrae la clave K_{C1pu} pública del certificado C_{1C} y después verifica, durante una etapa 124, la validez del certificado C_{1C} recibido.
Durante esta etapa 124, la unidad 14 verifica la firma del certificado C_{1C} y compara la fecha de expiración contenida en este certificado con la date actual contenida en el registro 32.
Si la firma del certificado C_{1C} es incorrecta o si este certificado ha caducado, durante una etapa 126, la unidad 14 envía un mensaje al procesador 16 para ordenar la detención del procesador 16 y la unidad 14 se detiene. Así, no se ejecuta ninguna otra etapa con vistas a establecer la clave de sesión.
En caso contrario, es decir si el certificado recibido C_{1C} es válido, entonces, durante una etapa 128, la unidad 14 y el procesador 16 se intercambian y verifican mutuamente sus certificados C_{2C} y C_{2T}. Con este fin, durante la etapa 128, las etapas 112 a 126 se repiten sustituyendo los términos C_{1T}, C_{1C}, K_{T1pu}, K_{C1pu} respectivamente por los términos C_{2T}, C_{2C}, K_{T2pu}, K_{C2pu}\cdot
Al finalizar la etapa 128, si se ha establecido que uno de los certificados intercambiados no está correctamente firmado o ha caducado, la unidad 14 (respectivamente el procesador 16), en una etapa 129 equivalente a la etapa 126 (respectivamente 118), envía al procesador 16 (respectivamente a la unidad 14) un mensaje que ordena la detección de este procesador 16 (respectivamente esta unidad 14) y se detiene. En cambio, si al finalizar la etapa 128, se ha establecido que los certificados C_{2T} y C_{2C} son válidos, entonces durante una etapa 130, la unidad 14 y el procesador 16 se intercambian y verifican mutuamente la validez de sus certificados C_{3T} y C_{3C}. Por ejemplo, durante la etapa 130, las etapas 112 a 126 se repiten sustituyendo los términos C_{1T}, C_{1C}, K_{T1pu}, K_{C1pu} por los términos C_{3T}, C_{3C}, K_{T3pu}, K_{C3pu}.
Al finalizar la etapa 130, si se ha establecido que uno de los certificados intercambiados no está correctamente firmado o ha caducado, la unidad 14 (respectivamente el procesador 16), en una etapa 131 equivalente a la etapa 126 (respectivamente 118), envía al procesador 16 (respectivamente a la unidad 14) un mensaje que ordena la detención de este procesador 16 (respectivamente esta unidad 14) y se detiene. En cambio, si al finalizar la etapa 130, se ha establecido que los certificados C_{3T} y C_{3C} son válidos, entonces se activa una fase 150 de construcción de la nueva clave K_{s} de sesión ya que todos los certificados intercambiados durante la fase 110 son válidos.
Se entiende por tanto que, gracias a esta fase 110 de verificación mutua de los certificados, una unidad 14 sólo puede funcionar correctamente con un procesador 16 si esta unidad 14 y este procesador 16 se han fabricado por fabricantes autorizados.
Además, al finalizar la fase 110, la unidad 14 dispone especialmente de la clave K_{C3pu} pública certificada y el procesador 16 dispone especialmente de la clave K_{T3pu} pública certificada.
Los mensajes que sirven para llevar a cabo la fase 110 de verificación mutua de los certificados se intercambian entre la unidad 14 y el procesador 16 cifrados por la clave de sesión actual. Lo mismo sucede para los mensajes intercambiados par la unidad 14 y el procesador 16 que sirven para llevar a cabo la fase 150 de construcción de la nueva clave de sesión.
Al inicio de la fase 150, durante una etapa 152, la unidad 14 produce un número A aleatorio y lo envía, durante una etapa 154, al procesador 16.
Durante una etapa 156, el procesador 16 recibe el mensaje que contiene el número A y extrae este número.
Durante una etapa 158, el procesador 16 produce un número u aleatorio, y después construye, durante una etapa 160, un término X con ayuda de la relación siguiente:
(1)X = g^{u}mod n
en la que:
- g y n son los números grabados en la memoria 60.
- "mod" indica que la exponenciación g^{u} se realiza en módulo n.
\vskip1.000000\baselineskip
A continuación, durante una etapa 162, el procesador 16 asocia el término X y el número A aleatorio según una combinación predefinida y firma el resultado de esta combinación con su clave K_{C3pr} privada. Tal combinación es por ejemplo la concatenación del término X y del número A aleatorio.
Durante una etapa 164, el procesador 16 produce un número B aleatorio.
Después de esto, durante una etapa 166, un mensaje que contiene conjuntamente el número B aleatorio, el término X, el número A aleatorio y la firma de X y de A se envía a la unidad 14.
Cuando ésta recibe este mensaje, durante una etapa 168, la unidad 14 verifica la firma del término X y del número A aleatorio con la clave K_{C3pu} pública.
Si la firma es incorrecta, durante una etapa 170, la unidad 14 ordena la detención del procesador 16 y después se detiene.
En caso contrario, es decir si la firma del término X y del número A aleatorio es correcta, durante una etapa 172, la unidad 14 extrae el término X y el número A aleatorio del mensaje recibido.
A continuación, durante una etapa 174, la unidad 14 compara el número A recibido con el número A enviado durante la etapa 154.
Si los números aleatorios recibidos y enviados son diferentes, entonces, durante una etapa 176, la unidad 14 se detiene.
En caso contrario, el procedimiento prosigue mediante una etapa 178 durante la cual, la unidad 14 extrae el número B aleatorio del mensaje recibido y produce un número v aleatorio. A continuación, durante una etapa 180, la unidad 14 construye un término Y con ayuda de la relación siguiente:
(2)Y = g^{v}mod n
\newpage
Durante una etapa 182, la unidad 14 asocia el término Y y el número B aleatorio según una combinación predefinida, tal como una concatenación, y firma el resultado de esta combinación con la clave K_{T3pr} privada.
Durante una etapa 184, la unidad 14 envía al procesador 16 un mensaje que contiene conjuntamente el término Y, el número B aleatorio y la firma de Y y de B.
Durante una etapa 190, el procesador 16 recibe el mensaje y verifica, durante una etapa 192, la firma del término Y y del número B aleatorio con la clave K_{T3pu} pública.
Si la firma es incorrecta, durante una etapa 194, el procesador 16 ordena la detención de la unidad 14 y después se detiene.
En caso contrario, el procesador 16 extrae, durante una etapa 196, el término Y y el número B aleatorio del mensaje recibido.
A continuación, el procesador 16 compara, durante una etapa 198, el número B aleatorio recibido con el número B aleatorio enviado durante la etapa 166. Si estos números aleatorios no son iguales, entonces, durante una etapa 200, el procesador 16 se detiene.
Si no, durante las etapas 204 y 214, el procesador 16 y la unidad 14 proceden cada uno a la construcción de la nueva clave K_{s} de sesión.
Durante la etapa 209, el procesador 16 construye la nueva clave de sesión con ayuda de la relación siguiente:
(3)K_{s} = Y^{u}mod n
A continuación, durante una etapa 206, el procesador verifica si la clave de sesión construida durante la etapa 204 pertenece, para los algoritmos de cifrado y de descifrado utilizados, a una lista de claves débiles o de claves semidébiles. En el ejemplo del algoritmo DES, la lista de las claves débiles o de las claves semidébiles se describe en la sección 12.3 del libro de Bruce Schneier.
Si la clave de sesión construida pertenece a una lista de este tipo de claves débiles o semidébiles, entonces el procesador 16 conserva la clave de sesión actual para cifrar y descifrar los mensajes intercambiados con la unidad 14.
Si la clave de sesión construida no pertenece a esta lista de claves débiles o semidébiles, entonces, durante una etapa 208, el procesador 16 reinicializa su contador 56 y después, durante una etapa 210, sustituye la clave de sesión actual por la nueva clave de sesión utilizada a partir de entonces para cifrar y descifrar los mensajes intercambiados con la unidad 14.
En paralelo a las etapas 204 a 210, durante la etapa 214, la unidad 14 construye la nueva clave K_{s} de sesión con ayuda de la relación siguiente:
(4)K_{s} = X^{v}mod n
La unidad 14 pasa entonces a una etapa 216 de verificación para saber si la clave de sesión construida en la etapa 214 pertenece, para los algoritmos de cifrado y de descifrado utilizados, a una lista de claves débiles o semidébiles. La etapa 216 está diseñada obligatoriamente de manera coherente con la etapa 206.
Si la clave de sesión construida pertenece a una lista de este tipo de claves débiles o semidébiles, durante una etapa 218, la unidad 14 activa inmediatamente el establecimiento de una nueva clave de sesión. Para ello, el procedimiento vuelve a la etapa 112.
Si la clave de sesión construida no es una clave débil o semidébil, durante una etapa 220, la unidad 14 reinicializa su contador 30 y después, durante una etapa 222, sustituye la clave de sesión actual por la nueva clave de sesión construida. Así, los mensajes siguientes intercambiados entre la unidad 14 y el procesador 16 se cifran con ayuda de la nueva clave de sesión.
Se observará que, gracias a las etapas 168 y 192, el ataque del interceptor se detecta inmediatamente, lo que provoca la inmediata detención del procedimiento de construcción de la clave de sesión y el bloqueo de los intercambios. Igualmente, gracias a las etapas 174 y 198, un ataque por repetición se detecta inmediatamente, lo que provoca la inmediata detención de la construcción de la clave de sesión y el bloqueo de los intercambios.
El procedimiento de la figura 4 precisa la manera en la que se construyen y cifran los mensajes intercambiados entre la unidad 14 y el procesador 16.
\newpage
Este procedimiento empieza, por ejemplo, en la unidad 14 por una fase 240 de envío de un mensaje M_{T} desde la unidad 14 hacia el procesador 16.
Al inicio de la fase 240, durante una etapa 242, el contador 30 se incrementa un paso predeterminado.
A continuación, durante una etapa 244, el calculador 34 calcula el código R_{T} de redundancia del mensaje M_{T}. Este código de redundancia es el resultado de un algoritmo criptográfico, tal como una función Hash, aplicada al mensaje M_{T} y parametrizada por la clave de sesión actual y por el valor actual del contador 30 de mensajes. Este código de redundancia permitirá al procesador 16 verificar la integridad del mensaje recibido.
A continuación, durante una etapa 246, el mensaje M_{T} se cifra con ayuda de la clave K_{s} de sesión actual para obtener el criptograma M_{T}*.
Durante una etapa 247 se constituye un mensaje M_{RT} que contiene el criptograma M_{T}* y el código R_{T} de redundancia.
El mensaje M_{RT} se envía entonces al procesador 16 durante una etapa 248.
Durante una etapa 2491, a reserva de que esté en curso un procedimiento de cambio de clave de sesión, la unidad 14 compara el valor del contador 30 de mensajes con el umbral S1. Si se alcanza o se supera este umbral, la unidad 14 memoriza durante una etapa 2492 la necesidad de activar un procedimiento de cambio de clave de sesión que se efectuará según el procedimiento de las figuras 3A y 3B. Este procedimiento de cambio de clave se activará automáticamente por la unidad 14, especialmente después de que el mensaje M_{RT} haya sido tratado por el procesador 16 para no interrumpir el tratamiento en curso. Los mensajes intercambiados durante el procedimiento de cambio de clave de sesión se tratan según el procedimiento de la figura 4.
El procesador 16 pasa entonces a una fase 250 de recepción del mensaje M_{RT}.
Al inicio de la fase 250, durante una etapa 251, el procesador 16 recibe el mensaje M_{RT} enviado por la unidad 14.
El procesador 16 compara entonces, durante una etapa 252, el valor actual del contador 56 con el umbral S_{2}.
Si el valor del contador 56 alcanza o supera el umbral S_{2}, entonces el procesador 16 se detiene, durante una etapa 254.
En caso contrario, durante una etapa 256, el contador 56 se incrementa un paso.
El paso de incremento del contador 30 de la unidad 14 y del contador 56 del procesador 16 puede ser cualquiera, por ejemplo de uno, pero debe ser el mismo para que los contadores 30 y 56 estén sincronizados, es decir, que antes de las etapas de verificación del código de redundancia sus valores sean idénticos. Se observa también que la sincronización de los contadores 30 y 56 no necesita intercambiar explícitamente el valor de los contadores entre la unidad 14 y el procesador 16.
A continuación, durante una etapa 258, el criptograma M_{T}* se extrae del mensaje M_{RT} recibido y después se descifra por el módulo 52 con la clave de sesión actual para obtener el mensaje M_{T}.
Durante una etapa 260, el calculador 54 verifica el código R_{T} de redundancia contenido en el mensaje M_{RT} recibido. Con este fin, calcula el código R_{T}' de redundancia del mensaje M_{T} con ayuda de la clave de sesión actual y del valor actual del contador 56 de la misma manera que la unidad 14 en la etapa 244.
Si el código R_{T}' de redundancia reconstruido no corresponde al código R_{T} contenido en el mensaje recibido, entonces, durante una etapa 262, el procesador 16 se detiene.
En caso contrario, el procesador 16 trata durante una etapa 263 el mensaje M_{T} recibido.
E procesador 16 también puede pasar a una fase 264 de envío de un mensaje M_{C} hacia la unidad 14. Al inicio de la fase 264, el procesador 16 prueba durante una etapa 2651 si el contador 56 ha alcanzado o superado el umbral S_{2}. Si éste es el caso, se detiene durante una etapa 2652.
Si no, durante una etapa 266, el contador 56 se incrementa un paso. A continuación, durante una etapa 268, el calculador 54 calcula el código R_{C} de redundancia del mensaje M_{C}. Como en la etapa 244, este código de redundancia se parametriza por la clave de sesión actual y el valor actual del contador 56 de mensaje.
Durante la etapa 270 siguiente, el mensaje M_{C} se cifra con ayuda de la clave K_{s} de sesión para obtener un criptograma M_{C}*.
Durante una etapa 271 se constituye un mensaje M_{RC} que contiene el criptograma M_{C}* y el código R_{C} de redundancia. El mensaje M_{RC} se envía entonces a la unidad 14 durante una etapa 272.
La unidad 14 pasa entonces a una fase 276 de recepción del mensaje enviado por el procesador 16.
Al inicio de la fase 276, durante una etapa 278, la unidad 14 recibe el mensaje enviado por el procesador 16.
Durante una etapa 284, el contador 30 se incrementa un paso. Como en las etapas 242, 256 y 266, el paso de incremento de los contadores 30 y 56 puede ser cualquiera, pero debe ser el mismo, para garantizar la sincronización entre los dos contadores.
Después, durante una etapa 286, el módulo 28 extrae el criptograma M_{C}* del mensaje recibido y lo descifra con la clave K_{s} de sesión actual.
A continuación, durante una etapa 288, el calculador 34 verifica el código R_{C} de redundancia contenido en el mensaje recibido. Para ello, calcula el código R_{C}' de redundancia del mensaje M_{C} con ayuda de la clave de sesión actual y del valor actual del contador 30 de la misma manera que el procesador 16 en la etapa 268.
Si el código R_{C}' de redundancia reconstruido es diferente del código R_{C} de redundancia recibido, entonces la unidad 14 se detiene durante una etapa 290.
En caso contrario, la unidad 14 trata el mensaje descifrado M_{C}, durante una etapa 292.
Durante una etapa 294, a reserva de que esté en curso un procedimiento de cambio de clave de sesión, la unidad 14 compara el valor del contador 30 de mensajes con el umbral S1. Si se alcanza o supera este umbral, la unidad 14 memoriza durante una etapa 296 la necesidad de activar un procedimiento de cambio de clave de sesión que se activará automáticamente por la unidad 14. El procedimiento de cambio de clave de sesión se efectúa según el procedimiento de las figuras 3A y 3B con mensajes tratados según el procedimiento de la figura 4.
Se observará que, inmediatamente después de la primera inserción del procesador 16 en la unidad 14, la clave de sesión utilizada para cifrar los mensajes intercambiados es la clave K_{sp} previamente grabada. Esta clave sirve para enmascarar los mensajes intercambiados durante la primera puesta en clave según el procedimiento de las figuras 3A y 3B.
Son posibles otros numerosos modos de realización del sistema 2 y los procedimientos de las figuras 2, 3A, 3B y 4. Por ejemplo, la etapa 162 puede sustituirse por una etapa de firma durante la cual o bien únicamente el término X o bien únicamente el número A aleatorio se firma con la clave K_{C3pr} privada. Igualmente, la etapa 182 puede sustituirse por una etapa durante la cual o bien únicamente el término Y o bien únicamente el número B aleatorio se firma con la clave K_{T3pr}. Las etapas siguientes del procedimiento de las figuras 3A y 3B se adaptan por tanto de manera correspondiente.
Los certificados C_{1T} y C_{1C} pueden sustituirse, respectivamente, por los valores de las claves K_{T1pu} y K_{C1p}u sin utilizar un certificado de estas claves públicas.
Si se envía sistemáticamente una respuesta con cada mensaje recibido, es posible incrementar los contadores 30 y 56 o bien únicamente durante la recepción de un mensaje o bien únicamente durante el envío de un mensaje.
Los certificados intercambiados entre el procesador 16 y la unidad 14 pueden contener información complementaria que permita a cada una de estas unidades identificar según diversos criterios a la otra unidad. Tras el análisis de esta información complementaria, una de las unidades puede adoptar un comportamiento específico adaptado a la otra unidad, tal como se ha descrito, por ejemplo, en la solicitud de patente FR 2 841 714.
El código de redundancia transmitido en los mensajes intercambiados también puede utilizarse, conjuntamente con la clave K_{s} de sesión, para inicializar el cifrado de los mensajes, durante las etapas 246 y 270, y su descifrado, durante las etapas 258 y 286.
El cifrado puede afectar a la combinación del mensaje M_{T} (respectivamente M_{C}) y de su código de redundancia. En este caso, las etapas 246 y 247 (respectivamente 270 y 271) se permutan. El mensaje M_{T} (respectivamente M_{C}) y su código de redundancia se combinan para empezar durante la etapa 247 (respectivamente 271) y después esta combinación se cifra durante la etapa 246 (respectivamente 270) para obtener el mensaje que va a transmitirse. Igualmente, durante la etapa 258 (respectivamente 286), el descifrado afecta al mensaje recibido y proporciona el mensaje M_{T} (respectivamente M_{C}) y su código de redundancia. En este caso, la inicialización del cifrado por el código de redundancia no es aplicable.
Cuando una de las unidades se detiene tras la detección de una tentativa de ataque, no es necesario que ésta solicite, antes de detenerse, la detención de la otra unidad. Por ejemplo, la detención de la unidad se traduce en la ausencia de respuesta a un mensaje, pudiendo esta ausencia de respuesta interpretarse por la otra unidad como una orden de detención. Para ello, las unidades utilizarán normalmente un temporizador que activa automáticamente la detención de la unidad en cuestión si ésta no ha recibido una respuesta a un mensaje en el tiempo descontado por el
temporizador.
El procedimiento de la figura 2 se describe en el caso particular en el que las autoridades dotadas de los certificados C_{2T} y C_{2C} son fabricantes, lo que permite controlar la interoperabilidad de los terminales o procesadores fabricados por diferentes fabricantes. En una variante, se asignan diferentes certificados C_{2T} y C_{2C} a diferentes operadores de firmas multimedia. En este caso, los certificados C_{2T} y C_{2C} permiten controlar la interoperabilidad de los terminales y de los procesadores de diferentes operadores.
En otro ejemplo de realización, la unidad 14 está integrada en el decodificador 10.
En otro ejemplo de realización, los datos contenidos en la memoria 26 ó 60 pueden modificarse mediante mensajes específicos, en particular los certificados pueden renovarse en función de sus periodos de validez.

Claims (11)

1. Procedimiento de establecimiento de una clave K_{s} de sesión simétrica común entre una unidad de desaleatorización de señales multimedia aleatorizadas con una palabra de control y una unidad criptográfica amovible adecuada para descifrar la palabra de control necesaria para la desaleatorización, en el que:
a)
una de las unidades, denominada primera unidad, produce (152, 164) un primer número aleatorio y lo envía a la otra unidad,
b)
la otra unidad, denominada segunda unidad, construye (160, 180) un término \alpha a partir del cual la primera unidad puede establecer la clave K_{s} de sesión según la relación siguiente:
K_{s} = \alpha^{\beta}mod n
en la que \beta es un segundo número aleatorio producido por la primera unidad y n es un número primo,
caracterizado porque:
c)
la segunda unidad envía (166, 184) a la primera unidad un mensaje que contiene conjuntamente el primer número aleatorio recibido, el término \alpha y una firma del número aleatorio y/o del término \beta realizada con una clave K_{3Pr} privada de la segunda unidad, y después
d)
la primera unidad verifica (168, 192) la firma con ayuda de una clave K_{3pu} pública correspondiente a la clave K_{3pr} privada y compara (174, 198) el primer número aleatorio recibido con el enviado, y
e)
si la firma es incorrecta o si el primer número aleatorio recibido no corresponde al enviado, entonces la primera unidad no pasa a las siguientes etapas que permiten establecer la clave de sesión.
2. Procedimiento según la reivindicación 1, caracterizado porque las etapas a) a e) se repiten una segunda vez invirtiendo los papeles de las unidades primera y segunda.
3. Procedimiento según una cualquiera de las reivindicaciones anteriores, caracterizado porque previamente a las etapas a) a e), la unidad de desaleatorización y la unidad criptográfica amovible intercambian mutuamente (112, 120, 128, 130):
-
una primera clave K_{1pu} pública,
-
un primer certificado (C_{2T} y C_{2C}) que contiene al menos una segunda clave K_{2pu} pública, estando este certificado firmado con ayuda de una primera clave K_{1pr} privada correspondiente a la primera clave K_{1pu} pública, y
-
un segundo certificado (C_{3T} y C_{3C}) que contiene al menos una tercera clave K_{3pu} pública, estando este certificado firmado con ayuda de una segunda clave K_{2pr} privada correspondiente a la segunda clave K_{2pu} pública, la tercera clave K_{3pu} pública correspondiente a la clave K_{3pr} privada utilizada para realizar la firma durante la etapa c), y porque la unidad de desaleatorización y la unidad criptográfica amovible verifican (128, 130) cada una los certificados primero y segundo recibidos y pasan a las etapas a) a e) únicamente si la unidad de desaleatorización y la unidad criptográfica amovible han podido verificar con éxito la autenticidad de los certificados primero y segundo recibidos por cada una de ellas.
4. Procedimiento según una cualquiera de las reivindicaciones anteriores, caracterizado porque al menos una de las unidades incrementa (242, 284) un primer contador interno en función del número de mensajes enviados hacia y/o recibidos desde la otra unidad y activa (2492, 296) automáticamente el establecimiento de una nueva clave de sesión si el primer contador supera un primer umbral predeterminado.
5. Procedimiento según la reivindicación 4, caracterizado porque la otra unidad incrementa (256, 266) un segundo contador interno en función del mismo número de mensajes y provoca (254, 2652) automáticamente la detención de la desaleatorización de las señales multimedia si el segundo contador supera un segundo umbral predeterminado superior al primer umbral.
6. Procedimiento según una cualquiera de las reivindicaciones anteriores, caracterizado porque:
-
cada una de las unidades incrementa (242, 256, 266, 284) un contador interno en función del número de mensajes enviados y/o recibidos,
-
al menos una de las unidades añade (247, 271) a cada mensaje enviado hacia la otra unidad un código de redundancia calculado en función del contenido del mensaje que va a enviarse y del valor actual de su contador interno, y
-
la otra unidad verifica (260, 288) la exactitud del mensaje recibido comparando el código de redundancia añadido con un código de redundancia calculado en función del contenido del mensaje recibido y del valor actual de su propio contador interno.
7. Unidad (14, 16) adaptada para utilizarse en un procedimiento de establecimiento de una clave de sesión común según una cualquiera de las reivindicaciones anteriores, caracterizada porque esta unidad comprende medios adecuados para ejecutar o bien las etapas a), d) y e), o bien las etapas b) y c) del procedimiento de establecimiento de una clave de sesión según las reivindicaciones anteriores.
8. Unidad (14, 16) según la reivindicación 7, caracterizada porque la unidad comprende medios adecuados para intercambiar con la otra unidad la primera clave pública, los certificados primero y segundo y para verificar los certificados primero y segundo recibidos para pasar o bien a las etapas a), d) y e), o bien a las etapas b) y c) únicamente si la autenticidad de los certificados primero y segundo recibidos ha podido verificarse con éxito.
9. Unidad (14, 16) según la reivindicación 7 u 8, caracterizada porque la unidad comprende medios adecuados o bien para incrementar un primer contador (30) interno en función del número de mensajes enviados hacia y/o recibidos desde la otra unidad y para activar el establecimiento de una nueva clave de sesión si el contador supera un primer umbral (S_{1}) predeterminado, o bien para incrementar un segundo contador (56) interno en función del mismo número de mensajes y para provocar la detención de la desaleatorización de las señales multimedia si el segundo contador supera un segundo umbral (S_{2}) predeterminado superior al primer umbral.
10. Unidad según una cualquiera de las reivindicaciones 7 a 9, caracterizada porque la unidad comprende medios adecuados:
-
para incrementar un contador (30, 56) interno en función de un número de mensajes enviados hacia y/o recibidos desde la otra unidad y,
-
o bien para añadir a cada mensaje enviado hacia la otra unidad un código de redundancia calculado en función del contenido del mensaje que va a enviarse y del valor actual de su contador interno,
-
o bien para verificar la exactitud del mensaje recibido comparando el código de redundancia añadido con un código de redundancia calculado en función del contenido del mensaje recibido y del valor actual de su propio contador interno.
11. Unidad según una cualquiera de las reivindicaciones 7 a 10, caracterizada porque la unidad es o bien una unidad (14) de desaleatorización de una señal multimedia aleatorizada con una palabra de control o bien una unidad (16) criptográfica amovible adecuada para descifrar la palabra de control necesaria para la desaleatorización.
ES06808056T 2005-08-26 2006-08-25 Procedimiento de establecimiento de una clave de sesion y unidades para la puesta en practica del procedimiento. Active ES2325222T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0508782A FR2890267B1 (fr) 2005-08-26 2005-08-26 Procede d'etablissement d'une cle de session et unites pour la mise en oeuvre du procede
FR0508782 2005-08-26

Publications (1)

Publication Number Publication Date
ES2325222T3 true ES2325222T3 (es) 2009-08-28

Family

ID=36359084

Family Applications (1)

Application Number Title Priority Date Filing Date
ES06808056T Active ES2325222T3 (es) 2005-08-26 2006-08-25 Procedimiento de establecimiento de una clave de sesion y unidades para la puesta en practica del procedimiento.

Country Status (12)

Country Link
US (1) US20090016527A1 (es)
EP (1) EP1917756B1 (es)
KR (1) KR101273991B1 (es)
CN (1) CN101248614B (es)
AT (1) ATE428236T1 (es)
DE (1) DE602006006190D1 (es)
DK (1) DK1917756T3 (es)
ES (1) ES2325222T3 (es)
FR (1) FR2890267B1 (es)
PL (1) PL1917756T3 (es)
TW (1) TWI478566B (es)
WO (1) WO2007023231A1 (es)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2096564B1 (en) * 2008-02-29 2018-08-08 Euroclear SA/NV Improvements relating to handling and processing of massive numbers of processing instructions in real time
US8768843B2 (en) * 2009-01-15 2014-07-01 Igt EGM authentication mechanism using multiple key pairs at the BIOS with PKI
EP2211497A1 (fr) * 2009-01-26 2010-07-28 Gemalto SA Procédé d'établissement de communication sécurisée sans partage d'information préalable
EP2384562B1 (en) * 2009-01-31 2013-07-17 International Business Machines Corporation Management of cryptographic credentials in data processing systems
US8812854B2 (en) * 2009-10-13 2014-08-19 Google Inc. Firmware verified boot
EP2405650A1 (en) * 2010-07-09 2012-01-11 Nagravision S.A. A method for secure transfer of messages
TW201624961A (zh) 2010-11-15 2016-07-01 內數位專利控股公司 憑症驗證及頻道耦合
US9467283B2 (en) 2013-06-24 2016-10-11 Blackberry Limited Securing method for lawful interception
KR102296184B1 (ko) * 2014-10-01 2021-08-31 삼성전자주식회사 이동 통신 시스템에서 통신 및 디스커버리 신호 송신 기법
EP3363152B1 (en) * 2015-10-16 2021-07-21 Nokia Technologies Oy Message authentication
DE102015225651A1 (de) * 2015-12-17 2017-06-22 Robert Bosch Gmbh Verfahren und Vorrichtung zum Übertragen einer Software
KR101802826B1 (ko) 2016-10-27 2017-11-30 고려대학교 산학협력단 Id 기반 인증 및 키 교환 방법
US10503566B2 (en) * 2018-04-16 2019-12-10 Chicago Mercantile Exchange Inc. Conservation of electronic communications resources and computing resources via selective processing of substantially continuously updated data
FR3093363B1 (fr) * 2019-02-28 2021-12-03 Psa Automobiles Sa Procédé et dispositif de cryptographie symétrique pour calculateur de véhicule

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
HRP970160A2 (en) * 1996-04-03 1998-02-28 Digco B V Method for providing a secure communication between two devices and application of this method
US6226383B1 (en) * 1996-04-17 2001-05-01 Integrity Sciences, Inc. Cryptographic methods for remote authentication
WO1998052316A1 (en) * 1997-05-09 1998-11-19 Connotech Experts-Conseils Inc. Initial secret key establishment including facilities for verification of identity
JP2001519629A (ja) * 1997-10-02 2001-10-23 カナル プラス ソシエテ アノニム 暗号化されたデータストリームを伝送するための方法および装置
CA2316227C (en) * 1998-01-02 2009-08-11 Cryptography Research, Inc. Leak-resistant cryptographic method and apparatus
JO2117B1 (en) * 1998-07-15 2000-05-21 كانال + تيكنولوجيز سوسيته انونيم A method and device for the secure communication of information between a group of audio-visual devices that operate with numbers
US6550008B1 (en) * 1999-02-26 2003-04-15 Intel Corporation Protection of information transmitted over communications channels
US6484257B1 (en) * 1999-02-27 2002-11-19 Alonzo Ellis System and method for maintaining N number of simultaneous cryptographic sessions using a distributed computing environment
US7185362B2 (en) * 2001-08-20 2007-02-27 Qualcomm, Incorporated Method and apparatus for security in a data processing system
CN1268088C (zh) * 2001-11-29 2006-08-02 东南大学 基于pki的vpn密钥交换的实现方法
FR2841714B1 (fr) * 2002-06-26 2005-03-04 Viaccess Sa Protocole d'adaptation du degre d'interactivite entre equipements informatiques interlocuteurs soumis a un dialogue interactif
CN1192542C (zh) * 2003-04-23 2005-03-09 浙江大学 一种基于公钥证书的密钥交换方法
EP1673898A1 (en) * 2003-09-22 2006-06-28 Impsys Digital Security AB Data communication security arrangement and method
JP2005157930A (ja) * 2003-11-28 2005-06-16 Matsushita Electric Ind Co Ltd 機密情報処理システムおよびlsi

Also Published As

Publication number Publication date
PL1917756T3 (pl) 2009-12-31
FR2890267A1 (fr) 2007-03-02
FR2890267B1 (fr) 2007-10-05
CN101248614B (zh) 2011-04-27
KR101273991B1 (ko) 2013-06-17
CN101248614A (zh) 2008-08-20
TW200711435A (en) 2007-03-16
US20090016527A1 (en) 2009-01-15
EP1917756B1 (fr) 2009-04-08
TWI478566B (zh) 2015-03-21
DE602006006190D1 (de) 2009-05-20
KR20080041279A (ko) 2008-05-09
WO2007023231A1 (fr) 2007-03-01
EP1917756A1 (fr) 2008-05-07
ATE428236T1 (de) 2009-04-15
DK1917756T3 (da) 2009-08-31

Similar Documents

Publication Publication Date Title
ES2325222T3 (es) Procedimiento de establecimiento de una clave de sesion y unidades para la puesta en practica del procedimiento.
KR101009523B1 (ko) 두 장치 간의 안전한 데이터 교환 방법 및 수신기
ES2362462T3 (es) Activación controlada de función.
CN101005356B (zh) 对加扰内容数据对象进行解扰的方法
US12242621B2 (en) Protecting data from brute force attack
ES2326835T3 (es) Procedimiento y sistema de recepcion de una señal multimedia, entidad criptografica para este procedimiento de recepcion y sistema, procedimiento y caja negra para la fabricacion de la entidad criptografica.
KR20140034725A (ko) 제어 워드 보호
US9165148B2 (en) Generating secure device secret key
CN102075802B (zh) 一种机顶盒和智能卡安全通信的方法
CN102802036A (zh) 一种数字电视认证的系统及方法
JP5933705B2 (ja) 受信機ソフトウェアの保護
ES2724703T3 (es) Verificación del código MAC sin revelación
US9986308B2 (en) Method and device to embed watermark in uncompressed video data
US20130279694A1 (en) System and method to record encrypted content with access conditions
US20180019877A1 (en) Control word protection method for conditional access system
KR101255987B1 (ko) Dcas 시스템의 sm과 tp간의 페어링 방법, 이를 이용한 셋탑박스 및 인증장치
US9077854B2 (en) Preventing the use of modified receiver firmware in receivers of a conditional access system
ES2906474T3 (es) Método de recepción y de descifrado de un criptograma de una palabra de control
KR20110028784A (ko) 디지털 컨텐츠 처리 방법 및 시스템
WO2014154236A1 (en) Obtaining or providing key data