Eet Overview

概述 EET 的功能可归纳为三部分: 类别 说明 贴近实际应用 envelope 与 structured:信封加密、结构化配置叶子加密,均支持本地模式与云 KMS 模式,让用户一键实现配置文件加密与敏感数据信封加密。 密码学基础原子能力 AES/SM4/ZUC 对称加解密,RSA/ECC/SM2 非对称加解密与签名验签,Hash、HMAC 等。 常用工具能力 大小端转换、时间戳转换、字符串编码转换、安全随机串、证书解析、Shell 补全等。 安装与入口: ...

2026-02-28 10:39 CST  · 3268 words  · 7 min

Eet Envelope 支持华为云KMS

1. 简介 EET(easy-encryption-tool)的 envelope 命令支持使用华为云密钥管理服务(KMS,密码安全中心 DEW)进行信封加密。通过 --kms-backend huaweicloud 可调用华为云 KMS 的 CreateDatakey 和 DecryptDatakey 接口,实现 DEK 的云端生成与解密。 ...

2026-02-25 09:49 CST  · 2521 words  · 6 min

Eet AI CodeReview

文档生成日期: 2025-02-24 覆盖范围: 2025-02-16 至 2026-02-23 期间的全部 AI 代码审计与审查报告 一、审计报告索引 序号 报告名称 日期 审计范围 审阅 AI 1 [COMMAND_IMPLEMENTATION_REVIEW_20250216] 2025-02-16 对称/非对称加解密、签名验签 - 2 [SECURITY_REVIEW_REPORT] 2025-02-17 密码学实现、CLI 设计、异常处理 - 3 [ECC_ECDH_REVIEW_20250221] 2025-02-21 ECC ECDH 密钥协商、CipherHUB 对齐 - 4 [EET_AES_SM4_HMAC_HASH_AUDIT_REPORT] 2025-02-23 AES/SM4/HMAC/Hash 流式处理、安全 - 5 [EET_REGRESSION_AUDIT_20250224] 2025-02-24 修复验证、回归审计 - 6 [EET_FRACTURE_POINT_AUDIT_20250224] 2025-02-24 断裂点审计、极端输入 - 7 [EET_AES_SM4_HMAC_HASH_FRACTURE_AUDIT_20250224] 2025-02-24 10 维度安全审计 Claude Sonnet 4.5 8 [AES_SM4_ZUC_COMPARISON_REVIEW] 2025-02-24 AES/SM4/ZUC 对比、ZUC 专项 - 9 [CODE_REVIEW_20260217] 2026-02-17 潜在 Bug、参数风格一致性 - 10 [ENGINEERING_SECURITY_REVIEW_20260217] 2026-02-17 工程级安全、实现逻辑 - 11 [ENVELOPE_SECURITY_AUDIT_REPORT] 2026-02-23 Envelope 子命令安全 - 12 [ENVELOPE_V2_STREAMING_AUDIT_REPORT] 2026-02-23 Envelope V2 分块流式加密 - 二、按严重级别汇总的缺陷 2.1 Critical 级别(必须修复) ID 描述 来源报告 状态 C-01 默认密钥使用时未强制用户确认,生产环境可预测 Fracture Audit 20250224 待修复 C-02 GCM 模式下允许手动指定 IV/Nonce,存在 Nonce 重用风险 Fracture Audit 20250224 待修复 C-03 SM4 GCM 解密流式处理时错误处理可能丢失原始异常 Fracture Audit 20250224 待修复 C-04 CBC 解密时文件大小校验不合理,有效密文被拒绝 Fracture Audit 20250224 待修复 C1 HMAC/HASH 无输入长度限制,-e 模式可导致 OOM Fracture Point 20250224 待修复 C2 AES 文件加密 metadata 中 input_size 错误 Fracture Point 20250224 待修复 C3 SM4 CBC 文件解密异常时未调用 abort() Fracture Point 20250224 待修复 - 密钥/IV/密码明文打印到控制台 Security Review 20250217 已修复 - 使用 random 模块生成密码学随机数 Security Review 20250217 已修复 - RSA 解密失败泄露异常详情(Padding Oracle 风险) Engineering Security 20260217 待修复 - cert_parse load_cert_data 文件过大时未关闭句柄 Engineering Security 20260217 待修复 - 证书验签对非 RSA/EC 类型静默跳过(验签绕过) Engineering Security 20260217 待修复 - Envelope 加密侧密文全量累积 O(n) 内存 Envelope V2 Streaming 20260223 待修复 - Envelope 解密无 writer 时明文全量累积 O(n) Envelope V2 Streaming 20260223 待修复 - Envelope 解密解析 64MB 上限,大文件无法解析 Envelope V2 Streaming 20260223 待修复 2.2 Major 级别(重大) ID 描述 来源报告 M-01 短密钥自动填充使用随机字符串,语义不匹配 Fracture Audit M-02 HMAC key-b64 与 -k 互斥检查不完整 Fracture Audit M-03 AES GCM 流式解密未处理空文件 Fracture Audit M-04 SM4 GCM 流式解密空文件逻辑混淆 Fracture Audit M-05 文件加密 read_size 计算过大 Fracture Audit M-06 write_to_file abort() 可能被遗漏 Fracture Audit M-07 validators 校验时机晚于文件打开 Fracture Audit M1 SM4 长密钥静默截断无告警 Fracture Point M2 SM4 GCM Tag 校验失败无专用错误提示 Fracture Point - Envelope 大文件整文件读入内存 Envelope Security - KMS 调用无显式超时配置 Envelope Security - –no-force 错误提示不明确 Envelope Security 2.3 Minor 级别(次要) 多处边界情况处理、错误信息优化、CLI UX 改进建议 详见各报告 三、已确认修复项(回归审计通过) 修复项 验证报告 GCM 解密流式化(seek 读 Tag + 流式读密文) Regression Audit 20250224 解密失败时 abort() 清理临时文件 Regression Audit 20250224 默认 Key/IV 告警 Regression Audit 20250224 短 Key 填充告警 Regression Audit 20250224 AES ValueError 分支 abort Regression Audit 20250224 SM4 空密文 (cipher_size==0) 处理 Regression Audit 20250224 SM4 GCM 非文件解密 remove_padding Command Implementation 20250216 四、按模块分类的审计结论 4.1 对称加密(AES / SM4) 维度 结论 加解密逻辑 基本正确,GCM cipher||tag 格式符合 NIST SP 800-38D 流式处理 GCM 文件解密已实现流式,内存 O(chunk_size) 原子写入 write_to_file + abort() 已实现 安全告警 默认密钥有警告,但未阻止生产使用;长密钥截断无告警 主要问题 默认密钥防护不足、GCM Nonce 重用风险、CBC 文件大小校验过严 4.2 HMAC / Hash 维度 结论 实现正确性 正确,流式文件处理已实现 主要问题 -e 模式无 input_limit,超大 Base64 可 OOM;HMAC key-b64 互斥逻辑不完善 4.3 ZUC 维度 结论 与 AES/SM4 对齐 需修复:Base64 校验、abort()、chunk 大小、空输入拒绝 修复项 P1–P6 已明确,Q1/Q2 待确认 4.4 非对称加密(RSA / ECC / SM2) 维度 结论 实现正确性 RSA OAEP/PSS、ECC ECDSA、SM2 均正确 主要问题 RSA 解密失败泄露异常(Padding Oracle);cert_parse 验签绕过 ECC ECDH 已实现同一密钥对检测、曲线匹配、CipherHUB 对齐 4.5 Envelope 信封加密 维度 结论 业务逻辑 DEK/Nonce 生成、AAD、格式解析正确 V2 流式 存在伪流式:加密/解密侧均 O(n) 内存累积;解析 64MB 上限 主要问题 需实现真流式加密(边加密边写临时文件);解密侧流式解析 五、CLI 与参数一致性 5.1 已统一的参数 -i / --input-data、-e / --is-base64-encoded、-f / --is-a-file -o / --output-file、--no-force、-a / --hash-alg 5.2 不一致之处(建议统一) 问题 建议 -f 含义冲突(aes/sm4 为输入文件,rsa 为公钥/私钥) 文档明确说明或逐步统一 cert-parse 的 -e 表示 encoding,与其他 base64 冲突 改为 -E/--encoding ecc key_exchange 用 -H 表示 hash-alg 文档说明或统一为 -a zuc 的 --iv vs aes/sm4 的 --iv-nonce 统一或文档说明 六、修复优先级建议 第一优先级(安全关键) 默认密钥防护:增加 --insecure 标志,默认禁止生产使用 GCM Nonce 重用:添加 Nonce 弱值检测与警告 RSA Padding Oracle:统一输出泛化错误信息,不暴露异常详情 证书验签绕过:对不支持的 CA 密钥类型显式抛出异常 HMAC/Hash OOM:增加 -l/--input-limit 限制 第二优先级(逻辑正确性) CBC 文件大小校验:移除不合理校验,PKCS#7 可处理任意大小 AES metadata input_size:使用 init_file_size 而非递减后的 file_size SM4 CBC abort:解密异常时调用 output_to_file.abort() cert_parse 文件句柄:使用 with 管理,文件过大时正确关闭 第三优先级(流式与内存) Envelope 真流式:加密侧边加密边写临时文件,解密侧流式解析 ZUC 对齐:P1–P6 修复项 第四优先级(UX 与一致性) 长密钥截断告警:process_key_iv 返回 key_truncated SM4 GCM Tag 失败专用提示:统一错误文案 参数风格统一:cert-parse -e、-f 文档化 七、审计时间线 1 2 3 4 5 6 7 2025-02-16 命令实现逻辑审查(对称/非对称) 2025-02-17 深度工程级安全审查(密钥泄露、random 模块等) 2025-02-21 ECC ECDH 实现 Review 2025-02-23 AES/SM4/HMAC/Hash 流式处理审计 2025-02-24 断裂点审计、10 维度 Fracture Audit、回归审计、AES/SM4/ZUC 对比 2026-02-17 代码审查、工程级安全审查(RSA Padding Oracle、cert 等) 2026-02-23 Envelope 安全审计、V2 流式审计 八、总结 EET 工具在核心密码学实现(AES/SM4 GCM、RSA OAEP、ECC ECDSA 等)上正确且符合规范,GCM 流式解密、原子写入、默认密钥告警等关键安全特性已实现。主要改进空间集中在: ...

