Encriptación OTP

/Encriptación OTP
Encriptación OTP 2018-03-26T09:13:58+00:00

One-Time Pad

1882: Descrito por Frank Miller
1917: Reinventado por Gilbert S. Vernam

Si es correctamente usado, se puede lograr un secretismo perfecto a través de él. Esto está matemáticamente probado.

Requisitos

Para asegurar y probar con éxito que One-time Pad es irrompible, se deben cumplir los siguientes requisitos:

  • La clave debe ser tan larga como el texto sin formato
  • La clave debe ser verdaderamente aleatoria
  • La clave solo debe usarse una vez, y luego se descarta

Generación de claves

Las claves OTP se usan en pares que son verdaderamente aleatorios. Solo hay dos copias de la clave. Uno para el emisor y otro para el receptor.

Cifrado

Se genera una secuencia de claves verdaderamente aleatorias y luego se combina con el texto plano por una operación ‘exclusiva O’ (XOR). La operación binaria XOR se realiza en cada bit con el bit correspondiente en la clave secreta.

Descifrado

La copia de la clave guardada por el receptor se combina con el texto cifrado, que también utiliza una operación ‘OR exclusiva’ (XOR). Cada usuario guarda una copia de la clave y las claves se distribuyen de forma segura antes del cifrado.

Como los cambios de clave nunca caen en un patrón repetitivo, cada encriptación es única y no guarda relación con la siguiente encriptación. Por lo tanto, no se puede detectar ningún patrón. Debido a que las claves son igualmente probables y se generan todas aleatoriamente, no existe una frecuencia deferente. El cifrado es irrompible.

La fuerza bruta permanece sin fuerza

Los ataques de fuerza bruta contra OTP no son ni factibles ni realizables porque incluso si una clave diferente puede producir un mensaje significativo, no se garantiza que sea el mensaje original.

Nunca será posible descifrar los datos cifrados de One-Time Pad sin tener la criptografía adecuada, independientemente de cualquier ataque o tecnología.

Además, OTP es inmune a cualquier súper computadora  o computadora  cuántica, independientemente de la cantidad de tiempo que podría dedicar a descifrar cualquier dato.

Desafíos

1. Longitud de la clave
Usar una clave que es más corta que el mensaje que se debe cifrar, significa que la clave se usará inevitablemente más de una vez. Usar la misma clave más de una vez podría resultar en la pérdida de distribución de frecuencia y, por lo tanto, permitir ataques exitosos de diccionario o de fuerza bruta.

2. Demanda tiempo
Los pads generados (diccionarios) deben ser verdaderamente aleatorios, no repetitivos y utilizados solo una vez. Este proceso lleva mucho tiempo y requiere un software altamente optimizado con hardware avanzado para la generación de One-time Pads de alta calidad.

3. Distribución de claves
Para cada par, se necesita un medio de transporte seguro ̶ como transportar las llaves físicamente ̶ y un almacenamiento grande y seguro. Difundir OTP a través de todas las redes y en Internet, no es factible porque las claves deben generarse y distribuirse antes de cualquier comunicación.

4. Aleatoriedad verdadera
Las claves de One-time Pad utilizadas para el cifrado deben ser completamente aleatorias para evitar ataques de fuerza bruta o de diccionario. Generar claves verdaderamente aleatorias  es un proceso complicado y casi inalcanzable usando solo algoritmos de  software. Incluso, la salida siempre será de seudo-aleatoriedad. Para garantizar una seguridad irrompible, los generadores aleatorios de hardware deben incluirse como SEED para cualquier proceso de generación.