Un esquema de compromiso es una primitiva criptográfica que le permite a uno comprometerse con un valor elegido (o declaración elegida) mientras lo mantiene oculto para otros, con la capacidad de revelar el valor comprometido más tarde. [1] Los esquemas de compromiso están diseñados para que una parte no pueda cambiar el valor o la declaración después de haberse comprometido con él: es decir, los esquemas de compromiso son vinculantes . Los esquemas de compromiso tienen aplicaciones importantes en varios protocolos criptográficos, incluido el lanzamiento seguro de monedas, las pruebas de conocimiento cero y la computación segura .
Una forma de visualizar un esquema de compromiso es pensar en un remitente como si estuviera poniendo un mensaje en una caja cerrada y entregándola a un receptor. El mensaje en el cuadro está oculto para el receptor, que no puede abrir la cerradura por sí mismo. Dado que el receptor tiene la caja, el mensaje que se encuentra dentro no se puede cambiar, simplemente se revela si el remitente elige darles la clave en algún momento posterior.
Las interacciones en un esquema de compromiso tienen lugar en dos fases:
- la fase de confirmación durante la cual se elige y especifica un valor
- la fase de revelación durante la cual se revela y se verifica el valor
En protocolos simples, la fase de confirmación consiste en un solo mensaje del remitente al receptor. Este mensaje se llama compromiso . Es esencial que el receptor no pueda conocer el valor específico elegido en ese momento (esto se denomina propiedad de ocultación ). Una fase de revelación simple consistiría en un solo mensaje, la apertura , del remitente al receptor, seguida de una verificación realizada por el receptor. El valor elegido durante la fase de confirmación debe ser el único que el remitente pueda calcular y que se valide durante la fase de revelación (esto se denomina propiedad de vinculación ).
El concepto de esquemas de compromiso fue quizás formalizado por primera vez por Gilles Brassard , David Chaum y Claude Crepeau en 1988, [2] como parte de varios protocolos de conocimiento cero para NP , basados en varios tipos de esquemas de compromiso (ver también: [3] [4] ). Pero el concepto se utilizó antes de eso sin ser tratado formalmente. [5] [6] La noción de compromisos apareció más temprano en los trabajos de Manuel Blum , [7] Shimon Even , [8] y Shamir et al. [9] La terminología parece haber sido originada por Blum, [6] aunque los esquemas de compromiso pueden denominarse indistintamente esquemas de compromiso de bits, a veces reservados para el caso especial en el que el valor comprometido es un bit . Anteriormente, se consideró el compromiso a través de funciones hash unidireccionales, por ejemplo, como parte de, digamos, la firma de Lamport , el esquema original de firma de un solo bit de una sola vez.
Aplicaciones
Lanzamiento de monedas
Suponga que Alice y Bob quieren resolver alguna disputa lanzando una moneda al aire . Si están físicamente en el mismo lugar, un procedimiento típico podría ser:
- Alice "llama" al lanzamiento de la moneda
- Bob lanza la moneda
- Si la llamada de Alice es correcta, ella gana; de lo contrario, Bob gana.
Si Alice y Bob no están en el mismo lugar, surge un problema. Una vez que Alice ha "llamado" el lanzamiento de la moneda, Bob puede estipular que los "resultados" del lanzamiento sean lo que sea más deseable para él. De manera similar, si Alice no anuncia su "llamada" a Bob, después de que Bob lanza la moneda y anuncia el resultado, Alice puede informar que llamó al resultado que sea más deseable para ella. Alice y Bob pueden usar compromisos en un procedimiento que les permitirá a ambos confiar en el resultado:
- Alice "llama" al lanzamiento de la moneda, pero solo le dice a Bob un compromiso con su llamada,
- Bob lanza la moneda e informa el resultado,
- Alice revela a qué se comprometió,
- Bob verifica que la llamada de Alice coincide con su compromiso,
- Si la revelación de Alice coincide con el resultado de la moneda que informó Bob, Alice gana
Para que Bob pueda sesgar los resultados a su favor, debe poder comprender la llamada oculta en el compromiso de Alice. Si el esquema de compromiso es bueno, Bob no puede sesgar los resultados. Del mismo modo, Alice no puede afectar el resultado si no puede cambiar el valor al que se compromete. [5] [7]
Existe una aplicación de la vida real de este problema, cuando las personas (a menudo en los medios de comunicación) se comprometen con una decisión o dan una respuesta en un "sobre sellado", que luego se abre más tarde. "Averigüemos si eso es lo que respondió el candidato", por ejemplo en un programa de juegos, puede servir como modelo de este sistema.
Pruebas de conocimiento cero
Un ejemplo motivador particular es el uso de esquemas de compromiso en pruebas de conocimiento cero . Los compromisos se utilizan en las pruebas de conocimiento cero con dos propósitos principales: primero, para permitir que el evaluador participe en pruebas de "corte y elección" en las que al verificador se le presentará una opción de qué aprender, y el evaluador revelará solo lo que corresponda a elección del verificador. Los esquemas de compromiso permiten al probador especificar toda la información de antemano y solo revelar lo que debe revelarse más adelante en la prueba. [10] En segundo lugar, el verificador también utiliza los compromisos en las pruebas de conocimiento cero, que a menudo especificará sus opciones con anticipación en un compromiso. Esto permite que las pruebas de conocimiento cero se compongan en paralelo sin revelar información adicional al probador. [11]
Esquemas de firma
El esquema de firma de Lamport es un sistema de firma digital que se basa en mantener dos conjuntos de paquetes de datos secretos, publicar hash verificables de los paquetes de datos y luego revelar selectivamente los paquetes de datos secretos parciales de una manera que se ajuste específicamente a los datos que se van a firmar. De esta forma, el compromiso público previo con los valores secretos se convierte en parte crítica del funcionamiento del sistema.
Debido a que el sistema de firmas de Lamport no se puede usar más de una vez (consulte el artículo correspondiente para obtener más detalles), se desarrolló un sistema para combinar muchos conjuntos de claves de Lamport bajo un valor público único que se puede vincular a una persona y verificar por otros. Este sistema utiliza árboles de hashes para comprimir muchos conjuntos de compromisos de clave de lamport publicados en un único valor de hash que se puede asociar con el posible autor de datos verificados posteriormente.
Compartición secreta verificable
Otra aplicación importante de los compromisos es la compartición secreta verificable , un componente fundamental de la computación segura entre varias partes . En un esquema de intercambio secreto , cada una de las partes recibe "acciones" de un valor que debe estar oculto a todos. Si se reúnen suficientes partes, sus acciones pueden usarse para reconstruir el secreto, pero incluso una camarilla maliciosa de tamaño insuficiente no debería aprender nada. El intercambio secreto está en la raíz de muchos protocolos para el cálculo seguro : para calcular de forma segura una función de alguna entrada compartida, los recursos compartidos secretos se manipulan en su lugar. Sin embargo, si los recursos compartidos van a ser generados por partes malintencionadas, puede ser importante que se pueda verificar que esos recursos compartidos sean correctos. En un esquema de intercambio de secretos verificables, la distribución de un secreto va acompañada de compromisos con las acciones individuales. Los compromisos no revelan nada que pueda ayudar a una camarilla deshonesta, pero las acciones permiten que cada parte individual verifique si sus acciones son correctas. [12]
Definiendo la seguridad
Las definiciones formales de los esquemas de compromiso varían mucho en notación y sabor. El primero de estos tipos es si el esquema de compromiso proporciona seguridad perfecta o computacional con respecto a las propiedades de ocultación o unión. Otro aspecto de este tipo es si el compromiso es interactivo, es decir, si tanto la fase de compromiso como la fase de revelación pueden verse como ejecutadas por un protocolo criptográfico o si son no interactivas, que constan de dos algoritmos Commit y CheckReveal . En el último caso, CheckReveal a menudo se puede ver como una versión desaleatorizada de Commit , y la aleatoriedad utilizada por Commit constituye la información de apertura.
Si el compromiso C con un valor x se calcula como C: = Compromiso (x, abierto) con abierto la aleatoriedad utilizada para calcular el compromiso, entonces CheckReveal (C, x, abierto) simplemente consiste en verificar la ecuación C = Compromiso (x , abierto) .
Utilizando esta notación y algunos conocimientos sobre funciones matemáticas y teoría de la probabilidad , formalizamos diferentes versiones de las propiedades vinculantes y ocultas de los compromisos. Las dos combinaciones más importantes de estas propiedades son los esquemas de compromiso perfectamente vinculantes y que ocultan computacionalmente y los esquemas de compromiso computacionalmente vinculantes y que ocultan perfectamente. Tenga en cuenta que ningún esquema de compromiso puede ser al mismo tiempo perfectamente vinculante y perfectamente oculto: un adversario computacionalmente ilimitado puede simplemente generar Commit (x, open) para cada valor de x y abrir hasta encontrar un par que dé como resultado C , y en un perfectamente vinculante esquema esto identifica de forma única x .
Enlace computacional
Deje que se elija abierto de un conjunto de tamaño, es decir, se puede representar como una cadena de k bits, y dejarSer el esquema de compromiso correspondiente. Dado que el tamaño de k determina la seguridad del esquema de compromiso, se denomina parámetro de seguridad.
Luego, para todos los algoritmos de tiempo polinomial probabilístico no uniforme que generan y de longitud creciente k , la probabilidad de que y es una función insignificante en k .
Esta es una forma de análisis asintótico . También es posible establecer el mismo requisito utilizando una seguridad concreta : un esquema de compromiso Commit esseguro, si para todos los algoritmos que se ejecutan en el tiempo t y la salida la probabilidad de que y es como máximo .
Ocultación perfecta, estadística y computacional
Dejar ser la distribución uniforme sobre el valores de apertura para el parámetro de seguridad k . Un esquema de compromiso es, respectivamente, ocultamiento perfecto, estadístico o computacional, si para todoslos conjuntos de probabilidad y son iguales, estadísticamente cercanas o computacionalmente indistinguibles .
Imposibilidad de esquemas de compromiso de composición universal
Es imposible realizar esquemas de compromiso en el marco de componibilidad universal (UC). La razón es que el compromiso de la UC tiene que ser extraíble , como muestran Canetti y Fischlin [13] y se explica a continuación.
La funcionalidad de compromiso ideal, indicada aquí por F , funciona aproximadamente de la siguiente manera. Committer C envía valor m a F , que almacena y envía "recepción" a receptor R . Más tarde, C envía "abierto" a F , que envía m a R .
Ahora, suponga que tenemos un protocolo π que realiza esta funcionalidad. Supongamos que el confirmador C está dañado. En el marco de UC, eso esencialmente significa que C ahora está controlado por el entorno, que intenta distinguir la ejecución del protocolo del proceso ideal. Considere un entorno que elige un mensaje my luego le dice a C que actúe según lo prescrito por π , como si se hubiera comprometido con m . Tenga en cuenta aquí que para realizar F , el receptor debe, después de recibir un compromiso, enviar un mensaje "recibo". Una vez que el entorno ve este mensaje, le dice a C que abra el compromiso.
El protocolo sólo es segura si este escenario es indistinguible del caso ideal, donde interactúa el funcionalidad con un simulador de S . Aquí, S tiene el control de C . En particular, siempre que R emite "recibo", F tiene que hacer lo mismo. La única manera de hacerlo es por S para decirle C para enviar un valor de F . Sin embargo, nota que por este punto, m no se conoce a S . Por lo tanto, cuando el compromiso se abre durante la ejecución del protocolo, es poco probable que F se abra am , a menos que S pueda extraer m de los mensajes que recibió del entorno antes de que R envíe el recibo.
Sin embargo, un protocolo extraíble en este sentido no puede esconderse estadísticamente. Suponga que existe tal simulador S. Ahora puede considerar un entorno que, en lugar de corromper C , corrompe R en su lugar. Adicionalmente se ejecuta una copia de S . Los mensajes recibidos desde C se introducen en S , y respuestas de S se reenvían a C .
El entorno inicialmente le dice a C que se comprometa con un mensaje m . En algún punto de la interacción, S se comprometerá con un valor m ′ ; este mensaje se entrega a R , que emite m ′ . Tenga en cuenta que, por suposición, tenemos m '= m con alta probabilidad. Ahora, en el proceso ideal, el simulador tiene que generar m . Pero esto es imposible, porque en este punto el compromiso aún no se ha abierto, por lo que el único mensaje que R puede haber recibido en el proceso ideal es un mensaje de "recepción". Tenemos, pues, una contradicción.
Construcción
Un esquema de compromiso puede ser perfectamente vinculante (es imposible que Alice altere su compromiso después de haberlo hecho, incluso si tiene recursos computacionales ilimitados); o ocultarlo perfectamente (es imposible para Bob descubrir el compromiso sin que Alice lo revele, incluso si tiene recursos computacionales ilimitados); o formulado como un esquema de compromiso dependiente de la instancia, que se oculta o vincula según la solución a otro problema. [14] [15] Un esquema de compromiso no puede ser oculto y vinculante al mismo tiempo.
Compromiso de bits en el modelo de oráculo aleatorio
Los esquemas de compromiso de bits son triviales de construir en el modelo de oráculo aleatorio . Dada una función hash H con un 3 k bit de salida, para cometer el k bits mensaje m , Alice genera una aleatorio k bit cadena R y envía Bob H ( R || m ). La probabilidad de que exista cualquier R ′ , m ′ donde m ′ ≠ m tal que H ( R ′ || m ′ ) = H ( R || m ) es ≈ 2 - k , pero para probar cualquier conjetura en el mensaje m Bob tendrá que hacer 2 k (para una suposición incorrecta) o 2 k -1 (en promedio, para una suposición correcta) consultas al oráculo aleatorio. [16] Observamos que los esquemas anteriores basados en funciones hash, esencialmente se pueden pensar en esquemas basados en la idealización de estas funciones hash como oráculo aleatorio.
Compromiso de bits de cualquier permutación unidireccional
Se puede crear un esquema de compromiso de bits a partir de cualquier función unidireccional que sea inyectiva. El esquema se basa en el hecho de que cada función unidireccional puede modificarse (a través del teorema de Goldreich-Levin ) para poseer un predicado computacionalmente duro (mientras se conserva la propiedad inyectiva). Sea f una función inyectiva unidireccional, con h un predicado de núcleo duro. Luego, para comprometerse con un bit b, Alice elige una entrada aleatoria xy envía el triple
a Bob, donde denota XOR, es decir , módulo de adición bit a bit 2. Para liberar, Alice simplemente envía x a Bob. Bob verifica calculando f ( x ) y comparándolo con el valor comprometido. Este esquema se oculta porque para que Bob recupere b debe recuperar h ( x ). Dado que h es un predicado computacionalmente duro, recuperar h ( x ) de f ( x ) con una probabilidad mayor que la mitad es tan difícil como invertir f . La unión perfecta se deriva del hecho de que f es inyectiva y, por lo tanto, f ( x ) tiene exactamente una preimagen.
Compromiso de bits de un generador pseudoaleatorio
Tenga en cuenta que, dado que no sabemos cómo construir una permutación unidireccional a partir de ninguna función unidireccional, esta sección reduce la fuerza del supuesto criptográfico necesario para construir un protocolo de compromiso de bits.
En 1991, Moni Naor mostró cómo crear un esquema de compromiso de bits a partir de un generador de números pseudoaleatorios criptográficamente seguro . [17] La construcción es la siguiente. Si G es un generador pseudoaleatorio tal que G toma n bits a 3 n bits, entonces si Alice quiere comprometerse con un bit b :
- Bob selecciona un vector R aleatorio de 3 n bits y envía R a Alice.
- Alice selecciona un vector aleatorio de n bits Y y calcula el vector de 3 n bits G ( Y ).
- Si b = 1, Alice envía G ( Y ) a Bob; de lo contrario, envía el bit a bit exclusivo o de G ( Y ) y R a Bob.
Para liberar, Alice envía Y a Bob, quien luego puede verificar si inicialmente recibió G ( Y ) o G ( Y ) R .
Este esquema es estadísticamente vinculante, lo que significa que incluso si Alice no tiene límites computacionales, no puede hacer trampa con una probabilidad mayor que 2 - n . Para que Alice haga trampa, necesitaría encontrar una Y ' , tal que G ( Y' ) = G ( Y ) R . Si pudiera encontrar ese valor, podría liberarse enviando la verdad y Y , o enviar la respuesta opuesta y Y ' . Sin embargo, G ( Y ) y G ( Y ' ) solo pueden producir 2 n valores posibles cada uno (eso es 2 2 n ) mientras que R se elige entre 2 3 n valores. Ella no elige R , por lo que hay una probabilidad de 2 2 n / 2 3 n = 2 - n de que exista una Y 'que satisfaga la ecuación requerida para hacer trampa.
La propiedad sigue ocultando de una reducción estándar, si Bob puede decir si Alice comprometido con un cero o uno, sino que también es capaz de distinguir la salida del generador pseudo-aleatorio G de la verdadera aleatoria, lo que contradice la seguridad criptográfica del G .
Un esquema perfectamente vinculante basado en el problema del registro discreto y más allá
Alice elige un anillo de primer orden p , con generador multiplicativo g .
Alice elige aleatoriamente un valor secreto x de 0 a p - 1 a comprometerse a y calcula c = g x y publica c . El problema del logaritmo discreto dicta que a partir de c , computacionalmente no es factible calcular x , por lo que bajo esta suposición, Bob no puede calcular x . Por otro lado, Alice no puede calcular a x ' <> x , tal que g x' = c , por lo que el esquema es vinculante.
Este esquema no oculta perfectamente, ya que alguien podría encontrar el compromiso si logra resolver el problema del logaritmo discreto . De hecho, este esquema no se esconde en absoluto con respecto al juego de escondite estándar, donde un adversario no debería ser capaz de adivinar cuál de los dos mensajes que eligió estaba comprometido, similar al juego IND-CPA . Una consecuencia de esto es que si el espacio de valores posibles de x es pequeño, entonces un atacante podría simplemente probarlos todos y el compromiso no se escondería.
Un mejor ejemplo de un esquema de compromiso perfectamente vinculante es aquel en el que el compromiso es el cifrado de x bajo un esquema de cifrado de clave pública semánticamente seguro con una integridad perfecta, y la liberación es la cadena de bits aleatorios utilizada para cifrar x . Un ejemplo de un esquema de compromiso que oculta información teóricamente es el esquema de compromiso de Pedersen, que es vinculante bajo el supuesto de logaritmo discreto. Además del esquema anterior, utiliza otro generador h del grupo principal y un número aleatorio r . El compromiso esta fijado. [18]
Estas construcciones están estrechamente relacionadas y basadas en las propiedades algebraicas de los grupos subyacentes, y la noción originalmente parecía estar muy relacionada con el álgebra. Sin embargo, se demostró que es posible basar esquemas de compromisos estadísticamente vinculantes en supuestos generales no estructurados, mediante la noción de hash interactivo para compromisos a partir de supuestos de complejidad general (específica y originalmente, basados en cualquier permutación de una sola vía) como en. [19]
Compromiso de bits cuánticos
Es una pregunta interesante en criptografía cuántica si existen protocolos de compromiso de bits incondicionalmente seguros en el nivel cuántico, es decir, protocolos que sean (al menos asintóticamente) vinculantes y ocultos incluso si no hay restricciones en los recursos computacionales. Uno podría esperar que haya una forma de explotar las propiedades intrínsecas de la mecánica cuántica, como en los protocolos para la distribución de claves incondicionalmente segura .
Sin embargo, esto es imposible, como demostró Dominic Mayers en 1996 (ver [20] para la prueba original). Cualquier protocolo de este tipo puede reducirse a un protocolo en el que el sistema se encuentra en uno de dos estados puros después de la fase de compromiso, dependiendo del bit que Alice quiera comprometer. Si el protocolo oculta incondicionalmente, entonces Alice puede transformar unitariamente estos estados entre sí utilizando las propiedades de la descomposición de Schmidt , derrotando efectivamente la propiedad vinculante.
Una suposición sutil de la prueba es que la fase de confirmación debe finalizar en algún momento. Esto deja espacio para los protocolos que requieren un flujo de información continuo hasta que se revele el bit o se cancele el protocolo, en cuyo caso ya no es vinculante. [21] De manera más general, la prueba de Mayers se aplica solo a protocolos que explotan la física cuántica pero no la relatividad especial . Kent ha demostrado que existen protocolos incondicionalmente seguros para el compromiso de bits que explotan el principio de la relatividad especial que establece que la información no puede viajar más rápido que la luz. [22]
Compromisos basados en funciones físicas no clonables
Las funciones físicas no clonables (PUF) se basan en el uso de una clave física con aleatoriedad interna, que es difícil de clonar o emular. Las PUF electrónicas, ópticas y de otro tipo [23] se han analizado ampliamente en la bibliografía, en relación con sus posibles aplicaciones criptográficas, incluidos los esquemas de compromiso. [24] [25]
Ver también
- Transferencia ajena
- Acumulador (criptografía)
- Fiesta de firma de llaves
- Web de confianza
- Zerocoin
Referencias
- ^ Oded Goldreich (2001). Fundamentos de la criptografía: Volumen 1, Herramientas básicas ( borrador disponible en el sitio del autor). Prensa de la Universidad de Cambridge. ISBN 0-521-79172-3 . (ver también http://www.wisdom.weizmann.ac.il/~oded/foc-book.html ) : 224
- ^ Gilles Brassard, David Chaum y Claude Crepeau, Pruebas de conocimiento mínimas de divulgación , Revista de Ciencias de la Computación y Sistemas, vol. 37, págs. 156-189, 1988.
- ^ Goldreich, Oded; Micali, Silvio; Wigderson, Avi (1991). "Pruebas que no aportan más que su validez". Revista de la ACM . 38 (3): 690–728. CiteSeerX 10.1.1.420.1478 . doi : 10.1145 / 116825.116852 . S2CID 2389804 .
- ^ Russell Impagliazzo, Moti Yung: cálculos directos de conocimiento mínimo. CRYPTO 1987: 40-51
- ^ a b Moni Naor, Compromiso de bits mediante pseudoaleatoriedad , Journal of Cryptology 4: 2 págs. 151-158, 1991.
- ^ a b Claude Crépeau, Compromiso , MCgill.ca , consultado el 11 de abril de 2008
- ↑ a b Manuel Blum, Coin Flipping by Telephone , Proceedings of CRYPTO 1981, pp. 11-15, 1981, reimpreso en SIGACT News vol. 15, págs. 23-27, 1983.
- ^ Incluso Shimon. Protocolo de firma de contratos. En Allen Gersho , ed., Advances in Cryptography (actas de CRYPTO '82), págs. 148-153, Santa Bárbara, CA, EE. UU., 1982.
- ^ A. Shamir, RL Rivest y L. Adleman, Mental Poker . En David A. Klarner , ed., The Mathematical Gardner , págs. 37-43. Wadsworth, Belmont, California, 1981.
- ^ Oded Goldreich , Silvio Micali y Avi Wigderson , Pruebas que no arrojan nada más que su validez, o todos los idiomas en NP tienen sistemas de prueba de conocimiento cero , Journal of the ACM , 38: 3, págs. 690–728, 1991
- ^ Oded Goldreich y Hugo Krawczyk , Sobre la composición de sistemas de prueba de conocimiento cero , SIAM Journal on Computing , 25: 1, págs. 169-192, 1996
- ^ Gennaro; Rosario; Rabin, Michael O .; Rabin, Tal. "VSS simplificado y cálculos multiparte de vía rápida con aplicaciones a la criptografía de umbral". Actas del Decimoséptimo Simposio Anual de ACM sobre Principios de Computación Distribuida . Junio de 1998.
- ^ R. Canetti y M. Fischlin. Compromisos universalmente compostables.
- ^ Shien Hin Ong y Salil Vadhan (1990). Conocimiento cero perfecto en ronda constante, In Proc. STOC, pág. 482-493, citado en Shien Hin Ong y Salil Vadhan (2008). Equivalencia entre conocimiento cero y compromisos, teoría de la criptografía.
- ^ Toshiya Itoh, Yiji Ohta, Hiroki Shizuya (1997). Una primitiva criptográfica dependiente del idioma, In J. Cryptol., 10 (1): 37-49, citado en Shien Hin Ong y Salil Vadhan (2008). Equivalencia entre conocimiento cero y compromisos, teoría de la criptografía.
- ^ Wagner, David (2006), Solución de medio término , pág. 2 , consultado el 26 de octubre de 2015
- ^ "Citas: compromiso de bits utilizando generadores pseudoaleatorios - Naor (ResearchIndex)" . Citeseer.ist.psu.edu . Consultado el 7 de junio de 2014 .
- ^ Tang, Chunming; Pei, Dingyi; Liu, Zhuojun; He, Yong (16 de agosto de 2004). "Pedersen: intercambio secreto verificable seguro no interactivo y teórico de la información" (PDF) . Archivo ePrint de criptología . Avances en criptología CRYPTO 1991 Springer. Archivado desde el original (PDF) el 11 de agosto de 2017 . Consultado el 2 de febrero de 2019 .
- ^ Moni Naor, Rafail Ostrovsky, Ramarathnam Venkatesan, Moti Yung: Argumentos perfectos de conocimiento cero para NP usando cualquier permutación unidireccional. J. Cryptology 11 (2): 87-108 (1998) [1]
- ^ Brassard, Crépeau, Mayers, Salvail: una breve revisión sobre la imposibilidad del compromiso de bits cuánticos
- ^ A. Kent: Compromiso de bits clásico seguro mediante canales de comunicación de capacidad fija
- ^ Kent, A. (1999). "Compromiso de bits incondicionalmente seguro". Phys. Rev. Lett . 83 (7): 1447–1450. arXiv : quant-ph / 9810068 . Código Bibliográfico : 1999PhRvL..83.1447K . doi : 10.1103 / PhysRevLett.83.1447 . S2CID 8823466 .
- ^ McGrath, Thomas; Bagci, Ibrahim E .; Wang, Zhiming M .; Roedig, Utz; Joven, Robert J. (12 de febrero de 2019). "Una taxonomía PUF" . Revisiones de física aplicada . 6 (1): 011303. Bibcode : 2019ApPRv ... 6a1303M . doi : 10.1063 / 1.5079407 .
- ^ Rührmair, Ulrich; van Dijk, Marten (1 de abril de 2013). "Sobre el uso práctico de funciones físicas no clonables en protocolos de transferencia inconsciente y compromiso de bits". Revista de Ingeniería Criptográfica . 3 (1): 17-28. doi : 10.1007 / s13389-013-0052-8 . hdl : 1721,1 / 103985 . ISSN 2190-8516 . S2CID 15713318 .
- ^ Nikolopoulos, Georgios M. (30 de septiembre de 2019). "Esquema óptico para compromisos criptográficos con claves físicas no clonables". Optics Express . 27 (20): 29367–29379. arXiv : 1909.13094 . Código Bib : 2019OExpr..2729367N . doi : 10.1364 / OE.27.029367 . ISSN 1094-4087 . PMID 31684673 . S2CID 203593129 .
enlaces externos
- Compromiso de bits cuánticos en arxiv.org