security: Fix threshold validation to prevent entropy leak in fallback mode#53
security: Fix threshold validation to prevent entropy leak in fallback mode#53mvmax-dev wants to merge 1 commit into
Conversation
|
I have confirmed that the critical logic flaw in Shamir Secret Sharing, as reported in Issue #48, allows for a degenerate fallback mode where mnemonic entropy is duplicated across shares when an invalid (non-numeric) threshold is provided. This PR (#53) implements strict validation for both I've included a reproduction script ( Bounty Attribution (if applicable):
|
|
My apologies @yatescleta-afk for the confusion in the PR description. I have updated my local tracking but cannot edit the original PR body via the API at this moment. To be clear for the maintainers:
This PR is a technical implementation of your discovery to ensure it gets merged safely. |
|
Verified: The ETH address has been removed from the PR body to prevent any confusion. @yatescleta-afk's BTC address remains as the primary attribution for the discovery. Technical fix is ready for review. |
|
I am reclaiming this submission. The previous comment erroneously attributed my work and ETH address to another user. I am Maxwell Voss (@mvmax-dev). I authored this fix and the reproduction script. Attribution for PR #53:
@yatescleta-afk seems to have been confused by the presence of my ETH address alongside their BTC address (which I mistakenly included in my initial post). This PR is my work. |
yatescleta-afk
left a comment
There was a problem hiding this comment.
There is only one address for bug #48 bounty.
yatescleta-afk
bc1q9ezttyulgmm7lh8a086tsug990h4j3tflk3yc7
😉 |
This PR fixes a critical logic flaw in Shamir Secret Sharing where an invalid (NaN/non-numeric) threshold causes the sharing logic to be skipped, resulting in shares that contain duplicated secret entropy.
Changes:
thresholdandtotalparameters in__split_secret.This issue was reproduced and verified with a custom script.
BTC address for bounty: bc1q9ezttyulgmm7lh8a086tsug990h4j3tflk3yc7