Para verificar en el navegador hace falta JavaScript. Abajo está cómo hacerlo a mano.

Huella final publicada: f35d98ea0e6f · 94 pronósticos en la cadena.

Cómo funciona

Cada pronóstico tiene una huella: un código de 64 caracteres calculado con sus datos. La huella de cada pronóstico se encadena con la del anterior. Si alguien cambiara el precio, la probabilidad o el mercado de un pronóstico, o borrara uno, las huellas dejarían de coincidir desde ese punto hasta el final.

El botón de arriba baja todo el historial de nuestra API pública, recalcula cada huella en tu navegador y compara el resultado con la huella final publicada.

La huella de cada día

La huella del día sale en el canal de Telegram antes de los partidos. Si coincide con la de esta tabla, esos pronósticos existían antes de que se jugaran.

Huella de cada día, del más nuevo al más viejo
Fecha Pronósticos Hasta el n.º Huella del día
3 94 f35d98ea0e6f
1 91 a216e22af3fd
3 90 6b762a068bb3
3 87 e32c3df3c0be
4 84 7032a618c4c8
7 80 959e765ab5bf
3 73 9ff3d66558ad
2 70 5fcaa14753d2
1 68 f6072b62cf44
2 67 656c6763564a
7 65 22c6f00b0c36
6 58 a9074676869e
6 52 5f61ec880615
6 46 a50e717afff1
5 40 597043b095fc
5 35 fc44f86103f1
1 30 387008617e29
1 29 f95328c7b4df
1 28 e3b6a98fc978
4 27 f6e0990de7b7
7 23 81dc0c65cd48
3 16 3b416e5eb56b
1 13 67df2c5e7047
1 12 0b4c19e62769
4 11 1306263b0711
1 7 8b3910856db0
3 6 b257648fa393
3 3 81bb85b58a6a

Hacelo por tu cuenta

No hace falta usar nuestro botón. Los datos están en api/v1/integrity.json y en los meses de api/v1/history/. El cálculo es:

  1. Para cada pronóstico, en orden de seq: armá un JSON con estos campos, en orden alfabético, sin espacios y con todos los valores como texto (enteros tal cual, decimales con 6 cifras, vacíos como ""): id, logged_at, date, event_id, kickoff_utc, list, market_id, selection_key, line, odds, probability, market_probability.
  2. content_hash = SHA-256 de ese JSON.
  3. chain_hash = SHA-256 del chain_hash anterior seguido del content_hash. El primero parte de 64 ceros.
  4. El último chain_hash tiene que ser igual a la huella final publicada.

El código del botón está en static/verify.js, sin dependencias.

Qué prueba y qué no