Is it possible / how to build a Beefy super light client for Kusama or Polkadot?

Beefy is designed to make the syncing process and finality proof very succinct to enable Ethereum on-chain light client. I want to build a super light client that can validate the storage at some recent blocks but doesn't require to download the full relay chain history. We used to have a GRANDPA light client, but to validate the recent storage proof, it has to sync all the historical blocks. Therefore the client must have the access to a full Kusama archive node with over 600 GiB database.

I've already read the Beefy docs from here. However it's still unclear how to build a light client that can only sync from a pruned relay chain node.

1 Answer 1


GRANDPA light clients don't need to download or store all the blocks. In fact, https://github.com/paritytech/smoldot/ is an example of what you're referring to as a super-light client. It only stores recent headers and can validate state proofs. BEEFY isn't actually needed for that, and BEEFY is designed for smart-contract light clients used in bridges to other chains.

However, the GRANDPA authority set changes are fairly heavy and do add up to several MBs of data at this point. Additionally, they grow linearly with the chain. There are researchers working on extensions to BEEFY which will allow for authority set change proofs to be made much more compact using zero-knowledge proofs, which can reduce the data needed to sync a light client substantially.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.