If you can trust the miner, why not just use a regular RDBMS? The controller is the primary/master, you just need to disallow UPDATEs and DELETEs, and to have a constraint that prevents an account from spending more than they received. The other nodes are read-only replicas.
(To the complaint that a single master doesn't scale: it should scale as well as a single miner. They're both the only writer to the database.)