ms32 wallet and ms32 create --existing hide the recovered master fingerprint while confirming a correction (#57), so the typed record stays an independent check. A wrong correction is then caught only after the operator accepts it and types the record.
Ask for the record fingerprint first: before the shares in ms32 wallet, and before the seed in ms32 create --existing (#81 asks right after it). Each correction preview then says "matches your wallet record" or "does not match" without showing the value, so a user with no record can't type it back from memory. Pressing Enter for no record shows the fingerprint, as today.
With the record known up front, correction can also use it to filter candidates for the secret or the share that completes the threshold, and offer only those that match. A tester asked for this.
Builds on #57 and #81. Touches recovery, so it needs a security review.
ms32 walletandms32 create --existinghide the recovered master fingerprint while confirming a correction (#57), so the typed record stays an independent check. A wrong correction is then caught only after the operator accepts it and types the record.Ask for the record fingerprint first: before the shares in
ms32 wallet, and before the seed inms32 create --existing(#81 asks right after it). Each correction preview then says "matches your wallet record" or "does not match" without showing the value, so a user with no record can't type it back from memory. Pressing Enter for no record shows the fingerprint, as today.With the record known up front, correction can also use it to filter candidates for the secret or the share that completes the threshold, and offer only those that match. A tester asked for this.
Builds on #57 and #81. Touches recovery, so it needs a security review.