I'd like to explore the option to verify the messages that have been signed in Bitcoin wallets in Ethereum smart contracts. - Ethereum smart contract is given a list of Bitcoin addresses - Ethereum smart contract can verify if the incoming function call msg, v, r, s matches any of previously given Bitcoin addresses Now, the question is that the built-in `ecrecover()` only gives a resulting Ethereum address and I do not know how could I proceed from here. * Can built-in ecrecover() deal with Bitcoin addresses * Does there exist a way to mapBitcoin address to Ethereum address 1:1 * Can built-in ecrecover() give full public key output? * If built-in ecrecover() does not work, can I write my own recover that outputs a Bitcoin address and spends reasonable gas? * Can I somehow preprocess Bitcoin addresses (or public keys) to Ethereum ecrecover() compatible format? ... which all kind of are related to one question * Do I need full Bitcoin public key as a starting point or is Bitcoin address enough?