Digamos que tengo un archivo grande que es de gran interés para el público y quiero publicarlo. El plan es hacer un hash usando una función confiable y publicar su hash en una cadena de bloques pública (btc o eth) para marcar la hora. Luego, encripte asimétricamente y comparta copias con periodistas de todo el mundo. Cuando llega el momento, suelto la clave pública y el gato sale. ¡PERO! La oposición a la difusión es el actor más poderoso técnicamente en el mundo cuya estrategia es editar un archivo para demostrar que es una falsificación no confiable y para hacer eso: la versión editada debe tener el mismo hash. Y tienen una ventaja para hacerlo: el archivo contiene una cantidad de datos redundantes que se pueden cambiar sin afectar la funcionalidad de la base.
Vamos a establecer una escena. Imaginando que tengo un archivo de video 4K de un presidente de un país poderoso que asesina al ex secretario de estado. La cara del presidente se ve en tan solo unos segundos de unos pocos minutos de video, pero de todos modos resultaría condenable. Su agencia secreta de espionaje ASN está preparada para editar el video al plantar mi cara en el cuerpo del asesino y así cambiar las mesas. Digamos que el esfuerzo de remashing es del orden de miles de millones de dólares del poder de hashing de toda la comunidad minera de bitcoin. Si se produce una versión manipulada con hash correcto, mi prueba no calificará como más allá de la duda razonable y el presidente se aleja.
Ok, estoy jugando aquí, pero espero que sepas mi pregunta. ¿Cómo proteger criptográficamente la integridad de un archivo que tiene algo de redundancia y que el violín puede cubrir los cambios funcionales? O, en otras palabras, ¿hay funciones hash modernas lo suficientemente poderosas como para proteger la integridad incluso contra el nonce disponible para que la edición no sea factible hoy ?