Open tock-ibm opened 11 months ago
@semil and @arkadiPiven
The delivery service server handlers are here: common/deliver/deliver.go
func (h *Handler) Handle(ctx context.Context, srv *Server) error
instatiated here:
orderer/common/server/server.go
Continue from PR https://github.com/hyperledger/fabric/pull/4402
Added the test PR: https://github.com/hyperledger/fabric/pull/4542
See also #4724
When running a BFT ordering service the peer is pulling blocks from the ordering service using the BFT Deliverer that protects against censorship attacks of the orderer that is asked to deliver blocks.
In this task we have to create an integration test environment that emulates the behavior of a malicious orderer. We that have to emulate malicious + faulty behavior against a peer pulling blocks.
Scenario 1 - censorship detection
Scenario 2 - censorship suspicion that resets
Scenario 3 - bad blocks and comm problems
Scenario 4 - bad attestations
These scenarios are tested in the unit tests of the BFTDeliverer and the CensorshipMonitor, now we want to test some of these basic scenarios in the integration tests.
The challenge here is to emulate the behavior of a byzantine orderer.
Stages: