it-swarm.com.de

Was ist der Unterschied zwischen SHA und AES-Verschlüsselung?

Was ist der Unterschied zwischen SHA und AES-Verschlüsselung?

74
Pete

SHA ist keine Verschlüsselung, sondern eine Einweg-Hash-Funktion. AES (Advanced_Encryption_Standard) ist ein symmetrischer Verschlüsselungsstandard.

AES-Referenz

99
skaffman

SHA ist eine Familie von "Secure Hash Algorithms", die von der National Security Agency entwickelt wurden. Gegenwärtig gibt es einen Wettbewerb zwischen Dutzenden von Optionen für SHA- , den neuen Hash-Algorithmus für 2012+.

Sie verwenden SHA) - Funktionen, um ein großes Dokument zu erstellen und einen "Digest" (auch "Hash" genannt) der Eingabe zu berechnen Nehmen Sie keine Zusammenfassung und stellen Sie das Originaldokument wieder her.

AES , der Advanced Encryption Standard ist ein symmetrischer Blockalgorithmus. Dies bedeutet, dass es 16-Byte-Blöcke benötigt und diese verschlüsselt. Es ist "symmetrisch", da der Schlüssel sowohl die Verschlüsselung als auch die Entschlüsselung ermöglicht.

UPDATE: Keccak wurde am 2. Oktober 2012 zum SHA-3-Gewinner ernannt.

77
Jeff Moser

SHA und AES dienen unterschiedlichen Zwecken. SHA wird verwendet, um einen Hash von Daten zu generieren, und AES wird zum Verschlüsseln von Daten verwendet.

Hier ist ein Beispiel dafür, wann ein SHA für Sie nützlich ist. Angenommen, Sie wollten ein DVD-ISO-Image einer Linux-Distribution herunterladen. Dies ist eine große Datei, und manchmal laufen die Dinge schief - also wollen Sie Um zu überprüfen, ob das, was Sie heruntergeladen haben, korrekt ist, gehen Sie zu einer vertrauenswürdigen Quelle (wie zum Beispiel dem offiziellen Download-Punkt für Distributionen) und sie haben normalerweise den SHA für das ISO-Image verfügbar. Sie können jetzt für Ihre heruntergeladenen Daten den vergleichbaren SHA=================================================================================== Der Download ist korrekt. Dies ist besonders wichtig, wenn Sie das ISO-Image von einer nicht vertrauenswürdigen Quelle (z. B. einem Torrent) erhalten oder Probleme bei der Verwendung des ISO haben und überprüfen möchten, ob das Image beschädigt ist.

Wie Sie in diesem Fall sehen können, wurde SHA verwendet, um Daten zu validieren, die nicht beschädigt wurden. Sie haben das Recht, die Daten in der ISO zu sehen.

AES wird dagegen verwendet, um Daten zu verschlüsseln oder um zu verhindern, dass Personen diese Daten mit Kenntnis eines Geheimnisses anzeigen.

AES verwendet einen gemeinsamen Schlüssel. Dies bedeutet, dass derselbe Schlüssel (oder ein verwandter Schlüssel) zum Verschlüsseln der Daten verwendet wird, der zum Entschlüsseln der Daten verwendet wird. Wenn ich beispielsweise eine E-Mail mit AES verschlüsselt und diese E-Mail an Sie gesendet habe, müssen Sie und ich den gemeinsamen Schlüssel kennen, der zum Ver- und Entschlüsseln der E-Mail verwendet wird. Dies unterscheidet sich von Algorithmen, die einen öffentlichen Schlüssel wie PGP oder SSL verwenden.

Wenn Sie sie zusammenstellen möchten, können Sie eine Nachricht mit AES verschlüsseln und anschließend einen SHA1-Hash der unverschlüsselten Nachricht senden, damit sie die Daten validieren können, wenn die Nachricht entschlüsselt wurde. Dies ist ein etwas ausgeklügeltes Beispiel.

Wenn Sie mehr über diese Wikipedia-Suchbegriffe wissen möchten (über AES und SHA hinaus), möchten Sie Folgendes ausprobieren:

Algorithmus mit symmetrischem Schlüssel (für AES) Kryptografische Hash-Funktion (für SHA) Kryptografie mit öffentlichem Schlüssel (für PGP und SSL)

57
Robert Horvick

SHA steht für Secure Hash Algorithm, während AES für Advanced Encryption Standard steht. SHA ist eine Reihe von Hashing-Algorithmen. AES hingegen ist eine Verschlüsselung, die zum Verschlüsseln verwendet wird. SHA Algorithmen (SHA-1, SHA- 256 etc ...) wird eine Eingabe nehmen und einen Digest (Hash) erzeugen. Dies wird normalerweise bei einem digitalen Signaturprozess verwendet (einen Hash von einigen Bytes erzeugen und mit einem privaten Schlüssel signieren).

6
François P.

SHA ist eine Hash-Funktion und AES ist ein Verschlüsselungsstandard. Bei einer gegebenen Eingabe können Sie SHA) verwenden, um eine Ausgabe zu erzeugen, die sehr unwahrscheinlich von einer anderen Eingabe erzeugt wird. Außerdem gehen einige Informationen verloren, wenn Sie die Funktion anwenden, selbst wenn Sie wissen, wie man produziert Bei einer Eingabe, die die gleiche Ausgabe liefert, ist diese Eingabe wahrscheinlich nicht die gleiche, die ursprünglich verwendet wurde. Andererseits soll AES verhindern, dass Daten, die zwischen zwei Parteien gesendet werden, die denselben Verschlüsselungsschlüssel verwenden, an Dritte weitergegeben werden Sobald Sie den Verschlüsselungsschlüssel und die Ausgabe (und die IV ...) kennen, können Sie nahtlos zur ursprünglichen Eingabe zurückkehren. Beachten Sie, dass SHA nichts anderes als eine Eingabe erforderlich ist Anzuwenden, während AES mindestens drei Schritte erfordert: das, was Sie verschlüsseln/entschlüsseln, einen Verschlüsselungsschlüssel und den Initialisierungsvektor (IV).

6
em70

SHA erfordert nur eine Eingabe, während AES mindestens drei Dinge erfordert - das, was Sie verschlüsseln/entschlüsseln, einen Verschlüsselungsschlüssel und den Initialisierungsvektor.

3
chen