waxwing
· 4d
We all (who have tech skills) are at least a little bit at fault.
We never developed some kind of norm of: how can you assure your users that their private keys are 'proper'?
Were they supposed to l...
People are saying to supply your own randomness such as dice rolls, or a photo, or mouse movements etc; but how do you know that your added entropy is being applied properly to the end result key? How do you know your supplied entropy wasn't truncated, or maybe it was never applied after inputted, or maybe your supplied entropy wasn't enough? As an end user, it is almost pretty much impossible to determine if your generated key is truly random if you're just generating one singular key when you don't actually know the full process that generated the key. After all, a ColdCard has its own dedicated hardware for generating random numbers, it just wasn't used.
Randomness isn't a property of any given piece of data. It is a property of the process that was used to generate it and understanding that process is a fundamental limitation for a casual end user.
Of course things like NIST has certifications for entropy designs, but I'm not sure how well that would fit into bitcoin's open source ethos and things like that can quickly become "pay to play." But at least end users can look to certifications for legitimacy easy enough.
Standards are also very important and one of the reasons why BIP-39 is so important. Standards allow you to reproduce something with a different solution entirely. This is why I think BIP-39 passphrases are so important for the end user because it is additional entropy supplied AFTER your hardware has done its work. So as an end user, you can be sure that your additional entropy from your passphrase is being applied to your master key, unlike other emtropy sources that are performed inline by the hardware itself. Though here we run into the problem of making sure the end user actually understands what a good passphrase is as well.