La criptografía funciona en varios niveles. En un nivel se encuentran algoritmos tales como el cifrado de bloques simétrico y los algoritmos de llave pública. Construyendo sobre estos se obtienen protocolos, y construyendo sobre los protocolos se obtienen aflicciones (u otros protocolos).
No es suficiente estudiar la seguridad de los algoritmos de base solamente, como tampoco las debilidades en un protocolo o aplicación de más alto nivel se pueden traducir en cuan insegura es una aplicación o que tan bueno es el algoritmo criptográfico de base. Un ejemplo simple es un protocolo que filtra información sobre la clave usada para encriptar un canal de comunicaciones. Independientemente de cuan buenos sean los algoritmos de encripción, se vuelven inseguros si el protocolo de capa superior muestra información de las claves usadas en la encripción.
El análisis de los protocolos es generalmente difícil por que las aplicaciones que implementan dichos protocolos pueden conducir a problemas adicionales. De esa manera un buen protocolo no es suficiente, se debe tener una buena y robusta implantación.
A continuación se mencionan varios protocolos bien conocidos
Domain Name Server Security (DNSSEC): es el protocolo para servicios de distribución de nombres seguros. Esta definido en RFC 3007 y RFC 3008.
Generic Security Services API (GSSAPI): GSSAPI provee una interfase de autenticación, intercambio de claves y encripción para diferentes algoritmos de encripción y sistemas. Esta definido en RFC 2743.
Secure Socket Layer (SSL) / Transport Layer Security (TLS): SSL es uno de los dos protocolos para conexiones WWW seguras (el otro es SHTTP). La seguridad WWW se ha vuelto importante con el incremento de información sensible, como números de tarjeta de crédito, que se transmite sobre Internet.
SSL fue desarrollado originalmente por Nestscape en 1994 como un protocolo estándar libre. El borrador de la versión 3.0 se puede encontrar aquí. En 1996, el desarrollo de SSL se convirtió en responsabilidad de la Fuerza de Tareas de Ingenieros de la Internet (IETF, por sus siglas en ingles) y fue renombrado como TSL (Transport Layer Security – Capa de Transporte Seguro). De todas formas TLS 1.0 difiere muy poco de SSL 3.0. Las diferencias se describen en RFC 3546.
Secure Hypertext Transfer Protocol (SHTTP) - Protocolo de transferencia de Hipertexto seguro): el protocolo de transferencia segura de hipertexto es otro que provee mas seguridad a las transacciones WWW. Es mucho mas flexible que SSL, pero debido a la posición dominante que tenia Netscape en el mercado SSL/TSL esta en una posición muy fuerte. SHTTP esta definido en RFC 2660.
Secure-MIME (S/MIME): es una alternativa a OpenPGP estándar mantenido por el grupo de trabajo S/MIME de la IETF.
Estándares de encripción de llave pública (PKCS): estos estándares son desarrollados en RSA Data Security y definen las formas seguras de usar RSA. Los documentos sobre estándares de encripción de llave pública publicados por RSA Laboratories se encuentran disponibles en su sitio web.
IEEE P1363 - Especificaciones sobre el estándar criptográfico de llave pública: es un (siguiendo con lo precedente) estándar criptográfico de clave publica. Consiste de varios algoritmos de llave pública para encripción y firma digital. Tiene un anexo en que se profundiza en todos los detalles necesarios para su implementación. Más información en su sitio web.
Publius Censor-Resistent Publishing Protocol - Protocolo resistente a censura: es un sistema muy avanzado que permite a un grupo de autores y lectores compartir documentos en una serie de servidores web de forma tal que ninguno de ellos necesita revelar su identidad, se certifica la procedencia de los documentos según su autor (usando seudónimos), los documentos no pueden ser eliminados o modificados (censurados) a no ser que se comprometan muchos de los servidores involucrados. En su sitio webse puede encontrar información técnica, software y vínculos a proyectos relacionados.
Secure Shell (Shell Seguro): el protocolo SSH versión 2 es desarrollado por el Grupo de trabajo SecSh de la IETF. Es un protocolo muy versátil para las necesidades de Internet y es usado en el SSH Tectia software. Se lo utiliza para asegurar sesiones de Terminal y conexiones TCP arbitrarias. Se basa en su predecesor, SSH v.1 desarrollado por Tatu Ylönen. Las especificaciones del protocolo se pueden encontrar en el sitio web de la IETF.
IPSec: mientras que los protocolos arriba mencionados operan en la capa de aplicación de Internet, permitiendo comunicaciones por canales seguros sobre una red insegura, IPSec intenta hacer a Internet una red segura en su esencia, el Protocolo de Internet (IP). El protocolo IPSec esta definido en RFC 2401.