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 还可以使用一个用于计算和确认消息鉴别值的密钥。 + *

* * @author Looly * @since 4.5.13 diff --git a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/otp/HOTP.java b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/otp/HOTP.java index 4a71fd3c2..d191cf3ac 100644 --- a/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/otp/HOTP.java +++ b/hutool-crypto/src/main/java/org/dromara/hutool/crypto/digest/otp/HOTP.java @@ -14,8 +14,8 @@ package org.dromara.hutool.crypto.digest.otp; import org.dromara.hutool.core.codec.binary.Base32; import org.dromara.hutool.core.util.RandomUtil; -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; /** *

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;