El equipo de desarrollo creó un algoritmo de cifrado post-cuántico

Con el advenimiento de computadoras cuánticas suficientemente poderosas, muchos algoritmos criptográficos se vuelven vulnerables y ya no brindan el secreto de datos necesario. Hay un algoritmo que funcionará en la era post-cuántica: el cifrado de Vernam o las almohadillas de cifrado de un solo uso. Pero tiene un inconveniente importante: la longitud de la clave debe ser igual a la cantidad de datos cifrados.





Introducción

Las notas cifradas son de poca utilidad para la comunicación: es necesario almacenar una gran cantidad de datos aleatorios, actualizar las notas cifradas a medida que se agotan. Aunque hoy en día no es un problema para algunas misiones diplomáticas tener un almacenamiento con claves por un par de petabytes, pero la molestia de organizar la protección del almacenamiento no solucionará el problema de quedarse sin claves. Almacenamiento El nuevo método de cifrado le permite aumentar la duración del uso de claves generadas previamente mediante un generador de números aleatorios. En condiciones ideales, incluso dos brocas son suficientes para un uso ilimitado.





Definiciones

Bloc de cifrado: datos aleatorios generados previamente.





Un flujo de mensajes son datos encriptados que se transmiten secuencialmente o en paralelo entre interlocutores.





La clave base es otra parte del bloque de cifrado que se utiliza para cifrar el primer mensaje de la secuencia.





Clave de sesión: clave de cifrado del siguiente mensaje de la secuencia, creada con PRNG según sea necesario.





El campo de datos es la carga útil cifrada con la clave de la sesión anterior.





Algoritmo

La cantidad mínima de información transmitida está determinada por el bloque de datos en el mensaje, puede ser un bit o byte, o gigabyte, depende de la implementación específica. La clave debe tener dos bloques de longitud, ya que encripta el bloque de datos y la primera parte de la siguiente clave, la segunda parte de la clave está encriptada con la primera parte de la anterior. Debido al hecho de que se utilizan datos aleatorios para las claves, no será posible descifrar la clave real, porque todas las combinaciones posibles son igualmente probables.





Alice y Bob crean un bloque de cifrado común.





, , , . .





, , . .





, , , . , .





.





(. . ), , .





, , , .





.





, [10]





[1]. [00]. .





101 xor 100 => 001





[001] .





( , ) .





101 xor 001 => 100, 00





[1]. [01]. , .





000 xor 101 => 101





.





. habr. ASCII.





h = 68, a = 61, b = 62, r = 72





[01 23]





[B6]





, [5C E4]





...





012301 xor b65ce4 => b77fe5





, [b4 cd], .





5CE45C xor 68B4CD => 345091





, [A4 E8]





B4CDB4 xor 61A4E8 => D5695C





[E0 9A] [B0 51]. .





B77FE5345091D5695CC6083EC26382





Basta con borrar los dos primeros bytes, e incluso teniendo acceso al bloque de cifrado, no funcionará descifrar el mensaje original debido a que cada clave está cifrada por la anterior.





Y aquí hay un mensaje interesante encriptado de la misma manera que la clave base [ 7B D0 ]





33A7C016D2519BF4EBDF241ACED9541CCEDCD77108B6BD7858475C19B9475A4D5B85415DEE28A02F1F5250C04C55398F6CB561469291654E74BA19D98C104440913755








All Articles