V
e
r

l
i
s
t
a
d
o

tractatus@lapipaplena:/# _

 

mceliece

Es un sistema criptográfico de clave pública basado en códigos de corrección de errores. Es resistente a ataques con computación cuántica, por lo que se considera un candidato para la criptografía post-cuántica. Las herramientas se agrupan de la siguiente manera:

mceliece {6960119,6688128,8192128,460896,348864} -keypair

mceliece {6960119,6688128,8192128,460896,348864} f-kepair

mceliece {6960119,6688128,8192128,460896,348864} -enc

mceliece {6960119,6688128,8192128,460896,348864} -dec

Las claves [mceliece...-keypair y mceliece...f-keypair] se generan aleatoriamente la publica y la secreta. La clave pública la archiva en el descriptor 5 y la clave secreta en el descriptor 9. El comando mceliece...f-kepair es internamente más complicado que el comando mceliece...-keypair, pero proporciona una generación de claves más rápida. Los comandos son interoperables.

La encapsulación se ejecuta cpn el comando mceliece...-enc. Este comando lee la clave pública desde el descriptor de archivo 4. Genera aleatoriamente un texto cifrado y la clave de sesión correspondiente. Escribe el texto cifrado en stdout, y luego escribe la clave de sesión para archivar el descriptor 7.

La decapsulación se ejecuta con el comando mceliece...-dec. Este comando lee la clave secreta desde el descriptor de archivo 8, y luego lee un texto de cifrado de Stdin. Calcula la clave de sesión correspondiente, que escribe en el descriptor de archivos 7.

Unos ejemplos con las más usuales:

$ mceliece-fulltest
ejecuta pruebas completas del sistema
$ mceliece-speed
pruebas de rendimiento. Mide el rendimiento de las operaciones criptográficas: velocidad de cifrado, descifrado, generación de claves
$ mceliece-speed 1000
especificando número de iteraciones
$ mceliece-test
ejecuta pruebas unitarias para verificar que los componentes básicos funcionan correctamente

El proceso criptográfico es el siguiente:

$ mceliece348864-keypair 5>publickey 9>secretkey
generar clave
$ ls

publickey secretkey

$ mceliece348864-enc >ciphertext 7>sessionkey 4<publickey
encapsular
$ mceliece348864-dec 7>sessionkey <ciphertext 8<secretkey
desencamsular
$ ls

ciphertext publickey secretkey sessionkey

Notas.- Los números en los nombres [348864, 460896, 6960119, 8192128] se refieren a los parámetros de seguridad, 3488 bits de seguridad para la clave o 4608, etc, y cuando se genera la clave el parámetro numérico 6960119, para encapsular y desencapslar es preferible usar el .enc y .dec que coincida con el número de su parámetro de seguridad [6960119] para evitar errores [fatal: read publickey failed: end of file]. Las claves públicas de mceliece son enormes, de cientos de kilobytes o más. Por eso aunque es seguro post-cuántico, no es práctico para todos los usos.

Navegando por staredsi.eu aceptas las cookies que utilizamos en esta web. Más información: Ver política de cookies
[0] 0:bash*
4115 entradas - Acerca del Tractatus
La Pipa Plena 2025