Entiendo la diferencia entre las claves públicas y privadas, pero ¿cómo se cifran los datos con las claves? ¿Y se conoce el esquema de encriptación de, por ejemplo, PGP? ¿Es de código abierto o al menos sabe lo que hace paso a paso?
Si tomo una carta, guárdala en una caja fuerte, escóndala en algún lugar de Nueva York, luego Te digo que leas la carta, eso no es seguridad. Eso es la oscuridad. En el otro mano, si tomo una carta y la guardo en una caja fuerte, y luego le doy la caja fuerte a lo largo con las especificaciones de diseño de la caja fuerte y un centenar de cajas de seguridad idénticas con sus combinaciones para que usted y los mejores piratas del mundo puedan estudiar las mecanismo de bloqueo, y aún no puede abrir la caja fuerte y leer el carta: eso es seguridad.
PGP generalmente usa RSA para cifrar claves aunque se pueden usar otras.
RSA es cómicamente simple:
cifrar: c = m ^ e mod (n).
descifrar: m = c ^ d mod (n).
donde c = texto cifrado, m = mensaje, nd = clave privada, ne = clave pública
Luego, el mensaje se cifra con un cifrado simétrico. Si bien esto generalmente es AES , OpenPGP usa CAST
La mayoría de los algoritmos criptográficos de uso común, incluidos RSA, AES, SHA-256, DES, etc., y los protocolos comunes que los utilizan, incluidos TLS / SSL, PGP, etc., están todos documentados públicamente, y bien estudiado.
Esto sigue a Principio de Kerckhoffs que dice que "Un criptosistema debe ser seguro incluso si todo sobre el sistema, excepto La clave, es el conocimiento público ".
En otras palabras, si las personas no entendieran cómo funcionaba PGP en los niveles más profundos, no tendrían motivos para confiar en él (y muchos motivos para sospechar que puede haber contenido un defecto diabólico). Pero porque se publicó en el abierto, donde todos los que quisieron analizar el diseño, los protocolos y el código en sí mismos, le dieron a la gente la capacidad de leer el código por sí mismos y decidir si era confiable o no.
De hecho, el PGP se desarrolló durante una era en la que los Estados Unidos restringían el comercio internacional de armas. Los Estados Unidos clasifican la criptografía como una tecnología de doble uso, lo que significa que podría ser útil para los civiles, pero también podría usarse con fines militares. Estas leyes fueron utilizadas para restringir la exportación de PGP. Sin embargo, la libertad de prensa es un derecho; Phillip Zimmerman, autor de PGP publicó un libro que contiene el código fuente impreso, ya que un libro es legal para exportar a cualquier lugar Las personas fuera de los EE. UU. Tenían la libertad de escribirlo en sus computadoras y tener un cifrado sólido.
El algoritmo de cifrado asimétrico más común es RSA. El artículo de Wikipedia hace un gran trabajo explicando cómo funciona. Sin embargo, se requiere algo de competencia en matemáticas.
¿Y se conoce el esquema de encriptación de, por ejemplo, PGP? ¿Es de código abierto o al menos sabe lo que hace paso a paso?
Sí en todos los aspectos. Ha habido múltiples versiones de la especificación en los últimos años; La más reciente es RFC 4880 , pero hay otros documentos relacionados también . GnuPG es una implementación de código abierto muy popular.
Lea otras preguntas en las etiquetas pgp asymmetric