ES2362462T3 - Activación controlada de función. - Google Patents
Activación controlada de función. Download PDFInfo
- Publication number
- ES2362462T3 ES2362462T3 ES08737723T ES08737723T ES2362462T3 ES 2362462 T3 ES2362462 T3 ES 2362462T3 ES 08737723 T ES08737723 T ES 08737723T ES 08737723 T ES08737723 T ES 08737723T ES 2362462 T3 ES2362462 T3 ES 2362462T3
- Authority
- ES
- Spain
- Prior art keywords
- auxiliary data
- component
- product
- remote position
- data
- 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
Links
- 230000004913 activation Effects 0.000 title claims abstract description 42
- 238000000034 method Methods 0.000 claims abstract description 19
- 230000004044 response Effects 0.000 claims description 28
- 238000004891 communication Methods 0.000 claims description 7
- 239000000047 product Substances 0.000 description 46
- 238000001994 activation Methods 0.000 description 31
- 230000006870 function Effects 0.000 description 26
- 238000013475 authorization Methods 0.000 description 14
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000010367 cloning Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 239000006185 dispersion Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000003863 physical function Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 239000000243 solution Substances 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 102100026816 DNA-dependent metalloprotease SPRTN Human genes 0.000 description 1
- 101710175461 DNA-dependent metalloprotease SPRTN Proteins 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000013067 intermediate product Substances 0.000 description 1
- 238000002356 laser light scattering Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/321—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3278—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Storage Device Security (AREA)
- Selective Calling Equipment (AREA)
- Preparation Of Compounds By Using Micro-Organisms (AREA)
Abstract
Un procedimiento de activación controlada de al menos una función en un producto o componente en una posición remota, cuya activación requiere que un elemento de datos de activación correcta se encuentre disponible en el producto o componente, caracterizado por recibir una o más salidas ruidosas de un elemento no clonable asociado al componente desde la posición remota, siendo las salidas del elemento no clonable susceptibles de ruido y perturbaciones, y proporcionar datos auxiliares a la posición remota para transformar la una o más salidas ruidosas en un valor simple que corresponda con el elemento de datos de activación correcta.
Description
La invención se refiere a activación controlada de al menos una función en un producto o un componente tal como un chip, un FPGA o un módulo de software.
Productos tales como televisores, teléfonos móviles, reproductores DVD, ordenadores, ordenadores personales portátiles y otros aparatos electrónicos, así como también los programas de ordenador para tales productos, implementan una gran diversidad de características o funciones. Estas funciones se denominan habitualmente bloques de propiedad intelectual (IP) y son proporcionados por proveedores de IP, una o más compañías diferentes u otras entidades. Los bloques de IP pueden ser proporcionados, por ejemplo, como parte de diseños de chips, corrientes de bits para matrices de puerta programable en campo (FPGAs) o componentes de software.
Puesto que estos bloques de IP se encuentran con frecuencia disponibles sobre la base de un royalty por producto, es deseable controlar la activación de estos bloques de IP. Es decir, un bloque de IP no deberá estar en operación en un producto a menos que se haya informado de este hecho a, y opcionalmente sea autorizado por, un proveedor de IP.
Soluciones conocidas en este campo incluyen informar de un identificador único asociado al producto o bloque de IP, a un servidor remoto, con lo que el servidor devuelve un código de autorización asociado al identificador único.
Con preferencia, el código de autorización está diseñado de tal manera que solamente con un código de autorización correcto, la funcionalidad del bloque de IP puede ser activada. La activación en este contexto se implementa con frecuencia comparando el código de autorización con un código predefinido disponible en el bloque de IP. Si los códigos no se emparejan, la función no se habilita. El código de autorización puede ser también utilizado como clave para desbloquear o descodificar todo o parte del bloque de IP, por ejemplo como clave de descodificación para descodificar una corriente de datos que ha de ser cargada en una FPGA para provocar que la FPGA proporcione la función en cuestión.
Por ejemplo, cada plataforma Xilinx Spartan™-3A está dotada de un número de serie único, mencionado como “ADN de Dispositivo”. Los datos de configuración comprenden un valor de autenticación que corresponde con el ADN de Dispositivo de un espécimen particular. Cada espécimen está equipado con un módulo que verifica si el ADN de Dispositivo de la plataforma se empareja con el valor de autenticación, y habilita toda o parte de la funcionalidad del módulo solamente si existe tal emparejamiento, es decir, si está presente el dato de configuración correcto.
El código de autorización puede ser utilizado también como clave necesaria para procesar la entrada proporcionada en el bloque de IP, por ejemplo como clave de descodificación para que el contenido audiovisual sea descodificado por el bloque de IP, o para autenticar el producto en un servidor remoto con el que se debe intercambiar el dato.
El documento WO 2006/053304, incorporado en la presente memoria por referencia, divulga un procedimiento de determinación de una clave a partir de una función físicamente no clonable (PUF) prevista en tal dispositivo. Esto incluye aplicar datos de control de error a la respuesta de la PUF. La clave puede ser utilizada entonces, por ejemplo, para permitir que el dispositivo descifre datos tales como el contenido audiovisual codificado, o se autentifique a sí mismo respecto a otras partes.
Otra alternativa para obtener una clave a partir de una PUF ha sido descrita por B. Skoric, P. Tuyls y W. Ophey, “Extracción robusta de clave a partir de Funciones Físicas No Clonables”, Criptografía Aplicada y Seguridad de Red ACNS 2005, LNCS 3531, pp. 407-422 (2005). Se extrae una clave de una respuesta de PUF aplicando determinados datos auxiliares a la respuesta cruda.
Un problema de este campo es el de la clonación. Un bloque de IP o incluso un dispositivo completo, puede ser copiado en su totalidad, es decir, incluyendo el identificador único asociado. El bloque de IP del clon puede ser activado ahora utilizando el mismo código de autorización que el bloque de IP del original. El clon no tiene así necesidad de ser notificado al servidor remoto, causando una sub-notificación de bloques de IP activados y una pérdida asociada de royalties.
Para proteger contra la clonación, se encuentran disponibles diversas soluciones que proporcionan identificadores supuestamente no clonables. Por ejemplo, el documento WO 2006/071380, incorporado en la presente memoria por referencia, divulga un dispositivo configurable en campo, tal como una FPGA, que soporta configuración de campo segura sin utilizar ningún almacenamiento volátil o no-volátil para claves criptográficas en el dispositivo. Este dispositivo está dotado de una función físicamente no clonable o PUF que, dada una proposición, proporciona una salida que es única para cada espécimen particular del dispositivo. Sin embargo, una PUF particular no puede ser clonada o reproducida en otro dispositivo. Para asegurar que se genera la misma salida, se necesita aplicar determinados datos de corrección de error a una determinada respuesta. Esto hace que sea posible extraer los datos de configuración desde la salida de una PUF. Solamente un espécimen particular puede entonces reconstruir con éxito los datos de configuración.
Generalmente hablando, estas alternativas proporcionan protección contra la copia no autorizada vinculando el bloque de IP a un espécimen particular de un producto por medio de un elemento único extraído de la PUF. Una copia del bloque de IP no podrá operar sobre un espécimen diferente debido a que la PUF de ese espécimen diferirá de la PUF del espécimen original, lo que provocará que falle la reconstrucción de los datos de configuración. Esto puede conducir a un valor o clave de autenticación erróneo.
Estas soluciones tienen en común el hecho de que, en algún punto, el identificador necesita ser leído y suministrado al servidor remoto para recibir el correspondiente código de autorización. Durante ese proceso, tanto el identificador como el código de autorización pueden ser observados y registrados. A continuación se puede producir aún un clon, por ejemplo dotando al clon de un simple chip que reproduzca el identificador observado. Este chip reemplaza entonces la memoria u otro elemento que proporcione originalmente el identificador.
Se pueden adoptar medidas para impedir el espionaje en el proceso de activación, pero éstas son complejas y pueden rebasar las capacidades de muchos dispositivos. El documento WO 2006/071380 mencionado anteriormente utiliza codificación de clave pública, para transferir con seguridad el identificador, o recomienda el uso de un procedimiento de inscripción separado en un entorno de confianza.
Además, los inventores han descubierto que lo anterior supone implícitamente una confianza absoluta en la entidad que programa o carga estos datos auxiliares en el componente o producto en cuestión. En muchos casos, esta entidad será una tercera parte fabricante que fabrica los productos o los componentes intermedios. Esta entidad deberá notificar al (a los) proveedor(es) de IP cuáles y cuántos productos han sido fabricados por la misma, de modo que pueda ser cargado el derecho de royalty respecto a los bloques de IP que haya utilizado.
Sin embargo, un fabricante puede fabricar más utilizando simplemente las mismas instalaciones que utilizó para los productos “oficiales”. Estos productos extra tienen, por supuesto, su propia PUF única, pero el fabricante está capacitado para dotarlos de los datos auxiliares correctos, lo que provocará que los bloques de IP que se basen en la PUF, funcionen como si estuvieran instalados en los originales. El fabricante tiene que saber cómo proporcionar los datos auxiliares a menos que no pueda fabricar los productos oficiales. Esto hace que sea posible para un fabricante hacer pasar estos productos extra, no autorizados, como originales. Ahora es también posible sub-notificar el número de productos fabricados, lo que significa que el proveedor de IP recibe royalties más bajos de lo que le corresponden.
Así, existe una necesidad de un procedimiento de activación controlada de una función que impida la activación de dispositivos clonados.
La invención proporciona un procedimiento de activación controlada de al menos una función en un producto o componente en una posición remota, cuya activación requiere que se encuentre disponible en el producto o componente un elemento de datos de activación correcta, caracterizado por recibir una o más salidas ruidosas de un elemento no clonable asociado al componente desde la posición remota, y proporcionar datos auxiliares a la posición remota, cuyos datos auxiliares transforman la una o más señales ruidosas en un valor simple que se corresponde con el elemento de datos de activación correcta.
Los componentes no clonables con salidas ruidosas son conocidos en sí mismos. Un nombre de tales componentes es el de Funciones Físicas Aleatorias (No Clonables) o PUFs. Los datos auxiliares denominados de ese modo proporcionan redundancia para transformar esas respuestas ruidosas en un valor simple que puede ser elegido arbitrariamente. Es decir, la misma respuesta ruidosa puede ser transformada en diferentes valores simples mediante una elección apropiada de los datos auxiliares.
La invención propone computar estos datos auxiliares en una posición que es remota respecto a donde está situado el producto o componente que debe ser activado. Para activar la función, debe estar disponible un elemento de activación correcto. Los datos auxiliares transforman la una o más salidas ruidosas en un valor simple que corresponde con el elemento de datos de activación correcta. Los datos auxiliares se transmiten hasta la posición remota donde reside el producto o componente. Esto permite que el producto o componente extraiga el elemento de datos de activación correcta.
Sorprendentemente, este uso impide la activación de dispositivos clonados. El componente no clonable, por definición, no puede ser clonado. Un segundo componente no puede ser activado utilizando los datos auxiliares recibidos para una primera respuesta, puesto que los datos auxiliares únicamente están vinculados a la respuesta ruidosa producida por la PUF para el primer componente (y transforma esa respuesta en un identificador único y robusto). Aplicar esos datos auxiliares a una respuesta ruidosa producida por la PUF para el segundo componente, no dará como resultado la correcta activación del elemento de datos. Debido a la necesidad de incluir una entidad remota para la activación, según propone la invención, el proceso de activación no puede ser eludido.
Obsérvese que “un elemento de datos de activación” puede comprender múltiples bits o bytes de datos. De manera similar, el “valor simple” que antecede consistirá típicamente en múltiples bits o bytes de datos.
El documento WO 2006/071380 mencionado anteriormente, divulga un dispositivo que está dotado de una función físicamente no clonable o PUF que, dado un supuesto, proporciona una salida que es única para cada espécimen particular del dispositivo. Para asegurar que se produce la misma salida, se necesita aplicar determinados datos de corrección de error a una respuesta determinada. La salida se suministra a continuación a un servidor remoto, el cual devuelve un código de autorización que ha sido blindado utilizando la salida, por ejemplo como resultado de una operación XOR que combina la salida y el código de autorización.
Una diferencia clave con la presente invención consiste en que, en este sistema, la salida según se envía al servidor ha sido estabilizada y por lo tanto no es ruidosa. Esto requiere que el dispositivo debe medir y estabilizar la respuesta durante la inscripción, lo que necesita un tiempo que puede no estar disponible, especialmente cuando la inscripción tiene lugar durante la producción. La invención, por el contrario, desplaza la estabilización, la computación de datos auxiliares, al lado del servidor.
Además, la alternativa del documento WO 2006/071380 necesita dos etapas: la primera, estabilizar la respuesta ruidosa, y la segunda utilizar la salida estabilizada para suministrar de forma segura un código de autorización. La presente invención realiza ambas en una única etapa integrada. Los datos auxiliares se computan de tal manera que se transforma la una o más salidas en un valor simple que corresponde con el elemento de datos de activación correcta. Existe por tanto una relación entre los datos auxiliares y el código de activación, cuya relación no se encuentra en la alternativa del documento WO 2006/071380.
Esta relación, entre otras cosas, reduce la cantidad de datos que se necesita almacenar. La presente invención solamente necesita almacenar los datos auxiliares. La aplicación de los datos auxiliares a la respuesta ruidosa produce el elemento de datos de activación. La alternativa del documento WO 2006/071380 necesita almacenar tanto los datos de corrección de error (para estabilizar la respuesta ruidosa) como el código de autorización blindado.
Una realización de la presente invención comprende transmitir el elemento de autenticación para establecer autenticidad de los datos auxiliares en la posición remota. Esto asegura que ningún tercero puede proporcionar datos auxiliares que habiliten la funcionalidad del componente. El componente debe estar configurado en esta realización para emplear solamente los datos auxiliares si la autenticidad de los datos auxiliares puede ser verificada utilizando el elemento de autenticación. Por ejemplo, el elemento de autenticación puede ser una signatura digital separada o un código de autenticación de mensaje. Alternativamente, los datos auxiliares pueden ser codificados con una clave, por ejemplo utilizando una operación tal como XOR o codificación de clave pública.
En una variante de esta realización, el elemento de autenticación se obtiene mediante la transmisión de los datos auxiliares a una tercera parte, y la recepción del elemento de autenticación en respuesta desde esa tercera parte. Esta realización asegura que la parte que habilita la funcionalidad no puede suministrar datos auxiliares sin que la tercera parte, típicamente el proveedor del componente en cuestión, la conozca. Dos opciones de implementación posibles consisten en un cuadro negro en la parte de confianza, y un servidor remoto en el proveedor de IP contactado en tiempo real por la parte de confianza.
En otra variante, los datos auxiliares son codificados con anterioridad a transmitirlos a la tercera parte. Con la codificación de los datos auxiliares, se asegura que la tercera parte no obtiene acceso a los propios datos auxiliares. Esto le evita tener que aprender cómo construir datos auxiliares para respuestas particulares. A continuación, se utiliza preferentemente una firma ciega para firmar los datos auxiliares.
Una realización adicional comprende recibir un elemento de autenticación remota desde la posición remota, y proporcionar los datos auxiliares solamente si los datos auxiliares pueden ser autenticados con éxito utilizando el elemento de autenticación remota. Esto ayuda a proteger la comunicación contra falsificaciones e intentos de sobrecargar el sistema enviando datos elegidos aleatoriamente.
En una realización adicional, los datos auxiliares son transmitidos a una segunda posición remota diferente de la posición remota desde la que se ha recibido la una o más respuestas. En esta realización es más difícil burlar el sistema. Ahora tienen que colaborar dos partes.
En una realización adicional, la una o más salidas ruidosas recibidas se comparan frente a la pluralidad de salidas ruidosas previamente recibidas, y los datos auxiliares se proporcionan solamente si la una o más salidas ruidosas no han sido recibidas previamente. Esto proporciona seguridad frente a ataques repetidos en los que se proporcionan las mismas salidas ruidosas múltiples veces. La comparación puede ser una comparación con pérdidas, es decir las salidas ruidosas recibidas pueden diferir una pequeña cantidad con las salidas ruidosas previamente recibidas. Si se estima que el emparejamiento es “suficientemente bueno” (por ejemplo, el 90% de los bits de las salidas se corresponden), la comparación se considera positiva.
La invención proporciona adicionalmente un sistema que implementa el procedimiento.
Estos y otros aspectos de la invención se pondrán de manifiesto a partir de, y podrán ser aclarados con referencia a, las realizaciones ilustrativas que se muestran en los dibujos, en los que:
La Figura 1 muestra esquemáticamente un sistema para la activación controlada de al menos una función en un producto o componente en una posición remota;
la Figura 2 muestra esquemáticamente una primera realización de este sistema;
la Figura 3 muestra esquemáticamente una segunda realización de este sistema, y
la Figura 4 muestra esquemáticamente una tercera realización de este sistema.
En las Figuras, los mismos números de referencia indican características similares o correspondientes. Algunas de las características indicadas en los dibujos están típicamente implementadas en software, y como tales representan entidades de software, tal como módulos u objetos de software.
La Figura 1 muestra esquemáticamente un sistema 110 para la activación controlada de al menos una función 142 en un producto o componente 140 en una posición remota 130. La activación del producto o componente 140, en este caso un microchip, requiere que un elemento de datos de activación correcta se encuentre disponible en el producto o componente 140. El producto o componente 140 es en este caso un microchip, pero podría ser igualmente cualquier clase de producto o componente. Algunos ejemplos son los teléfonos móviles, ordenadores, ordenadores personales portátiles, relojes, sensores, máquinas, aviones, placas de circuito e incluso software de ordenador. El único requisito de la presente invención consiste en que el producto o componente 140 tenga una función que necesite ser activada de una manera controlada.
La posición remota 130 será, con preferencia, una planta de fabricación o una fábrica en la que el producto o componente se ensambla o se produce. El término “remoto” en este contexto debe ser entendido como indicativo de que el sistema 110 y la posición 130 no son uno solo ni lo mismo. En una realización, la planta o la fábrica está situada en la República Popular de China y el sistema 110 está situado en el Reino de Holanda. En otra realización, el sistema se implementa como cuadro negro para ser instalado en algún lugar de los locales de la planta o fábrica.
Para permitir la activación, el producto o componente 140 se ha dotado de un elemento 141 no clonable. En la realización de la Figura 1, el elemento 141 no clonable forma parte del microchip 140, pero puede ser proporcionado igualmente en cualquier parte del producto o componente. Por ejemplo, el elemento 141 no clonable puede ser proporcionado en la placa madre de un ordenador u ordenador personal portátil, y estar previsto para la activación de un chip particular también presente en el ordenador.
El elemento 141 no clonable tiene la misión de producir una o más salidas ruidosas, indicadas como R1, ..., Rn en la Figura 1. La(s) salida(s) es (son) suministrada(s) al sistema 110, en esta realización transmitiéndola(s) por una red 120 de comunicaciones tal como Internet. Por supuesto, se puede utilizar igualmente una línea de teléfono o cualquier otro medio de comunicación.
El sistema 110 computa datos auxiliares HD basados en las salidas ruidosas que recibe, y proporciona estos datos auxiliares HD de nuevo a la posición remota 130. En la posición remota 130, los datos auxiliares HD se ponen a disposición del producto o componente 140, por ejemplo almacenándolos en una memoria 143 del microchip.
Los datos auxiliares transforman la una o más salidas ruidosas en un valor simple que debe corresponder con el elemento de datos de activación correcta. Si se obtiene, en efecto, el elemento de datos de activación correcta, la funcionalidad puede ser habilitada. Existen muchas formas en las que esto puede ser realizado.
Según se ha mencionado en lo que antecede, la activación se implementa en una realización comparando el valor simple con un código predefinido disponible en el bloque de IP. Si no se emparejan los dos, no se habilita la función.
Si el producto o componente 140 es un programa de software o una corriente de datos para una FAPA, el valor simple puede ser utilizado también como clave para desbloquear o descodificar todo o una parte del producto o componente 140.
El valor simple puede indicar también una pluralidad de funciones que han de ser habilitadas o deshabilitadas. Esto se puede realizar tratando el valor simple como una secuencia de indicadores, de los que cada uno indica si una función particular debe ser habilitada o no. Una manera fácil de llevar esto a cabo consiste en utilizar una máscara de bits. Por ejemplo, la máscara de bits 00101101 de ocho bits, indica que las dos primeras, la cuarta y la séptima funciones están deshabilitadas, y que la tercera, la quinta, la sexta y la octava funciones están habilitadas.
Este valor simple puede ser utilizado también como una clave necesaria para procesar una entrada proporcionada al producto o componente 140, por ejemplo como clave de descodificación para un contenido audiovisual que ha de ser descodificado o para autenticar el producto o componente 140 en un servidor remoto (no representado) con el que se deben intercambiar datos.
Exactamente qué función (o qué funciones) se activa(n) y cómo, es accesorio para la invención. Los principios de la invención según se reivindica, pueden ser aplicados para habilitar o activar cualquier funcionalidad en cualquier clase de dispositivo. Sin embargo, a los efectos de ilustración de la invención, se proporcionan los siguientes ejemplos:
- •
- Habilitar el uso de un chip de codificación o descodificación de audio y/o video de alto rendimiento, o un programa de software.
- •
- Habilitar la comunicación por una red inalámbrica tal como 802.11g.
- •
- Deshabilitar una limitación artificial en la funcionalidad del producto, tal como una limitación de tiempo o una limitación sobre la cantidad de datos que pueden ser transmitidos por unidad de tiempo.
- •
- Permitir la descarga de mejoras o actualizaciones para el producto o su funcionalidad.
- •
- Habilitar comunicaciones por enlaces tales como HDTV que utiliza el protocolo de protección de copia HDMI; la activación en este caso ocurre adquiriendo la clave de autenticación de derecho.
- •
- Habilitar la funcionalidad de un ASIC, FPGA o circuito similar, por ejemplo habilitando el uso de claves de dispositivo encriptadas con el dispositivo para descodificación del contenido audiovisual.
- •
- Habilitar un modelo de pago por-uso en el que el cliente solamente paga por la funcionalidad que elija. Cada función puede ser habilitada individualmente, y el código de autorización para cada función se adquiere por separado.
El elemento 141 no clonable es conocido en sí mismo. Una denominación para tales componentes es el de Funciones Físicas Aleatorias (No Clonables) o PUFs. Una PUF es un elemento físico complejo que comprende muchos componentes distribuidos aleatoriamente. Cuando se analiza con supuestos adecuados, la física compleja que gobierna la interacción entre el elemento físico y el supuesto, por ejemplo múltiples ondas de dispersión en un medio desordenado, conduce a una salida, o respuesta, diferente de búsqueda aleatoria, para cada supuesto separado.
Las respuestas recibidas a partir de la señal, son susceptibles de ruido y perturbaciones, que causan diferencias en las respuestas cada vez que se presenta un supuesto simple a la PUF. Un elemento de datos auxiliares proporciona redundancia para transformar esta respuesta múltiple, ruidosa, en un valor simple. La estructura compleja de pequeña escala de la señal física hace que sea difícil producir una copia física.
Adicionalmente a la literatura ya mencionada, ejemplos de PUFs se divulgan en:
- 1.
- R. Pappu, B. Recht, J. Taylor, N. Gershenfeld, “Funciones Físicas de Un Solo Sentido”, Science vol. 297, pp-2026, (2002)
- 2.
- P. Tuyls, B. Skoric, S. Stallinga, A. H. Akkermans, W. Ophey, “Información -Análisis de Seguridad Teórica de Funciones Físicas No Clonables”, Financial Cryptography FC’05, LNCS 3570, Springer-Verlag pp. 141 (2005)
- 3.
- B. Skoric, P. Tuyls W. Ophey, “Extracción de clave robusta a partir de Funciones Físicas No Clonables”, Applied Cryptography and Network Security ACNS 2005, LNCS 3531, pp. 407-422 (2005)
- 4.
- P. Tuyls, B. Skoric, G.J. Schrijen, R. Wolters, J. van Geloven, N. Verhaegh, H. Kretschmann, “Hardware a prueba de lectura desde recubrimientos protectores”, CHES 2006 para aparecer (2006)
- 5.
- B. Gassend, D. Clarke, M. van Dijk, S. Devadas, “Funciones Aleatorias Físicas de Silicio”, 9ª Conf. ACM sobre Ordenador y Seguridad de Comunicación (2002)
- 6.
- P. Tuyls, B. Skoric, “Generación de Calve Secreta a partir de Física Clásica”, Book Chapter, Hardware Technology Drivers for Ambient Intelligence, Kluwer (2005)
En la actualidad se conocen varios sistemas físicos en los que se pueden basar las PUFs. Los tipos principales son PUFs ópticas (véase la referencia 1), PUFs de recubrimiento (referencia 4), PUFs de silicio (referencia 5) y PUFs acústicas (referencia 6). De hecho, cualquier sistema físico con las propiedades que siguen, puede ser utilizado como PUF si tiene las siguientes propiedades:
- •
- Barato y fácil de fabricar, y que incluya variaciones incontrolables aleatorias del proceso de fabricación.
- •
- Poco práctico para caracterizar y modelizar
- •
- Gran espacio de entrada/ salida
Aunque la presente invención es aplicable a todos los tipos de PUF, considérese como ejemplo el ejemplo específico de la PUF óptica como ejemplo concreto de los conceptos aquí descritos. Las PUFs ópticas consisten en un material de transporte que consiste en partículas de dispersión distribuidas aleatoriamente. La aleatoriedad está proporcionada en este caso por la unicidad y la imprevisibilidad de patrones de moteado que resultan de la dispersión múltiple de luz láser en un medio óptico distorsionado (referencia 2). Para una longitud de onda fija de la luz incidente, la entrada es el ángulo de incidencia, la distancia focal, el patrón de máscara o cualquier otro cambio reproducible en el frente de la onda. La salida es el patrón de moteado resultante. Incluso dados todos los detalles precisos de las dispersiones, resulta extremadamente difícil recuperar un patrón de moteado particular. Para más información sobre las PUFs y la reconstrucción de datos auxiliares para estabilizar respuestas de PUF, el lector debe dirigirse a la literatura mencionada anteriormente.
Para evitar que un atacante en la posición remota 130, por ejemplo el fabricante que opera una fábrica, acceda a la una o más salidas ruidosas y/o a los datos auxiliares, cualquiera de ellas o todas podrían ser codificadas utilizando una clave o algoritmo desconocido por este atacante. Por ejemplo, el producto o componente 140 puede aplicar una codificación simple basada en XOR a la una o más salidas ruidosas utilizando una clave fija. En disposiciones más complejas, el producto o componente 140 y el sistema 110 pueden establecer un canal autenticado seguro para intercambiar de forma segura la una o más salidas ruidosas y/o los datos auxiliares.
Una realización preferida consiste en hacer que el sistema 110 produzca un elemento de autenticación para los datos auxiliares, por ejemplo creando una signatura digital o código de autenticación de mensaje para los datos auxiliares utilizando una clave secreta conocida por el sistema 110. Dependiendo del algoritmo o la tecnología de autenticación que se utilice, el elemento de autenticación puede ser transmitido junto con, o en lugar de, los datos auxiliares sin formato. Por ejemplo, cuando se genera una signatura digital utilizando un algoritmo como RSA, se puede utilizar la signatura digital en vez de los propios datos auxiliares puesto que los datos auxiliares son recuperados cuando la signatura digital se verifica con éxito.
El producto o componente 140, en la presente realización, está configurado de modo que emplea solamente los datos auxiliares si se puede verificar la autenticidad de los datos auxiliares utilizando este elemento de autenticación. Cuando se utilizan signaturas digitales criptográficas de clave pública/ secreta, el producto o componente 140 almacena una clave pública correspondiente a la clave secreta mencionada anteriormente, para permitir tal verificación. La verificación de criptografía de clave pública/ secreta y de signatura digital, es bien conocida y por lo tanto no va a ser elaborada de manera más detallada.
Esto impide el suministro de datos auxiliares por partes no autorizadas. Incluso aunque una tercera parte cualquiera gestione determinar cómo producir datos auxiliares para habilitar la funcionalidad particular, no puede crear el elemento de autenticación correcta, y por lo tanto estará incapacitada para activar la funcionalidad.
La Figura 2 muestra una realización adicional del sistema 110 en la que se introduce una tercera parte 200. La tercera parte 200 proporciona un elemento de autenticación al sistema 110, cuyo elemento de autenticación se utiliza para establecer la autenticidad de los datos auxiliares. El sistema 110, a su vez, transmite el elemento de autenticación a la localización remota.
Una realización preferida consiste en hacer que la tercera parte 200 produzca una signatura digital o codificación para los datos auxiliares codificando los datos auxiliares con una clave secreta conocida por la tercera parte. Esto ha sido mostrado en la Figura mediante ESKTP(HD), abreviatura de cifrado por la Tercera Parte de los Datos Auxiliares con la Clave Secreta.
Dependiendo del algoritmo de la signatura digital o de la tecnología utilizada, el elemento de autenticación puede ser transmitido junto con, o en lugar de, los datos auxiliares sin formato.
El producto o componente 140 de esta realización está configurado para que emplee solamente los datos auxiliares si se puede verificar la autenticidad de los datos auxiliares utilizando este elemento de autenticación. En la realización preferida mencionada anteriormente, el producto o componente 140 almacena una clave pública correspondiente a la clave secreta mencionada anteriormente para habilitar tal verificación.
La Figura 3 muestra una realización adicional del sistema 110 en la que los datos auxiliares son codificados con anterioridad a transmitirlos a la tercera parte. Los datos auxiliares pueden ser codificados utilizando criptografía simétrica o asimétrica. Esto impide que la tercera parte observe los datos auxiliares reales. Esto ha sido mostrado mediante EPKC(HD), abreviatura de codificación con una Clave Pública del Componente. La tercera parte 200 produce una signatura digital para estos datos auxiliares codificados: ESKTP(EPKC(HD)).
El producto o componente 140 almacena ahora una clave secreta correspondiente a la clave pública PKC mencionada anteriormente, por ejemplo en la memoria 143. El producto o componente 140 de esta realización está configurado para que emplee solamente los datos auxiliares si (1) el elemento de autenticación EPKC(HD) puede ser descodificado con éxito utilizando la clave secreta antes mencionadas, y (2) la autenticidad de los datos auxiliares HD puede ser verificada utilizando este elemento de autenticación.
La Figura 4 muestra una realización adicional del sistema 110 en la que la posición remota 130 incluye un elemento de autenticación remota. El sistema 110 solamente proporciona ahora los datos auxiliares si los datos auxiliares pueden ser autenticados con éxito utilizando el elemento de autenticación remota. Con preferencia se produce una signatura digital para las respuestas utilizando una clave secreta conocida, ya sea en la posición remota 130 o ya sea en el producto o componente 140. Esto ha sido mostrado en la Figura 4 mediante ESKRL(R1, ..., Rn), abreviatura de codificación con la Clave Secreta de la Posición Remota de las Respuestas.
En otra realización (no representada), la una o más salidas ruidosas R1, ..., Rn recibidas se comparan con la pluralidad de salidas ruidosas previamente recibidas, y solamente se proporcionan los datos auxiliares si la una o más salidas ruidosas no han sido recibidas con anterioridad. El sistema 110 de esta realización puede estar equipado con una base de datos para almacenar las salidas ruidosas recibidas. Una representación abreviada (por ejemplo, una versión con hash) de las salidas ruidosas, puede ser almacenada en lugar de las propias salidas ruidosas para reducir los requisitos de almacenamiento. Por ejemplo, se puede aplicar una función hash a las salidas ruidosas, y la salida de esta función puede ser almacenada. El emparejamiento de los hashes es mucho más eficiente e incluso permite determinar si exactamente las mismas respuestas ruidosas han sido recibidas con anterioridad.
Se debe apreciar que las realizaciones mencionadas en lo que antecede ilustran, en vez de limitar, la invención, y que los expertos en la materia estarán capacitados para diseñar muchas realizaciones alternativas sin apartarse del alcance de las reivindicaciones anexas. Por ejemplo, las realizaciones de las Figuras 2, 3 y/o 4 pueden combinarse para combinar ventajosamente los beneficios de cualesquiera, o de todas ellas, entre sí. Según otro ejemplo, los datos auxiliares pueden ser transmitidos a una segunda posición remota diferente de la posición remota desde la que han sido recibidas la una o más respuestas.
En las reivindicaciones, cualquiera de los signos de referencia puestos entre paréntesis no debe ser entendido como limitativo de la reivindicación. El término “que comprende” no excluye la presencia de elementos o de etapas distintas de las relacionadas en una reivindicación. La palabra “un” o “una” precediendo a un elemento no excluye la presencia de una pluralidad de tales elementos. La invención puede ser implementada por medio de hardware que comprenda varios elementos distintos, y por medio de un ordenador programado adecuadamente.
En una reivindicación de dispositivo que enumere diversos medios, varios de esos medios pueden estar materializados por uno, y mismo, elemento de hardware. El mero hecho de que se mencionen determinadas medidas en diferentes reivindicaciones mutuamente dependientes, no indica que no se pueda utilizar una combinación de esas medidas ventajosamente.
Claims (13)
- REIVINDICACIONES1.-Un procedimiento de activación controlada de al menos una función en un producto o componente en una posición remota, cuya activación requiere que un elemento de datos de activación correcta se encuentre disponible en el producto o componente, caracterizado por recibir una o más salidas ruidosas de un elemento no clonable asociado al componente desde la posición remota, siendo las salidas del elemento no clonable susceptibles de ruido y perturbaciones, y proporcionar datos auxiliares a la posición remota para transformar la una o más salidas ruidosas en un valor simple que corresponda con el elemento de datos de activación correcta.
- 2.-El procedimiento de la reivindicación 1, que comprende además transmitir un elemento de autenticación, para establecer la autenticidad de los datos auxiliares, hasta la posición remota.
- 3.-El procedimiento de la reivindicación 2, en el que el elemento de autenticación se obtiene transmitiendo los datos auxiliares a una tercera parte, y recibiendo el elemento de autenticación como respuesta desde la tercera parte.
- 4.-El procedimiento de la reivindicación 3, en el que los datos auxiliares son codificados con anterioridad a transmitirlos a la tercera parte.
- 5.-El procedimiento de la reivindicación 1, que comprende además recibir un elemento de autenticación remota desde la posición remota, y proporcionar solamente los datos auxiliares si los datos auxiliares pueden ser autenticados con éxito utilizando el elemento de autenticación remota.
- 6.-El procedimiento de la reivindicación 1, en el que los datos auxiliares son transmitidos a una segunda posición remota diferente de la posición remota desde la que han sido recibidas la una o más respuestas.
- 7.-El procedimiento de la reivindicación 1, en el que la una o más salidas ruidosas recibidas son comparadas con la pluralidad de salidas ruidosas previamente recibidas, y los datos auxiliares se suministran solamente si la una o más salidas ruidosas no han sido recibidas con anterioridad.
- 8.-El procedimiento de la reivindicación 1, en el que el valor simple se utiliza como clave de descodificación o como clave de autenticación.
- 9.-El procedimiento de la reivindicación 1, en el que el valor simple se utiliza como clave para desbloquear o descodificar todo o parte del producto o componente.
- 10.-El procedimiento de la reivindicación 9, en el que el producto o componente es un programa de software o una corriente de datos para una FPGA.
- 11.-Un sistema para la activación controlada de al menos una función en un producto o componente en una posición remota, cuya activación requiere que un elemento de datos de activación correcta esté disponible en el producto o componente, caracterizado por medios de recepción para recibir una o más salidas ruidosas de un elemento no clonable asociado al componente desde la posición remota, siendo las salidas del elemento no clonable susceptibles de ruido y perturbaciones, y medios para proporcionar datos auxiliares a la posición remota para transformar la una o más salidas ruidosas en un valor simple que corresponda con el elemento de datos de activación correcta.
- 12.-El sistema de la reivindicación 11, en el que los medios de recepción están configurados para recibir la una o más salidas ruidosas transmitidas por una red de comunicaciones.
- 13.-El sistema de la reivindicación 12, en el que la red de comunicaciones es Internet.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP07106038 | 2007-04-12 | ||
EP07106038 | 2007-04-12 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2362462T3 true ES2362462T3 (es) | 2011-07-06 |
Family
ID=39737045
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES08737723T Active ES2362462T3 (es) | 2007-04-12 | 2008-04-04 | Activación controlada de función. |
Country Status (8)
Country | Link |
---|---|
US (1) | US9247024B2 (es) |
EP (1) | EP2145448B1 (es) |
KR (1) | KR101430023B1 (es) |
CN (1) | CN101682612B (es) |
AT (1) | ATE501584T1 (es) |
DE (1) | DE602008005443D1 (es) |
ES (1) | ES2362462T3 (es) |
WO (1) | WO2008125999A2 (es) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7162035B1 (en) | 2000-05-24 | 2007-01-09 | Tracer Detection Technology Corp. | Authentication method and system |
US8171567B1 (en) | 2002-09-04 | 2012-05-01 | Tracer Detection Technology Corp. | Authentication method and system |
US7995196B1 (en) | 2008-04-23 | 2011-08-09 | Tracer Detection Technology Corp. | Authentication method and system |
EP2128867A1 (en) * | 2008-05-28 | 2009-12-02 | Sony DADC Austria AG | Method for controlling access to content on data carrier |
JP5499358B2 (ja) * | 2010-03-24 | 2014-05-21 | 独立行政法人産業技術総合研究所 | 認証処理方法及び装置 |
US8848905B1 (en) * | 2010-07-28 | 2014-09-30 | Sandia Corporation | Deterrence of device counterfeiting, cloning, and subversion by substitution using hardware fingerprinting |
JP5420114B2 (ja) | 2011-06-02 | 2014-02-19 | 三菱電機株式会社 | 鍵情報生成装置及び鍵情報生成方法 |
US8525549B1 (en) | 2012-02-23 | 2013-09-03 | International Business Machines Corporation | Physical unclonable function cell and array |
US9331012B2 (en) | 2012-03-08 | 2016-05-03 | International Business Machines Corporation | Method for fabricating a physical unclonable interconnect function array |
US8941405B2 (en) | 2012-08-03 | 2015-01-27 | International Business Machines Corporation | FET pair based physically unclonable function (PUF) circuit with a constant common mode voltage |
US10064063B2 (en) * | 2012-08-24 | 2018-08-28 | Motorola Solutions, Inc. | Method and apparatus for authenticating digital information |
US9038133B2 (en) | 2012-12-07 | 2015-05-19 | International Business Machines Corporation | Self-authenticating of chip based on intrinsic features |
JP5863994B2 (ja) | 2012-12-11 | 2016-02-17 | 三菱電機株式会社 | 統合セキュリティ装置および統合セキュリティ装置に用いられる信号処理方法 |
EP2779067B1 (en) * | 2013-03-15 | 2019-05-08 | Maxim Integrated Products, Inc. | Secure authentication based on physically unclonable functions |
US9189654B2 (en) | 2013-12-04 | 2015-11-17 | International Business Machines Corporation | On-chip structure for security application |
US9166588B2 (en) | 2014-01-20 | 2015-10-20 | Globalfoundires Inc. | Semiconductor device including enhanced variability |
EP2911086A1 (en) * | 2014-02-19 | 2015-08-26 | Renesas Electronics Europe GmbH | Integrated circuit with parts activated based on intrinsic features |
DE102014208212A1 (de) * | 2014-04-30 | 2015-11-05 | Siemens Aktiengesellschaft | Ableiten eines gerätespezifischen Wertes |
US9501664B1 (en) | 2014-12-15 | 2016-11-22 | Sandia Corporation | Method, apparatus and system to compensate for drift by physically unclonable function circuitry |
US20170257369A1 (en) * | 2016-03-04 | 2017-09-07 | Altera Corporation | Flexible feature enabling integrated circuit and methods to operate the integrated circuit |
US10091007B2 (en) * | 2016-04-04 | 2018-10-02 | Mastercard International Incorporated | Systems and methods for device to device authentication |
US10311219B2 (en) * | 2016-06-07 | 2019-06-04 | Vocalzoom Systems Ltd. | Device, system, and method of user authentication utilizing an optical microphone |
US10268844B2 (en) * | 2016-08-08 | 2019-04-23 | Data I/O Corporation | Embedding foundational root of trust using security algorithms |
DE102017205818A1 (de) * | 2017-04-05 | 2018-10-11 | Robert Bosch Gmbh | Einstellbare physikalische unklonbare Funktion |
CN109902479B (zh) * | 2019-01-28 | 2023-04-07 | 深圳市纽创信安科技开发有限公司 | 权限控制方法、权限控制设备、用户设备及系统 |
US20220191017A1 (en) * | 2020-12-11 | 2022-06-16 | PUFsecurity Corporation | Key management system providing secure management of cryptographic keys, and methods of operating the same |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69930171T2 (de) * | 1998-07-15 | 2006-11-23 | Seiko Epson Corp. | Tintenstrahlaufzeichnungsvorrichtung |
EP1449045A2 (en) * | 2001-11-14 | 2004-08-25 | International Business Machines Corporation | Device and method with reduced information leakage |
JP3807358B2 (ja) * | 2002-10-22 | 2006-08-09 | セイコーエプソン株式会社 | 液体容器及び液体噴射装置 |
CN1792060B (zh) * | 2003-05-21 | 2011-05-25 | 皇家飞利浦电子股份有限公司 | 用于认证物理对象的方法和系统 |
US6966640B2 (en) * | 2003-10-14 | 2005-11-22 | Teng-Kuei Lee | Ink cartridge for an ink jet printer |
US7328986B2 (en) * | 2004-01-28 | 2008-02-12 | Alex Kuo-Shen Wang | Inkjet printer ink cartridge |
KR20070024576A (ko) * | 2004-06-09 | 2007-03-02 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 생체 측정 템플릿 보호 및 특징 처리 |
WO2006053304A2 (en) * | 2004-11-12 | 2006-05-18 | Pufco, Inc. | Volatile device keys and applications thereof |
JP4938678B2 (ja) * | 2004-11-16 | 2012-05-23 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 類似性指標のセキュアな計算 |
CA2510366C (en) * | 2005-06-14 | 2013-02-26 | Certicom Corp. | System and method for remote device registration |
US8025376B2 (en) * | 2005-09-29 | 2011-09-27 | Brother Kogyo Kabushiki Kaisha | Ink cartridges |
US8224018B2 (en) * | 2006-01-23 | 2012-07-17 | Digimarc Corporation | Sensing data from physical objects |
-
2008
- 2008-04-04 ES ES08737723T patent/ES2362462T3/es active Active
- 2008-04-04 KR KR1020097023562A patent/KR101430023B1/ko active IP Right Grant
- 2008-04-04 DE DE602008005443T patent/DE602008005443D1/de active Active
- 2008-04-04 US US12/595,671 patent/US9247024B2/en active Active
- 2008-04-04 EP EP08737723A patent/EP2145448B1/en active Active
- 2008-04-04 WO PCT/IB2008/051279 patent/WO2008125999A2/en active Application Filing
- 2008-04-04 CN CN2008800118608A patent/CN101682612B/zh active Active
- 2008-04-04 AT AT08737723T patent/ATE501584T1/de not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP2145448A2 (en) | 2010-01-20 |
US20100146261A1 (en) | 2010-06-10 |
EP2145448B1 (en) | 2011-03-09 |
CN101682612B (zh) | 2013-02-06 |
KR101430023B1 (ko) | 2014-08-14 |
US9247024B2 (en) | 2016-01-26 |
CN101682612A (zh) | 2010-03-24 |
ATE501584T1 (de) | 2011-03-15 |
WO2008125999A2 (en) | 2008-10-23 |
KR20100016459A (ko) | 2010-02-12 |
DE602008005443D1 (de) | 2011-04-21 |
WO2008125999A3 (en) | 2008-12-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2362462T3 (es) | Activación controlada de función. | |
US8819409B2 (en) | Distribution system and method for distributing digital information | |
KR101714108B1 (ko) | 검증가능 누출 방지 암호화 및 복호화 | |
US7178025B2 (en) | Access system utilizing multiple factor identification and authentication | |
JP4723251B2 (ja) | 機器固有の機密保護データの安全な組み込みと利用 | |
ES2912265T3 (es) | Autenticación multifactor utilizando comunicación cuántica | |
ES2265826T3 (es) | Sistema y metodo para distribucion de documentos. | |
US10650373B2 (en) | Method and apparatus for validating a transaction between a plurality of machines | |
US8744078B2 (en) | System and method for securing multiple data segments having different lengths using pattern keys having multiple different strengths | |
US20050166263A1 (en) | System and method providing disconnected authentication | |
US9165148B2 (en) | Generating secure device secret key | |
CN103339958A (zh) | 密钥传输协议 | |
EP2339777A2 (en) | Method of authenticating a user to use a system | |
US10158613B1 (en) | Combined hidden dynamic random-access devices utilizing selectable keys and key locators for communicating randomized data together with sub-channels and coded encryption keys | |
JP2020530726A (ja) | サプライチェーン資産管理を保護するアプリケーションを有する遠隔サーバへのnfcタグ認証 | |
US9003197B2 (en) | Methods, apparatus and system for authenticating a programmable hardware device and for authenticating commands received in the programmable hardware device from a secure processor | |
US20230163980A1 (en) | Individual digital access with ternary states and one-way unclonable functions to protect digital files | |
KR20070117456A (ko) | 데이터 처리 장치 및 방법 | |
US10623384B2 (en) | Combined hidden dynamic random-access devices utilizing selectable keys and key locators for communicating randomized data together with sub-channels and coded encryption keys | |
Boyen | Robust and reusable fuzzy extractors | |
Jeannot | A secure architecture for digital content protection in corporate environments | |
FR2924551A1 (fr) | Procede de controle d'acces a au moins une fonction apte a etre mise en oeuvre par une carte a puce. |