Mycelium not reading segwit bech32 (bc1) addresses from a private key

0

I'm trying to import my bitcoin private key into the Mycelium android wallet, but it keeps showing up as the legacy address that starts with 1xxx. I sent some coins to the bc1 address and I verified its there, but when I try to just import the bc1 address into mycelium it works, but it says its an "uncompressed" address. I have another bc1 address that has the private key imported, but it says "compressed" and that is working fine. How do I compress my uncompressed bc1 address that already has some funds there?

Patoshi パトシ

Posted 2019-07-25T17:45:34.407

Reputation: 9 661

"I sent some coins to the bc1 address" How did you determine that address, if it wasn't created by the wallet software? Uncompressed keys cannot be used in segwit, which means that if so, your coins are possibly lost. – Pieter Wuille – 2019-07-25T17:51:11.300

@PieterWuille Just to poke the unspendability, is it 'standardness' that prevents that or consensus? – Ugam Kamat – 2019-07-25T18:38:30.900

Whoa... lucky it was just $2. – Patoshi パトシ – 2019-07-25T18:39:21.873

1@UgamKamat It's standardness, though a standardness rule that has been there since segwit was introduced, and widely enforced by nodes and wallets. – Pieter Wuille – 2019-07-25T18:42:23.567

@PieterWuille cool, thanks! – Ugam Kamat – 2019-07-25T18:43:07.257

You guys know how I can convert that private key to a compressed format using javascript? I'm working with this brain wallet generator: https://dvdbng.github.io/memwallet/ and managed to generate bc1 addresses but didn't realize uncompressed formats don't work.

– Patoshi パトシ – 2019-07-25T18:48:39.777

2Compressedness is really a property of the public key. In WIF format it's a flag that indicates "the corresponding public key is to be compressed". But as compressed and uncompressed public keys give rise to distinct addresses, you really need that information. If coins were sent to a bc1 address whose corresponding public key is uncompressed, the coins are lost. That's why wallet software will generally refuse to create segwit addresses for private keys whose public keys are uncompressed. – Pieter Wuille – 2019-07-25T18:51:53.417

No answers