You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
1.1 KiB

  1. # Dummy
  2. There are two app's here: the DummyApplication and the PersistentDummyApplication.
  3. ## DummyApplication
  4. The DummyApplication is a simple merkle key-value store.
  5. Transactions of the form `key=value` are stored as key-value pairs in the tree.
  6. Transactions without an `=` sign set the value to the key.
  7. The app has no replay protection (other than what the mempool provides).
  8. ## PersistentDummyApplication
  9. The PersistentDummyApplication wraps the DummyApplication
  10. and provides two additional features:
  11. 1) persistence of state across app restarts (using Tendermint's TMSP-Handshake mechanism)
  12. 2) validator set changes
  13. The state is persisted in leveldb along with the last block committed,
  14. and the Handshake allows any necessary blocks to be replayed.
  15. Validator set changes are effected using the following transaction format:
  16. ```
  17. val:pubkey1/power1,addr2/power2,addr3/power3"
  18. ```
  19. where `power1` is the new voting power for the validator with `pubkey1` (possibly a new one).
  20. There is no sybil protection against new validators joining.
  21. Validators can be removed by setting their power to `0`.