Red de conocimiento informático - Aprendizaje de programación - Implementación en lenguaje C del algoritmo de cifrado IDEA

Implementación en lenguaje C del algoritmo de cifrado IDEA

1. El proceso básico del cifrado de datos es procesar el archivo o los datos de texto sin formato originales de acuerdo con un determinado algoritmo, convirtiéndolos en un código ilegible, generalmente llamado "texto cifrado", de modo que solo se pueda ingresar. Sólo la clave correspondiente puede mostrar el contenido original. De esta manera, se logra el propósito de proteger los datos contra el robo y la lectura. El propósito es proteger los datos contra el robo y la lectura por parte de personas no autorizadas.

2. Algoritmos de cifrado comunes

DES (Data Encryption Standard): Estándar de cifrado de datos, rápido, adecuado para cifrar grandes cantidades de datos

3DES (Triple; DES): basado en DES, un dato se cifra tres veces con tres claves diferentes, lo que tiene mayor seguridad;

RC2 y RC4: utilizan claves de longitud variable para cifrar una gran cantidad de datos. , más rápido que DES;

IDEA (Algoritmo internacional de cifrado de datos): utiliza una clave de 128 bits para proporcionar una seguridad muy sólida;

RSA: inventado por RSA, es un algoritmo de cifrado que admiten claves de longitud variable. Inventado por RSA, es un algoritmo de clave pública que admite claves de longitud variable y la longitud del bloque de archivos a cifrar también es variable;

DSA (Algoritmo de firma digital): algoritmo de firma digital, un estándar DSS (Estándar de firma digital);

AES (Estándar de cifrado avanzado). Estándar de cifrado avanzado): El estándar de cifrado avanzado es un estándar de algoritmo de cifrado de próxima generación con alta velocidad y alto nivel de seguridad. Uno de los algoritmos que actualmente implementa el estándar AES es el algoritmo Rijndael

BLOWFISH, que utiliza variables. claves de longitud, la longitud puede alcanzar 448 bits y la velocidad de ejecución es muy rápida;

Otros algoritmos, como ElGamal, Defie-Hellman, el nuevo algoritmo de curva elíptica ECC, etc.

Por ejemplo, MD5. Las cosas que ves en algunos sitios web más formales y estrictos generalmente tienen el valor dado por MD5. Por ejemplo, todas las herramientas de software centradas en la seguridad usan MD5.

3. Rutina:

#include

#include

#include< conio .h>

#include

#define?maxim?65537

#define?fuyi?65536

#define?one?65536

#define?round?

unsigned?int?inv(unsigned?int?xin);

unsigned?int?mul? (¿sin firmar?int?a,sin firmar?int?b);