diff --git a/hutool-crypto/src/test/java/cn/hutool/crypto/test/KeyUtilTest.java b/hutool-crypto/src/test/java/cn/hutool/crypto/test/KeyUtilTest.java index b75c05611..2cd71e794 100644 --- a/hutool-crypto/src/test/java/cn/hutool/crypto/test/KeyUtilTest.java +++ b/hutool-crypto/src/test/java/cn/hutool/crypto/test/KeyUtilTest.java @@ -46,4 +46,16 @@ public class KeyUtilTest { final PrivateKey privateKey = KeyUtil.generatePrivateKey("EC", privateKeyBytes); Assert.assertEquals(ecies.getPrivate(), privateKey); } + + @Test + public void generateDHTest(){ + final KeyPair dh = KeyUtil.generateKeyPair("DH"); + Assert.assertNotNull(dh.getPrivate()); + Assert.assertNotNull(dh.getPublic()); + + byte[] privateKeyBytes = dh.getPrivate().getEncoded(); + + final PrivateKey privateKey = KeyUtil.generatePrivateKey("DH", privateKeyBytes); + Assert.assertEquals(dh.getPrivate(), privateKey); + } } diff --git a/hutool-crypto/src/test/java/cn/hutool/crypto/test/asymmetric/SM2Test.java b/hutool-crypto/src/test/java/cn/hutool/crypto/test/asymmetric/SM2Test.java index f09583c4f..ffb5e1dbc 100644 --- a/hutool-crypto/src/test/java/cn/hutool/crypto/test/asymmetric/SM2Test.java +++ b/hutool-crypto/src/test/java/cn/hutool/crypto/test/asymmetric/SM2Test.java @@ -1,23 +1,18 @@ package cn.hutool.crypto.test.asymmetric; import cn.hutool.core.codec.Base64; -import cn.hutool.core.io.resource.ResourceUtil; import cn.hutool.core.util.CharsetUtil; import cn.hutool.core.util.HexUtil; import cn.hutool.core.util.StrUtil; -import cn.hutool.crypto.ASN1Util; import cn.hutool.crypto.ECKeyUtil; import cn.hutool.crypto.KeyUtil; import cn.hutool.crypto.SecureUtil; import cn.hutool.crypto.SmUtil; import cn.hutool.crypto.asymmetric.KeyType; import cn.hutool.crypto.asymmetric.SM2; -import org.bouncycastle.asn1.ASN1Integer; -import org.bouncycastle.asn1.ASN1Sequence; import org.bouncycastle.crypto.engines.SM2Engine; import org.bouncycastle.crypto.params.ECPrivateKeyParameters; import org.bouncycastle.jcajce.spec.OpenSSHPrivateKeySpec; -import org.bouncycastle.math.ec.ECPoint; import org.junit.Assert; import org.junit.Test; @@ -316,14 +311,4 @@ public class SM2Test { byte[] dec = sm2.decrypt(data, KeyType.PrivateKey); Assert.assertArrayEquals(dec, src.getBytes(StandardCharsets.UTF_8)); } - - @Test - public void asn1DecryptTest(){ - final SM2 sm2 = SmUtil.sm2("00dc7651c8473110a83215bfd26f37e306b2b99b02da9a4af9b9bd12e6360849bd", null); - final ASN1Sequence asn1 = (ASN1Sequence) ASN1Util.decode(ResourceUtil.getStream("asn1.key")); - - ASN1Integer x = (ASN1Integer) asn1.getObjectAt(0); - ASN1Integer y = (ASN1Integer) asn1.getObjectAt(1); - final ECPoint point = SmUtil.SM2_DOMAIN_PARAMS.getCurve().createPoint(x.getValue(), y.getValue()); - } }