Provably fair

Public fairness log

Every match publishes a SHA-256 commitment to its server seed before play begins. This page rolls all commitments of a day into a single digest and chains those digests together — a compact value you can publish anywhere and anyone can recompute.

  • Daily commitment digest
  • Chained, append-only
  • Recomputable from public data
  • Tamper-evident

Current anchor head

2026-11-02
Publishable value (chain head) 851ee031b0da7b70d7eea82f4adb21421a85c3f10661f99fdff07658a75735fe

Post this value to a public place the operator cannot rewrite afterwards — a social post, a public gist, or a Monero transaction. Once it is out, every commitment behind it is locked in: changing any past commitment changes this value.

Day 2026-11-02

29 commitments

Recompute the digest for this day with the formula below, then compare it to the value shown in the table. The order is by match id, ascending.

MatchCommitment (sha256 of server seed)
#126 3bd580b96d0c9f9ee4b33774a6d61e777e855ab7f0490de43f198bb9530e8576
#127 69dde3a5cc2e7cbdc18d3d034751d921ce6959b91c3bd2de742b6714bb52ff7e
#128 171aeea46af8ca99357cf4c7ab99abefba0cffca6c639b1e356bb8f89801630f
#129 e2ad4034574eb92bfea5b9b80817fd76566a8ec14e6761aff13e9049dc865a06
#130 9eb5c68a595891fdfbb6e930ff3ac54db710de44692ccf44773a13c660e323bc
#131 fc5a75d1049d756ef9777233037961d6dfc7ae682fc79e8e9d3e14d6cabf92d9
#132 1e996f98f2f162dea7864d5b8b2249caeecf39ed820b172182a873a304006062
#133 f22395bd4db54e318049f3905a834bbf52a59c4ab3cb6e9cd9e3f6f55a2e04ca
#134 a7599c6b4d397360aaae87e686614e919714de9c9cfd679c2210c3e68ba1f41e
#135 533afad3ec157dc5b0a72a9a09688fa366a271ef4fbb01f59604c1e468075d1e
#136 55ecb6c48c2735eba0d242c2bca13485d2a57f2ec1a8be02a45ec2c37b841d8c
#137 5e35d2430a085aa25ee10da8644fed65b7b89374a1278d8ffb600ce52c7f759d
#138 b0abba35c2c498f977116bededafeaedb8ec3d36d78ce1e826e4ac5f938ee4f4
#139 46245d1a57289b1a3fe10213e74466db613c66ba91593d976ce60b931426a413
#140 dc5f93d732ba50276023764c5a978f2c089c634b562671d42682a72f578774e4
#141 cfbe8d8c139a804af706b3aaa88c22b312dd608e670007f9c796dbb359a6df39
#142 a37bd5d3418a298657ba7d294623b4107c35b72e4db960e1da06e153e28c9fd2
#143 cf00dbbc4f062e501902b3dda31fca531793c84dd221db016636412a010d8ebb
#144 8dbaf28de1c78960377be28eb3c18d9471f61529cf10e78e61d52464a1cdb0f8
#145 d98d14d2355167b32ecd6a3a730ee55b47fa0e1acfc3c20e12739384b30a0825
#146 3b94bf9587be91cd1b108541b0249dc6d4b7bc196d8808aac4805f65059c03af
#147 5bb0fc2ae3bcfc2ffe684966b30bc12145287f1821a7373f9f76f48d9b673614
#148 fd6c91d3d1678b5fc21cdea336f600fbf357a1abf2c4ee339edb1d01d8b68377
#149 0016b1d957814b617b34cca76fdd843338629f4e288d70ae03b359d4aa3895bc
#150 8464582ca9b08397d9854e558b39c4aeea7217a7b2dc7c6f5bd1881814b56827
#151 24daf77a24d57721f6619fcc0549da82494465efe2c46621c8274d41292eae3f
#152 8700f83ea10f152ee86bbc1a558289068e86208c8295ead4a9d90c8e2894412d
#153 e75c55cb9af6d5a431ffbc762ca3964417f3a99f9831c2d6aae2906000546350
#154 b190a5ff5baad241357b0e1af7ed2fef7748ed87e67cce10449874fabe3a0ec6

Anchors by day

Day (UTC)MatchesDay digestChain
2026-11-02 29 7a32c77ecefa24d76f5c663ef0e04465632aa28ff7b9a4f0671033e9b022719a 851ee031b0da7b70d7eea82f4adb21421a85c3f10661f99fdff07658a75735fe Detail
2026-11-01 4 498777f05bea366087fae387df9ce515002190fda9434f971fc6c5418adc5b17 d2725d11d601344a537424c2d46d6ee030e3d78549c43c6e2bea567117fb808d Detail
2026-10-31 48 55e903d069fc8319cc406ab11b79c7f793aa7028d32e7a6fc44c4bea203ce280 83b66ac68bdd0f6f97a9c60b0694a7c2173b4b640301592fe698b733eaad3835 Detail
2026-10-30 21 1737ffa62f65525ba4161bcc770fa7321f002b5075c908728ee320c7e4c08651 9f4d97ca2b371223b102c9822c1b29275ab595ff3c52f6e07c6422e320ef6173 Detail
2026-10-29 20 cec95533b8e288094c86509b0c3d95b613859adaa9b4dee8810cc0a8b12d9451 cacc49d4ad218027736b02a97d490d3723fcd4c903a3089542f8139b8c509708 Detail
2026-10-28 1 a7fcd537e3aa31162782cd6a70c0f3ae8e75b976e7fec91cc3bf73433ef4aa26 7f62ae494a7404fc81bc5fb9ee37ab435000c00a1e5d1e90cfa3d23124b861d3 Detail
2026-10-27 6 45d494170e9affd2b4ca9c0e22589e652afb50e99131b7d7a84f26ebef694004 842c6c2bee661dff7a04db7cce58da2a8bd1c328b01f030b91dfd1232b619881 Detail

How to verify

ValueFormula
day_digestsha256( "pvpfair-anchor-v1|" + day + "|" + join("\n", id + ":" + commitment) )
chainsha256( prev_chain + "|" + day + "|" + day_digest )
genesis"genesis" for the first day

What this proves. A match's commitment (sha256(server seed)) is fixed the moment the invite is created and is public from then on. The day digest bundles every commitment of that day; the chain links the days together. If someone altered a past commitment, that day's digest and every chain value after it would change — and would no longer match any value published earlier.

Why publish it. The chain lives in our database, so on its own it is only a convenient record. Its strength comes from publishing the head to a place we cannot rewrite. Everything after the first published head is then pinned in place. Each anchor value only needs to be posted once.

Per-match proof. For a full rundown of a single match — the published seed, the client seeds and the round-by-round hash chain — open the provably fair verifier and enter the match code.