You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I propose that Entropy is moved from Block to Data.txs. I mean, that Entropy is processed as a transaction. This makes Ostracon block the same as Tendermint and solves the problems due to differences of block interfaces.
Problem Definition
Ostracon Block is different from Tendermint's one. We need forks of scan and explorer projects because of block APIs.
Proposal
I want to remove Entropy from Block and introduce Ostracon transaction (OcTx) like this:
Proposer who generates VRF proofs add this transaction to proposal blocks. Validators who get proposal blocks validate Entropy in this transaction before DeliverTx.
Consideration
This change always requires a special module to ABCI clients (finschia-sdk) if a OcTx is delivered to a ABCI client. This makes dependencies between ABCI server and client strong.
If we add a special module, we must guarantee that the number of transactions of this module type is always one in Block. If the module is incorrect, an adversary can do DoS (an adversary can send lots of free transactions because the fee of the module need to be free).
This change doesn't require any change for ABCI clients if a OcTx isn't delivered to a ABCI client. But, the protocol that delivers all transactions in Block is broken.
For Admin Use
Not duplicate issue
Appropriate labels applied
Appropriate contributors tagged
Contributor assigned/self-assigned
The text was updated successfully, but these errors were encountered:
ulbqb
added
the
C: proposal
Classification: Proposal for specification, algorithm, architecture, or communication
label
Sep 22, 2023
I think it's a proposal worth considering. It'd be good if it could be opted out through a setting, as it's not incompatibility that is necessarily required for all applications.
Protocol Change Proposal
Summary
I propose that Entropy is moved from Block to Data.txs. I mean, that Entropy is processed as a transaction. This makes Ostracon block the same as Tendermint and solves the problems due to differences of block interfaces.
Problem Definition
Ostracon Block is different from Tendermint's one. We need forks of scan and explorer projects because of block APIs.
Proposal
I want to remove Entropy from Block and introduce Ostracon transaction (OcTx) like this:
Proposer who generates VRF proofs add this transaction to proposal blocks. Validators who get proposal blocks validate Entropy in this transaction before DeliverTx.
Consideration
For Admin Use
The text was updated successfully, but these errors were encountered: