Mithril is a mechanism for developing lightweight wallets by storing blockchain snapshots on Mithril Aggregator. We can authenticate these snapshots using Multi Signature. But after the snapshot is signed, it will be stored by Mithril Aggregator. How to ensure Mithril Aggregator does not modify the data of these snapshots?
1 Answer
We ensure that the Aggregator does not modify the data of the snapshots by verifying the signature. The Mithril team will soon release documentation where this type of information will be clearer.
But to answer your question, the snapshots will be signed by Mithril nodes, and distributed by the aggregators as you said. However, the role of the aggregator is only to serve as a distributor, and we don't need to trust that the data shared is correct. That's what the signature is for. A Mithril client downloads the certificate (which cannot be forged by the aggregator) and the snapshot. Then, it verifies that the snapshot is signed (and therefore validated) by the Mithril certificate. This guarantees that the snapshot received by the client is the one signed by the Mithril nodes, and has not been tampered by the Aggregator. If the signature validates, then the Mithril client can use that snapshot to spin the wallet/node.
[EDIT]: The Mithril project is finally public. You can find more information in the proof of concept documentation: