diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/SecureUtil.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/SecureUtil.java
index 371dfe698..a558e8951 100644
--- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/SecureUtil.java
+++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/SecureUtil.java
@@ -21,8 +21,8 @@ import org.dromara.hutool.crypto.asymmetric.AsymmetricAlgorithm;
import org.dromara.hutool.crypto.asymmetric.RSA;
import org.dromara.hutool.crypto.digest.DigestAlgorithm;
import org.dromara.hutool.crypto.digest.Digester;
-import org.dromara.hutool.crypto.digest.HMac;
-import org.dromara.hutool.crypto.digest.HmacAlgorithm;
+import org.dromara.hutool.crypto.digest.mac.HMac;
+import org.dromara.hutool.crypto.digest.mac.HmacAlgorithm;
import org.dromara.hutool.crypto.digest.MD5;
import org.dromara.hutool.crypto.provider.GlobalProviderFactory;
import org.dromara.hutool.crypto.symmetric.*;
diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/bc/SmUtil.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/bc/SmUtil.java
index cf9b7ea8f..d171c93b2 100644
--- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/bc/SmUtil.java
+++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/bc/SmUtil.java
@@ -25,8 +25,8 @@ import org.dromara.hutool.core.array.ArrayUtil;
import org.dromara.hutool.core.io.IORuntimeException;
import org.dromara.hutool.crypto.CryptoException;
import org.dromara.hutool.crypto.asymmetric.SM2;
-import org.dromara.hutool.crypto.digest.HMac;
-import org.dromara.hutool.crypto.digest.HmacAlgorithm;
+import org.dromara.hutool.crypto.digest.mac.HMac;
+import org.dromara.hutool.crypto.digest.mac.HmacAlgorithm;
import org.dromara.hutool.crypto.digest.SM3;
import org.dromara.hutool.crypto.digest.mac.BCHMacEngine;
import org.dromara.hutool.crypto.digest.mac.MacEngine;
diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/DigestUtil.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/DigestUtil.java
index d2d57e155..ad0535d1d 100644
--- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/DigestUtil.java
+++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/DigestUtil.java
@@ -13,6 +13,8 @@
package org.dromara.hutool.crypto.digest;
import org.dromara.hutool.core.util.CharsetUtil;
+import org.dromara.hutool.crypto.digest.mac.HMac;
+import org.dromara.hutool.crypto.digest.mac.HmacAlgorithm;
import javax.crypto.SecretKey;
import java.io.File;
@@ -26,7 +28,7 @@ import java.nio.charset.Charset;
*/
public class DigestUtil {
- // ------------------------------------------------------------------------------------------- MD5
+ // region ----- MD5
/**
* 计算32位MD5摘要值
@@ -131,7 +133,9 @@ public class DigestUtil {
return new MD5().digestHex(file);
}
- // ------------------------------------------------------------------------------------------- MD5 16
+ // endregion
+
+ // region ----- MD5 16
/**
* 计算16位MD5摘要值,并转为16进制字符串
@@ -200,7 +204,9 @@ public class DigestUtil {
return md5Hex.substring(8, 24);
}
- // ------------------------------------------------------------------------------------------- SHA-1
+ // endregion
+
+ // region ----- SHA-1
/**
* 计算SHA-1摘要值
@@ -209,7 +215,7 @@ public class DigestUtil {
* @return SHA-1摘要
*/
public static byte[] sha1(final byte[] data) {
- return new Digester(DigestAlgorithm.SHA1).digest(data);
+ return digester(DigestAlgorithm.SHA1).digest(data);
}
/**
@@ -220,7 +226,7 @@ public class DigestUtil {
* @return SHA-1摘要
*/
public static byte[] sha1(final String data, final Charset charset) {
- return new Digester(DigestAlgorithm.SHA1).digest(data, charset);
+ return digester(DigestAlgorithm.SHA1).digest(data, charset);
}
/**
@@ -240,7 +246,7 @@ public class DigestUtil {
* @return SHA-1摘要
*/
public static byte[] sha1(final InputStream data) {
- return new Digester(DigestAlgorithm.SHA1).digest(data);
+ return digester(DigestAlgorithm.SHA1).digest(data);
}
/**
@@ -250,7 +256,7 @@ public class DigestUtil {
* @return SHA-1摘要
*/
public static byte[] sha1(final File file) {
- return new Digester(DigestAlgorithm.SHA1).digest(file);
+ return digester(DigestAlgorithm.SHA1).digest(file);
}
/**
@@ -260,7 +266,7 @@ public class DigestUtil {
* @return SHA-1摘要的16进制表示
*/
public static String sha1Hex(final byte[] data) {
- return new Digester(DigestAlgorithm.SHA1).digestHex(data);
+ return digester(DigestAlgorithm.SHA1).digestHex(data);
}
/**
@@ -271,7 +277,7 @@ public class DigestUtil {
* @return SHA-1摘要的16进制表示
*/
public static String sha1Hex(final String data, final Charset charset) {
- return new Digester(DigestAlgorithm.SHA1).digestHex(data, charset);
+ return digester(DigestAlgorithm.SHA1).digestHex(data, charset);
}
/**
@@ -291,7 +297,7 @@ public class DigestUtil {
* @return SHA-1摘要的16进制表示
*/
public static String sha1Hex(final InputStream data) {
- return new Digester(DigestAlgorithm.SHA1).digestHex(data);
+ return digester(DigestAlgorithm.SHA1).digestHex(data);
}
/**
@@ -301,10 +307,12 @@ public class DigestUtil {
* @return SHA-1摘要的16进制表示
*/
public static String sha1Hex(final File file) {
- return new Digester(DigestAlgorithm.SHA1).digestHex(file);
+ return digester(DigestAlgorithm.SHA1).digestHex(file);
}
- // ------------------------------------------------------------------------------------------- SHA-256
+ // endregion
+
+ // region ----- SHA-256
/**
* 计算SHA-256摘要值
@@ -314,7 +322,7 @@ public class DigestUtil {
* @since 3.0.8
*/
public static byte[] sha256(final byte[] data) {
- return new Digester(DigestAlgorithm.SHA256).digest(data);
+ return digester(DigestAlgorithm.SHA256).digest(data);
}
/**
@@ -336,7 +344,7 @@ public class DigestUtil {
* @return SHA-256摘要
*/
public static byte[] sha256(final String data, final Charset charset) {
- return new Digester(DigestAlgorithm.SHA256).digest(data, charset);
+ return digester(DigestAlgorithm.SHA256).digest(data, charset);
}
/**
@@ -347,7 +355,7 @@ public class DigestUtil {
* @since 3.0.8
*/
public static byte[] sha256(final InputStream data) {
- return new Digester(DigestAlgorithm.SHA256).digest(data);
+ return digester(DigestAlgorithm.SHA256).digest(data);
}
/**
@@ -358,7 +366,7 @@ public class DigestUtil {
* @since 3.0.8
*/
public static byte[] sha256(final File file) {
- return new Digester(DigestAlgorithm.SHA256).digest(file);
+ return digester(DigestAlgorithm.SHA256).digest(file);
}
/**
@@ -369,7 +377,7 @@ public class DigestUtil {
* @since 3.0.8
*/
public static String sha256Hex(final byte[] data) {
- return new Digester(DigestAlgorithm.SHA256).digestHex(data);
+ return digester(DigestAlgorithm.SHA256).digestHex(data);
}
/**
@@ -381,7 +389,7 @@ public class DigestUtil {
* @since 3.0.8
*/
public static String sha256Hex(final String data, final Charset charset) {
- return new Digester(DigestAlgorithm.SHA256).digestHex(data, charset);
+ return digester(DigestAlgorithm.SHA256).digestHex(data, charset);
}
/**
@@ -403,7 +411,7 @@ public class DigestUtil {
* @since 3.0.8
*/
public static String sha256Hex(final InputStream data) {
- return new Digester(DigestAlgorithm.SHA256).digestHex(data);
+ return digester(DigestAlgorithm.SHA256).digestHex(data);
}
/**
@@ -414,10 +422,12 @@ public class DigestUtil {
* @since 3.0.8
*/
public static String sha256Hex(final File file) {
- return new Digester(DigestAlgorithm.SHA256).digestHex(file);
+ return digester(DigestAlgorithm.SHA256).digestHex(file);
}
- // ------------------------------------------------------------------------------------------- SHA-512
+ // endregion
+
+ // region ----- SHA-512
/**
* 计算SHA-512摘要值
@@ -426,7 +436,7 @@ public class DigestUtil {
* @return SHA-512摘要
*/
public static byte[] sha512(final byte[] data) {
- return new Digester(DigestAlgorithm.SHA512).digest(data);
+ return digester(DigestAlgorithm.SHA512).digest(data);
}
/**
@@ -438,7 +448,7 @@ public class DigestUtil {
* @since 3.0.8
*/
public static byte[] sha512(final String data, final Charset charset) {
- return new Digester(DigestAlgorithm.SHA512).digest(data, charset);
+ return digester(DigestAlgorithm.SHA512).digest(data, charset);
}
/**
@@ -458,7 +468,7 @@ public class DigestUtil {
* @return SHA-512摘要
*/
public static byte[] sha512(final InputStream data) {
- return new Digester(DigestAlgorithm.SHA512).digest(data);
+ return digester(DigestAlgorithm.SHA512).digest(data);
}
/**
@@ -468,7 +478,7 @@ public class DigestUtil {
* @return SHA-512摘要
*/
public static byte[] sha512(final File file) {
- return new Digester(DigestAlgorithm.SHA512).digest(file);
+ return digester(DigestAlgorithm.SHA512).digest(file);
}
/**
@@ -478,7 +488,7 @@ public class DigestUtil {
* @return SHA-512摘要的16进制表示
*/
public static String sha512Hex(final byte[] data) {
- return new Digester(DigestAlgorithm.SHA512).digestHex(data);
+ return digester(DigestAlgorithm.SHA512).digestHex(data);
}
/**
@@ -489,7 +499,7 @@ public class DigestUtil {
* @return SHA-512摘要的16进制表示
*/
public static String sha512Hex(final String data, final Charset charset) {
- return new Digester(DigestAlgorithm.SHA512).digestHex(data, charset);
+ return digester(DigestAlgorithm.SHA512).digestHex(data, charset);
}
/**
@@ -509,7 +519,7 @@ public class DigestUtil {
* @return SHA-512摘要的16进制表示
*/
public static String sha512Hex(final InputStream data) {
- return new Digester(DigestAlgorithm.SHA512).digestHex(data);
+ return digester(DigestAlgorithm.SHA512).digestHex(data);
}
/**
@@ -519,10 +529,12 @@ public class DigestUtil {
* @return SHA-512摘要的16进制表示
*/
public static String sha512Hex(final File file) {
- return new Digester(DigestAlgorithm.SHA512).digestHex(file);
+ return digester(DigestAlgorithm.SHA512).digestHex(file);
}
- // ------------------------------------------------------------------------------------------- Hmac
+ // endregion
+
+ // region ----- Hmac
/**
* 创建HMac对象,调用digest方法可获得hmac值
@@ -548,6 +560,8 @@ public class DigestUtil {
return new HMac(algorithm, key);
}
+ // endregion
+
/**
* 新建摘要器
*
diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/SM3.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/SM3.java
index f27e7a166..4a8642139 100644
--- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/SM3.java
+++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/SM3.java
@@ -29,6 +29,9 @@ package org.dromara.hutool.crypto.digest;
public class SM3 extends Digester {
private static final long serialVersionUID = 1L;
+ /**
+ * 算法名称:SM3
+ */
public static final String ALGORITHM_NAME = "SM3";
/**
diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/DefaultHMacEngine.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/DefaultHMacEngine.java
index 7a892d014..f1a621e07 100644
--- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/DefaultHMacEngine.java
+++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/DefaultHMacEngine.java
@@ -33,7 +33,7 @@ public class DefaultHMacEngine implements MacEngine {
private Mac mac;
- // ------------------------------------------------------------------------------------------- Constructor start
+ // region ----- Constructor
/**
* 构造
@@ -62,13 +62,15 @@ public class DefaultHMacEngine implements MacEngine {
*
* @param algorithm 算法
* @param key 密钥
- * @param spec {@link AlgorithmParameterSpec}
+ * @param spec {@link AlgorithmParameterSpec}
* @since 5.7.12
*/
public DefaultHMacEngine(final String algorithm, final Key key, final AlgorithmParameterSpec spec) {
init(algorithm, key, spec);
}
- // ------------------------------------------------------------------------------------------- Constructor end
+ // endregion
+
+ // region ----- init
/**
* 初始化
@@ -119,6 +121,7 @@ public class DefaultHMacEngine implements MacEngine {
}
return this;
}
+ // endregion
/**
* 获得 {@link Mac}
diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/HMac.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/HMac.java
similarity index 93%
rename from hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/HMac.java
rename to hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/HMac.java
index cc61aa0e3..c4773842d 100644
--- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/HMac.java
+++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/HMac.java
@@ -10,11 +10,7 @@
* See the Mulan PSL v2 for more details.
*/
-package org.dromara.hutool.crypto.digest;
-
-import org.dromara.hutool.crypto.digest.mac.Mac;
-import org.dromara.hutool.crypto.digest.mac.MacEngine;
-import org.dromara.hutool.crypto.digest.mac.MacEngineFactory;
+package org.dromara.hutool.crypto.digest.mac;
import javax.crypto.spec.SecretKeySpec;
import java.security.Key;
diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/HmacAlgorithm.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/HmacAlgorithm.java
similarity index 73%
rename from hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/HmacAlgorithm.java
rename to hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/HmacAlgorithm.java
index bbac12435..4ddedf09e 100644
--- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/HmacAlgorithm.java
+++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/HmacAlgorithm.java
@@ -10,7 +10,7 @@
* See the Mulan PSL v2 for more details.
*/
-package org.dromara.hutool.crypto.digest;
+package org.dromara.hutool.crypto.digest.mac;
/**
* HMAC算法类型
@@ -19,14 +19,33 @@ package org.dromara.hutool.crypto.digest;
* @author Looly
*/
public enum HmacAlgorithm {
+ /**
+ * HmacMD5
+ */
HmacMD5("HmacMD5"),
+ /**
+ * HmacSHA1
+ */
HmacSHA1("HmacSHA1"),
+ /**
+ * HmacSHA256
+ */
HmacSHA256("HmacSHA256"),
+ /**
+ * HmacSHA384
+ */
HmacSHA384("HmacSHA384"),
+ /**
+ * HmacSHA512
+ */
HmacSHA512("HmacSHA512"),
- /** HmacSM3算法实现,需要BouncyCastle库支持 */
+ /**
+ * HmacSM3算法实现,需要BouncyCastle库支持
+ */
HmacSM3("HmacSM3"),
- /** SM4 CMAC模式实现,需要BouncyCastle库支持 */
+ /**
+ * SM4 CMAC模式实现,需要BouncyCastle库支持
+ */
SM4CMAC("SM4CMAC");
private final String value;
@@ -35,6 +54,11 @@ public enum HmacAlgorithm {
this.value = value;
}
+ /**
+ * 获取算法名称值
+ *
+ * @return 算法名称值
+ */
public String getValue() {
return this.value;
}
diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/MacEngineFactory.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/MacEngineFactory.java
index 3608f9c6d..3d1284089 100644
--- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/MacEngineFactory.java
+++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/MacEngineFactory.java
@@ -13,13 +13,12 @@
package org.dromara.hutool.crypto.digest.mac;
import org.dromara.hutool.crypto.bc.SmUtil;
-import org.dromara.hutool.crypto.digest.HmacAlgorithm;
import java.security.Key;
import java.security.spec.AlgorithmParameterSpec;
/**
- * {@link MacEngine} 实现工厂类
+ * {@link MacEngine} 简单工厂类
*
* @author Looly
* @since 4.5.13
diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/package-info.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/package-info.java
index 70d68d218..9b441f8a5 100644
--- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/package-info.java
+++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/mac/package-info.java
@@ -11,10 +11,16 @@
*/
/**
+ *
+ * MAC,全称为“Message Authentication Code”,中文名“消息鉴别码”。 + *
+ * + *
* HMAC,全称为“Hash Message Authentication Code”,中文名“散列消息鉴别码”
* 主要是利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。
* 一般的,消息鉴别码用于验证传输于两个共 同享有一个密钥的单位之间的消息。
- * HMAC 可以与任何迭代散列函数捆绑使用。MD5 和 SHA-1 就是这种散列函数。HMAC 还可以使用一个用于计算和确认消息鉴别值的密钥。
+ * HMAC 可以与任何迭代散列函数捆绑使用。MD5 和 SHA-1 就是这种散列函数。HMAC 还可以使用一个用于计算和确认消息鉴别值的密钥。
+ *
HMAC-based one-time passwords (HOTP) 基于HMAC算法一次性密码生成器, diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/otp/TOTP.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/otp/TOTP.java index 90870afea..be2045ad0 100644 --- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/otp/TOTP.java +++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/otp/TOTP.java @@ -13,7 +13,7 @@ package org.dromara.hutool.crypto.digest.otp; import org.dromara.hutool.core.text.StrUtil; -import org.dromara.hutool.crypto.digest.HmacAlgorithm; +import org.dromara.hutool.crypto.digest.mac.HmacAlgorithm; import java.time.Duration; import java.time.Instant; diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/symmetric/SymmetricCrypto.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/symmetric/SymmetricCrypto.java index 4a0dbd2a4..f9ae4564a 100644 --- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/symmetric/SymmetricCrypto.java +++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/symmetric/SymmetricCrypto.java @@ -12,20 +12,15 @@ package org.dromara.hutool.crypto.symmetric; +import org.dromara.hutool.core.array.ArrayUtil; +import org.dromara.hutool.core.codec.HexUtil; import org.dromara.hutool.core.io.IORuntimeException; import org.dromara.hutool.core.io.IoUtil; import org.dromara.hutool.core.lang.Assert; -import org.dromara.hutool.core.lang.Console; import org.dromara.hutool.core.lang.Opt; -import org.dromara.hutool.core.array.ArrayUtil; -import org.dromara.hutool.core.codec.HexUtil; -import org.dromara.hutool.core.util.RandomUtil; import org.dromara.hutool.core.text.StrUtil; -import org.dromara.hutool.crypto.CipherMode; -import org.dromara.hutool.crypto.CipherWrapper; -import org.dromara.hutool.crypto.CryptoException; -import org.dromara.hutool.crypto.KeyUtil; -import org.dromara.hutool.crypto.Padding; +import org.dromara.hutool.core.util.RandomUtil; +import org.dromara.hutool.crypto.*; import javax.crypto.Cipher; import javax.crypto.CipherInputStream; @@ -33,7 +28,10 @@ import javax.crypto.CipherOutputStream; import javax.crypto.SecretKey; import javax.crypto.spec.IvParameterSpec; import javax.crypto.spec.PBEParameterSpec; -import java.io.*; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.io.Serializable; import java.security.InvalidAlgorithmParameterException; import java.security.InvalidKeyException; import java.security.SecureRandom; diff --git a/hutool-crypto/src/test/java/org/dromara/hutool/crypto/bc/SmTest.java b/hutool-crypto/src/test/java/org/dromara/hutool/crypto/bc/SmTest.java index 315e6f1d6..e96c607e6 100644 --- a/hutool-crypto/src/test/java/org/dromara/hutool/crypto/bc/SmTest.java +++ b/hutool-crypto/src/test/java/org/dromara/hutool/crypto/bc/SmTest.java @@ -16,8 +16,7 @@ import org.dromara.hutool.core.util.CharsetUtil; import org.dromara.hutool.crypto.KeyUtil; import org.dromara.hutool.crypto.Mode; import org.dromara.hutool.crypto.Padding; -import org.dromara.hutool.crypto.bc.SmUtil; -import org.dromara.hutool.crypto.digest.HMac; +import org.dromara.hutool.crypto.digest.mac.HMac; import org.dromara.hutool.crypto.symmetric.SM4; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; diff --git a/hutool-crypto/src/test/java/org/dromara/hutool/crypto/digest/HmacTest.java b/hutool-crypto/src/test/java/org/dromara/hutool/crypto/digest/HmacTest.java index 3e26fcb53..20858dfd6 100644 --- a/hutool-crypto/src/test/java/org/dromara/hutool/crypto/digest/HmacTest.java +++ b/hutool-crypto/src/test/java/org/dromara/hutool/crypto/digest/HmacTest.java @@ -4,6 +4,8 @@ import org.dromara.hutool.core.io.IoUtil; import org.dromara.hutool.core.util.CharsetUtil; import org.dromara.hutool.crypto.KeyUtil; import org.dromara.hutool.crypto.SecureUtil; +import org.dromara.hutool.crypto.digest.mac.HMac; +import org.dromara.hutool.crypto.digest.mac.HmacAlgorithm; import org.dromara.hutool.crypto.symmetric.ZUC; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; diff --git a/hutool-crypto/src/test/java/org/dromara/hutool/crypto/digest/OTPTest.java b/hutool-crypto/src/test/java/org/dromara/hutool/crypto/digest/OTPTest.java index f56daf1b0..2dc539be4 100644 --- a/hutool-crypto/src/test/java/org/dromara/hutool/crypto/digest/OTPTest.java +++ b/hutool-crypto/src/test/java/org/dromara/hutool/crypto/digest/OTPTest.java @@ -1,6 +1,7 @@ package org.dromara.hutool.crypto.digest; import org.dromara.hutool.core.codec.binary.Base32; +import org.dromara.hutool.crypto.digest.mac.HmacAlgorithm; import org.dromara.hutool.crypto.digest.otp.HOTP; import org.dromara.hutool.crypto.digest.otp.TOTP; import org.junit.jupiter.api.Assertions; diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/jwt/signers/AlgorithmUtil.java b/hutool-json/src/main/java/org/dromara/hutool/json/jwt/signers/AlgorithmUtil.java index 0b6666bcd..5b2d0684a 100644 --- a/hutool-json/src/main/java/org/dromara/hutool/json/jwt/signers/AlgorithmUtil.java +++ b/hutool-json/src/main/java/org/dromara/hutool/json/jwt/signers/AlgorithmUtil.java @@ -15,7 +15,7 @@ package org.dromara.hutool.json.jwt.signers; import org.dromara.hutool.core.map.BiMap; import org.dromara.hutool.core.util.ObjUtil; import org.dromara.hutool.crypto.asymmetric.SignAlgorithm; -import org.dromara.hutool.crypto.digest.HmacAlgorithm; +import org.dromara.hutool.crypto.digest.mac.HmacAlgorithm; import java.util.HashMap; diff --git a/hutool-json/src/main/java/org/dromara/hutool/json/jwt/signers/HMacJWTSigner.java b/hutool-json/src/main/java/org/dromara/hutool/json/jwt/signers/HMacJWTSigner.java index 05ba75c9f..365850b2e 100644 --- a/hutool-json/src/main/java/org/dromara/hutool/json/jwt/signers/HMacJWTSigner.java +++ b/hutool-json/src/main/java/org/dromara/hutool/json/jwt/signers/HMacJWTSigner.java @@ -15,7 +15,7 @@ package org.dromara.hutool.json.jwt.signers; import org.dromara.hutool.core.text.StrUtil; import org.dromara.hutool.core.util.ByteUtil; import org.dromara.hutool.core.util.CharsetUtil; -import org.dromara.hutool.crypto.digest.HMac; +import org.dromara.hutool.crypto.digest.mac.HMac; import java.nio.charset.Charset; import java.security.Key;