DSA签名/验签
在线DSA签名与验签工具,支持SHA-1/SHA-224/SHA-256、PEM密钥与DER解析,适用于旧系统迁移、协议调试和历史签名审计
生成密钥需要调用服务端接口;消息签名与验签在您的本地浏览器处理,不会上传到服务器。
正在加载 DSA 运行库...
FIPS 186-5 弃用声明
FIPS 186-5 已弃用 DSA 的签名生成功能,建议新系统优先使用 ECDSA 或 Ed25519。
生成 DSA 密钥对
使用服务端安全随机源生成 DSA PEM 密钥,并自动填充签名与验签面板。
DSA 使用说明
DSA(Digital Signature Algorithm)是 DSS 标准中的经典签名算法。该工具用于兼容场景中的签名与验签调试,支持 PEM 密钥、多种输入格式与签名结果解析。
OpenSSL 生成 DSA 密钥
若需离线生成密钥,可使用以下命令。
openssl dsaparam -out dsaparam.pem 2048
openssl gendsa -out private.pem dsaparam.pem
openssl dsa -in private.pem -pubout -out public.pem
FIPS 186-5 状态
自 2023 年起,DSA 不再用于新签名生成,仅建议用于历史签名验证和遗留系统兼容。新系统推荐迁移到 ECDSA 或 Ed25519。
核心特性
- 支持 SHA-1、SHA-224、SHA-256 三种 DSA 常见哈希算法。
- 支持 Text、Hex、Base64、Hex 空格、C 数组格式输入。
- 支持原始签名、R/S 分量和 DER 编码结果查看。
- 支持 PEM 私钥签名与 PEM 公钥验签。
- 支持 1024/2048/3072 位参数的密钥生成。
参数与密钥建议
- 2048 位:推荐默认值,兼顾兼容性与安全性。
- 3072 位:更高安全裕量,计算成本更高。
- 1024 位:仅用于旧系统兼容,不建议新用。
- 建议统一 PEM 格式保存与传输密钥。
哈希算法建议
- SHA-256:默认推荐,适合大部分场景。
- SHA-224:用于既有协议兼容。
- SHA-1:仅用于历史签名验证,不建议新签名。
安全注意事项
- 私钥仅在受控环境存储,避免明文传播。
- 迁移阶段建议双轨验签并保留审计日志。
- 验签失败应记录来源、摘要与时间信息。
- 若可升级,优先迁移到 ECDSA 或 Ed25519。
方案对比(简要)
| 指标 | DSA(2048) | ECDSA(P-256) | Ed25519 |
|---|---|---|---|
| 公钥体积 | 较大 | 中等 | 较小 |
| 签名速度 | 中等 | 快 | 更快 |
| 新系统推荐 | 否 | 是 | 是 |