Ultra light clients were introduced in Plumo:
High participation costs motivate the need for ultralight clients (UCs), which verify succinct proofs of valid blockchain data leading up to the current state
In other words, an ultralight client is a client that does not continuously synchronize with the blockchain. They might do a single query on the blockchain, and stop there forever.
Today, most clients are in such a position, where they do not want to run a node because it is costly (metamask, mobile clients, etc.)
Furthermore, such ultra light clients are also useful to build bridges between cryptocurrencies.
(I'd argue "secure light client" is a better name.)
Plumo is a proposal for BFT consensus protocols, which works well because such protocols do not fork. Can we implement an ultralight client for Mina then?
An idea would be to:
B
that is k
blocks in the past (with k
the confirmation time)B
B
authenticates a merkle tree that can provide answers to B
's queriesthe client also need to be convinced that k
blocks exist on top of that one:
k
blocks, and the client verify the k
proofsbut that's a bit too much, perhaps we can do:
k
block headers, that form the typical hash chain