¿Cantidad de operaciones simples que están fuera del alcance de toda la humanidad?

165

Las primitivas criptográficas usualmente afirman algún nivel de seguridad dado como número de operaciones para montar un ataque. Las funciones de hash, por ejemplo, proporcionan diferentes niveles de seguridad para ataques de colisión, ataques de preimagen y ataques de segunda preimagen. De estos, se derivan tamaños de clave "seguros" para diferentes primitivas.

Hay muchas recomendaciones diferentes para tamaños de clave seguros y muchos medios diferentes para estimar capacidades futuras en la realización de cálculos. Por ejemplo, www.keylength.com tiene muchas de estas recomendaciones combinadas.

Sin embargo, lo que estoy buscando es la cantidad de operaciones simples que, obviamente, se pueden ver como fuera del alcance de toda la humanidad en el futuro previsible, o en realidad, el valor más bajo que aún es creíble.

Es muy obvio que 2 ^ 256 operaciones simples es algo que nunca se alcanzará. También es muy obvio que se pueden alcanzar 2 ^ 64 operaciones simples como ya lo ha sido. Muchas de las recomendaciones parecen calcular 2 ^ 128 como un número que sería seguro durante 30 años o más. Por lo tanto, el valor que busco es probable entre 2 ^ 128 y 2 ^ 256. Estoy adivinando 2 ^ 160 o 2 ^ 192 podrían estar fuera de alcance con seguridad.

Pero quiero argumentos concretos sobre los que se pueda razonar fácilmente. Me encantaría ver argumentos basados en simples leyes de la física o relaciones con constantes concretas sobre el universo. Por ejemplo, principio de Landauer podría utilizarse.

Nota: las operaciones simples reales utilizadas no son relevantes aquí, pueden ser operaciones en una computadora cuántica, invocaciones hash, o lo que sea.

    
pregunta Nakedible 11.08.2011 - 19:35
fuente

4 respuestas

277

Como punto de partida, consideraremos que cada operación elemental implica un gasto mínimo de energía; El principio de Landauer establece ese límite en 0.0178 eV, que es 2.85 × 10 -21 J Por otro lado, la masa total del sistema solar, si se convierte en su totalidad en energía, produciría alrededor de 1.8 × 10 47 J (en realidad eso es lo que obtendría de la masa del Sol). , de acuerdo con esta página , pero el Sol se lleva la parte del León de la masa total del Sistema Solar) . Esto implica un límite rígido de aproximadamente 6.32 × 10 68 cálculos elementales, que es aproximadamente 2 225.2 . (Creo que Schneier ya presentó este cálculo en "Criptografía aplicada".)

Por supuesto, este es un escenario bastante extremo y, en particular, no tenemos idea de cómo podríamos convertir masa en energía: la fisión nuclear y la fusión convierten solo una pequeña proporción de la masa disponible en energía.

Veamos una perspectiva más mundana. Parece justo suponer que, con la tecnología existente, cada operación elemental debe implicar de alguna manera la conmutación de al menos una puerta lógica. El poder de conmutación de una sola puerta CMOS es aproximadamente C × V 2 donde C es la capacidad de carga de la compuerta, y V es la tensión a la que opera la compuerta. A partir de 2011, una compuerta de muy alta calidad podrá funcionar con un voltaje de 0.5 V y una capacidad de carga de algunas femtofaradios ("femto" significa 10 -15 ). Esto lleva a un consumo mínimo de energía por operación de no menos de, digamos, 10 -15 J. El consumo mundial de energía actual actual es de alrededor de 500 EJ (5 × 10 20 J) por año (o eso dice este artículo ). Suponiendo que la producción total de energía de la Tierra se desvíe a un solo cálculo durante diez años, obtenemos un límite de 5 × 10 36 , que está cerca de 2 122 .

Entonces hay que tener en cuenta los avances tecnológicos. Dada la tendencia actual sobre preocupaciones ecológicas y el pico de petróleo , la producción total de energía no debería aumentar mucho en los próximos años ( no digas más que un factor de 2 hasta el año 2040 (ya es una pesadilla para los ecologistas). Por otro lado, hay avances tecnológicos en el diseño de circuitos integrados. la ley de Moore establece que puede colocar el doble de transistores en una superficie de chip determinada cada dos años. Una visión optimista de muy es que esta duplicación del número de transistores se puede hacer con un consumo constante de energía, lo que se traduciría en reducir a la mitad el costo de energía de una operación elemental cada dos años. Esto llevaría a un total general de 2 138 en el año 2040 , y esto es para un solo cálculo de diez años que moviliza a todos Los recursos de todo el planeta.

Por lo tanto, la sabiduría habitual de "128 bits es más que suficiente para las próximas décadas" no está desactivada (todo depende de lo que consideraría que está "seguro" fuera de alcance, pero mi nivel de paranoia es bastante sereno con 128 bits "solo").

Una nota sobre computadoras cuánticas: un control de calidad puede hacer mucho en una sola "operación". La presentación habitual es que el control de calidad realiza "varios cálculos simultáneamente, que filtramos al final". Esta afirmación es errónea en muchos detalles, pero todavía contiene un poco de verdad: un control de calidad debería poder atacar a n -bit criptografía simétrica (por ejemplo, cifrado simétrico con un n tecla -bit) en 2n/2 operaciones cuánticas elementales. De ahí el truco clásico: para tener en cuenta las computadoras cuánticas (si alguna vez existen), doble la longitud de la clave. Por lo tanto, AES con una clave de 256 bits, SHA-512 ... (la clave de 256 bits de AES no fue diseñada para proteger contra hipotéticas computadoras cuánticas, pero así es como las claves de 256 bits se justifican hoy en día).

    
respondido por el Thomas Pornin 11.08.2011 - 21:08
fuente
28
  

Nota: las operaciones simples reales utilizadas no son relevantes aquí, pueden ser operaciones en una computadora cuántica, invocaciones hash, o lo que sea.

Bueno, una computadora cuántica es la razón por la que nadie puede decirle "la cantidad de operaciones simples que obviamente se pueden ver como fuera del alcance de toda la humanidad en el futuro inmediato". Por definición, una computadora cuántica realiza lo contrario de "operaciones simples reales"; le permite a uno desviar una gran parte del espacio de "operación simple" a través del juego de manos cuántico. Una vez que la computadora que pasa por alto partes de ese espacio de operación simple existe, entonces su pregunta sobre "qué tan grande debe ser el espacio" se vuelve impredeciblemente irrelevante.

Esa es la teoría, de todos modos. No hemos alcanzado el nivel de futuro en el que las computadoras cuánticas puedan hacer lo que creemos que deberían poder hacer. Aunque me siento cómodo diciendo que tal computadora cuántica existe y no existe en una caja en algún lugar.

    
respondido por el gowenfawr 11.08.2011 - 20:38
fuente
7

Una cosa reciente para agregar aquí que probablemente sea relevante para la pregunta es que el Principio de Landauer podría no mantenerse:

enlace

  

Midieron la cantidad de energía disipada durante la operación de   una puerta "O" (que es claramente una puerta lógicamente irreversible) y   Mostró que la operación lógica se puede realizar con un peaje energético.   tan pequeño como el 5 por ciento del límite esperado de kBT ln2. La conclusión   del artículo de Nature Communications es que no hay fundamentos   La lógica límite y reversible no se requiere para operar computadoras con   Gasto energético cero.

     

¿Por qué tardó tanto en descubrir esto? En parte porque el   experimento tuvo que lograr una sensibilidad excepcional con el fin de mostrar   que el límite de Landauer podría ser superado: más de 10 a 21 julios,   donde 1 Joule es la energía que se necesita para levantar una manzana un metro   por encima del suelo. Esta es una cantidad muy pequeña de energía.

    
respondido por el Nakedible 27.07.2016 - 10:20
fuente
5

Aunque me gusta mucho la respuesta de @ thomas-pornin, creo que hay un problema con la primera suposición que debe mencionarse.

El principio de Laundauer solo se aplica a operaciones irreversibles.

Contrariamente a lo que algunos pueden suponer, la computación reversible ya es alcanzable. Las operaciones son comunes en computadoras cuánticas y sistemas de cifrado homomórficos.

Más específicamente, un algoritmo hash dado puede usar una operación como XOR para mezclar dos bits y destruir la información sobre la cual era 1 y era 0, pero un CNOT (wiki) como en Fredkin Gate es un equivalente reversible que produce el resultado XOR y un bit de control distintivo. Si se conservan esos datos, la operación puede revertirse, libremente. Si, en cambio, se destruye dejando solo el XOR, se aplica el Principio de Landauer.

Como otros lo han indicado, la computación cuántica está cambiando las cosas, pero eso se debe a que utiliza puertas CNOT en lugar de XOR con qubits, dejando a los bits de control para preservar el estado de superposición cuántica y realizar la operación sin gastar el costo de Landauer de destruirla .

En consecuencia, si los estados de salida se contraen, los bits del hash (por ejemplo) se destruyen, con un costo de energía, para coincidir con la salida conocida, no se requiere un costo adicional para calcular la entrada, más allá de sondear el valor de cada uno. bit.

Como mínimo, eso debería requerir al menos la cantidad de bits en el hash, y al menos la cantidad de bits en los datos de entrada. Para un algoritmo hash dado, el cálculo del resumen de un bloque puede requerir muchas más operaciones XOR / CNOT que los datos en sí, todos estos deberían sumarse.

Para un SHA-256 (wiki) de 1 Gigabit, Eso es 256 bits del hash de salida, 1 Gigabit de operaciones de entrada, y 16 y / add / xor en cada parte de 32 bits de la porción de 512 bits, más 8 agregados de 32 bits adicionales para plegar el valor actual; o 33Kbits.

Si tiene ~ 2Terabits de almacenamiento de datos en qubits, y ~ 10 -15 J por bit para configurar el problema e interrogar al estado, puede revertir ese hash.

Bueno, no del todo al revés. Puede encontrar el conjunto de todas las entradas de 1 gigabit que producen ese hash de salida y comenzar a gastar más por bit para elegir una de ellas.

Dependiendo de las necesidades de seguridad, una colisión puede ser suficiente.

(EDITAR) Recientemente, los investigadores han publicado una operación primitiva no reversible que requiere menos que el límite citado, lo que implica un error en los cálculos originales.

    
respondido por el davenpcj 15.07.2016 - 19:13
fuente

Lea otras preguntas en las etiquetas