Browse Source

修改了密码接口平台的相关逻辑

dev-V1.10.4
vincent 18 hours ago
parent
commit
8625e39893
  1. 4
      zdxt-modules/zdxt-system/src/main/java/org/dromara/system/controller/system/CryptoSensitiveController.java
  2. 6
      zdxt-modules/zdxt-system/src/main/java/org/dromara/system/service/impl/CryptoSensitiveHsmServiceImpl.java

4
zdxt-modules/zdxt-system/src/main/java/org/dromara/system/controller/system/CryptoSensitiveController.java

@ -63,8 +63,8 @@ public class CryptoSensitiveController extends BaseController {
*
* @param bo 查询条件(tableName 默认 sys_user;bizId 必填;fieldCode 默认 phonenumber)
*/
@PostMapping("/testDecrypt")
public R<String> testDecrypt(@Validated @RequestBody CryptoDecryptBo bo) {
@PostMapping("/decrypt")
public R<String> decrypt(@Validated @RequestBody CryptoDecryptBo bo) {
// bizId 必填校验由 Bo 的 @NotBlank + 参数级 @Validated 完成
String tableName = bo.getTableName();
if (StringUtils.isBlank(tableName)) {

6
zdxt-modules/zdxt-system/src/main/java/org/dromara/system/service/impl/CryptoSensitiveHsmServiceImpl.java

@ -273,9 +273,9 @@ public class CryptoSensitiveHsmServiceImpl implements ICryptoSensitiveHsmService
byte[] padded = hexToBytes(decryptResult.getOutData());
// 调试: 二进制(Hex)输出解密原始字节(含 PKCS7 填充位), 便于比对明文与填充是否正确
// 正常形态: 明文字节 + N 个值为 N 的填充字节(如手机号11位 → 末尾 05 05 05 05 05)
log.info("HSM解密原始结果Hex(含填充): {}, 字节长度: {}, 填充位数: {}",
HexUtil.encodeHexStr(padded), padded.length,
(padded.length > 0 ? (padded[padded.length - 1] & 0xFF) : -1));
// log.info("HSM解密原始结果Hex(含填充): {}, 字节长度: {}, 填充位数: {}",
// HexUtil.encodeHexStr(padded), padded.length,
// (padded.length > 0 ? (padded[padded.length - 1] & 0xFF) : -1));
if (padded == null || padded.length == 0 || padded.length % 16 != 0) {
throw new IllegalStateException("HSM解密结果长度非法: " + (padded == null ? -1 : padded.length));
}

Loading…
Cancel
Save