del methods

This commit is contained in:
Looly
2022-06-19 11:52:10 +08:00
parent 90a137a95b
commit 253ec671c1
16 changed files with 115 additions and 592 deletions

View File

@@ -1,6 +1,5 @@
package cn.hutool.crypto;
import cn.hutool.crypto.BCUtil;
import org.bouncycastle.crypto.params.ECPrivateKeyParameters;
import org.bouncycastle.crypto.params.ECPublicKeyParameters;
import org.junit.Assert;
@@ -9,7 +8,7 @@ import org.junit.Test;
public class BCUtilTest {
/**
* 密钥生成来自https://i.goto327.top/CryptTools/SM2.aspx?tdsourcetag=s_pctim_aiomsg
* 密钥生成来自:<a href="https://i.goto327.top/CryptTools/SM2.aspx?tdsourcetag=s_pctim_aiomsg">...</a>
*/
@Test
public void createECPublicKeyParametersTest() {

View File

@@ -1,8 +1,5 @@
package cn.hutool.crypto;
import cn.hutool.crypto.CryptoException;
import cn.hutool.crypto.GlobalBouncyCastleProvider;
import cn.hutool.crypto.KeyUtil;
import org.junit.Assert;
import org.junit.Ignore;
import org.junit.Test;

View File

@@ -3,7 +3,6 @@ package cn.hutool.crypto;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.io.resource.ResourceUtil;
import cn.hutool.core.text.StrUtil;
import cn.hutool.crypto.PemUtil;
import cn.hutool.crypto.asymmetric.KeyType;
import cn.hutool.crypto.asymmetric.RSA;
import cn.hutool.crypto.asymmetric.SM2;

View File

@@ -1,10 +1,6 @@
package cn.hutool.crypto;
import cn.hutool.core.util.CharsetUtil;
import cn.hutool.crypto.KeyUtil;
import cn.hutool.crypto.Mode;
import cn.hutool.crypto.Padding;
import cn.hutool.crypto.SmUtil;
import cn.hutool.crypto.digest.HMac;
import cn.hutool.crypto.symmetric.SM4;
import org.junit.Assert;

View File

@@ -28,7 +28,7 @@ public class SM2Test {
@Test
public void generateKeyPairTest() {
final KeyPair pair = SecureUtil.generateKeyPair("SM2");
final KeyPair pair = KeyUtil.generateKeyPair("SM2");
Assert.assertNotNull(pair.getPrivate());
Assert.assertNotNull(pair.getPublic());
}
@@ -37,14 +37,14 @@ public class SM2Test {
public void KeyPairOIDTest() {
// OBJECT IDENTIFIER 1.2.156.10197.1.301
final String OID = "06082A811CCF5501822D";
final KeyPair pair = SecureUtil.generateKeyPair("SM2");
final KeyPair pair = KeyUtil.generateKeyPair("SM2");
Assert.assertTrue(HexUtil.encodeHexStr(pair.getPrivate().getEncoded()).toUpperCase().contains(OID));
Assert.assertTrue(HexUtil.encodeHexStr(pair.getPublic().getEncoded()).toUpperCase().contains(OID));
}
@Test
public void sm2CustomKeyTest() {
final KeyPair pair = SecureUtil.generateKeyPair("SM2");
final KeyPair pair = KeyUtil.generateKeyPair("SM2");
final byte[] privateKey = pair.getPrivate().getEncoded();
final byte[] publicKey = pair.getPublic().getEncoded();
@@ -167,7 +167,7 @@ public class SM2Test {
public void sm2SignAndVerifyUseKeyTest() {
final String content = "我是Hanley.";
final KeyPair pair = SecureUtil.generateKeyPair("SM2");
final KeyPair pair = KeyUtil.generateKeyPair("SM2");
final SM2 sm2 = new SM2(pair.getPrivate(), pair.getPublic());
@@ -180,7 +180,7 @@ public class SM2Test {
public void sm2SignAndVerifyUseKeyTest2() {
final String content = "我是Hanley.";
final KeyPair pair = SecureUtil.generateKeyPair("SM2");
final KeyPair pair = KeyUtil.generateKeyPair("SM2");
final SM2 sm2 = new SM2(//
HexUtil.encodeHexStr(pair.getPrivate().getEncoded()), //
@@ -194,7 +194,7 @@ public class SM2Test {
@Test
public void sm2PublicKeyEncodeDecodeTest() {
final KeyPair pair = SecureUtil.generateKeyPair("SM2");
final KeyPair pair = KeyUtil.generateKeyPair("SM2");
final PublicKey publicKey = pair.getPublic();
final byte[] data = KeyUtil.encodeECPublicKey(publicKey);
final String encodeHex = HexUtil.encodeHexStr(data);

View File

@@ -2,7 +2,7 @@ package cn.hutool.crypto.asymmetric;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.text.StrUtil;
import cn.hutool.crypto.SecureUtil;
import cn.hutool.crypto.SignUtil;
import org.junit.Assert;
import org.junit.Test;
@@ -13,7 +13,6 @@ import java.util.Map;
* 签名单元测试
*
* @author looly
*
*/
public class SignTest {
@@ -22,13 +21,13 @@ public class SignTest {
final String content = "我是Hanley.";
final String privateKey = "MIICdQIBADANBgkqhkiG9w0BAQEFAASCAl8wggJbAgEAAoGBAJ4fG8vJ0tzu7tjXMSJhyNjlE5B7GkTKMKEQlR6LY3IhIhMFVjuA6W+DqH1VMxl9h3GIM4yCKG2VRZEYEPazgVxa5/ifO8W0pfmrzWCPrddUq4t0Slz5u2lLKymLpPjCzboHoDb8VlF+1HOxjKQckAXq9q7U7dV5VxOzJDuZXlz3AgMBAAECgYABo2LfVqT3owYYewpIR+kTzjPIsG3SPqIIWSqiWWFbYlp/BfQhw7EndZ6+Ra602ecYVwfpscOHdx90ZGJwm+WAMkKT4HiWYwyb0ZqQzRBGYDHFjPpfCBxrzSIJ3QL+B8c8YHq4HaLKRKmq7VUF1gtyWaek87rETWAmQoGjt8DyAQJBAOG4OxsT901zjfxrgKwCv6fV8wGXrNfDSViP1t9r3u6tRPsE6Gli0dfMyzxwENDTI75sOEAfyu6xBlemQGmNsfcCQQCzVWQkl9YUoVDWEitvI5MpkvVKYsFLRXKvLfyxLcY3LxpLKBcEeJ/n5wLxjH0GorhJMmM2Rw3hkjUTJCoqqe0BAkATt8FKC0N2O5ryqv1xiUfuxGzW/cX2jzOwDdiqacTuuqok93fKBPzpyhUS8YM2iss7jj6Xs29JzKMOMxK7ZcpfAkAf21lwzrAu9gEgJhYlJhKsXfjJAAYKUwnuaKLs7o65mtp242ZDWxI85eK1+hjzptBJ4HOTXsfufESFY/VBovIBAkAltO886qQRoNSc0OsVlCi4X1DGo6x2RqQ9EsWPrxWEZGYuyEdODrc54b8L+zaUJLfMJdsCIHEUbM7WXxvFVXNv";
Sign sign = SecureUtil.sign(SignAlgorithm.SHA1withRSA, privateKey, null);
Sign sign = SignUtil.sign(SignAlgorithm.SHA1withRSA, privateKey, null);
Assert.assertNull(sign.getPublicKeyBase64());
// 签名
final byte[] signed = sign.sign(content.getBytes());
final String publicKey = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCeHxvLydLc7u7Y1zEiYcjY5ROQexpEyjChEJUei2NyISITBVY7gOlvg6h9VTMZfYdxiDOMgihtlUWRGBD2s4FcWuf4nzvFtKX5q81gj63XVKuLdEpc+btpSyspi6T4ws26B6A2/FZRftRzsYykHJAF6vau1O3VeVcTsyQ7mV5c9wIDAQAB";
sign = SecureUtil.sign(SignAlgorithm.SHA1withRSA, null, publicKey);
sign = SignUtil.sign(SignAlgorithm.SHA1withRSA, null, publicKey);
// 验证签名
final boolean verify = sign.verify(content.getBytes(), signed);
Assert.assertTrue(verify);
@@ -63,7 +62,7 @@ public class SignTest {
*/
private void signAndVerify(final SignAlgorithm signAlgorithm) {
final byte[] data = StrUtil.utf8Bytes("我是一段测试ab");
final Sign sign = SecureUtil.sign(signAlgorithm);
final Sign sign = SignUtil.sign(signAlgorithm);
// 签名
final byte[] signed = sign.sign(data);
@@ -80,7 +79,7 @@ public class SignTest {
public void signAndVerifyTest2() {
final String str = "wx2421b1c4370ec43b 支付测试 JSAPI支付测试 10000100 1add1a30ac87aa2db72f57a2375d8fec http://wxpay.wxutil.com/pub_v2/pay/notify.v2.php oUpF8uMuAJO_M2pxb1Q9zNjWeS6o 1415659990 14.23.150.211 1 JSAPI 0CB01533B8C1EF103065174F50BCA001";
final byte[] data = StrUtil.utf8Bytes(str);
final Sign sign = SecureUtil.sign(SignAlgorithm.MD5withRSA);
final Sign sign = SignUtil.sign(SignAlgorithm.MD5withRSA);
// 签名
final byte[] signed = sign.sign(data);
@@ -91,16 +90,16 @@ public class SignTest {
}
@Test
public void signParamsTest(){
public void signParamsTest() {
final Map<String, String> build = MapUtil.builder(new HashMap<String, String>())
.put("key1", "value1")
.put("key2", "value2").build();
final String sign1 = SecureUtil.signParamsSha1(build);
final String sign1 = SignUtil.signParamsSha1(build);
Assert.assertEquals("9ed30bfe2efbc7038a824b6c55c24a11bfc0dce5", sign1);
final String sign2 = SecureUtil.signParamsSha1(build, "12345678");
final String sign2 = SignUtil.signParamsSha1(build, "12345678");
Assert.assertEquals("944b68d94c952ec178c4caf16b9416b6661f7720", sign2);
final String sign3 = SecureUtil.signParamsSha1(build, "12345678", "abc");
final String sign3 = SignUtil.signParamsSha1(build, "12345678", "abc");
Assert.assertEquals("edee1b477af1b96ebd20fdf08d818f352928d25d", sign3);
}
@@ -111,7 +110,7 @@ public class SignTest {
public void signAndVerifyPSSTest() {
final String str = "wx2421b1c4370ec43b 支付测试 JSAPI支付测试 10000100 1add1a30ac87aa2db72f57a2375d8fec http://wxpay.wxutil.com/pub_v2/pay/notify.v2.php oUpF8uMuAJO_M2pxb1Q9zNjWeS6o 1415659990 14.23.150.211 1 JSAPI 0CB01533B8C1EF103065174F50BCA001";
final byte[] data = StrUtil.utf8Bytes(str);
final Sign sign = SecureUtil.sign(SignAlgorithm.SHA256withRSA_PSS);
final Sign sign = SignUtil.sign(SignAlgorithm.SHA256withRSA_PSS);
// 签名
final byte[] signed = sign.sign(data);

View File

@@ -176,7 +176,7 @@ public class SymmetricTest {
public void desTest() {
final String content = "test中文";
final byte[] key = SecureUtil.generateKey(SymmetricAlgorithm.DES.getValue()).getEncoded();
final byte[] key = KeyUtil.generateKey(SymmetricAlgorithm.DES.getValue()).getEncoded();
final SymmetricCrypto des = new SymmetricCrypto(SymmetricAlgorithm.DES, key);
final byte[] encrypt = des.encrypt(content);
@@ -194,7 +194,7 @@ public class SymmetricTest {
public void desTest2() {
final String content = "test中文";
final byte[] key = SecureUtil.generateKey(SymmetricAlgorithm.DES.getValue()).getEncoded();
final byte[] key = KeyUtil.generateKey(SymmetricAlgorithm.DES.getValue()).getEncoded();
final DES des = SecureUtil.des(key);
final byte[] encrypt = des.encrypt(content);
@@ -229,7 +229,7 @@ public class SymmetricTest {
public void desdeTest() {
final String content = "test中文";
final byte[] key = SecureUtil.generateKey(SymmetricAlgorithm.DESede.getValue()).getEncoded();
final byte[] key = KeyUtil.generateKey(SymmetricAlgorithm.DESede.getValue()).getEncoded();
final DESede des = SecureUtil.desede(key);
@@ -248,7 +248,7 @@ public class SymmetricTest {
public void desdeTest2() {
final String content = "test中文";
final byte[] key = SecureUtil.generateKey(SymmetricAlgorithm.DESede.getValue()).getEncoded();
final byte[] key = KeyUtil.generateKey(SymmetricAlgorithm.DESede.getValue()).getEncoded();
final DESede des = new DESede(Mode.CBC, Padding.PKCS5Padding, key, "12345678".getBytes());