[[hack_roadmap-0|Up]]
====== Conceptos Básicos de Criptografía ======
La criptografía es el estudio y la práctica de técnicas para asegurar la
comunicación en presencia de terceros. Es una parte crucial de la seguridad
informática, ya que protege la confidencialidad, integridad y autenticidad de la
información. A continuación, se desarrollan los conceptos básicos de
criptografía, incluyendo tipos de cifrado, funciones hash y protocolos
criptográficos.
===== Historia y Evolución de la Criptografía =====
==== Conceptos Clave: ====
* **Cifrados Clásicos:** Técnicas antiguas como el cifrado César y el cifrado de Vigenère.
* **Criptografía Moderna:** Introducción de algoritmos de cifrado más complejos con la llegada de las computadoras.
==== Ejemplos: ====
* **Cifrado César:** Desplaza cada letra del mensaje un número fijo de lugares en el alfabeto.
Texto Original: HELLO
Clave (desplazamiento): 3
Texto Cifrado: KHOOR
==== Recursos: ====
* [[https://archive.org/details/codebook00simo|The Code Book by Simon Singh]]
* [[https://en.wikipedia.org/wiki/History_of_cryptography|History of Cryptography - Wikipedia]]
===== Tipos de Cifrado =====
==== Cifrado Simétrico: ====
El cifrado simétrico utiliza la misma clave para cifrar y descifrar los datos.
Es rápido y eficiente para grandes volúmenes de datos.
==== Ejemplos: ====
* **AES (Advanced Encryption Standard):** Un estándar de cifrado ampliamente utilizado.
Texto Original: SECRET
Clave: 123456
Texto Cifrado: (cifrado usando AES)
==== Recursos: ====
* [[https://en.wikipedia.org/wiki/Advanced_Encryption_Standard|AES Encryption - Wikipedia]]
* [[https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.197.pdf|NIST AES Specification]]
==== Cifrado Asimétrico: ====
El cifrado asimétrico utiliza un par de claves, una pública y una privada. La
clave pública cifra los datos, y la clave privada los descifra.
==== Ejemplos: ====
* **RSA (Rivest-Shamir-Adleman):** Un algoritmo de cifrado asimétrico ampliamente utilizado.
Clave Pública: (clave pública RSA)
Texto Original: SECRET
Texto Cifrado: (cifrado usando clave pública RSA)
==== Recursos: ====
* [[https://en.wikipedia.org/wiki/RSA_(cryptosystem|RSA Encryption - Wikipedia]])
* [[https://csrc.nist.gov/publications/detail/fips/186/4/final|NIST RSA Algorithm]]
===== Funciones Hash =====
==== Conceptos Clave: ====
Las funciones hash transforman datos de longitud variable en un valor fijo. Son
fundamentales para la integridad de los datos y la verificación.
==== Ejemplos: ====
* **SHA-256 (Secure Hash Algorithm 256 bits):**
Datos Originales: Hello World
Valor Hash: A591A6D40BF420404A011733CFB7B190D62C65BF0BCDA32B91CBEB66
==== Recursos: ====
* [[https://en.wikipedia.org/wiki/SHA-2|SHA-256 Algorithm - Wikipedia]]
* [[https://csrc.nist.gov/publications/detail/fips/180/4/final|NIST SHA-256 Specification]]
===== Firmas Digitales =====
==== Conceptos Clave: ====
Las firmas digitales aseguran la autenticidad e integridad de un mensaje.
Utilizan criptografía asimétrica para crear una firma única vinculada a un
documento.
**Proceso de Firma Digital:**
* Crear un hash del mensaje.
* Cifrar el hash con la clave privada para crear la firma.
* Verificar la firma descifrando el hash con la clave pública.
==== Recursos: ====
* [[https://en.wikipedia.org/wiki/Digital_signature|Digital Signature - Wikipedia]]
* [[https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf|NIST Digital Signature Standard (DSS)]]
===== Certificados Digitales y PKI (Infraestructura de Clave Pública) =====
==== Conceptos Clave: ====
Los certificados digitales y la PKI permiten la distribución y verificación de
claves públicas. Un certificado digital vincula una clave pública con la
identidad de su propietario.
==== Ejemplos: ====
* **Certificado X.509:**
Certificado incluye:
* Clave Pública
* Identidad del propietario
* Firma de una Autoridad Certificadora (CA)
==== Recursos: ====
* [[https://en.wikipedia.org/wiki/Public_key_infrastructure|Public Key Infrastructure - Wikipedia]]
* [[https://csrc.nist.gov/publications/detail/sp/800-32/final|NIST PKI Guidelines]]
===== Criptografía en la Seguridad de Redes =====
==== Conceptos Clave: ====
La criptografía es esencial en protocolos de seguridad de redes para proteger la
comunicación y los datos.
==== Ejemplos de Protocolos Criptográficos: ====
* **SSL/TLS (Secure Sockets Layer/Transport Layer Security):** Protege la comunicación en Internet.
Establece una conexión cifrada entre cliente y servidor.
* **IPsec (Internet Protocol Security):** Protocolo para asegurar la comunicación a nivel de IP.
Autentica y cifra cada paquete IP en una sesión de comunicación.
==== Recursos: ====
* [[https://en.wikipedia.org/wiki/Transport_Layer_Security|TLS - Wikipedia]]
* [[https://en.wikipedia.org/wiki/IPsec|IPsec - Wikipedia]]
====== Conclusión ======
La criptografía es una disciplina fundamental para asegurar la comunicación y la
integridad de los datos en el mundo digital. Desde cifrados clásicos hasta
avanzados algoritmos modernos, las técnicas criptográficas protegen la
confidencialidad y autenticidad de la información. Los recursos y ejemplos
proporcionados ofrecen una base sólida para entender los principios básicos y
las aplicaciones prácticas de la criptografía en la seguridad informática.
===== Recursos Adicionales =====
* [[https://www2.cs.duke.edu/courses/spring16/compsci356/Duplex.pdf|Cryptography and Network Security Principles]] (Duke University)
* [[https://web.stanford.edu/class/archive/cs/cs106b/cs106b.1176/lectures/14-Recursion-Advanced/code/recursion-crypto.pdf|Cryptography Primer]] (Stanford University)