Earlier today, Friday, March 10, blocks sent through the Blocknative Relay began sending invalid proposer public keys. The blocks were committed by Validators but on getPayload requests the relay could not deliver a block as it was stored under an invalid proposer public key. A fix was developed ( Add proposer pubkey check in getheader by aratz-lasa · Pull Request #103 · blocknative/dreamboat · GitHub) and deployed to Goerli and Mainnet at 13:30 UTC on Friday, March 10, and the issue has been resolved. This fix prevents getHeader requests for blocks with invalid proposer public keys. The Blocknative Relay no longer delivers bids if the block does not have the correct proposer public key .
Impact
We are aware of several slots that were missed due to an invalid proposer public key . We are continuing to determine the impact on validators and slots.
Thank you for the incident update. I can confirm that from our side it looks like normal operation has resumed, so NOs may consider re-enabling the blocknative relay.
Thank you for the write up. It doesn’t explain why the requests were being stored under an “invalid proposer public key” nor what had changed to cause this given everything was working fine previously?
The Blocknative team analyzed the reported missed slots by Lido and determined that 17 slots were missed due to a bug in the validation of blocks. We reimbursed the total rewards (0.934127638 ETH) for those slots to the Lido Execution Layer Rewards Vault contract, 0x388C818CA8B9251b393131C08a736A67ccB19297, in the following transaction: 0xb9afce10d52fabb9065cbbae69947750fa5f15695c1073f50c077f015a93ae87.
We determined the expected rewards by looking at our bid at the end of the proposal period for each missed slot (12 second mark):
The validation error was exposed during a phased release in alpha testing external (non-Blocknative) builders submitting to the Blocknative Relay. We suspended the alpha testing on Friday, March 17 at 17:00 UTC to conduct a comprehensive review of the relay code and further enhance validation of submitted blocks. We expect to re-enable external block builder submissions following successful completion of this evaluation.
Thank you @ldelisle_blocknative for the post-mortem and insight into the fix, we very much appreciate the transparency and the follow-up on this incident.