Frage

Also Jungs, gibt es viele verschiedene Verschlüsselungen zur Verfügung - aber welches die sicherste ist heutzutage zu verwenden

Liste: http://www.php.net/manual/en/ mcrypt.ciphers.php

War es hilfreich?

Lösung

Wenn Sie nicht sicher Verwendung AES (auch als "Rijndael" bekannt) mit einem 128-Bit-Schlüssel. Wenn Sie irgendeine Art von Fetisch über Schlüsselgröße entwickelt haben, dann könnten Sie Ihre irrationalen Skrupel erfüllen, indem sie einen größeren Schlüssel Auswahl, z.B. 192 oder 256 Bits; die zusätzlichen Kosten nicht hoch ist (+ 40% Aufwand für die AES-256, verglichen mit AES-128, und es dauert eine sehr sehr schnelles Netzwerk, um tatsächlich diesen Unterschied beachten).

Beachten Sie, dass, unabhängig von der Schlüsselgröße gewählt, die richtige mcrypt Chiffre für AES ist immer MCRYPT_RIJNDAEL_128. Dies ist, weil der AES-Standard, um den Geschmack des Rijndael Cipher bezieht sich mit einer 128-Bit-Blockgröße. Wenn Sie möchten, AES-256, müssen Sie MCRYPT_RIJNDAEL_128 mit einem 256-Bit (32 Byte) Schlüssel verwenden, nicht MCRYPT_RIJNDAEL_256.

AES wurde 1998 verabschiedet und von der US-Regierung als Bundes Standard im Jahr 2001 veröffentlicht wurde, und es zeigt keine Anzeichen von Schwäche heute. Einige mathematische Eigenschaften wurden später gefunden, aber sie nicht die tatsächlichen Auswirkungen auf die Sicherheit; sie markieren meistens, dass wir eine relativ genaue Kenntnis haben, warum AES sicher ist. Kein anderer symmetrischen Verschlüsselungsalgorithmus hat so viel Aufmerksamkeit (von Tausenden von talentierten entcoders) erhielt als AES.

Die meisten Sicherheitsprobleme kommen, wie der Verschlüsselungsalgorithmus verwendet wird, nicht der Algorithmus selbst. Verwenden Sie einen richtigen Verkettungsmodus, fügen Sie eine MAC, verwalten Polsterung, und vor allem Griff, um die Tasten fest. Wenn Sie alle diese richtig verstanden habe (die als viel komplizierter ist, was es scheint), dann wird es Zeit, sich Sorgen zu machen über die Wahl Rijndael, Twofish oder was auch immer.

Andere Tipps

Neben Thomas Pornin die große Antwort, müssen Sie auch überlegen, was Sie in Bezug auf die „Sicherheit“ (Vertraulichkeit / Integrität / Authentizität / Verfügbarkeit).

zu erreichen versuchen

Für jeden Fall müssen Sie ein paar Fragen beantworten, wie ... Für wen ist diese Anwendung? Wo und warum es verwendet wird (was Sie schützt)? Wie lange ist es zum letzten gemeint? etc.

Zum Beispiel gibt es wahrscheinlich keinen Sinn, in wirklich Sitzungsdaten mit einer Blas- Folge von 256-Bit-Operationen zu verschlüsseln, wenn die Daten wirklich nur soll für etwa 20 bis 30 Minuten dauern. Ein sicherer 128-Bit-Algorithmus wäre nahe doppelt so schnell oder zumindest den Einsatz Lasten weniger Taktzyklen und seine ebenso (wenn nicht mehr) sichern.

Es gibt auch keinen Sinn, etwas zu verschlüsseln, das eine lange Zeit dauern (wie ein vertrauliches Dokument oder eine Datei, private Schlüssel etc ...) mit einer schwachen, kurzen Tasten Methode gemeint ist. Sie würden mit irgendeiner Art von Authentifizierung und die ordnungsgemäße Verwendung von padding manchmal mehrere Algorithmen wollen. Ich habe regelmäßig verschlüsselt und signiert Inhalt auf Anfrage für Kunden mit mehreren Algorithmen (meist twofish, AES, RSA).

Und nicht zu vergessen, entweder (wie Thomas wies darauf hin), können Sie eine sichere Methode implementieren (oder Methoden) ungesichert. Bei den großen Mengen an Varianten jeder Formel und so kann es schwierig sein, um tatsächlich etwas zu implementieren, ist „sicher“.

