On Sunday, Australia’s financial crime regulator suspended Cryptolink’s virtual asset service provider registration for three months and took 96 bitcoin ATMs offline across Sydney, Melbourne and Brisbane. Not for theft. Not for a hack. Not for a machine that shortchanged a customer. AUSTRAC’s stated reason was that the company failed to submit threshold transaction reports and did not respond to requests for information, following an enforceable undertaking agreed in October 2025 and a A$56,340 infringement notice the operator had already paid. “AUSTRAC has ongoing concerns about the company’s ability to manage high-risk transactions through its CATMs,” said chief executive Brendan Thomas.
Ninety-six machines, dark, over records that were never filed.
TL;DR
- AUSTRAC suspended Cryptolink’s VASP registration for three months from 9 August 2026, taking 96 bitcoin ATMs offline over unfiled threshold transaction reports, not theft or a hack.
- In a custodial system the record of an event is a second object, compiled afterwards by the interested party, so it can be late, partial, edited, or never exist.
- The eleventh unasked half of fairness: a Chainlink VRF proof certifies one execution at one moment, not whether the evidence survives or whether you can assemble it without the operator.
- A record that works is produced as a byproduct of the event, held where the interested party cannot reach it, and complete by construction. A “bet history” tab is none of those.
- Honest limits: raw chain events are not a statement, indexers and archive nodes are a real dependency, and ledgers record addresses rather than people, so none of this solves the money laundering problem AUSTRAC is chasing.
Give the regulator its due first
Cash in one side, bitcoin out the other, no bank in the middle. Crypto ATMs are one of the higher-risk retail rails going and everyone here knows it. Threshold transaction reports are about as basic as controls get: transactions above a set amount get reported, full stop. Cryptolink had already signed an enforceable undertaking, already paid a fine for late reporting and weak risk assessments, and then did not answer the regulator’s questions. Crypto’s reflex is to treat every enforcement action as persecution. This one is filing.
The record is a second object
Notice what nobody is alleging. Nobody says the ATMs did anything wrong. As far as anyone has claimed, the machines took cash and dispensed bitcoin correctly, thousands of times. The failure sits entirely in a parallel artefact: a report about what the machines did, compiled afterwards, by the party with the most to lose from compiling it.
That gap, between an event and the record of it, is the whole story. In a custodial system they are two objects with two lifecycles. The event happens whether or not the record gets made, and the record can be late, incomplete, revised or absent. From outside, all four look identical to a clean set of books. AUSTRAC knows the reports are missing only because it knows what a complete set looks like and can compel one. You, playing a coinflip at two in the morning, have neither.
What a VRF proof actually covers
A Chainlink VRF proof begins at the request and ends when the callback fires. The coordinator verifies it on-chain before delivery, and the callback returns a number nobody, us included, could have predicted or steered. Strong guarantee, narrow one: it certifies a single execution at a single moment. It says nothing about whether the evidence of that execution still exists in eighteen months, or whether you can reconstruct the rounds you played without asking the platform to hand them over. Provable now is not provable later, and provable by the operator is not provable by you. That is the eleventh thing in this series a fairness claim quietly leaves out.
Three properties of a record that works
- Produced as a byproduct, not a second act. If making the record is a separate step from doing the thing, the step can be skipped. Cryptolink’s reports were a separate step.
- Held where the interested party cannot reach it. A record in the custody of the party it might incriminate is a statement, not evidence.
- Complete by construction. Not complete because somebody checked. Complete because no path through the system produces an event without producing its record.
The bet history tab fails all three
Open any crypto casino and find the history page. It is a rendered view of rows in a database the operator owns: written by the platform after your round resolves, stored on the platform’s servers, complete only because the platform’s code does what the platform says it does.
Three ways that bites. Retention windows: ninety days of visible history, then it rolls off, with terms promising records are kept “as required by applicable law”, an obligation to a regulator rather than to you. Disputes have a habit of surfacing after the window closes. Account closure: lose the account, lose access to your own history. The record survives, your access does not, and if it were genuinely yours you could not be locked out of it. The presence gap: a log entry proves a log entry exists. A history table that is complete, one missing three rounds, and one edited last Tuesday are indistinguishable from where you sit.
None of that requires a villain. Ask Cryptolink whether it set out to stop filing.
What the chain does differently
On-chain, the record is not produced about the event. It is the event. When a Satoshie round resolves, the contract emits its events in the same transaction that escrows the stake, consumes the VRF word and pays the winner. There is no ordering where the payout happens and the log does not, because they are one state transition: no code path reaches resolution while skipping it. And it is not in our custody. We cannot delete last night’s round, amend it, backdate it, or lock you out of it. That constraint is the point, not a courtesy we are extending.
Where this gets less comfortable
Raw events are not a statement. Turning BetPlaced and BetResolved into readable history takes an indexer, and most people will use a hosted one belonging to somebody. Real dependency, though a checkable one, since anyone can rebuild the same history from an archive node. “Verify it yourself” honestly means “verify it yourself, or pay someone with no relationship to us”.
Availability is not free. Pruning is normal and reading old logs depends on archive infrastructure continuing to exist. Base posts data to Ethereum mainnet, so state is reconstructable from a chain Coinbase does not run, across explorers and RPC providers we neither operate nor influence. Far better than one company’s database. Not physics.
This does not solve AUSTRAC’s problem. The regulator does not mainly need to know transactions happened, it needs them attached to identities. Ledgers give flow legibility without identity, which is precisely why Bybit needed a court order to put names against addresses it could already watch in real time. Putting ATMs on-chain would not satisfy an anti money laundering regime. Our claim is narrower, and it is about games.
The narrow claim
Satoshie has no account, so there is no account history to be locked out of and no customer table to mislay. The games run in verified, immutable code on Base with no admin key and no upgradeable proxy. Escrow, VRF resolution and payout happen in one transaction, so a round is a single artefact rather than three systems that have to agree. The coinflip is one modulo on the VRF word. The raffle is keccak256(VRF word + prior blockhash) % ticketsMinted, with ticketsMinted readable as contract state before you enter. Pull last night’s round from an explorer we do not operate and do the arithmetic yourself.
Usual caveats, which we would rather state than have you find: our front end is an ordinary web app and the least trustworthy thing we ship, Base’s sequencer is operated by Coinbase and is not decentralised today (L1 forced inclusion is the backstop), and immutability means our own bugs are permanent.
Three questions before you play anywhere
- If your account were closed tonight, could you still produce a history of what you played, from something the platform does not control?
- Is the record of your last game produced by the same operation that paid you, or written afterwards by the party that owed you?
- How long does the platform keep it, who chose that number, and can they change it without telling you?
Cryptolink’s machines are dark not because anybody proved they did something wrong, but because nobody could prove they did not. That is what happens when the evidence belongs to the party it is about.
📷 Photo by Maksym Kaharlytskyi on Unsplash


