hexresearch / hschain

Other
4 stars 0 forks source link

Some some variant of "migrations" #448

Open Shimuuar opened 5 years ago

Shimuuar commented 5 years ago

We have to support changing format of blocks. BLS porvides good case for what could change: format of vote, format of commit, no more BFT resistant time.

  1. Blockchain is immutable so we'll have to keep old type forever
  2. It doesn't make much sense to enumerate all possible types in thundermint library. If some BCh start with BLS it doesn't really need Ed25519

Maybe we should make Block a user supplied type and defined required operations using type classes?

Shimuuar commented 5 years ago

Maybe it's also possible to separate one-shot PBFT consesensus from multi-round tendermint. Former is more limited. It needs only

  1. Validator set
  2. Way to generate block
  3. Way to validate block

It has almost none blockchain baggage. Question is whether clean separation is possible