Skip to content

Properly handle expired identities in gossip#5121

Merged
denyeart merged 2 commits intohyperledger:mainfrom
denyeart:gossip_rewnew_certs
Jan 27, 2025
Merged

Properly handle expired identities in gossip#5121
denyeart merged 2 commits intohyperledger:mainfrom
denyeart:gossip_rewnew_certs

Conversation

@denyeart
Copy link
Contributor

When a peer's certificate expires, gossip still retains past messages it has sent, and gossips them to other peers.

Aside from peers doing redundant work, this also impairs their connectivity to the peer with the renewed certificate.

The reason is that peers try connect to the peer of the renewed certificate but abort because they cannot find its (old) PKI-ID in the identity store, which purged its old PKI-ID once its certificate has expired.

This commit fixes this problem by making the peer forget about peers that their identities have been purged from the identity store.

When a peer's certificate expires, gossip still retains past messages
it has sent, and gossips them to other peers.

Aside from peers doing redundant work, this also impairs their
connectivity to the peer with the renewed certificate.

The reason is that peers try connect to the peer of the renewed
certificate but abort because they cannot find its (old) PKI-ID
in the identity store, which purged its old PKI-ID once its
certificate has expired.

This commit fixes this problem by making the peer forget
about peers that their identities have been purged from
the identity store.

Signed-off-by: David Enyeart <enyeart@us.ibm.com>
Signed-off-by: Yacov Manevich <yacov.manevich@gmail.com>
@denyeart denyeart requested a review from a team as a code owner January 27, 2025 06:37
The membership check via discovery does not work consistently
due to the renewed cert signature not matching expectations.
For now, it is sufficient to do the membership check
via checking the log.

Signed-off-by: David Enyeart <enyeart@us.ibm.com>
@denyeart denyeart merged commit 9b63d8a into hyperledger:main Jan 27, 2025
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants