VMPC ( Variaably Modified Permutation Composition ) para criptografía es un cifrado de flujo similar al conocido y popular cifrado RC4 diseñado por Ron Rivest . [ 1 ] Fue diseñado por Bartosz Żółtak y presentado en 2004 en la conferencia Fast Software Encryption .
El núcleo del cifrado es la función VMPC, una transformación de permutaciones de n elementos definida como:
para x desde 0 hasta n-1: g(x) = VMPC(f)(x) = f(f(f(x))+1)
La función fue diseñada de tal manera que invertirla, es decir obtener f a partir de g , sería un problema complejo. Según simulaciones por computadora, el número promedio de operaciones necesarias para recuperar f a partir de g para una permutación de 16 elementos es de aproximadamente 2 11 ; para una permutación de 64 elementos, de aproximadamente 2 53 ; y para una permutación de 256 elementos, de aproximadamente 2 260 .
En 2006, en la Universidad de Cambridge, Kamil Kulesza investigó el problema de invertir VMPC y concluyó que "los resultados indican que VMPC no es un buen candidato para una función criptográfica unidireccional". [ 2 ]
La función VMPC se utiliza en un algoritmo de cifrado : el cifrado de flujo VMPC . El algoritmo permite una implementación eficiente en software; para cifrar L bytes de texto plano, haga lo siguiente:
Todas las operaciones aritméticas se realizan módulo 256. i := 0 mientras GenerandoSalida: j := S[j + S[i]] Salida S[S[S[j]] + 1] Intercambiar S[i] y S[j] ( b := S[j]; S[j] := S[i]; S[i] := b) ) i := i + 1 fin mientras
Donde la permutación P de 256 elementos y el valor entero s se obtienen de la contraseña de cifrado utilizando el algoritmo VMPC-KSA (Algoritmo de Programación de Claves).
Referencias
- ↑ Alexander Maximov (22 de febrero de 2007). "Dos ataques de distinción lineal en VMPC y RC4A y debilidad de la familia de cifradores de flujo RC4 (corregida)" . Cryptology ePrint Archive .(Presentado originalmente en la conferencia FSE 2006)
- ↑ Kulesza, Kamil (27-10-2008). "Sobre la inversión de la función unidireccional VMPC" (PDF) . Archivado del original (PDF) el 9-02-2015 . Recuperado el 9 de febrero de 2015 .
Enlaces externos
- Página principal de VMPC
- Artículo original de la conferencia sobre VMPC de la Universidad de Wrocław (PDF)
- Kamil Kulesza: Sobre la inversión de la función unidireccional VMPC
- Implementación no oficial en C del cifrado de flujo VMPC
- Implementación no oficial en Delphi del cifrado de flujo VMPC
- https://eprint.iacr.org/2013/768.pdf VMPC-R: Generador de números pseudoaleatorios criptográficamente seguro, alternativa a RC4
- https://eprint.iacr.org/2014/985.pdf Debilidad estadística de Spritz frente a VMPC-R: en busca del sustituto RC4
- https://eprint.iacr.org/2014/315.pdf Debilidades estadísticas en 20 algoritmos tipo RC4 y (probablemente) el algoritmo más simple libre de estas debilidades: VMPC-R
- https://eprint.iacr.org/2019/041.pdf Algoritmo de autenticación de mensajes (MAC) para el cifrado de flujo VMPC-R (similar a RC4)
- Cifrados de flujo
- Fragmentos de criptografía