It seems that Taproot allows us to protect each individual public key with a 
password. It could work in this way: we have some normal, Taproot-based public 
key, that is generated in a secure and random way, as it is today in Bitcoin 
Core wallet. Then, we can create another public key, just by taking password 
from the user, executing SHA-256 on that, and using it as a private key, so the 
second key will be just a brainwallet. Then, we can combine them in a Schnorr 
signature, forming 2-of-2 multisig, where the first key is totally random, and 
the second key is just a brainwallet that takes a password chosen by the user. 
By default, each key can be protected with the same password, used for the 
whole wallet, but it could be possible to choose different passwords for 
different addresses, if needed. Descriptors should handle that nicely, in the 
same way as they can be used to handle any other 2-of-2 multisig.
_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev

Reply via email to