public String getPrivateKeyAsWiF(NetworkParameters params) { return getPrivateKeyEncoded(params).toString(); }
public String getPrivateKeyAsWiF(NetworkParameters params) { return getPrivateKeyEncoded(params).toString(); }
public String getPrivateKeyAsWiF(NetworkParameters params) { return getPrivateKeyEncoded(params).toString(); }
public String getPrivateKeyAsWiF(NetworkParameters params) { return getPrivateKeyEncoded(params).toString(); }
/** * Return private key for this address (compressed WIF format). * * @return String */ public String getPrivateKeyString() { if (ecKey.hasPrivKey()) { return ecKey.getPrivateKeyEncoded(params).toString(); } else { return null; } }
@Test public void bip38testvector_noCompression_noEcMultiply_test3() throws Exception { BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(MAINNET, "6PRW5o9FLp4gJDDVqJQKJFTpMvdsSGJxMYHtHaQBF3ooa8mwD69bapcDQn"); StringBuilder passphrase = new StringBuilder(); passphrase.appendCodePoint(0x03d2); // GREEK UPSILON WITH HOOK passphrase.appendCodePoint(0x0301); // COMBINING ACUTE ACCENT passphrase.appendCodePoint(0x0000); // NULL passphrase.appendCodePoint(0x010400); // DESERET CAPITAL LETTER LONG I passphrase.appendCodePoint(0x01f4a9); // PILE OF POO ECKey key = encryptedKey.decrypt(passphrase.toString()); assertEquals("5Jajm8eQ22H3pGWLEVCXyvND8dQZhiQhoLJNKjYXk9roUFTMSZ4", key.getPrivateKeyEncoded(MAINNET) .toString()); }
@Test public void bip38testvector_noCompression_noEcMultiply_test2() throws Exception { BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(MAINNET, "6PRNFFkZc2NZ6dJqFfhRoFNMR9Lnyj7dYGrzdgXXVMXcxoKTePPX1dWByq"); ECKey key = encryptedKey.decrypt("Satoshi"); assertEquals("5HtasZ6ofTHP6HCwTqTkLDuLQisYPah7aUnSKfC7h4hMUVw2gi5", key.getPrivateKeyEncoded(MAINNET) .toString()); }
@Test public void bitcoinpaperwallet_testnet() throws Exception { // values taken from bitcoinpaperwallet.com BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(TESTNET, "6PRPhQhmtw6dQu6jD8E1KS4VphwJxBS9Eh9C8FQELcrwN3vPvskv9NKvuL"); ECKey key = encryptedKey.decrypt("password"); assertEquals("93MLfjbY6ugAsLeQfFY6zodDa8izgm1XAwA9cpMbUTwLkDitopg", key.getPrivateKeyEncoded(TESTNET) .toString()); }
@Test public void bitaddress_testnet() throws Exception { // values taken from bitaddress.org BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(TESTNET, "6PfMmVHn153N3x83Yiy4Nf76dHUkXufe2Adr9Fw5bewrunGNeaw2QCpifb"); ECKey key = encryptedKey.decrypt("password"); assertEquals("91tCpdaGr4Khv7UAuUxa6aMqeN5GcPVJxzLtNsnZHTCndxkRcz2", key.getPrivateKeyEncoded(TESTNET) .toString()); }
@Test public void bip38testvector_noCompression_noEcMultiply_test1() throws Exception { BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(MAINNET, "6PRVWUbkzzsbcVac2qwfssoUJAN1Xhrg6bNk8J7Nzm5H7kxEbn2Nh2ZoGg"); ECKey key = encryptedKey.decrypt("TestingOneTwoThree"); assertEquals("5KN7MzqK5wt2TP1fQCYyHBtDrXdJuXbUzm4A9rKAteGu3Qi5CVR", key.getPrivateKeyEncoded(MAINNET) .toString()); }
@Test public void base58Encoding_stress() throws Exception { // Replace the loop bound with 1000 to get some keys with leading zero byte for (int i = 0 ; i < 20 ; i++) { ECKey key = new ECKey(); ECKey key1 = DumpedPrivateKey.fromBase58(TestNet3Params.get(), key.getPrivateKeyEncoded(TestNet3Params.get()).toString()).getKey(); assertEquals(Utils.HEX.encode(key.getPrivKeyBytes()), Utils.HEX.encode(key1.getPrivKeyBytes())); } }
@Test public void bip38testvector_ecMultiply_noCompression_noLotAndSequence_test1() throws Exception { BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(MainNetParams.get(), "6PfQu77ygVyJLZjfvMLyhLMQbYnu5uguoJJ4kMCLqWwPEdfpwANVS76gTX"); ECKey key = encryptedKey.decrypt("TestingOneTwoThree"); assertEquals("5K4caxezwjGCGfnoPTZ8tMcJBLB7Jvyjv4xxeacadhq8nLisLR2", key.getPrivateKeyEncoded(MAINNET) .toString()); }
@Test public void bip38testvector_compression_noEcMultiply_test2() throws Exception { BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(MainNetParams.get(), "6PYLtMnXvfG3oJde97zRyLYFZCYizPU5T3LwgdYJz1fRhh16bU7u6PPmY7"); ECKey key = encryptedKey.decrypt("Satoshi"); assertEquals("KwYgW8gcxj1JWJXhPSu4Fqwzfhp5Yfi42mdYmMa4XqK7NJxXUSK7", key.getPrivateKeyEncoded(MAINNET) .toString()); }
@Test public void bip38testvector_ecMultiply_noCompression_lotAndSequence_test1() throws Exception { BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(MainNetParams.get(), "6PgNBNNzDkKdhkT6uJntUXwwzQV8Rr2tZcbkDcuC9DZRsS6AtHts4Ypo1j"); ECKey key = encryptedKey.decrypt("MOLON LABE"); assertEquals("5JLdxTtcTHcfYcmJsNVy1v2PMDx432JPoYcBTVVRHpPaxUrdtf8", key.getPrivateKeyEncoded(MAINNET) .toString()); }
@Test public void bip38testvector_compression_noEcMultiply_test1() throws Exception { BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(MainNetParams.get(), "6PYNKZ1EAgYgmQfmNVamxyXVWHzK5s6DGhwP4J5o44cvXdoY7sRzhtpUeo"); ECKey key = encryptedKey.decrypt("TestingOneTwoThree"); assertEquals("L44B5gGEpqEDRS9vVPz7QT35jcBG2r3CZwSwQ4fCewXAhAhqGVpP", key.getPrivateKeyEncoded(MAINNET) .toString()); }
@Test public void bip38testvector_ecMultiply_noCompression_noLotAndSequence_test2() throws Exception { BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(MainNetParams.get(), "6PfLGnQs6VZnrNpmVKfjotbnQuaJK4KZoPFrAjx1JMJUa1Ft8gnf5WxfKd"); ECKey key = encryptedKey.decrypt("Satoshi"); assertEquals("5KJ51SgxWaAYR13zd9ReMhJpwrcX47xTJh2D3fGPG9CM8vkv5sH", key.getPrivateKeyEncoded(MAINNET) .toString()); }
@Test public void bip38testvector_ecMultiply_noCompression_lotAndSequence_test2() throws Exception { BIP38PrivateKey encryptedKey = BIP38PrivateKey.fromBase58(MainNetParams.get(), "6PgGWtx25kUg8QWvwuJAgorN6k9FbE25rv5dMRwu5SKMnfpfVe5mar2ngH"); ECKey key = encryptedKey.decrypt("ΜΟΛΩΝ ΛΑΒΕ"); assertEquals("5KMKKuUmAkiNbA3DazMQiLfDq47qs8MAEThm4yL8R2PhV1ov33D", key.getPrivateKeyEncoded(MAINNET) .toString()); }
@Test public void roundTripDumpedPrivKey() throws Exception { ECKey key = new ECKey(); assertTrue(key.isCompressed()); NetworkParameters params = UnitTestParams.get(); String base58 = key.getPrivateKeyEncoded(params).toString(); ECKey key2 = DumpedPrivateKey.fromBase58(params, base58).getKey(); assertTrue(key2.isCompressed()); assertTrue(Arrays.equals(key.getPrivKeyBytes(), key2.getPrivKeyBytes())); assertTrue(Arrays.equals(key.getPubKey(), key2.getPubKey())); }
@Test public void base58Encoding_leadingZero() throws Exception { String privkey = "91axuYLa8xK796DnBXXsMbjuc8pDYxYgJyQMvFzrZ6UfXaGYuqL"; ECKey key = DumpedPrivateKey.fromBase58(TestNet3Params.get(), privkey).getKey(); assertEquals(privkey, key.getPrivateKeyEncoded(TestNet3Params.get()).toString()); assertEquals(0, key.getPrivKeyBytes()[0]); }
@Test public void base58Encoding() throws Exception { String addr = "mqAJmaxMcG5pPHHc3H3NtyXzY7kGbJLuMF"; String privkey = "92shANodC6Y4evT5kFzjNFQAdjqTtHAnDTLzqBBq4BbKUPyx6CD"; ECKey key = DumpedPrivateKey.fromBase58(TestNet3Params.get(), privkey).getKey(); assertEquals(privkey, key.getPrivateKeyEncoded(TestNet3Params.get()).toString()); assertEquals(addr, key.toAddress(TestNet3Params.get()).toString()); }