Parsen von AES-verschlüsselten Dateien in PHP (mit Code)
Der Inhalt dieses Artikels befasst sich mit der Analyse von AES-verschlüsselten Dateien in PHP (mit Code). Ich hoffe, dass er für Freunde hilfreich ist.
AES-Einführung
Advanced Encryption Standard (AES, Advanced Encryption Standard) ist der gebräuchlichste symmetrische Verschlüsselungsalgorithmus (die verschlüsselte Übertragung des WeChat-Applets verwendet diesen Verschlüsselungsalgorithmus). Symmetrische Verschlüsselungsalgorithmen verwenden denselben Schlüssel für die Verschlüsselung und Entschlüsselung.
Symmetrische Verschlüsselung
Der für die Verschlüsselung und Entschlüsselung verwendete Schlüssel ist derselbe. Diese Verschlüsselungsmethode ist sehr schnell und für Situationen geeignet, in denen häufig Daten gesendet werden. Der Nachteil besteht darin, dass die Übertragung des Schlüssels aufwändiger ist. Geheime Schlüssel können leicht durchsickern.
Asymmetrische Verschlüsselung
Die für die Verschlüsselung und Entschlüsselung verwendeten Schlüssel sind unterschiedlich. Normalerweise ist die Geschwindigkeit der Verschlüsselung und Entschlüsselung relativ hoch. Geeignet für gelegentliches Senden von Daten. Der Vorteil liegt in der komfortablen Schlüsselübertragung. Gängige asymmetrische Verschlüsselungsalgorithmen sind RSA, ECC und EIGamal.
Hinweis:
PHP7.2 hat die Mcrypt-Erweiterung entfernt und hier wird die OpenSSL-Erweiterung verwendet.
<?php /* * AES 算法 */class Aes { private $hex_iv = '00000000000000000000000000000000'; private $key = '397e2eb61307109f6e68006ebcb62f98'; function __construct($key) { $this->key = $key; $this->key = hash('sha256', $this->key, true); } /* * 字符串加密 不写入文件 */ public function encrypt($input) { $data = openssl_encrypt($input, 'AES-256-CBC', $this->key, OPENSSL_RAW_DATA, $this->hexToStr($this->hex_iv)); $data = base64_encode($data); return $data; } /* * aes 给PHP文件加密 * 写入设置文件 */ public function filecrypt($filename) { $type=strtolower(substr(strrchr($filename,'.'),1)); if ('php' == $type && is_file($filename) && is_writable($filename)) { $contents = file_get_contents($filename); // echo $contents;exit; $contents = php_strip_whitespace($filename); // echo $contents;exit; // $headerPos = strpos($contents,'<?php'); // echo $headerPos;exit; // $contents = substr($contents, $headerPos + 5, $footerPos - $headerPos); // echo $contents; exit; $data = openssl_encrypt($contents, 'AES-256-CBC', $this->key, OPENSSL_RAW_DATA, $this->hexToStr($this->hex_iv)); // echo $data;exit; $data = base64_encode($data); // echo $data;exit; return file_put_contents($filename, $data); } return false; } /* * 字符串解密 */ public function decrypt($input) { $decrypted = openssl_decrypt(base64_decode($input), 'AES-256-CBC', $this->key, OPENSSL_RAW_DATA, $this->hexToStr($this->hex_iv)); return $decrypted; } /* For PKCS7 padding */ private function addpadding($string, $blocksize = 16) { $len = strlen($string); $pad = $blocksize - ($len % $blocksize); $string .= str_repeat(chr($pad), $pad); return $string; } private function strippadding($string) { $slast = ord(substr($string, -1)); $slastc = chr($slast); $pcheck = substr($string, -$slast); if (preg_match("/$slastc{" . $slast . "}/", $string)) { $string = substr($string, 0, strlen($string) - $slast); return $string; } else { return false; } } function hexToStr($hex) { $string=''; for ($i=0; $i < strlen($hex)-1; $i+=2) { $string .= chr(hexdec($hex[$i].$hex[$i+1])); } return $string; } } $key = '397e2eb61307109f6e68006ebcb62f98'; $aes = new Aes($key); $filename = __DIR__.'\exchange.php'; // $filename = 'Y6RCuF6ETPC5J57hfhxovg=='; // 加密 $string = $aes->filecrypt($filename); // echo $string; echo "OK,加密完成!" ;
2. Einfache Funktion zum Verschlüsseln von PHP-Dateien
<?php function encode_file_contents($filename) { $type=strtolower(substr(strrchr($filename,'.'),1)); if ('php' == $type && is_file($filename) && is_writable($filename)) { // 如果是PHP文件 并且可写 则进行压缩编码 $contents = file_get_contents($filename); // 判断文件是否已经被编码处理 $contents = php_strip_whitespace($filename); // 去除PHP头部和尾部标识 $headerPos = strpos($contents,'<?php'); $footerPos = strrpos($contents,'?>'); $contents = substr($contents, $headerPos + 5, $footerPos - $headerPos); $encode = base64_encode(gzdeflate($contents)); // 开始编码 $encode = '<?php'."\n eval(gzinflate(base64_decode("."'".$encode."'".")));\n\n?>"; return file_put_contents($filename, $encode); } return false; } //调用函数 // echo __DIR__.'\server.php'; $filename = __DIR__.'\server.php'; encode_file_contents($filename); echo "OK,加密完成!" ;
Empfohlene verwandte Artikel:
Code für Post-Methode anfordern und Methode in Curl von PHP abrufen
So konvertieren Sie ein JSON-Objekt in ein Array in thinkphp5 (Code)
Das obige ist der detaillierte Inhalt vonParsen von AES-verschlüsselten Dateien in PHP (mit Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Bitlocker ist die Standardverschlüsselungstechnologie für Windows-Betriebssysteme. Es wird häufig unter Windows verwendet, einige Benutzer bevorzugen jedoch Lösungen von Drittanbietern wie VeraCrypt. Was viele Benutzer von Bitlocker nicht wissen, ist, dass es standardmäßig eine 128-Bit-Verschlüsselung verwendet, obwohl 256-Bit verfügbar ist. Ohne zu sehr auf die Unterschiede einzugehen; der Hauptunterschied zwischen der AES-128-Bit- und der 256-Bit-Verschlüsselung ist die Länge des Sicherheitsschlüssels. Längere Tasten erschweren Brute-Force-Angriffe. Während der Standardwert 128-Bit ist, empfiehlt sogar Microsoft 256-Bit für mehr Sicherheit. Das Problem besteht darin, dass die meisten Benutzer wahrscheinlich nichts über die schwächeren Standardeinstellungen wissen oder wissen, wie sie diese ändern können. Zuerst möchten Sie vielleicht W. kennen lernen

Microsoft hat zuvor DNS-Verschlüsselungsdienste für Win11 bereitgestellt, aber viele Benutzer wissen nicht, wie man mit Win11 verschlüsselte DNS verwendet. Tatsächlich müssen wir nur die DNS-Einstellungen unter den Netzwerkeinstellungen öffnen. Ausführliches Tutorial zu Win11-verschlüsselten DNS: 1. Geben Sie zuerst die Festplatte ein und suchen Sie den Ordner, den Sie verschlüsseln möchten. 2. Öffnen Sie dann „Ethernet“ auf der rechten Seite. 3. Suchen Sie dann unten die DNS-Serverzuordnung und klicken Sie auf „Bearbeiten“. 4. Nachdem Sie „Auto (DHCP)“ auf „Manuell“ geändert haben, öffnen Sie „IPv4“ unten. 5. Nach dem Einschalten , geben Sie „8.8.8.8“ in das bevorzugte DNS ein. 6. Ändern Sie dann die bevorzugte DNS-Verschlüsselung in „Nur Verschlüsselung (DNS über HTTPS)“. 7. Nachdem die Änderungen abgeschlossen sind, klicken Sie auf „Speichern“ und Sie finden

Ziel der Dateiverschlüsselung ist es, Daten auf professionellem Niveau zu verschlüsseln, um die Datensicherheit effektiver zu gewährleisten! Nur durch die Beherrschung des richtigen Verschlüsselungsschlüssels kann der Entschlüsselungsvorgang durchgeführt werden, wodurch die Sicherheit der Informationsressourcen gewährleistet wird. Allerdings verfügt die Dateiverschlüsselungsfunktion von Win10 Home Edition noch nicht über diese Funktion. Kann Win10 Home Edition Ordner verschlüsseln? Antwort: Win10 Home Edition kann keine Ordner verschlüsseln. Tutorial zum Verschlüsseln von Dateien im Windows-System 1. Klicken Sie mit der rechten Maustaste auf die Datei oder den Ordner, die Sie verschlüsseln möchten (oder halten Sie die Taste eine Weile gedrückt) und wählen Sie dann die Funktion „Eigenschaften“. 2. Suchen Sie in der neuen erweiterten Benutzeroberfläche nach der Option „Erweitert“. Denken Sie nach dem Klicken zur Eingabe daran, die Option „Inhalt verschlüsseln, um Daten zu schützen“ unten zu aktivieren. 3. Nachdem die Einstellung abgeschlossen ist, klicken Sie auf „OK“.

In Apple-Handys können Benutzer Fotoalben nach ihren eigenen Bedürfnissen verschlüsseln. Einige Benutzer wissen nicht, wie sie es einrichten sollen. Sie können dem Memo die zu verschlüsselnden Bilder hinzufügen und das Memo dann sperren. Als nächstes stellt der Herausgeber die Methode zum Einrichten der Verschlüsselung mobiler Fotoalben für Benutzer vor. Schauen Sie sich das an. Apple-Handy-Tutorial So richten Sie die iPhone-Fotoalbum-Verschlüsselung ein A: Nachdem Sie dem Memo die Bilder hinzugefügt haben, die verschlüsselt werden müssen, gehen Sie zum Sperren des Memos, um eine detaillierte Einführung zu erhalten: 1. Öffnen Sie das Fotoalbum und wählen Sie das Bild aus, das verschlüsselt werden soll verschlüsselt, und klicken Sie dann unten auf [Hinzufügen zu]. 2. Wählen Sie [Zu Notizen hinzufügen]. 3. Geben Sie das Memo ein, suchen Sie das gerade erstellte Memo, geben Sie es ein und klicken Sie auf das Symbol [Senden] in der oberen rechten Ecke. 4. Klicken Sie unten auf [Gerät sperren].

Häufige Netzwerkkommunikations- und Sicherheitsprobleme und Lösungen in C# Im heutigen Internetzeitalter ist Netzwerkkommunikation zu einem unverzichtbaren Bestandteil der Softwareentwicklung geworden. In C# treten normalerweise einige Netzwerkkommunikationsprobleme auf, z. B. die Sicherheit der Datenübertragung, die Stabilität der Netzwerkverbindung usw. In diesem Artikel werden häufig auftretende Netzwerkkommunikations- und Sicherheitsprobleme in C# ausführlich erläutert und entsprechende Lösungen und Codebeispiele bereitgestellt. 1. Netzwerkkommunikationsprobleme Unterbrechung der Netzwerkverbindung: Während des Netzwerkkommunikationsprozesses kann die Netzwerkverbindung unterbrochen werden, was zu Problemen führen kann

Die Ordnerverschlüsselung ist eine gängige Datenschutzmethode, die den Inhalt eines Ordners verschlüsselt, sodass nur diejenigen auf die Dateien zugreifen können, die über das Entschlüsselungskennwort verfügen. Beim Verschlüsseln eines Ordners gibt es einige gängige Möglichkeiten, ein Passwort festzulegen, ohne die Datei zu komprimieren. Zunächst können wir die Verschlüsselungsfunktion des Betriebssystems nutzen, um ein Ordnerkennwort festzulegen. Für Windows-Benutzer können Sie es einrichten, indem Sie die folgenden Schritte ausführen: Wählen Sie den zu verschlüsselnden Ordner aus, klicken Sie mit der rechten Maustaste auf den Ordner und wählen Sie „Eigenschaften“.

Einige Freunde möchten ihre Dateien schützen, wissen aber nicht, wie sie Win11-Dokumente verschlüsseln sollen. Tatsächlich können wir die Ordnerverschlüsselung direkt verwenden oder Software von Drittanbietern zum Verschlüsseln von Dateien verwenden. Ausführliches Tutorial zur Win11-Dokumentenverschlüsselung: 1. Suchen Sie zunächst die Datei, die Sie verschlüsseln möchten, klicken Sie mit der rechten Maustaste, um sie auszuwählen, und öffnen Sie „Eigenschaften“. 2. Klicken Sie dann in der Eigenschaftenspalte auf „Erweitert“. 3. Wählen Sie „Inhalt verschlüsseln, um Daten zu schützen“. " in „Erweitert“ und klicken Sie auf „OK“ 4. Klicken Sie dann zum Speichern auf „OK“. 5. Wählen Sie abschließend den gewünschten Verschlüsselungsmodus und klicken Sie auf „OK“, um das Dokument zu speichern und das Dokument zu verschlüsseln.

Der Editor stellt Ihnen drei Methoden zur Verschlüsselung und Komprimierung vor: Methode 1: Verschlüsselung Die einfachste Verschlüsselungsmethode besteht darin, beim Verschlüsseln der Datei das Kennwort einzugeben, das Sie festlegen möchten, und die Verschlüsselung und Komprimierung sind abgeschlossen. Methode 2: Automatische Verschlüsselung Bei der gewöhnlichen Verschlüsselungsmethode müssen wir beim Verschlüsseln jeder Datei ein Passwort eingeben. Wenn Sie eine große Anzahl komprimierter Pakete verschlüsseln möchten und die Passwörter gleich sind, können wir in WinRAR die automatische Verschlüsselung festlegen und dann nur „Wann“. Beim normalen Komprimieren von Dateien fügt WinRAR jedem komprimierten Paket ein Passwort hinzu. Die Methode ist wie folgt: Öffnen Sie WinRAR, klicken Sie in der Einstellungsoberfläche auf Optionen-Einstellungen, wechseln Sie zu [Komprimierung], klicken Sie auf Standardkonfiguration erstellen – Kennwort festlegen. Geben Sie hier das Kennwort ein, das wir festlegen möchten, und klicken Sie auf OK, um die Einstellung abzuschließen. Wir benötigen nur korrigieren
