Problema del prisionero

De Wikipedia, la enciclopedia libre

El problema del prisionero, introducido en 1983 por Gustavus J. Simmons,[1][2]​ describe de forma intuitiva el escenario en el que dos entidades quieren comunicarse de forma confidencial y encubierta (canal encubierto), usando un canal en el que los mensajes son leídos o incluso manipulados (canal inseguro) por un tercero (entidad atacante).

El problema del prisionero proporciona un escenario en el que se pueden proponer soluciones para este tipo de problemas. Este entorno ha sido usado, por ejemplo, para proponer soluciones usando esteganografía o canales subliminales.

Descripción[editar]

El problema del prisionero podría describirse de la siguiente forma:[2][1][3][4]

Supongamos dos prisioneros cómplices en un crimen, Alicia y Bob, que fueron arrestados y colocados en celdas separadas. El guardián de la cárcel, William, les permite intercambiarse mensajes pero solo si él transporta el mensaje de uno hacia el otro y siempre que al leer esas comunicaciones esté 'seguro' de que los mensajes que se intercambian son inocuos y no están intercambiando mensajes para poder escapar. Esta forma de comunicación es la única que tienen disponible los prisioneros.

Alicia y Bob quieren escapar y para ello necesitan comunicarse. Por tanto aceptan las condiciones porque prefieren arriesgarse a que se detecten sus planes frente al hecho de no disponer de ningún tipo de comunicación para planear la fuga. Además saben que William finalizará la comunicación si descubre un canal secreto. Por tanto no pueden usar métodos de cifrado. La única posibilidad que tienen es establecer algún tipo de canal encubierto en los mensajes que se intercambian, y por otro lado deben evitar ser engañados por mensajes generados o modificados por el guardián.

La descripción del problema enfatiza la necesidad del canal encubierto debido a la existencia de un enemigo o adversario, el guardián William, el cual tiene acceso de lectura y escritura sobre el canal y que lo vigila para que no se produzca una comunicación secreta entre los prisioneros. Si no existiera el enemigo, el emisor y el receptor podrían comunicarse abiertamente sin usar ningún canal encubierto.

Según el poder de acción sobre el canal de comunicación, los guardianes se clasifican en:

  • Guardián pasivo: El guardián sólo tiene acceso a observar los mensaje que transitan por el canal de comunicación, pero no tiene capacidad de alterarlos, es decir, tiene acceso de solo-lectura. Un ejemplo de guardián pasivo lo consituiría las empresas proveedoras de servicios de Internet cuando actúan como supervisores del tráfico y delatores de actividades sospechosas.
  • Guardián activo: El guardián tiene acceso al canal de comunicación y la capacidad de modificar o quitar del canal el contenido que pasa por él cuando detecta tráfico no autorizado. Un ejemplo de guardián activo lo constituye el estado de China a través de la empresa de comunicaciones China Mobile en su censura a los mensajes de texto entre teléfonos celulares con contenido sexual o políticamente no autorizados.[5]
  • Guardián malicioso: El guardián tiene el poder de alterar a su voluntad los mensajes que transitan por el canal, puede incluso componer mensajes nuevos para engañar a uno de los prisioneros. Este tipo de guardianes no es común en casos reales.[6]​ La modificación podría afectar no sólo al canal encubierto sino también al canal legítimo. Por ejemplo la existencia de una falla en algún nodo de la red de comunicación (accidental o intecional, maliciosa o no), podría ser modelizada como este tipo de guardián. Los participantes deberían tener un mecanismo de detección para este tipo de situaciones.

Soluciones[editar]

En las soluciones que se proponen es necesario que los prisioneros, antes de ser arrestados por la policía y puestos en celdas separadas, se pongan de acuerdo y establezcan como van a definir el canal encubierto que van a utilizar. De esta forma podrán interpretar de forma adecuada lo que el otro le quiere transmitir.

Para resolver este problema se han propuesto dos tipos principales de soluciones: Canales subliminales y esteganografía.

Esteganografía[editar]

La estrategia de la esteganografía para resolver este problema es esconder dentro del flujo de mensajes legítimos un canal encubierto para realizar la comunicación.

Canal subliminal[editar]

La estrategia usando canales subliminales consiste en embeber dentro del modo de autenticación un canal encubierto. El canal encubierto está dentro del propio algoritmo de autenticación usado para los mensajes legítimos y por tanto será indistinguible dentro de la autenticación (normalmente una firma digital). Sin el conocimiento del secreto el mensaje subliminal no puede ser leído ni detectado.

Referencias[editar]

  1. a b Christian Bäcker. Subliminal Channels in Cryptographic Systems. Ruhr-Universität Bochum.2009
  2. a b Gustavus J. Simmons, "The Prisioners Problem an the Subliminal Channel". In Advances in Cryptology- CRYPTO'83. Chaum 1984
  3. Tesis de Ingeniería en Informática de Pablo Andrés Deymonnaz,"Análisis de vulnerabilidades esteganográficas en protocolos de comunicación IP y HTTP". Universidad de Buenos Aires. Marzo 2012
  4. Gary C. Kessler y Chet Hosmer,"An Overview of Steganography".Advances in Computer volume 83.Marvin K. Zelkowitz.Academix Press 2011
  5. Sharon Lafraniere. Text Messages in China to Be Scanned for 'Illegal Content'. The New York Times - Technology, January 19 2010.
  6. Scott Craver. On Public-key Steganography in the Presence of an Active Warden. Intel Corporation, Microcomputer Research Labs