proposal.md 1.7 KB

状态(2026-04-18 重新索引):已完成,待归档 tasks.md 全部 [x],仅做了 javac 联合编译验证,未做 mvn 打包回归。若生产 mjava-guangming 正常,应走 /opsx:archiveopenspec/changes/archive/

Why

RSACrypt 加密工具类(44 行)目前仅存在于 mjava-guangming/src/main/java/com/malk/guangming/util/RSACrypt.java。若未来有其他业务模块也需要做 RSA 公钥加密(例如对接其他邮箱/SSO 供应商),会出现复制粘贴。应下沉到 mjava 基座的通用 util 包,让所有业务共享。

本次不做其他"预防性"抽取:SSO、回调分发等业务模块现有实现都已经是对基座 DDClient / DingCallbackCrypto 的薄包装,无实际重复,本次不动。

What Changes

  • 新增 mjava/src/main/java/com/malk/util/crypto/RSACrypt.java,内容与旧类逐字节一致(encrypt(str, publicKey) + toUrlSafe(base64)
  • mjava-guangming/.../util/RSACrypt.java 改为 @Deprecated 委托壳,方法内部转调新类(保持二进制/源码兼容)

Capabilities

New Capabilities

  • crypto-utils: 基座通用加密工具包,首批只放 RSACrypt

Modified Capabilities

Impact

  • 代码
    • 新增:mjava/src/main/java/com/malk/util/crypto/RSACrypt.java
    • 修改:mjava-guangming/src/main/java/com/malk/guangming/util/RSACrypt.java(退化为委托)
  • 调用方mjava-guangming 内部既有 RSACrypt 调用方(如 MailSsoControllerDingTalkAuthService)无需修改,import 路径保持不变
  • 依赖:不新增
  • 版本mjava 保持 0.0.3(公有 API 只增不改,未达小版本级别;如后续还要加新能力再统一升版)