-
Notifications
You must be signed in to change notification settings - Fork 47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integrate RMNRemote and OffRamp #1360
Integrate RMNRemote and OffRamp #1360
Conversation
LCOV of commit
|
76d74d5
to
e830e38
Compare
ce7ec8f
to
3289314
Compare
e490109
to
8847c12
Compare
8847c12
to
5093308
Compare
5093308
to
3015456
Compare
60c211c
to
24ab8e3
Compare
f961f92
to
bec52a5
Compare
…CCIP-2455-off-chain-blessing-off-ramp-contract-changes
441eef3
to
412e4a8
Compare
## Motivation Bootstrap P2P IDs are no longer needed in the OCR config in CCIPConfig. See #1348's description for more details. ## Solution Remove bootstrap P2P IDs from the OCR config in CCIPConfig. ## Related PRs smartcontractkit/chainlink-ccip#89
412e4a8
to
cfd706e
Compare
…CCIP-2455-off-chain-blessing-off-ramp-contract-changes
cfd706e
to
0e7f614
Compare
uint64 sourceChainSelector; // Remote source chain selector that the Merkle Root is scoped to | ||
bytes32 merkleRoot; // Merkle root of a single remote source chain | ||
Internal.MerkleRoot[] merkleRoots; // Collection of merkle roots per source chain to commit | ||
IRMNV2.Signature[] rmnSignatures; // RMN signatures on the merkle roots |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we want to be accurate these aren't signatures on the merkle roots exactly. They're signatures on a particular RMN report that consists of "lane updates" that match the updates in the merkleRoots
array above. Maybe reference RMNRemote.verify() for folks who want to see the exact message being signed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you're right. If I make additional changes, I'll fix the comment :)
bytes32 s; | ||
} | ||
|
||
function verify(Internal.MerkleRoot[] memory merkleRoots, Signature[] memory signatures) external view; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A basic docstring on the expected behavior of this function might be useful (e.g maybe for implementing mocks), i.e "verifies RMN signatures against provided MerkleRoot structs and reverts on invalid signatures"
Quality Gate passedIssues Measures |
Motivation
Remove the requirement for self-transmitted RMN blessings
Solution
Allow the commit DON to include RMN blessings at commitment time
This PR has a dependency on changes to chainlink-ccip