2026-02-24 10:30 CST  · 2400 words  · 5 min

Eet信封加密V2版本

1. 简介 信封加密(Envelope Encryption)是一种混合加密方式:使用 RSA 公钥或云 KMS 加密随机生成的对称密钥(DEK),再用该密钥对实际数据进行 AES-256-GCM 等对称加密。适用于大数据加密、密钥托管等场景。 ...

2026-02-23 19:28 CST  · 3087 words  · 7 min

Eet Cloud Kms Extend Design Version2

1. 概述 1.1 背景 基于 KMS 集成设计 的讨论与测试反馈: 在 aes、sm4、hmac 中接入 KMS 导致 CLI 参数复杂度过高(需区分 key/iv 来源、解密时传入 encrypted_dek、考虑 key_id 绑定等) 范围收缩:仅在 envelope 命令中接入 KMS 输出优化:在单信封概念下,将业务密文与密钥密文分离,以 JSON 输出 算法扩展:支持多种对称加密算法 1.2 目标 信封命令支持 KMS(wrap_key_type: RSA | KMS) 输出格式:默认 JSON,业务密文与 encrypted_dek 分离;可选 blob 保持向后兼容 对称算法扩展:AES-256-GCM、SM4-GCM、ChaCha20-Poly1305 新增 list-algorithms 子命令,便于查看支持的算法类型 2. mode 与 wrap_key_type 2.1 模式选择 envelope 命令必须显式指定 mode,通过 --mode 参数: ...

2026-02-23 18:44 CST  · 2343 words  · 5 min
文章 Posts 分类 Categories 标签 Tags