为什么 DSA 密钥与 SSH 一起使用时称为 DSS 密钥?

信息安全 SSH dsa
2021-08-31 11:07:46

当我使用 生成 DSA 密钥时ssh-keygen -t dsa,生成的公钥将以ssh-dss.

怎么来的?为什么不ssh-dsa呢?

2个回答

DSS 只是描述签名过程并指定某些标准的文档。原始文件是 FIPS 186,2013 年的最新版本是FIPS 186-4DSS 是数字签名的标准

DSA 是一种加密算法,可生成密钥、签署数据并验证签名。DSA 本身可以将任何散列函数用于其内部“密码学”,也可以将任何(L, N)用于其参数长度。作为一个标准,DSS定义了DSA 的可选规范。

DSS 说 DSA 应该使用 SHA-1 作为其散列函数(最近是 SHA-2)。DSS 表示 DSA 应该使用特定的长度对,例如 (2048,224)、(3072,256) 等。

当 SSH 说 DSS 时,他们的意思是他们正在实施符合 DSS 的 DSA。

便宜,一句话回答:

数字签名算法 (DSA) 由 NIST 在 FIPS 186 中发布在数字签名标准 (DSS) 中。

SSH 版本 2 标准显然更喜欢“ DSS”,尽管最近他们也使用了“DSA”。

我不知道这两个术语的定义有什么区别,在给定的上下文中哪个更正确,或者为什么 SSH 标准作者选择他们所做的术语。