Skip to content
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

Bech32 export/import encoding format for BLS keys #2733

Merged
merged 7 commits into from
Feb 4, 2022

Conversation

furszy
Copy link

@furszy furszy commented Jan 24, 2022

Instead of exporting the BLS keys as plain hex strings, encode them into proper bech32 strings.

Gaining the following benefits:

  1. Easily recognizable unique prefix for each BLS key type:
    "bls-sk" for secret keys and "bls-pk" for public keys.
  2. The character set minimizes ambiguity, all characters are lowercase.
  3. Error detection algorithm.

More info about the bech32 format can be found at BIP173

@furszy furszy self-assigned this Jan 24, 2022
@furszy furszy changed the title Bech32 export/import encoding format for BLS keys [WIP]Bech32 export/import encoding format for BLS keys Jan 24, 2022
@random-zebra
Copy link

Pretty cool.
I've worked a bit on the failing tests: https://github.com/random-zebra/PIVX/commits/pr/2733

@furszy furszy changed the title [WIP]Bech32 export/import encoding format for BLS keys Bech32 export/import encoding format for BLS keys Jan 28, 2022
@furszy
Copy link
Author

furszy commented Jan 28, 2022

You rock zebra 👌🤘, cherry-picked your commits on top. Ready to go.

Copy link
Collaborator

@Fuzzbawls Fuzzbawls left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code ACK 3d2a71a

Copy link

@random-zebra random-zebra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK 3d2a71a and merging...

@random-zebra random-zebra added this to the 6.0.0 milestone Feb 4, 2022
@random-zebra random-zebra merged commit 87019e7 into PIVX-Project:master Feb 4, 2022
furszy added a commit that referenced this pull request Mar 2, 2022
…hon framework

7e04420 QA: Add proper bech32 encoding/decoding utilities to python framework (random-zebra)

Pull request description:

  As per title, completes the rudimentary python implementation introduced in #2733

ACKs for top commit:
  furszy:
    you had some fun here, utACK 7e04420

Tree-SHA512: b32c126efa44dedde32c473b3c2a25cac21c3380d881637bdb87764bae0928b8fb53701b75ef72ab1e1d8da32af0d8f367428571813c33340550678ff3ca0c5d
panleone pushed a commit to panleone/PIVX that referenced this pull request Oct 29, 2024
…X-Project#2733)

* Ignore sig share inv messages when we don't have the quorum vvec

* Update src/llmq/quorums_signing_shares.cpp

Co-Authored-By: codablock <ablock84@gmail.com>
Fuzzbawls added a commit that referenced this pull request Nov 5, 2024
a29d294 Fix deadlock in CSigSharesManager::SendMessages (#2757) (Alexander Block)
b4a4e09 Ignore sig share inv messages when we don't have the quorum vvec (#2733) (Alexander Block)
a2fb276 On timeout, print members proTxHashes from members which did not send a share (#2731) (Alexander Block)
d1084e0 Actually start the timers for sig share and recSig verification (#2730) (Alexander Block)
71092e0 Send/Receive multiple messages as part of one P2P message in CSigSharesManager (#2729) (Alexander Block)
e73c238 Merge pull request #2726 from codablock/pr_llmq_sessionids (UdjinM6)
7ccd790 Merge pull request #2725 from codablock/pr_llmq_hashmaps (Alexander Block)
a0084f5 Multiple fixes and optimizations for LLMQs and ChainLocks (#2724) (Alexander Block)
0613978 Cleanup successful sessions before doing timeout check (#2712) (Alexander Block)
c9127e1 Avoid using ordered maps in LLMQ signing code (#2708) (Alexander Block)

Pull request description:

  Follow up of #2921

  each commit backports a PR. you can find the number of the PR in the commit description

ACKs for top commit: a29d294
  Duddino:
    utACK a29d294
  Fuzzbawls:
    utACK a29d294

Tree-SHA512: 75483d543f39d85a2924606b1f7c359a45a52e0ebd84bdc06275080db2d07aa657d692461fbf22d23890d3a0394ebffae0c662a2def420d53ebcdb69c974ba6f
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants