commit inicial do projeto
This commit is contained in:
15
internal/consensus/consensus.go
Normal file
15
internal/consensus/consensus.go
Normal file
@ -0,0 +1,15 @@
|
||||
package consensus
|
||||
|
||||
import "dejo_node/internal/transactions"
|
||||
|
||||
// ConsensusEngine define a interface para algoritmos de consenso.
|
||||
type ConsensusEngine interface {
|
||||
// ValidateBlock verifica se o bloco atende aos critérios do consenso.
|
||||
ValidateBlock(block *transactions.Block) error
|
||||
|
||||
// SelectProposer retorna o ID do validador responsável por propor o próximo bloco.
|
||||
SelectProposer(height uint64) (string, error)
|
||||
|
||||
// FinalizeBlock aplica qualquer regra de finalização (ex: selar, assinar, etc).
|
||||
FinalizeBlock(block *transactions.Block) error
|
||||
}
|
||||
Reference in New Issue
Block a user