• Welcome to forex.pm forex forum binary options trade. Please login or sign up.
 

How to transform a private key into an ECKey?

Started by Bitcoin, Feb 22, 2022, 04:24 am

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Bitcoin

How to transform a private key into an ECKey?

I´d like to construct an ECKey from a hardcoded private key but it´s not working...


First try


If I run the code in this example the key import is working just fine. But since I actually want so send money I need to import my own key...


I tried this private key L48r9sYN2dtsWHWwJ1Xez27W7a3X7RvG6obrmVgU2JLTFQeUCnkh and used this site to generate it. When I try to make the private key an ECKey like this:


ECKey key = ECKey.fromPrivate(Base58.decodeToBigInteger("L48r9sYN2dtsWHWwJ1Xez27W7a3X7RvG6obrmVgU2JLTFQeUCnkh"));

I´m getting the exception


Exception in thread "main" java.lang.IllegalArgumentException: private key exceeds 32 bytes: 304 bits

Second try


I tried the solution form this question with this code


String priv = "L48r9sYN2dtsWHWwJ1Xez27W7a3X7RvG6obrmVgU2JLTFQeUCnkh";
ECKey key1 = DumpedPrivateKey.fromBase58(TestNet3Params.get(), priv).getKey();

Which leads me to this exception


Exception in thread "main" org.bitcoinj.core.AddressFormatException$WrongNetwork: Version code of address did not match acceptable versions for network: 128
at org.bitcoinj.core.DumpedPrivateKey.fromBase58(DumpedPrivateKey.java:59)
at com.javamaster.TicTacToeApplication.main(TicTacToeApplication.java:42)

Third try


I tried another solution form this question


    byte[] b = priv.getBytes();
    System.out.println(priv);
    ECKey key3 = ECKey.fromPrivate(b, true);

It results in the same exception as from the second try.


What is wrong with the key? Should I use another way to generate the private key?


Source: How to transform a private key into an ECKey?