Skip to content

fix: flawed multisig handling caused by non-deterministic (compressed) pubkeys#367

Closed
mplattner wants to merge 1 commit intocitp:v0.6from
mplattner:fix/non-deterministic-pubkeys
Closed

fix: flawed multisig handling caused by non-deterministic (compressed) pubkeys#367
mplattner wants to merge 1 commit intocitp:v0.6from
mplattner:fix/non-deterministic-pubkeys

Conversation

@mplattner
Copy link
Copy Markdown
Collaborator

In v0.6 the format of raw pubkeys was changed from a dedicated class (CPubKey) to an array (std::array<unsigned char, 65>). The class handled compressed pubkeys with 33 bytes correctly, while the new array leaves the remaining bytes uninitialized. This causes non-deterministic parser outputs and errors in the handling of multisig addresses. This PR fixes this issue.

@mplattner mplattner changed the title Fix flawed multisig handling caused by non-deterministic (compressed) pubkeys fix: flawed multisig handling caused by non-deterministic (compressed) pubkeys Jan 31, 2020
maltemoeser pushed a commit that referenced this pull request Jan 31, 2020
…ompressed pubkeys

BREAKING CHANGE: Reparsing the blockchain is strongly recommended.

In v0.6 the format of raw pubkeys was changed from a dedicated class (CPubKey) to an array (std::array<unsigned char, 65>). The dedicated class handled compressed pubkeys with 33 bytes correctly, while the new array left the remaining bytes uninitialized. This caused non-deterministic parser outputs and incorrect handling of multisig addresses.

Closes #367
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