[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-wallet-kotlin] branch master updated: Add more elliptic curve tes
From: |
gnunet |
Subject: |
[taler-wallet-kotlin] branch master updated: Add more elliptic curve test vectors from gnunet-crypto-tgv utility |
Date: |
Thu, 04 Jun 2020 13:35:30 +0200 |
This is an automated email from the git hooks/post-receive script.
torsten-grote pushed a commit to branch master
in repository wallet-kotlin.
The following commit(s) were added to refs/heads/master by this push:
new e5b3450 Add more elliptic curve test vectors from gnunet-crypto-tgv
utility
e5b3450 is described below
commit e5b34507fb0af1932bc7d17df61146ea13173ca1
Author: Torsten Grote <t@grobox.de>
AuthorDate: Thu Jun 4 08:31:37 2020 -0300
Add more elliptic curve test vectors from gnunet-crypto-tgv utility
---
.../wallet/kotlin/crypto/EllipticCurveTest.kt | 44 ++++++++++++++++++++++
1 file changed, 44 insertions(+)
diff --git
a/src/commonTest/kotlin/net/taler/wallet/kotlin/crypto/EllipticCurveTest.kt
b/src/commonTest/kotlin/net/taler/wallet/kotlin/crypto/EllipticCurveTest.kt
index c74d9ff..e8fd301 100644
--- a/src/commonTest/kotlin/net/taler/wallet/kotlin/crypto/EllipticCurveTest.kt
+++ b/src/commonTest/kotlin/net/taler/wallet/kotlin/crypto/EllipticCurveTest.kt
@@ -17,6 +17,11 @@ class EllipticCurveTest {
val pub = "8GSJZ649T2PXMKZC01Y4ANNBE7MF14QVK9SQEC4E46ZHKCVG8AS0"
val pubBytes = crypto.eddsaGetPublic(Base32Crockford.decode(pri))
assertEquals(pub, Base32Crockford.encode(pubBytes))
+
+ val pri2 = "C9C5X5JS2SWRTSX5AQBPFA4S2DFD6V9Q04XTTEZDQ5XSSQK2P39G"
+ val pub2 = "6WC3MPYM5XKPKRA2Z6SYB81CPFV3E7EC6S2GVE095X8XH63QTZCG"
+ val pub2Bytes = crypto.eddsaGetPublic(Base32Crockford.decode(pri2))
+ assertEquals(pub2, Base32Crockford.encode(pub2Bytes))
}
@Test
@@ -25,6 +30,11 @@ class EllipticCurveTest {
val pub = "M997P494MS6A95G1P0QYWW2VNPSHSX5Q6JBY5B9YMNYWP0B50X3G"
val pubBytes = crypto.ecdheGetPublic(Base32Crockford.decode(pri))
assertEquals(pub, Base32Crockford.encode(pubBytes))
+
+ val pri2 = "MB8ZSQFTVPX4V0MGT3BA1PQS12NJ7KH33DA8D22NCWTNA5BHH2YG"
+ val pub2 = "8T2CN1W8G3XZE9C9158A5ASS74117GK1XQ1XAX5SGBFDGHS8H5W0"
+ val pub2Bytes = crypto.ecdheGetPublic(Base32Crockford.decode(pri2))
+ assertEquals(pub2, Base32Crockford.encode(pub2Bytes))
}
@Test
@@ -64,6 +74,16 @@ class EllipticCurveTest {
val wrongMsg = Random.nextBytes(16)
assertFalse(crypto.eddsaVerify(wrongMsg, sig, pub))
+
+ val pri2 = "T4NK2VVZZ1ZF6EBGEQHRK7KY67PCEVAZC5YHYH612XG5R6NJXSB0"
+ val pub2 = "2X3PSPT7D6TEM97R98C0DHZREFVAVA3XTH11D5A2Z2K7GBKQ7AEG"
+ val data2 =
+
"00000J00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
+ val expectedSig2 =
+
"RFC59ZWJB88TD03F4GTQD3RWKH3KKRVEY2T1VN7CFEF51SCZ4BX8HGHC708GW1SN7Y4XFEDE3A5PFZEJ7PR7V09YZXX10DM608T1W20"
+ val sig2 = crypto.eddsaSign(Base32Crockford.decode(data2),
Base32Crockford.decode(pri2))
+ assertEquals(expectedSig2, Base32Crockford.encode(sig2))
+ assertTrue(crypto.eddsaVerify(Base32Crockford.decode(data2), sig2,
Base32Crockford.decode(pub2)))
}
@Test
@@ -91,6 +111,30 @@ class EllipticCurveTest {
Base32Crockford.decode(eddsaPublicKey)
)
assertEquals(keyMaterial, Base32Crockford.encode(keyMaterial2Bytes))
+
+ val ecdhePrivateKey2 =
"3AMRJ1KC87VWX9MVQMW8MB9YVX5DMS6P5V2SYZNCZ44XVMSDVEFG"
+ val ecdhePublicKey2 =
"CFFVCRFTNP7701KZC7187BC42MGSVCMBWK38F23E7T9VVK9D41Q0"
+ val ecdhePublicKeyBytes2 =
crypto.ecdheGetPublic(Base32Crockford.decode(ecdhePrivateKey2))
+ assertEquals(ecdhePublicKey2,
Base32Crockford.encode(ecdhePublicKeyBytes2))
+
+ val eddsaPrivateKey2 =
"8AZTVPCXNCVBKJVQ6XS7Z38KB9JB38WJ7Z80F9FTCX1WHZACTXJ0"
+ val eddsaPublicKey2 =
"T3F1VYAVZX3DVCNJTB3BNQTRZGXN446QP2VD847CB6N5V75RT2B0"
+ val eddsaPublicKeyBytes2 =
crypto.eddsaGetPublic(Base32Crockford.decode(eddsaPrivateKey2))
+ assertEquals(eddsaPublicKey2,
Base32Crockford.encode(eddsaPublicKeyBytes2))
+
+ val keyMaterial2 =
+
"FPQSHC6MWWJGEPXXVF76Q8C4PBJFE59RSGRGFQ3Z6ESR67HMG7FAK6JTCQ4ZKHSVNNCF53DX8FY55EA2193N2A6KD510AEV5TBVZRJR"
+ val keyMaterial1Bytes2 = crypto.keyExchangeEddsaEcdhe(
+ Base32Crockford.decode(eddsaPrivateKey2),
+ Base32Crockford.decode(ecdhePublicKey2)
+ )
+ assertEquals(keyMaterial2, Base32Crockford.encode(keyMaterial1Bytes2))
+
+ val keyMaterial2Bytes2 = crypto.keyExchangeEcdheEddsa(
+ Base32Crockford.decode(ecdhePrivateKey2),
+ Base32Crockford.decode(eddsaPublicKey2)
+ )
+ assertEquals(keyMaterial2, Base32Crockford.encode(keyMaterial2Bytes2))
}
}
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [taler-wallet-kotlin] branch master updated: Add more elliptic curve test vectors from gnunet-crypto-tgv utility,
gnunet <=