Frage SSH-Schlüsselpaargenerierung: RSA oder DSA?


SSH unterstützt zwei Signaturalgorithmen für Schlüsselpaare: RSA und DSA. Was ist bevorzugt, wenn überhaupt? Was ist für RSA die minimale akzeptable Schlüssellänge?


102
2017-07-13 19:18


Ursprung




Antworten:


RSA wird im Allgemeinen bevorzugt (jetzt, da die Patentfrage vorbei ist), da es bis zu 4096 Bits gehen kann, wo DSA genau 1024 Bits sein muss (nach Meinung von ssh-keygen). 2048 Bits ist ssh-keygenStandardlänge für RSA-Schlüssel, und ich sehe keinen besonderen Grund, kürzere zu verwenden. (Das Minimum ist 768 Bit; ob das "akzeptabel" ist, nehme ich an.)


70
2017-07-13 19:25



Ich habe mich oft gefragt, warum Menschen ihre ssh-Verbindungen mit 2048-Bit-Schlüsseln sichern müssen, wenn Ihre Bank, der Sie vermutlich vertrauen, sehr wahrscheinlich nicht über 256 Bit hinausgeht und eher bei 128 Bit bleibt. Ich sage nicht, dass mit einem großen Schlüssel etwas nicht stimmt, ich sage nur .... - msanford
Die Bank-SSL-Verbindung ist eine andere Verschlüsselungsart, die verwendet wird, und insbesondere wird der Schlüssel, der für die Hauptteile der Transaktion verwendet wird, nur für diese Transaktion erzeugt und verwendet und dann verworfen. - Ophidian
Der Grund ist eigentlich mit der Skalierung zu tun. Verschlüsselung ist nicht billig und je höher Ihre Schlüsselstärke ist, desto weniger SSL-Verbindungen können Sie bedienen. Wenn Sie eine Retail-Bank haben, bei der jeder Konsument versucht, SSL zu verwenden, müssen Sie eine kompatible Schlüsselsuite auswählen, die jedoch mit Ihrer Hardware übereinstimmt. - Spence
msanford: Wie Ophidian sagte, sind sie verschiedene Arten von Verschlüsselungen. 256-Bit-RSA-Schlüssel wären für so ziemlich jeden Zweck völlig nutzlos. Die symmetrischen Schlüssel liegen im Bereich 128-512 Bit, während sie asymmetrisch sind Start bei 768bit, und sind bei ungefähr 1500-2000bit und aufwärts sicher. 768bit öffentliche Schlüssel können und wurden gebrochen. 128bit symmetrisch kann (an sich) praktisch nicht gebrochen werden. - Thomas
@xenoteracide, ssh verwendet die openssl-Bibliotheken. Wenn SSH zum ersten Mal gestartet wird, verwendet es RSA / DSA-Schlüssel, um die Host-Verifizierung durchzuführen und die symmetrischen Schlüssel für die Sitzung einzurichten. Dies ist das gleiche Verfahren, dem auch SSL-Server und -Client folgen. Sie werden also feststellen, dass wir über SSH sprechen. Sie beziehen sich häufig auf die Recherche und Dokumentation für SSL - Walter


Es geht nicht um symmetrische oder asymetrische Verschlüsselung. Es geht um bestimmte Algorithmen (RSA und DSA), die eine höhere Bitzahl erfordern, um ein akzeptables Sicherheitsniveau zu erreichen. Zum Beispiel ist ECC auch eine asymmetrische Verschlüsselung, aber es bietet eine gute Sicherheit bei viel niedrigeren Bitzahlen als RSA oder DSA.


5
2017-11-11 19:31





Wenn Sie eine neuere Implementierung von SSH haben, können Sie auch ECDSA in Betracht ziehen!


5
2017-11-03 13:17





256-Bit-Zertifikate, die Banken für SSL-Verbindungen verwenden, sind symmetrische Cipher wie 3DES oder AES, daher die niedrigere Bitanzahl. Wenn Sie 1024 und 2048 (und sogar 4096) sehen, handelt es sich um asymmetrische Verschlüsselungen.


3
2017-08-05 23:01





DSA-Schlüssel haben viel kürzere Signaturen als RSA-Schlüssel (für dieselbe "Sicherheitsstufe"), weshalb ein Grund für die Verwendung von DSA in eingeschränkten Umgebungen liegt.


1
2017-07-12 21:08