-
Notifications
You must be signed in to change notification settings - Fork 115
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
keymanager/src/client: Fetch public keys using insecure RPC requests #5101
Conversation
22baa99
to
89139ec
Compare
89139ec
to
068ec2f
Compare
Codecov Report
@@ Coverage Diff @@
## master #5101 +/- ##
==========================================
- Coverage 66.84% 66.78% -0.07%
==========================================
Files 497 497
Lines 53273 53197 -76
==========================================
- Hits 35611 35525 -86
- Misses 13321 13341 +20
+ Partials 4341 4331 -10
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. |
4093b34
to
08ecd05
Compare
keymanager/src/crypto/types.rs
Outdated
/// Signed public key. | ||
#[derive(Clone, Debug, Default, PartialEq, Eq, cbor::Encode, cbor::Decode)] | ||
pub struct SignedPublicKey { | ||
/// Public key. | ||
pub key: PublicKey, | ||
/// Checksum of the key manager state. | ||
pub checksum: Vec<u8>, | ||
/// Sign(sk, (key || checksum)) from the key manager. | ||
/// Sign(sk, (key || checksum || runtime id || key pair id || epoch || expiration date) from |
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.
/// Sign(sk, (key || checksum || runtime id || key pair id || epoch || expiration date) from | |
/// Sign(sk, (key || checksum || runtime id || key pair id || epoch || expiration epoch)) from |
08ecd05
to
b4b98d1
Compare
b4b98d1
to
2bf42ba
Compare
2bf42ba
to
b82ebd3
Compare
Task
Fetch and verify public long-term/ephemeral runtime keys through an insecure channel.
Test
Key manager upgrade tested locally with e2e test. Upgrade works as we allow empty runtime signing keys. An alternative would be to be strict here, but then one key manager would not be included in the node list because of the
Runtime signing key mismatch for runtime
error. Not sure if this is a problem though, as the new manager will be added to the list as soon as the old one is deregistered.