mirror of
https://gitee.com/jzsw-it/yexuejc-base.git
synced 2025-12-22 18:09:26 +08:00
- 修改DateConsts中的ISO_8601时间格式,使用XXX代替xxx以符合标准时区偏移表示 - 完善AES类注释及文档说明,明确加密模式支持情况和参数要求 - 优化AES加解密逻辑,去除不必要的数据块填充操作,直接使用原始数据进行加解密 - 增强AES异常处理机制,统一捕获并封装异常防止信息泄露 - 在AES中增加获取当前算法的方法,并完善各个getter/setter方法的注释和校验 - 重构DES3类,改进密钥长度验证逻辑,确保密钥非空且满足最低长度要求 - 改进DES3加密过程,使用SecureRandom生成随机IV并向量与加密结果合并存储 - 更新DES3解密流程,从加密数据中分离出IV用于解密,提高安全性 - 添加generateKey私有方法用于生成3DES密钥对象,集中管理密钥创建过程 - 优化DES3填充方法padding,当数据长度恰好为8的倍数时不进行多余填充 - 修订RSA类结构,将内部静态类Instace更名为Instance并调整访问权限 - 修改RSA字段为volatile类型,确保多线程环境下的可见性和一致性 - 完善RSA密钥生成方法initKeys,支持临时设置Base64URLSafe标志并在执行后恢复原值 - 优化RSA密钥文件写入方式,使用Files.writeString替代旧版方法提升性能 - 补充RSA获取公私钥方法的返回值说明和可能抛出的具体异常类型 - 改进RSA加密解密方法,支持传入base64URLSafe参数控制编码格式 - 重构RSA核心加解密逻辑encrypt/decrypt,抽取getKeyLength方法计算密钥长度 - 引入BouncyCastleProvider支持特定SHA3签名算法的RSA实现 - 增强RSA分段编解码rsaSplitCodec方法,加入最大块大小有效性检查 - 优化RSA签名verify方法,提取复合签名字符串解析逻辑至独立extractSignature方法 - 完善RSA2各类获取公私钥方法的返回值说明和详细的异常描述 - 修复RSA2中JcaPEMKeyConverter未指定Provider的问题,统一使用BouncyCastleProvider - 整体增强各加密类的安全性、健壮性和代码可维护性
1.3 KiB
1.3 KiB
yexuejc-base 基于jdk11常用工具包
源码地址:
github:https://github.com/yexuejc/yexuejc-base
gitee:https://gitee.com/jzsw-it/yexuejc-base
说明
- 支持环境:java21(1.5.0开始支持java11,请使用
1.5.x-jre11版本,1.6.0开始支持java21,请使用1.6.x-jre21版本) - 该工具包基于springboot提取,按理说适用于所有java工程
- 从
1.5.0开始,版本分为1.5.0-jre8和1.5.0-jre11和1.6.0-jre21,分别对于jre8和jre11和jre21使用(后续逐渐全面使用jre21)
使用
pom.xml
<dependencies>
<dependency>
<groupId>top.yexuejc</groupId>
<artifactId>yexuejc-base</artifactId>
<version>1.6.0-jre21</version>
</dependency>
</dependencies>
工具文档
更新日志
项目发展
本工程项目由maxf基于日常使用,从yexuejc-springboot(准备移交版本控制)中抽离开源独立发展,后续增加许多常用工具包。
使用者逐渐增多后考虑可靠性和稳定性原则,移交版本控制给成都极致思维网络科技有限公司管理,maven包直接发布到中央仓库。
开源工程项目仍然保持继续维护和欢迎更多愿意贡献的小伙伴参与。