Changeset View
Changeset View
Standalone View
Standalone View
src/secp256k1/src/java/org/bitcoin/NativeSecp256k1Test.java
Show First 20 Lines • Show All 308 Lines • ▼ Show 20 Lines | public static void testSchnorrVerify() throws AssertFailException{ | ||||
boolean result = NativeSecp256k1.schnorrVerify(data, sig, pub); | boolean result = NativeSecp256k1.schnorrVerify(data, sig, pub); | ||||
String testMsg = String.join(" ", "testSchnorrVerify", String.valueOf(i++), String.valueOf(expected), test.comment); | String testMsg = String.join(" ", "testSchnorrVerify", String.valueOf(i++), String.valueOf(expected), test.comment); | ||||
assertEquals(result, expected, testMsg); | assertEquals(result, expected, testMsg); | ||||
} | } | ||||
} | } | ||||
/** | |||||
* This tests signSchnorr() for a valid secretkey | |||||
*/ | |||||
public static void testSchnorrSign() throws AssertFailException{ | |||||
//sha256(sha256("Very deterministic message")) | |||||
byte[] data = DatatypeConverter.parseHexBinary("5255683DA567900BFD3E786ED8836A4E7763C221BF1AC20ECE2A5171B9199E8A"); | |||||
byte[] sec = DatatypeConverter.parseHexBinary("12B004FFF7F4B69EF8650E767F18F11EDE158148B425660723B9F9A66E61F747"); | |||||
byte[] resultArr = NativeSecp256k1.schnorrSign(data, sec); | |||||
String sigString = DatatypeConverter.printHexBinary(resultArr); | |||||
assertEquals( sigString, "2C56731AC2F7A7E7F11518FC7722A166B02438924CA9D8B4D111347B81D0717571846DE67AD3D913A8FDF9D8F3F73161A4C48AE81CB183B214765FEB86E255CE" , "testSchnorrSign"); | |||||
} | |||||
public static void testCreateECDHSecret() throws AssertFailException{ | public static void testCreateECDHSecret() throws AssertFailException{ | ||||
byte[] sec = DatatypeConverter.parseHexBinary("67E56582298859DDAE725F972992A07C6C4FB9F62A8FFF58CE3CA926A1063530"); | byte[] sec = DatatypeConverter.parseHexBinary("67E56582298859DDAE725F972992A07C6C4FB9F62A8FFF58CE3CA926A1063530"); | ||||
byte[] pub = DatatypeConverter.parseHexBinary("040A629506E1B65CD9D2E0BA9C75DF9C4FED0DB16DC9625ED14397F0AFC836FAE595DC53F8B0EFE61E703075BD9B143BAC75EC0E19F82A2208CAEB32BE53414C40"); | byte[] pub = DatatypeConverter.parseHexBinary("040A629506E1B65CD9D2E0BA9C75DF9C4FED0DB16DC9625ED14397F0AFC836FAE595DC53F8B0EFE61E703075BD9B143BAC75EC0E19F82A2208CAEB32BE53414C40"); | ||||
byte[] resultArr = NativeSecp256k1.createECDHSecret(sec, pub); | byte[] resultArr = NativeSecp256k1.createECDHSecret(sec, pub); | ||||
String ecdhString = DatatypeConverter.printHexBinary(resultArr); | String ecdhString = DatatypeConverter.printHexBinary(resultArr); | ||||
assertEquals( ecdhString, "2A2A67007A926E6594AF3EB564FC74005B37A9C8AEF2033C4552051B5C87F043" , "testCreateECDHSecret"); | assertEquals( ecdhString, "2A2A67007A926E6594AF3EB564FC74005B37A9C8AEF2033C4552051B5C87F043" , "testCreateECDHSecret"); | ||||
Show All 35 Lines | public static void main(String[] args) throws AssertFailException{ | ||||
testPrivKeyTweakMul_2(); | testPrivKeyTweakMul_2(); | ||||
//Test randomize() | //Test randomize() | ||||
testRandomize(); | testRandomize(); | ||||
//Test verifySchnorr() success/fail | //Test verifySchnorr() success/fail | ||||
testSchnorrVerify(); | testSchnorrVerify(); | ||||
//Test schnorrSign() | |||||
testSchnorrSign(); | |||||
//Test ECDH | //Test ECDH | ||||
testCreateECDHSecret(); | testCreateECDHSecret(); | ||||
NativeSecp256k1.cleanup(); | NativeSecp256k1.cleanup(); | ||||
System.out.println(" All tests passed." ); | System.out.println(" All tests passed." ); | ||||
} | } | ||||
} | } |