|
|
Por Jaime Agudo Bretos Introducción El modelo utilizado en los protocolos criptográficos es generalmente una comunicación entre dos entidades a través de un canal público. El objetivo de los protocolos en este entorno es mantener una comunicación secreta, verificada, etc., a pesar de la existencia de terceros que puedan manipular, almacenar o sustituir los mensajes. Si embargo esta no es la única situación en la cual se puede utilizar la criptografía. Desarrollado por Simmons, existe el modelo de Canal Subliminal. Este modelo se caracteriza por la existencia de dos comunicantes que no pueden cifrar sus comunicaciones y que solo les está permitido firmarlas. El modelo se desarrolla en un entorno carcelario donde dos presos se comunican mensajes entre ellos y quieren tener la seguridad de que no son engañados por el vigilante. Sin embargo el vigilante no les dejaría comunicarse si no tuviera la certeza de que puede leer el contenido de sus mensajes. La vuelta de tuerca de Simmons consiste en el desarrollo de un sistema criptográfico basado en firmas. Es decir, los comunicantes podrían enviar información escondida dentro de las firmas de otros mensajes. Varios protocolos criptográficos como ElGamal varios tienen cifrados alternativos para el mismo mensaje. Se pueden elegir parámetros de manera que el resultado contenga información para el otro comunicante. Posteriormente, Desmend desarrolla sistemas criptográficos libres de canales subliminales. Estos sistemas se denominan Criptosistemas Libres de Abuso. Canales Subliminales en Sistemas de Clave Pública La razón por la que los Canales Subliminales se han vuelto a poner de moda en los ambientes criptográficos es la utilización de estos sistemas para implementar Caballos de Troya en el software criptográfico existente. Normalmente se considera el software criptográfico fiable. Es decir, no se tiene en consideración que el software de cifrado es ni más ni menos que un programa que tiene acceso a toda nuestra información confidencial principalmente por el hecho de que es lo que la protege. Sería teóricamente posible realizar una versión del PGP que enviara toda nuestra información secreta por correo a cualquier lugar de la Internet y depositarlo en cualquier lugar público para que fuera utilizado. Estas modificaciones maliciosas existen y de hecho han causado problemas de seguridad. Sin embargo son sencillamente detectables por métodos directos. El problema ocurre cuando las técnicas de los Canales Subliminales son aplicadas para realizar estas modificaciones. El entorno es similar al carcelario, un programa y su programador se tienen que comunicar sin que el vigilante, el usuario del programa, se entere. El programador de un programa de criptografía generaría un par clave pública, clave privada para su uso y después modificaría los programas. El método general para comprometer los programas de seguridad es el siguiente: Generar un Canal Subliminal en las Claves 1. Generar el par Clave Secreta, Clave Pública del programa con una semilla aleatoria 2. Cifrar la semilla aleatoria con la Clave Pública del programador 3. Introducir la semilla cifrada en la Clave Pública del programa Como resultado se obtiene una Clave Pública, contaminada e indetectable, que el programador puede utilizar para obtener la Clave Secreta simplemente descifrándola y volviéndola a generar. Estas modificaciones del programa se esconderían el código criptográfico siendo muy difíciles de detectar, incluso en un posible desensamblado del programa, al ser posible esconderlas dentro de primitivas perfectamente legales. Consecuencias Como principal consecuencia de estas modificaciones es la falta de seguridad, a priori, en módulos criptográficos generados por terceros, es decir, compañías de software como Microsoft o Netscape. Sería perfectamente posible, y de hecho se sospecha, que sus navegadores contengan sistemas como el esbozado en sus módulos de criptografía, que permitan recuperar las claves de los usuarios por los realizadores del programa. Es posible utilizar métodos basados en los Criptosistemas Libres de Abuso para desarrollar protocolos interactivos entre los navegadores y entidades de certificación que permitieran evitar estos problemas pero es difícil implementarlos por la dificultad de establecer estándares en estos sistemas. La solución más sencilla es utilizar software fiable para realizar las comunicaciones que requieran seguridad. Especialmente software de distribución abierta, en código fuente, que se puede comprobar, y lo más importante, compilar en la propia máquina reduciendo drásticamente las posibilidades de ser contaminado. El próximo desarrollo de cryptozilla, la versión segura de mozilla, amplía considerablemente las posibilidades de elección en materia de seguridad para los usuarios. Publicado en el Boletín del Criptonomicón #33. Jaime Agudo Bretos es investigador de la Universidad de Zaragoza, experto en criptografía.
Puedes consultarlos por temas, o también por orden de aparición en el boletín.
Si consideras que este artículo puede interesarle a alguien que conozcas, puedes enviárselo por correo electrónico. No tienes más que indicar la dirección del destinatario, el asunto y tu nombre. Copyright © 1997-2000 Gonzalo Álvarez Marañón, CSIC. Todos los derechos reservados. Criptonomicón es un servicio ofrecido libremente desde el Instituto de Física Aplicada del CSIC. Para información sobre privacidad, por favor consulte la declaración de política sobre privacidad. Para sugerencias, comentarios o quejas, acuda al libro de visitas. Para contribuir al Criptonomicón, lea la página de contribuciones. |