diff --git a/sa-token-core/src/main/java/cn/dev33/satoken/secure/SaSecureUtil.java b/sa-token-core/src/main/java/cn/dev33/satoken/secure/SaSecureUtil.java index f1a27a66..25e15a98 100644 --- a/sa-token-core/src/main/java/cn/dev33/satoken/secure/SaSecureUtil.java +++ b/sa-token-core/src/main/java/cn/dev33/satoken/secure/SaSecureUtil.java @@ -33,6 +33,9 @@ import cn.dev33.satoken.exception.SaTokenException; */ public class SaSecureUtil { + private SaSecureUtil() { + } + /** * Base64编码 */ diff --git a/sa-token-test/sa-token-springboot-test/src/test/java/cn/dev33/satoken/core/secure/BCryptTest.java b/sa-token-test/sa-token-springboot-test/src/test/java/cn/dev33/satoken/core/secure/BCryptTest.java index 9e18d4f6..fa6c85db 100644 --- a/sa-token-test/sa-token-springboot-test/src/test/java/cn/dev33/satoken/core/secure/BCryptTest.java +++ b/sa-token-test/sa-token-springboot-test/src/test/java/cn/dev33/satoken/core/secure/BCryptTest.java @@ -14,7 +14,7 @@ import cn.dev33.satoken.secure.BCrypt; public class BCryptTest { @Test - public void checkpwTest() { + public void testCheckpw() { final String hashed = BCrypt.hashpw("12345"); // System.out.println(hashed); Assertions.assertTrue(BCrypt.checkpw("12345", hashed)); diff --git a/sa-token-test/sa-token-springboot-test/src/test/java/cn/dev33/satoken/core/secure/SaSecureUtilTest.java b/sa-token-test/sa-token-springboot-test/src/test/java/cn/dev33/satoken/core/secure/SaSecureUtilTest.java index 42d30942..9bf681fb 100644 --- a/sa-token-test/sa-token-springboot-test/src/test/java/cn/dev33/satoken/core/secure/SaSecureUtilTest.java +++ b/sa-token-test/sa-token-springboot-test/src/test/java/cn/dev33/satoken/core/secure/SaSecureUtilTest.java @@ -1,5 +1,7 @@ package cn.dev33.satoken.core.secure; +import java.util.HashMap; + import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; @@ -63,4 +65,23 @@ public class SaSecureUtilTest { Assertions.assertEquals(text2, "Sa-Token 一个轻量级java权限认证框架"); } + @Test + public void rsaEncryptByPrivate() throws Exception { + + // 生成私钥和公钥 + HashMap map = SaSecureUtil.rsaGenerateKeyPair(); + String privateKey = map.get("private"); + String publicKey = map.get("public"); + + // 文本 + String text = "Sa-Token 一个轻量级java权限认证框架"; + + // 使用公钥加密 + String ciphertext = SaSecureUtil.rsaEncryptByPrivate(privateKey, text); + + // 使用私钥解密 + String text2 = SaSecureUtil.rsaDecryptByPublic(publicKey, ciphertext); + Assertions.assertEquals(text2, "Sa-Token 一个轻量级java权限认证框架"); + } + }