web-dev-qa-db-fra.com

Pourquoi les clés DSA sont-elles appelées DSS lorsqu'elles sont utilisées avec SSH?

Lorsque je génère une clé DSA avec ssh-keygen -t dsa, la clé publique résultante commencera par ssh-dss.

Comment venir? Pourquoi pas ssh-dsa?

21
ja'

DSS est simplement un document qui décrit la procédure de signature et spécifie certaines normes. Le document d'origine est FIPS 186 et la dernière révision en 2013 est FIPS 186-4 . DSS est un standard pour la signature numérique.

DSA est un algorithme cryptographique qui génère des clés, signe des données et vérifie les signatures. Le DSA, en soi, peut utiliser n'importe quelle fonction de hachage pour son "cryptomagic" interne, et il peut également utiliser n'importe quel (L, N) pour la longueur de ses paramètres. DSS, en standard, définit Spécifications facultatives de DSA.

DSS indique que DSA devrait utiliser SHA-1 comme fonction de hachage (récemment, SHA-2). DSS dit que DSA doit utiliser des paires de longueurs spécifiques telles que (2048,224), (3072,256), etc.

Lorsque SSH dit DSS, cela signifie qu'ils implémentent DSA conformément au DSS.

25
Adi

Réponse pas chère en une phrase:

L'algorithme de signature numérique (DSA) est publié dans la norme de signature numérique (DSS) par le NIST en FIPS 186.

Les normes SSH version 2 ont apparemment préféré "DSS", bien que plus récemment ils aient également utilisé "DSA".

Je ne sais pas quelles sont les différences dans les définitions des deux termes, ce qui est plus correct dans un contexte donné, ni pourquoi les rédacteurs standard de SSH ont choisi la terminologie qu'ils ont choisie.

6
Matt Nordhoff