Heim >Betrieb und Instandhaltung >Sicherheit >So führen Sie die Verschlüsselung und Entschlüsselung in den OpenSSL-Grundlagen durch
Bei der Erwähnung von OpenSSL muss zuerst SSL erwähnt werden. Wahrscheinlich möchte niemand, dass seine Online-Aktivitäten von anderen Internetnutzern überwacht werden, wenn wir täglich online gehen. Daher ist ein Protokoll erforderlich, um unsere Netzwerkkommunikation zu schützen. Das SSL-Protokoll wurde auf der Grundlage dieses Arbeitshintergrunds entwickelt. Es kann verhindern, dass die Kommunikation zwischen dem Benutzer und der Serveranwendung von Angreifern abgehört wird, und den Server immer authentifizieren und optional den Benutzer authentifizieren.
Normalerweise basiert das SSL-Protokoll auf dem zuverlässigen Transport Layer Protocol (TCP). Der Vorteil des SSL-Protokolls besteht darin, dass es unabhängig von Protokollen der Anwendungsschicht ist (wie HTTP, FTP, TELNET usw.) und transparent auf dem SSL-Protokoll aufbauen kann. Vor der Kommunikation über das Anwendungsschichtprotokoll hat das SSL-Protokoll die Verarbeitung von Verschlüsselungsalgorithmen, die Aushandlung von Kommunikationsschlüsseln und die Serverauthentifizierung bereits abgeschlossen. Alle über Protokolle der Anwendungsschicht übertragenen Daten werden verschlüsselt, um die Vertraulichkeit der Kommunikation zu gewährleisten.
sDie sogenannte Verschlüsselung ist nichts anderes als die Umwandlung von Klartext in Chiffretext durch einen Mechanismus. Während der Netzwerkkommunikation werden folgende Verschlüsselungssicherheitsmechanismen verwendet: symmetrische Verschlüsselung, Verschlüsselung mit öffentlichem Schlüssel und Einwegverschlüsselung.
Merkmale und Mängel der symmetrischen Verschlüsselung: Verschlüsselung und Entschlüsselung verwenden denselben Schlüssel, um den Klartext in Blöcke fester Größe zu unterteilen und diese einzeln zu verschlüsseln. Der Nachteil besteht darin, dass beide Kommunikationspartner zu viele Schlüssel verwalten müssen und die Schlüsselverteilung schwierig ist. Seine Verschlüsselungsalgorithmen sind: DES, 3DES und AES.
Die Verschlüsselung mit öffentlichen Schlüsseln weist die folgenden Merkmale auf: Ihre Schlüssel erscheinen paarweise und zu den häufig verwendeten Verschlüsselungsalgorithmen gehören RSA und DSA. Seine Verwendungszwecke sind: Erstens für die Identitätsauthentifizierung: Der Absender verwendet seinen eigenen privaten Schlüssel zum Verschlüsseln von Daten und der Empfänger verwendet seinen öffentlichen Schlüssel zum Entschlüsseln. Zweitens dient er dem Schlüsselaustausch: Der Absender verwendet den öffentlichen Schlüssel des Empfängers zum Verschlüsseln von Daten Empfänger Die Partei entschlüsselt es mit ihrem eigenen privaten Schlüssel. Der öffentliche Schlüssel wird aus dem privaten Schlüssel extrahiert
Merkmale der Einwegverschlüsselung: gerichtete Ausgabe, mit Lawineneffekt. Zu den Verschlüsselungsalgorithmen gehören MD5, SHA1, SHA256, SHA384 und SHA512. Merkmale, die häufig zum Extrahieren von Daten verwendet werden.
Am 10. April dieses Jahres hat das Sicherheitsprotokoll OpenSSL die schwerwiegendste Sicherheitslücke des Jahres aufgedeckt, „Heartbleed“. Bringen Sie die Leute dazu, diesem Open-Source-Protokoll Aufmerksamkeit zu schenken. Was genau ist OpenSSL? Tatsächlich kann OpenSSL als SSL-Bibliothek betrachtet werden, die aus drei Hauptkomponenten besteht: dem Mehrzweck-Befehlszeilentool openssl, der öffentlichen Verschlüsselungsbibliothek libcrypto und der SSL-Protokollbibliothek libssl.
Openssl ist ein vielseitiges Befehlszeilentool, das zur Implementierung von symmetrischer Verschlüsselung:
Openssl enc -e -Symmetrischer Verschlüsselungsalgorithmus- verwendet werden kann a -salt -in die Datei, die verschlüsselt werden muss -out den Ausgabepfad der verschlüsselten Datei
Entschlüsselung:
openssl enc -d – Symmetrischer Verschlüsselungsalgorithmus -a -salt -in Zu entschlüsselnde Datei -out Entschlüsselter Dateiausgabepfad #🎜 🎜#Entschlüsseln Sie beispielsweise die oben genannte verschlüsselte Datei: openssl enc -d -des3 -a -salt -in /tmp/fstab -out /tmp/Fstab
#🎜🎜 ## 🎜🎜#
Entschlüsselungsergebnis: Es kann auch für den Schlüsselaustausch inPublic-Key-Verschlüsselung verwendet werden: ( umask 077 ;openssl genrsa -out Pfad zur Ausgabe des privaten Schlüssels)
🎜🎜#Hinweis: () gibt an, dass der Befehl in einer Subshell ausgeführt wird, umask 077 stellt sicher Zugriff auf die Datei mit dem privaten Schlüssel Wegverschlüsselung: openssl dgst -md5|-sha1 -out Dateiausgabepfad Die zu verschlüsselnde Datei
Verschlüsseln Sie beispielsweise /etc/passwd mit md5: openssl dgst - md5 -out /tmp/md5passwd /etc/passwd
Kann auch verwendet werden, um ein Benutzerpasswort zu generieren: openssl passwd -1 -salt SALT_STRING Benutzerpasswort
Es kann auch verwendet werden, um Zufallszahlen zu generieren: openssl rand -hex Anzahl der Bytes
# 🎜🎜 #
Das obige ist der detaillierte Inhalt vonSo führen Sie die Verschlüsselung und Entschlüsselung in den OpenSSL-Grundlagen durch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!