El resumen más completo de la clave está aquí.

En el artículo anterior, hablamos sobre técnicas criptográficas como la criptografía simétrica, la criptografía de clave pública, los códigos de autenticación de mensajes y las firmas digitales. Todas estas tecnologías utilizan algo llamado clave.

Entonces, ¿qué es exactamente una clave? La clave es una clave, a través de la cual se puede obtener el texto sin formato final. Entonces, la clave es en realidad equivalente al texto plano.

Por ejemplo, hay cien mil dólares en la caja fuerte, que está cerrada y tiene una llave. Entonces la persona con la llave equivale a tener cien mil dólares.

Resumen de varias claves

En el artículo anterior, hablamos sobre cuatro técnicas criptográficas: criptografía simétrica, criptografía de clave pública, código de autenticación de mensajes y firma digital. Aquí repasamos de nuevo.

  • Cifrado simétrico

Las contraseñas simétricas usan la misma clave para cifrar y descifrar texto sin formato.

  • Contraseña de clave pública

Las contraseñas de clave pública usan claves diferentes para cifrar y descifrar mensajes.

  • Código de autenticación de mensaje

El código de autenticación del mensaje usa la misma clave para autenticar el mensaje.

  • Firma digital

Las firmas digitales usan diferentes claves para firmar y verificar mensajes.

Entre ellos, la contraseña simétrica y la contraseña de clave pública cifran directamente el texto sin formato, para garantizar la confidencialidad del mensaje.

El código de autenticación del mensaje y la firma digital se utilizan para autenticar el mensaje, que no se utiliza para cifrar el texto sin formato, principalmente para verificar la legitimidad del mensaje.

Otra clasificación clave

Los cuatro tipos anteriores se dividen según el método de cifrado y el uso. De hecho, la cantidad de veces que se usa la clave de instalación se puede dividir en una clave de sesión y una clave maestra.

La clave de sesión es una clave que se utiliza solo en una sesión y se descarta después de su uso. La clave maestra es una clave fija que se ha utilizado repetidamente.

Los amigos que estén familiarizados con el protocolo SSL / TLS deben estar familiarizados con esto: en este protocolo, se crea una clave separada para cada sesión para cifrar el mensaje de la sesión, lo que significa que se crea una clave de sesión para cada sesión.

Además, ya sea que el objeto cifrado sea el contenido o la clave, podemos dividirlo en la clave del mensaje cifrado (CEK) y la clave de la clave cifrada (KEK). La clave para cifrar mensajes es fácil de entender. La clave simétrica y la clave pública anteriores son CEK. La clave de cifrado se utiliza principalmente para reducir la cantidad de claves.

Gestión de claves

Explicamos principalmente la gestión clave de los siguientes aspectos:

  1. Generar clave

Hay dos formas de generar claves, usando números aleatorios y usando contraseñas.

Los números aleatorios deben tener características que no se puedan inferir. En términos generales, necesitamos usar un generador pseudoaleatorio para generar.

Usualmente usamos la clase Random en el código Java, pero esta clase no puede usarse para generar claves. Podemos usar java.security.SecureRandom para generar números aleatorios para la seguridad de la contraseña.

Aquí hay dos usos comunes de SecureRandom:

        SecureRandom random = new SecureRandom();
        byte bytes[] = new byte[20];
        random.nextBytes(bytes);
 byte seed[] = random.generateSeed(20);

Además de los números aleatorios, otra forma es una contraseña.

La contraseña es una contraseña que los humanos pueden recordar. Para garantizar que la clave generada por la contraseña no sea forzada, la contraseña debe ser salada.

En pocas palabras, es agregar un número aleatorio a la contraseña, y luego numerar el número después de la adición, y el resultado calculado puede usarse como una clave.

  1. Clave de entrega

Para distribuir la clave, podemos usar la clave compartida de antemano, usar el centro de distribución de claves, usar la contraseña de clave pública y otros métodos. Por supuesto, también se pueden utilizar otros métodos para la entrega.

  1. Clave de actualización

A veces, para garantizar la seguridad de la clave, necesitamos actualizar la clave de vez en cuando. El enfoque general es utilizar la clave actual como valor de referencia y calcular una nueva clave a través de un algoritmo específico.

  1. Guardar la llave

Aquellos que han aprendido la cadena de bloques deben saber que hay una clave de papel, de hecho, es escribir la clave en papel para guardarla.

Cuando hay demasiadas claves, guardar la clave fuera de línea se convierte en una tarea muy difícil. En este momento, se puede usar la clave KEK de la clave. Cifre estas claves y guárdelas.

No necesitamos considerar la seguridad de la clave encriptada de esta manera, porque incluso si es robada, la clave anterior no se puede restaurar. Solo necesitamos guardar las claves que encriptan estas claves.

  1. Clave vacía

La revocación de la clave es un asunto muy complicado, porque la clave es la clave, incluso si la elimina, otras personas también pueden tener una copia de la misma. Por lo tanto, el diseño de la clave debe considerarse plenamente en el diseño.

En el certificado anterior, podemos usar la lista de CRL para guardar claves obsoletas.

Para obtener más información, visite http://www.flydean.com/key/

Supongo que te gusta

Origin www.cnblogs.com/flydean/p/key.html
Recomendado
Clasificación