Re-derive signers upon deserializing Channel
authorWilmer Paulino <wilmer.paulino@gmail.com>
Mon, 21 Nov 2022 20:47:41 +0000 (12:47 -0800)
committerWilmer Paulino <wilmer.paulino@gmail.com>
Mon, 5 Dec 2022 20:11:28 +0000 (12:11 -0800)
commitf053860f2e98c92bbe69f114b6bb1e861cefbc6c
treebbb483d4e0eda636f7575a2413ee8fac9d2254b6
parent648a69a1e31ceae7c6fa2259d18d1a2ac1095ced
Re-derive signers upon deserializing Channel

To do so, we introduce a new serialization version that doesn't store a
channel's signer, and instead stores its signer's `channel_keys_id`.
This is a unique identifier that can be provided to our `KeysInterface`
to re-derive all private key material for said channel.

We choose to not upgrade the minimum compatible serialization version
until a later time, which will also remove any signer serialization
logic on implementations of `KeysInterface` and `Sign`.
lightning/src/ln/channel.rs