-
Notifications
You must be signed in to change notification settings - Fork 7
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
Add bech32_mod for double public key encoding/decoding #133
Conversation
LGTM |
Sure. I added functions to encode/decode a double public key to key_io.cpp. Since DestinationEncoder is not exposed to outside, I added the functions directly under key_io.cpp. |
Is this PR ready for final review? |
@mxaddict Yes. Sorry to the late response. |
This is an intermediate step to address the first 2 tasks in issue #122:
This change adds
bech32_mod::Encode
that is designed to encode 165-byte 5-bit input vector (after 8-bit to 5-bit conversion and inserting 1-byte separator, 96-byte double public key with 2-byte HRP becomes 165-byte long), andbech32_mod::Decode
that is capable of perfectly detecting up to 5 errors with helper functions to convert betwen 8-bit based vector to 5-bit based vector and vice versa.The process of finding a generator polynomial that is capable of the desired detection capability is discussed in
doc/bech32-mod-gen-poly
in detail.