mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2025-11-10 14:27:29 +01:00
add signString method
This commit is contained in:
@@ -120,4 +120,20 @@ class CryptoUtilsTest {
|
|||||||
|
|
||||||
assertEquals(msg, decrypted)
|
assertEquals(msg, decrypted)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun signString() {
|
||||||
|
val random = "319cc5596fdd6cd767e5a59d976e8e059c61306af90dff1e6ee1067b3a1fdbc0".hexToByteArray()
|
||||||
|
val message = "8e58c8251bb406b6ded69e9eb14f55282a9a53bdab16fc49a3218c2ad3abc887".hexToByteArray()
|
||||||
|
val keyPair = KeyPair("a5ab474552c8f9c46c2eda5a0b68f27430ad81f96cb405e0cb4e34bf0c6494a2".hexToByteArray())
|
||||||
|
|
||||||
|
val signedMessage = CryptoUtils.sign(message, keyPair.privKey!!, random).toHexKey()
|
||||||
|
val expectedValue = "0f9be7e01ba53d5ee6874b9180c7956269fda7a5be424634c3d17b5cfcea6da001be89183876415ba08b7dafa6cff4555e393dc228fb8769b384344e9a27b77c"
|
||||||
|
assertEquals(expectedValue, signedMessage)
|
||||||
|
|
||||||
|
val message2 = "Hello"
|
||||||
|
val signedMessage2 = CryptoUtils.signString(message2, keyPair.privKey!!, random).toHexKey()
|
||||||
|
val expectedValue2 = "7ec8194a585bfb513564113b6b7bfeaafa0254c99d24eaf92280657c2291bab908b1b7bc553c83276a0254aef5041bbe6a50e93381edc4de3d859efa1c3a5a1e"
|
||||||
|
assertEquals(expectedValue2, signedMessage2)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -64,10 +64,19 @@ object CryptoUtils {
|
|||||||
return secp256k1.secKeyVerify(il)
|
return secp256k1.secKeyVerify(il)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun signString(
|
||||||
|
message: String,
|
||||||
|
privKey: ByteArray,
|
||||||
|
auxrand32: ByteArray = random(32),
|
||||||
|
): ByteArray {
|
||||||
|
return sign(sha256(message.toByteArray()), privKey, auxrand32)
|
||||||
|
}
|
||||||
|
|
||||||
fun sign(
|
fun sign(
|
||||||
data: ByteArray,
|
data: ByteArray,
|
||||||
privKey: ByteArray,
|
privKey: ByteArray,
|
||||||
): ByteArray = secp256k1.signSchnorr(data, privKey, null)
|
auxrand32: ByteArray? = null,
|
||||||
|
): ByteArray = secp256k1.signSchnorr(data, privKey, auxrand32)
|
||||||
|
|
||||||
fun verifySignature(
|
fun verifySignature(
|
||||||
signature: ByteArray,
|
signature: ByteArray,
|
||||||
|
|||||||
Reference in New Issue
Block a user