EL PROBLEMA DEL GENERAL BIZANTINO contrario serán descubiertos y tendrán problemas. Solo tendrán suficiente poder de CPU para descifrarlo lo suficientemente rápido si la mayoría de ellos atacan al mismo tiempo. No les importa especialmente cuándo será el ataque, solo que todos estén de acuerdo. Se ha decidido que cualquiera que lo desee puede anunciar un momento concreto, y que cualquier momento que se escuche primero será el momento oficial de ataque. El problema es que la red no es instantánea, y si dos generales anuncian diferentes momentos de ataque casi al mismo tiempo, algunos pueden escuchar a uno primero y otros escuchar al otro primero. Usan una cadena de prueba de trabajo para resolver el problema. Una vez que cada general recibe la hora de ataque que escuchan primero, configuran su ordenador para resolver un problema de prueba de trabajo extremadamente difícil que incluye el momento de ataque en su hash. La prueba de trabajo es tan difícil que se espera que tarden 10 minutos en trabajar todos a la vez antes que uno de ellos encuentre una solución. Una vez que uno de los generales encuentra una prueba de trabajo, lo transmite a la red, y todos cambian su cómputo actual de prueba de trabajo para incluir esa prueba de trabajo en el hash en el que están trabajando. Si alguien estaba trabajando con un momento de ataque diferente, cambia a este, porque su cadena de prueba de trabajo ahora es más larga. Después de dos horas, el momento de ataque debe ser hasheado por una cadena de 12 pruebas de trabajo. Cada general, verificando la dificultad de la cadena de prueba de trabajo, puede estimar cuánta potencia de CPU paralela fue gastada por hora, y ver lo que debe de haber requerido la mayoría de los ordenadores para producir tanta prueba de trabajo en el momento asignado. Todos debieron haberlo visto porque la prueba de trabajo es prueba de que trabajaron en ello. Si la potencia de CPU exhibida por la cadena de prueba de trabajo es suficiente para descifrar la contraseña, ellos pueden atacar con seguridad a la hora acordada. La cadena de prueba de trabajo es lo que resuelve todos los problemas de sincronización, de base de datos distribuida y de visión global que pedías. _______________________________________________________________ La Lista de Correo de Criptografía 72