citp / BlockSci

A high-performance tool for blockchain science and exploration
https://citp.github.io/BlockSci/
GNU General Public License v3.0
1.34k stars 259 forks source link

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

Closed mplattner closed 4 years ago

mplattner commented 4 years ago

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.