AES paso a paso

1

Parece que no puedo encontrar un tutorial AES que comience desde Unicode a cifrar texto. Todos los tutoriales que encontré comienzan con un bloque de 128 bits ya.

Además, ¿dónde comienzo o qué temas debo comenzar a aprender para este campo de TI (información, sección y algoritmos)? Lo siento si mi publicación no puede ser constructiva.

    
pregunta Pat 23.04.2016 - 00:35
fuente

1 respuesta

4

Las explicaciones de AES comienzan con bits porque eso es lo que hace AES, y más encriptación general: procesa los datos, que es una secuencia de bits.

Los seres humanos hemos estado representando información con otro mecanismo durante más de 5000 años, con "glifos", ahora a menudo llamados "caracteres" (estos dos términos designan conceptos ligeramente diferentes pero no ocultemos el debate). A eso le llamamos escribir . Esto no es de ninguna manera un mecanismo "natural", pero estamos capacitados para leer y escribir desde una edad temprana, hasta el punto de que ahora insistimos en manejar los datos con esa representación.

Sin embargo, hacer un sistema de cifrado que funcione con caracteres ha resultado difícil, torpe e ineficiente. Todos los sistemas de encriptación clásicos hasta la invención de las computadoras operaban con caracteres, y todos estaban rotos. Las computadoras, por otro lado, usan binario porque es mucho más fácil y mucho más rápido para sus cerebros de silicio. Dado que las computadoras deben finalmente interactuar con los humanos, se han diseñado varios mecanismos para permitir que las computadoras traduzcan los caracteres en bits y regresen; colectivamente, estos se denominan codificación .

La codificación no es encriptación, y la encriptación no es encriptación. La codificación supera con creces el alcance del cifrado. Tiene sus propios estándares, en particular Unicode . Unicode define aproximadamente 120000 caracteres distintos ("puntos de código" en la terminología de Unicode) y especifica varios métodos mediante los cuales una secuencia de puntos de código se puede convertir en una secuencia de bytes (y, por lo tanto, una secuencia de bits); el más común es UTF-8, en el que cada punto de código se convierte en 1, 2, 3 o 4 bytes (letras occidentales no acentuadas básicas, suficientes para escribir la mayoría de las palabras en inglés, use solo un byte cada una en UTF-8; chino y chino Los ideogramas japoneses suelen tomar tres).

La criptografía moderna está diseñada para funcionar dentro de las computadoras, y cualquier información que se ajuste a una computadora debe ser una secuencia de bits, porque eso es lo que existe dentro de una computadora. Se supone que ya ha tenido lugar la conversión de dicha información en y desde formatos adecuados para el consumo humano, como la codificación de caracteres. Es por esto que las documentaciones sobre AES no explican estas partes. En particular, no existe una codificación de caracteres que sea específica para el propósito del cifrado AES; no hay "UTF-8 para cifrado", solo hay "UTF-8". A la inversa, el cifrado AES también funciona en cualquier otra cosa que esté codificada en bits, como imágenes, música, archivos ejecutables o datos financieros. Este es el punto central de trabajar en bits: funciona en todo que puede ser en bits, y si puede caber en una computadora, entonces es en bits.

El primer paso para aprender la seguridad de la información es comprender información , y la noción de codificación es el núcleo de la misma.

    
respondido por el Thomas Pornin 23.04.2016 - 03:44
fuente

Lea otras preguntas en las etiquetas