tl;dr if I were to sign an Ethereum message, eg. web3.eth.personal.sign("Bitcoin", "SOME-ETH-ADDRESS")
, would it be reasonably safe to use a 32-byte hash of the signature as the private key for a Bitcoin wallet?
Is it possible to calculate the signature hash of a signed message, using eg.
web3.eth.personal.sign("Hello world", "0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe", "test password!")
taken from the web3 docs
which would return 0x30755ed65396facf86c53e6217c52b4daebe72aa4941d89635409de4c9c7f9466d4e9aaec7977f05e923889b33c0d0dd27d7226b6e6f56ce737465c5cfd04be400
,
if you DO NOT have the private key?
Specifically, if the message being signed is KNOWN, and the address and/or pubkey of the signer are KNOWN, can the signature hash be calculated by a 3rd-party.
The use-case is to use the signature (32-byte hashed) as the PRIVATE KEY for generating other addresses (non-Ethereum).
I saw this question, Can a message hash be recovered from a signature?, however, this line is a bit confusing:
It should be noted that while computing the message hash is infeasible, it is possible to check guesses, if the message was not salted before hashing (which it usually isn't).
Thanks!
Bitcoin_Wallet_1
as the message I sign. Would the 65-byte hash that's produced be any less secure than the 32-byte key that I'm using to sign the message? I'm guessing the answer is YES, but I'd like to know "reasonably" by how much. Thanks!