Der CodeIgniter 2.0.2 erfordert, einen Verschlüsselungsschlüssel in der Konfigurationsdatei festzulegen, d. h. $config['encryption_key']
, wenn Sie die Session-Klasse verwenden möchten. Kann es eine beliebige Zeichenkette sein? Ein Beispiel für sicheren encryption_key?
Danke.
Ja
%Vor%Es ist wichtig für Sie zu wissen, dass die verschlüsselten Nachrichten, die die Verschlüsselungsfunktion generiert, ungefähr 2,6 mal länger sind als die ursprüngliche Nachricht. Wenn Sie beispielsweise die Zeichenfolge "my super secret data" mit einer Länge von 21 Zeichen verschlüsseln, erhalten Sie eine codierte Zeichenfolge mit ungefähr 55 Zeichen (wir sagen "grob", weil die Länge der codierten Zeichenfolge in 64 zunimmt) Bit-Cluster, also ist es nicht genau linear). Berücksichtigen Sie diese Informationen, wenn Sie Ihren Datenspeichermechanismus auswählen. Cookies können zum Beispiel nur 4K Informationen enthalten.
Zusätzlich zu der Antwort von Chumillas verwende ich persönlich diesen Zufallsgenerator für meine CodeIgniter-Verschlüsselungszeichenfolgen. Schnell und einfach.
Codeigniter 3.1.0 Sie dürfen keinen regulären Text für 'encryption_key' verwenden
"Der Schlüssel sollte so zufällig wie möglich sein und darf nicht eine normale Textzeichenfolge sein , noch die Ausgabe einer Hash-Funktion usw. Um einen richtigen Schlüssel zu erstellen, müssen Sie ihn verwenden die Methode create_key () der Verschlüsselungsbibliothek "
%Vor%Quelle: Ссылка
Der Verschlüsselungsschlüssel kann jede Art von Zeichenfolge sein, aber um ihn stark zu machen (wie es ein gutes Kennwort sein sollte), wird empfohlen, eine solche auszuwählen, die zufällige alphanumerische Zeichen enthält. Wechsle auch zwischen Groß- und Kleinbuchstaben.
Um diesen Vorgang zu vereinfachen, habe ich eine praktische Online-Lösung erstellt, die einen zufälligen alphanumerischen 32-Zeichen-Verschlüsselungsschlüssel für Sie generiert. Es kann in jedem Projekt für CodeIgniter, Laravel oder wo auch immer benötigt werden.
Um Ihren Schlüssel in Ihrer application / config / config.php zu speichern, öffnen Sie die Datei und stellen Sie Folgendes ein:
in Zeile 227 $config['encryption_key'] = "YOUR KEY";
Ich verwende den folgenden Code im Installationsprogramm meiner App. Es dauert 128 Bytes von zufälligen Daten (in eine Hex-Zeichenfolge konvertiert), und nimmt zwei Zeichen auf einmal, in Dezimal konvertieren und überprüfen, dass sie in einem akzeptablen Bereich sind (alphanumerisch, mit Symbolen, keine Leerzeichen oder Zeichen, die nicht spiele gut mit deinem Editor oder deiner Konfigurationsdatei - aka no ')
32 Zeichen sind 128 Bit, also funktioniert es gut mit der Blockchiffre.
%Vor%Tags und Links codeigniter