Im Allgemeinen ist etwas so sicher wie der Schlüssel zu entsperren ist. Wenn ich meine Autoschlüssel im Auto mit dem Auto entriegelt verlassen, sind die Schlüssel nicht sicher und es ist offen für die Aufnahme von jedermann zu Fuß vorbei. Blowfish mit einem gut verteilt 32 Zeichen-Taste genauso wie alles andere heute sichern würde. A 3 Zeichentaste jedoch im Blinzeln eines Auges gebrochen werden kann.

"Die stärkste Chiffre ist AES-256"

Von Details über Bruce Schneier Webseite, AES-256-Stärke wäre ironisch, die unsicherste aus den drei Schlüssel 128 Größen, 192 und 256. Es gibt Probleme mit der Schlüsselgenerierung in der 256-Bit-Variante.

Einige Algorithmen sind besser als andere auf verschiedene Dinge -. Nicht sicher, was Ihre Kriterien für die „sichersten“ ist

Sie sollten auf jeden Fall nicht der DES-basierten Algorithmen verwenden in diesen Tagen (vorausgesetzt, Sie haben die freie Wahl). AES (Rijndael) ist der aktuelle Standard für NIST und anderen Einrichtungen.

In der Regel mehr Bits für einen bestimmten Algorithmus Mittel sicherer, aber sicher, dass Sie einen Initialisierungsvektor verwenden und keine EZB.

HTH

C.

Nach dem NIST Papier hatte Rjindael eine geringe Sicherheitsmarge im Vergleich zu MARS, twofish oder Schlange. Wenn Sie wirklich die stärkste Chiffre benötigen, wählen Sie eine von denen.

http://csrc.nist.gov/archive/aes/round2/ r2report.pdf

zu zitieren: „MARS erscheint eine hohe Sicherheitsmarge zu haben. Eine genaue Charakterisierung von MARS ist schwierig aufgrund der Tatsache, dass MARS zwei verschiedene Arten von Runden beschäftigt. MARS einige Kritik aufgrund seiner Komplexität erhalten hat, die seine behindert haben Sicherheitsanalyse während des Zeitrahmens des AES Entwicklungsprozesses.

Rijndael erscheint eine ausreichende Sicherheitsmarge zu haben. Die Sicherheitsmarge ist ein bisschen schwer zu messen, da die Anzahl der Runden mit der Schlüsselgröße ändert. Rijndael einige Kritik aus zwei Gründen erhalten hat: daß die Sicherheitsmarge auf der niedrigen Seite ist, unter den Finalisten, und dass ihre kann mathematische Struktur zu Angriffen führen. Doch sein Struktur ist ziemlich einfach, die während der seine Sicherheitsanalyse erleichtert haben angegebener Zeitraum des AES-Entwicklungsprozesses.

Schlange erscheint eine hohe Sicherheitsmarge zu haben. Schlange hat auch eine einfache Struktur, die seine Sicherheitsanalyse hat während des angegebenen Zeitraums der erleichterten AES Entwicklungsprozess.

erscheint Twofish eine hohe Sicherheitsmarge zu haben. Da Twofish verwendet schlüsselabhängigen Rundenfunktion kann der Begriff des Sicherheitsmarge hat weniger Bedeutung für diesen Algorithmus als für die anderen Finalisten. Die Abhängigkeit der Twofish S-Boxen auf nur k / 2 Bits Entropie in dem k-Bit-Schlüsseln Fall hat zu einer Spekulation geführt, dass Twofish zu einem zugänglich sein kann Teile-und-herrsche-Angriff, obwohl kein solcher Angriff gefunden wurde. Twofish empfangen einige Kritik für seine Komplexität, schwierig während des Zeitraums der besten Hotels der Analyse AES Entwicklungsprozess. "

Wenn Sie auf die Details aussehen wollen, gibt es einen Artikel, in erster Linie von mir, auf Blockchiffren unter http://en.citizendium.org/wiki/Block_cipher

Um mit aktuellen US-Normen zu entsprechen, verwendet AES, früher Rijndael. Jede der anderen Finalisten aus der AES Wettbewerb - Schlange, MARS, Twofish oder RC-6 - sollte in Ordnung als gut. Ich glaube, Sie benötigen eine Lizenz für RC6, though.

Ich verwende AES-128 normalerweise seit AES FIPS genehmigt ist. Die stärkste Chiffre ist AES-256 (MCRYPT_RIJNDAEL_256).

mcrypt ist modular aufgebaut und neue Chiffre kann leicht hinzugefügt werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top