Probar una acción se realizó en un momento exacto - a posteriori

2

Estaba pensando en la manera en que git permite editar la marca de tiempo en los confirmaciones, y cómo puedes reescribir el historial (público) de esa manera.

Luego pasé de eso a "¿podemos probar que alguien hizo una acción en el momento X a posteriori?" para evitar que se vuelva a escribir.

Y, sorprendentemente, mi cerebro encontró pocas o ninguna forma de probar que una acción se realizó a tiempo, y no hay forma de remediar eso más adelante.

Supongo que no podemos simplemente pedir el registro de un servidor de confianza en la fecha / hora en que se realizó la conexión como prueba, y tenemos que confiar en un cifrado para probar que "estuvimos allí",

Pensé en un servidor de confianza que enviara un hash / clave dependiendo del momento en que fue contactado, por lo que tendría que consultar al servidor y "llegar a tiempo" para obtener el código. Pero esto es una tontería, ya que cualquiera podría registrar estos hashes golpeando el servidor con la frecuencia suficiente.

Cualquier cálculo basado en la fecha exacta de la hora también se interrumpiría, por supuesto, lo que me deja con pérdidas.

Mis preguntas actuales ahora:

  • ¿Es tal problema realmente importante para algunos? ¿Es lo suficientemente importante como para que otra persona lo resuelva o lo intente?
  • ¿Qué me perdí? ¿Alguna idea?
pregunta Jiby 28.09.2015 - 00:18
fuente

5 respuestas

6

Marcas de tiempo de confianza

Puede usar un servicio de marca de tiempo confiable . Hay compañías (como GlobalSign ) que brindarán ese servicio por una tarifa.

  

Pero esto es una tontería, ya que cualquiera podría registrar estos hash golpeando el servidor con la frecuencia suficiente.

Sí. Pero solo si tienes un pequeño espacio de búsqueda. Pero en el caso de SHA256, tendría que dedicar 10 ^ 77 en su base de datos para almacenar resultados Y eso es SIN datos en esas filas. Ese número está cerca del recuento de átomos estimado en el universo de 10 ^ 80 . Y eso es demasiado alto.

Y eso te hace seguro: la cantidad abrumadora y abrumadora.

Nadie tendrá tiempo suficiente para enviar todos los hashes. (Y también: nadie tendrá tanto dinero para pagar las tarifas de procesamiento). Nadie tendrá suficientes discos duros para almacenar todos los resultados.

Lectura adicional

Wiki tiene una buena explicación de la idea general.

  • Wikipedia: Trusted timestamping, Sección Creando una marca de tiempo : )
      

    La técnica se basa en firmas digitales y funciones hash.

         

    Primero se calcula un hash a partir de los datos. Un hash es una especie de huella digital de los datos originales: una cadena de bits que es prácticamente imposible de duplicar con cualquier otro conjunto de datos. Si se cambian los datos originales, esto dará como resultado un hash completamente diferente.

         

    Este hash se envía a la TSA.

         

    La TSA concatena una marca de tiempo para el hash y calcula el hash de esta concatenación.

         

    A su vez, este hash está firmado digitalmente con la clave privada de la TSA.

         

    Este hash firmado + la marca de tiempo se envía de vuelta al solicitante de la marca de tiempo que los almacena con los datos originales (ver diagrama).

respondido por el StackzOfZtuff 28.09.2015 - 08:44
fuente
4

Puede poner el hash de su compromiso en la cadena de bloques de Bitcoin, y después de agregar algunos bloques al bloque, podrá convencer a la gente de que había hecho ese compromiso antes del momento en que se agregó el bloqueo al blockchain.

    
respondido por el KOLANICH 17.01.2016 - 14:25
fuente
1

Aunque no está específicamente relacionado con su caso de uso, pero hay algunas bases de datos distribuidas que usan el tiempo para resolver conflictos (busque en google la base de datos de Spanner). Estas soluciones utilizan múltiples fuentes de tiempo físicas conectadas a la red para garantizar que la hora exacta esté disponible para cada servidor.

Otra opción podría ser el uso de blockchain para garantizar que la transacción que está intentando realizar se adjunte con tiempo específico y se firme para su posterior verificación.

    
respondido por el jhash 28.09.2015 - 08:23
fuente
1

Otra forma de documentar algo con una marca de tiempo es mediante la firma DKIM en un correo electrónico. Hoy en día, muchos proveedores de correo electrónico (por ejemplo, Gmail, Yahoo Mail, etc.) firman DKIM cada mensaje que se envía a través de su servicio. Aunque el propósito principal de una firma DKIM es garantizar que un mensaje es legítimo y no es spam, una firma DKIM también hace que el firmante sea un notario. Para documentar algo con una marca de tiempo, puede enviar un mensaje a otra persona, o incluso a usted mismo, a través de un servicio de correo electrónico que DKIM firmará el mensaje. Luego, al verificar la firma DKIM (que aparece en los encabezados del mensaje en el extremo receptor), el destinatario (ya sea usted o alguien más) puede probar que envió el contenido de ese mensaje en la fecha y hora que aparece en el mensaje. encabezados

    
respondido por el mti2935 28.09.2015 - 18:49
fuente
0

Sí, tiene mucha aplicabilidad a la evidencia digital (especialmente los archivos de registro).

Para probar un hecho después de un punto específico en el tiempo, entonces uno simplemente necesita combinar el hecho con alguna información que surgió en ese momento: considere la imagen de una víctima de secuestro sosteniendo un periódico. En un sentido digital, se puede hacer esto firmando los datos con una clave recién lanzada, o, más generalmente, combinándolos con una fuente de datos conocida, cambiante y con capacidad de búsqueda.

Pero este método no funciona para probar que los datos existieron antes de un tiempo específico. La única solución que he pensado en ese escenario es registrar (al menos un resumen de) los datos con una parte confiable. Y si esta entidad puede recopilar datos, también debería poder producir un flujo de datos verificable con marca de tiempo que permita que las ventanas bien definidas se vinculen a los datos.

Creo que hay una oportunidad de negocio potencial allí, pero se necesita poner mucho pensamiento y organización para establecer la confianza.

    
respondido por el symcbean 28.09.2015 - 01:45
fuente

Lea otras preguntas en las etiquetas