Claves asimétricas
Las claves asimétricas, también conocidas como pares de claves públicas y privadas, se usan para el cifrado asimétrico. El cifrado asimétrico se usa principalmente para cifrar y descifrar claves de sesión y firmas digitales. El cifrado asimétrico usa algoritmos de cifrado de clave pública .
Los algoritmos de clave pública usan dos claves diferentes: una clave pública y una clave privada. El miembro de clave privada del par debe mantenerse privado y seguro. Sin embargo, la clave pública se puede distribuir a cualquier persona que lo solicite. La clave pública de un par de claves se distribuye a menudo mediante un certificado digital. Cuando se usa una clave de un par de claves para cifrar un mensaje, se requiere la otra clave de ese par para descifrar el mensaje. Por lo tanto, si la clave pública del usuario A se usa para cifrar los datos, solo el usuario A (o alguien que tenga acceso a la clave privada del usuario A) puede descifrar los datos. Si la clave privada del usuario A se usa para cifrar un fragmento de datos, solo la clave pública del usuario A descifrará los datos, lo que indica que el usuario A (o alguien con acceso a la clave privada del usuario A) realizó el cifrado.
Si la clave privada se usa para firmar un mensaje, se debe usar la clave pública de ese par para validar la firma. Por ejemplo, si Alice quiere enviar un mensaje firmado digitalmente, firmaría el mensaje con su clave privada y la otra persona podría comprobar su firma mediante su clave pública. Dado que supuestamente solo Alice tiene acceso a su clave privada, el hecho de que la firma se pueda comprobar con la clave pública de Alice indica que Alice creó la firma.
Desafortunadamente, los algoritmos de clave pública son muy lentos, aproximadamente 1000 veces más lentos que los algoritmos simétricos. No es práctico usarlos para cifrar grandes cantidades de datos. En la práctica, los algoritmos de clave pública se usan para cifrar las claves de sesión. Los algoritmos simétricos se usan para el cifrado o descifrado de la mayoría de los datos.
Del mismo modo, dado que firma un mensaje, en efecto, cifra el mensaje, no es práctico usar algoritmos de firma de clave pública para firmar mensajes de gran tamaño. En su lugar, se realiza un hash de longitud fija del mensaje y se firma el valor hash. Para obtener más información, consulte Hashes y firmas digitales.
Por lo general, cada usuario tiene dos pares de claves públicas y privadas. Un par de claves se usa para cifrar las claves de sesión y la otra para crear firmas digitales. Estos se conocen como el par de claves de intercambio de claves y el par de claves de firma, respectivamente.
Tenga en cuenta que, aunque los contenedores de claves creados por la mayoría de los proveedores de servicios criptográficos (CSP) contienen dos pares de claves, esto no es necesario. Algunos CSP no almacenan ningún par de claves , mientras que otros CSP almacenan más de dos pares.
Todas las claves de CryptoAPI se almacenan en CSP. Los CSP también son responsables de crear las claves, destruirlas y usarlas para realizar diversas operaciones criptográficas. La exportación de claves fuera del CSP para que se puedan enviar a otros usuarios se describe en Almacenamiento de claves criptográficas y Exchange.