tendermint/docs/specification/light-client-protocol.rst

34 lines
1.2 KiB
ReStructuredText
Raw Normal View History

2017-08-30 16:16:15 -07:00
Light Client Protocol
=====================
Light clients are an important part of the complete blockchain system
for most applications. Tendermint provides unique speed and security
properties for light client applications.
See our `lite package
<https://godoc.org/github.com/tendermint/tendermint/lite>`__.
2017-08-30 16:16:15 -07:00
Overview
--------
The objective of the light client protocol is to get a
2017-08-30 19:36:16 -07:00
`commit <./validators.html#committing-a-block>`__ for a recent
`block hash <./block-structure.html#block-hash>`__ where the commit
2017-08-30 16:16:15 -07:00
includes a majority of signatures from the last known validator set.
From there, all the application state is verifiable with `merkle
2017-09-16 12:19:22 -07:00
proofs <./merkle.html#iavl-tree>`__.
2017-08-30 16:16:15 -07:00
Properties
----------
- You get the full collateralized security benefits of Tendermint; No
need to wait for confirmations.
2017-08-30 19:36:16 -07:00
- You get the full speed benefits of Tendermint; transactions commit
2017-08-30 16:16:15 -07:00
instantly.
- You can get the most recent version of the application state
non-interactively (without committing anything to the blockchain).
For example, this means that you can get the most recent value of a
name from the name-registry without worrying about fork censorship
attacks, without posting a commit and waiting for confirmations. It's
fast, secure, and free!