Encontraremos esta necesidad a la hora de desarrollar aplicaciones de escritorio, servicios, procesos desatendidos o sitios Web de comercio electrónico, entre otros.
La criptografía es la respuesta a estas necesidades, como se expone a lo largo del libro. El primer capítulo nos introducirá en la materia, en el segundo se describen los fundamentos matemáticos básicos, del tercer capítulo en adelante veremos la aplicación práctica en distintos lenguajes de programación y bases de datos, para culminar con un resumen de aspectos legales y políticos relacionados.
Hoy, la criptografía ya no es cosa de expertos, o al menos no debería serlo.
En este libro aprenderá a utilizar la criptografía en los entornos Java, .NET y PHP, encriptar las bases de datos creadas con Microsoft SQL, MySQL y Oracle y conocer las aplicaciones y estándares criptográficos. CAPÍTULO 1. INTRODUCCIÓN GENERAL CAPÍTULO 2. INTRODUCCIÓN A LA CRIPTOGRAFÍA CAPÍTULO 3. CRIPTOGRAFÍA EN ENTORNOS JAVA CAPÍTULO 4. CRIPTOGRAFÍA EN ENTORNOS .NET CAPÍTULO 6. CRIPTOGRAFÍA EN BASES DE DATOS CAPÍTULO 7. CRIPTOGRAFÍA EN EL NIVEL DE APLICACIÓN CAPÍTULO 8. ASPECTOS LEGALES Y ESTANDARIZACIÓN APÉNDICE. TABLAS DE REFERENCIA
1.1 GENERALIDADES DE LA CRIPTOGRAFÍA
1.1.1 Historia
1.1.2 Cifrados por sustitución y transposición
1.1.3 Esteganografía
1.1.4 Criptografía moderna
1.2 USOS DE LA CRIPTOGRAFÍA
1.2.1 Confidencialidad
1.2.2 Autenticación
1.2.3 Verificaciones de integridad
1.2.4 Mecanismos de no repudio
1.2.5 Otros usos o aplicaciones
1.3 CRIPTOGRAFÍA APLICADA
1.3.1 Terminología utilizada
1.3.2 Protocolos criptográficos
1.3.3 Nociones preliminares al uso de algoritmos criptográficos
1.3.4 Algoritmos criptográficos
1.4 HERRAMIENTAS DE DESARROLLO DISPONIBLES
1.4.1 Herramientas de desarrollo criptográficas para entornos Java
1.4.2 Herramientas de desarrollo criptográficas para entornos .NET
1.4.3 Herramientas de desarrollo criptográficas para entornos PHP
1.4.4 Herramientas de desarrollo criptográficas en bases de datos
2.1 INTRODUCCIÓN A LOS PROTOCOLOS CRIPTOGRÁFICOS
2.2 PROTOCOLOS DE CRIPTOGRAFÍA SIMÉTRICA
2.3 FUNCIONES DE UNA VÍA Y HASH
2.4 PROTOCOLOS DE CRIPTOGRAFÍA ASIMÉTRICA
2.5 PROTOCOLOS DE FIRMA DIGITAL
2.6 GENERACIÓN DE NÚMEROS ALEATORIOS
2.7 INTRODUCCIÓN A LOS ALGORITMOS CRIPTOGRÁFICOS
2.7.1 Matemáticas involucradas
2.8 TIPOS BLOCK Y STREAM DE ALGORITMOS CRIPTOGRÁFICOS
2.8.1 Modos ECB, CBC, CFB y OFB de algoritmos criptográficos
2.8.2 Relativo a las llaves criptográficas
2.8.3 Selección de un algoritmo
2.9 ALGORITMOS DE CRIPTOGRAFÍA SIMÉTRICA
2.9.1 Algoritmos DES y TripleDES
2.9.2 Algoritmo AES
2.9.3 Algoritmo IDEA
2.9.4 Algoritmos Blowfish y Twofish
2.9.5 Algoritmo RC4
2.10 ALGORITMOS DE FUNCIONES DE HASH
2.10.1 Algoritmo MD5
2.10.2 Algoritmo SHA
2.10.3 Códigos de autenticación de mensaje (MAC) y algoritmo HMAC
2.11 ALGORITMOS DE CRIPTOGRAFÍA ASIMÉTRICA
2.11.1 Algoritmo RSA
2.11.2 Algoritmo ElGamal
2.11.3 Algoritmo DSA
2.11.4 Algoritmo Diffie-Hellman
3.1 IMPLEMENTACIONES INCORPORADAS
3.1.1 JCA o Java Cryptography Architecture
3.2 LIBRERÍAS Y FRAMEWORKS ADICIONALES
3.2.1 JCE o Java Cryptography Extension
3.2.2 Bouncy Castle Crypto API para Java
3.2.3 Librerías Cryptix
3.3 CODIFICACIÓN DE ENCRIPTACIÓN SIMÉTRICA
3.4 CODIFICACIÓN DE ENCRIPTACIÓN ASIMÉTRICA
3.5 CODIFICACIÓN DE FUNCIONES DE UNA VÍA Y HASH
3.6 CODIFICACIONES DE CASOS PRÁCTICOS
3.6.1 Almacenamiento de información cifrada
3.6.2 Registro de contraseñas cifradas en bases de datos
4.1 IMPLEMENTACIONES INCORPORADAS
4.1.1 System.Security.Cryptography namespace
4.2 LIBRERÍAS Y FRAMEWORKS ADICIONALES
4.3 CODIFICACIÓN DE ENCRIPTACIÓN SIMÉTRICA
4.4 CODIFICACIÓN DE ENCRIPTACIÓN ASIMÉTRICA
4.5 CODIFICACIÓN DE FUNCIONES DE UNA VÍA Y HASH
4.6 CODIFICACIONES DE CASOS PRÁCTICOS
4.6.1 Cifrado simétrico de información
4.6.2 Funciones que implementan criptografía de llave pública
CAPÍTULO 5. CRIPTOGRAFÍA EN ENTORNOS PHP
5.1 IMPLEMENTACIONES INCORPORADAS
5.2 LIBRERÍAS Y FRAMEWORKS ADICIONALES
5.2.1 MCrypt
5.2.2 Mhash .
5.2.3 Crypt_Blowfish
5.2.4 Crypt_RSA
5.2.5 Crypt_HMAC
5.2.6 Crypt_DiffieHellman
5.3 CODIFICACIÓN DE ENCRIPTACIÓN SIMÉTRICA
5.4 CODIFICACIÓN DE ENCRIPTACIÓN ASIMÉTRICA
5.5 CODIFICACIÓN DE FUNCIONES DE UNA VÍA Y HASH
5.6 CODIFICACIONES DE CASOS PRÁCTICOS
5.6.1 Identificación
5.6.2 Transferencia segura de parámetros
6.1 MICROSOFT SQL SERVER
6.1.1 Funciones para el registro de contraseñas
6.1.2 Funciones para cifrado simétrico y asimétrico de datos
6.2 ORACLE SERVER
6.2.1 Funciones para el registro de contraseñas
6.2.2 Funciones para cifrado simétrico de datos
6.3.1 Funciones para el registro de contraseñas
6.3.2 Funciones para cifrado simétrico de datos
7.1 SSL/TLS, SET Y OPENSSL TOOLKIT
7.1.1 SSL/TLS
7.1.2 SET
7.1.3 OpenSSL
7.2 PGP, ESTÁNDAR OPENPGP Y GNUPG
7.2.1 PGP
7.2.2 OpenPGP
7.2.3 GnuPG
7.3 SSH Y HERRAMIENTAS OPENSSH
7.3.1 SSH
7.3.2 OpenSSH
7.4 KERBEROS
7.5 OTRAS APLICACIONES CRIPTOGRÁFICAS
7.5.1 TrueCrypt
7.5.2 AxCrypt
7.5.3 STunnel
7.5.4 OpenVPN
8.1 PATENTES
8.2 REGLAS DE IMPORTACIÓN Y EXPORTACIÓN
8.2.2 Exportación e importación en los EE.UU.
8.2.3 Exportación e importación en países de Latinoamérica
8.3 ORGANISMOS DE ESTANDARIZACIÓN
8.3.1 ISO
8.3.2 ANSI
8.3.3 FIPS
IMPLEMENTACIONES CRIPTOGRÁFICAS EN JAVA
IMPLEMENTACIONES CRIPTOGRÁFICAS EN .NET
IMPLEMENTACIONES CRIPTOGRÁFICAS EN PHP
IMPLEMENTACIONES CRIPTOGRÁFICAS EN BASES DE DATOS
Microsoft SQL Server
Oracle
MySQL
BIBLIOGRAFÍA Y REFERENCIAS
REFERENCIAS BIBLIOGRÁFICAS
REFERENCIAS A RECURSOS ELECTRÓNICOS
Libros, manuales, publicaciones, artículos y papers
Librerías, frameworks y herramientas de desarrollo
Aplicaciones y herramientas-software
Organizaciones normativas
GLOSARIO
MATERIAL ADICIONAL