diff --git a/core/src/test/java/org/bitcoinj/base/LegacyAddressTest.java b/core/src/test/java/org/bitcoinj/base/LegacyAddressTest.java index 3eb574fe9..a71469561 100644 --- a/core/src/test/java/org/bitcoinj/base/LegacyAddressTest.java +++ b/core/src/test/java/org/bitcoinj/base/LegacyAddressTest.java @@ -21,11 +21,8 @@ import nl.jqno.equalsverifier.EqualsVerifier; import nl.jqno.equalsverifier.Warning; import org.bitcoinj.base.exceptions.AddressFormatException; import org.bitcoinj.base.utils.ByteUtils; -import org.bitcoinj.crypto.DumpedPrivateKey; -import org.bitcoinj.crypto.ECKey; import org.bitcoinj.core.NetworkParameters; import org.bitcoinj.params.Networks; -import org.bitcoinj.script.Script; import org.bitcoinj.script.ScriptBuilder; import org.bitcoinj.script.ScriptPattern; import org.bitcoinj.testing.MockAltNetworkParams; @@ -228,21 +225,6 @@ public class LegacyAddressTest { assertEquals("35b9vsyH1KoFT5a5KtrKusaCcPLkiSo1tU", c.toString()); } - @Test - public void p2shScriptHashFromKeys() { - // import some keys from this example: https://gist.github.com/gavinandresen/3966071 - ECKey key1 = DumpedPrivateKey.fromBase58(MAINNET, "5JaTXbAUmfPYZFRwrYaALK48fN6sFJp4rHqq2QSXs8ucfpE4yQU").getKey(); - key1 = ECKey.fromPrivate(key1.getPrivKeyBytes()); - ECKey key2 = DumpedPrivateKey.fromBase58(MAINNET, "5Jb7fCeh1Wtm4yBBg3q3XbT6B525i17kVhy3vMC9AqfR6FH2qGk").getKey(); - key2 = ECKey.fromPrivate(key2.getPrivKeyBytes()); - ECKey key3 = DumpedPrivateKey.fromBase58(MAINNET, "5JFjmGo5Fww9p8gvx48qBYDJNAzR9pmH5S389axMtDyPT8ddqmw").getKey(); - key3 = ECKey.fromPrivate(key3.getPrivKeyBytes()); - List keys = Arrays.asList(key1, key2, key3); - Script p2shScript = ScriptBuilder.createP2SHOutputScript(2, keys); - byte[] p2shScriptHash = ScriptPattern.extractHashFromP2SH(p2shScript); - assertEquals("defdb71910720a2c854529019189228b4245eddd", ByteUtils.formatHex(p2shScriptHash)); - } - @Test public void p2shAddressFromScriptHash() { byte[] p2shScriptHash = ByteUtils.parseHex("defdb71910720a2c854529019189228b4245eddd"); diff --git a/core/src/test/java/org/bitcoinj/script/ScriptPatternTest.java b/core/src/test/java/org/bitcoinj/script/ScriptPatternTest.java index 6cbefdc39..8779398a6 100644 --- a/core/src/test/java/org/bitcoinj/script/ScriptPatternTest.java +++ b/core/src/test/java/org/bitcoinj/script/ScriptPatternTest.java @@ -19,12 +19,17 @@ package org.bitcoinj.script; import com.google.common.collect.Lists; +import org.bitcoinj.base.utils.ByteUtils; +import org.bitcoinj.crypto.DumpedPrivateKey; import org.bitcoinj.crypto.ECKey; import org.junit.Test; +import java.util.Arrays; import java.util.List; +import static org.bitcoinj.base.BitcoinNetwork.MAINNET; import static org.bitcoinj.script.ScriptOpCodes.OP_CHECKMULTISIG; +import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; @@ -92,4 +97,19 @@ public class ScriptPatternTest { ScriptBuilder.createOpReturnScript(new byte[10]) )); } + + @Test + public void p2shScriptHashFromKeys() { + // import some keys from this example: https://gist.github.com/gavinandresen/3966071 + ECKey key1 = DumpedPrivateKey.fromBase58(MAINNET, "5JaTXbAUmfPYZFRwrYaALK48fN6sFJp4rHqq2QSXs8ucfpE4yQU").getKey(); + key1 = ECKey.fromPrivate(key1.getPrivKeyBytes()); + ECKey key2 = DumpedPrivateKey.fromBase58(MAINNET, "5Jb7fCeh1Wtm4yBBg3q3XbT6B525i17kVhy3vMC9AqfR6FH2qGk").getKey(); + key2 = ECKey.fromPrivate(key2.getPrivKeyBytes()); + ECKey key3 = DumpedPrivateKey.fromBase58(MAINNET, "5JFjmGo5Fww9p8gvx48qBYDJNAzR9pmH5S389axMtDyPT8ddqmw").getKey(); + key3 = ECKey.fromPrivate(key3.getPrivKeyBytes()); + List keys = Arrays.asList(key1, key2, key3); + Script p2shScript = ScriptBuilder.createP2SHOutputScript(2, keys); + byte[] p2shScriptHash = ScriptPattern.extractHashFromP2SH(p2shScript); + assertEquals("defdb71910720a2c854529019189228b4245eddd", ByteUtils.formatHex(p2shScriptHash)); + } }