Heim Backend-Entwicklung PHP-Tutorial 请帮写个加密函数

请帮写个加密函数

Jun 13, 2016 pm 01:27 PM
encryption mcrypt module

请大虾帮写个加密函数
请大虾帮写个加密函数,主要用于URL加密,
本想用MD5的,得是MD5不可逆,想过用base64加密或urlencode编码了,但这两个函数太长了。

请大虾帮自定义一个加密函数,最好不要长于是16位,越小越好,也不要小于8位,怕重复,呵呵。

用于URL传输的,加密后最好是数字或字符。谢谢!

记得是可逆的。

------解决方案--------------------
mcrypt

PHP code
<?php /* Open the cipher */
    $td = mcrypt_module_open('rijndael-256', '', 'ofb', '');

    /* Create the IV and determine the keysize length, use MCRYPT_RAND
     * on Windows instead */
    $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_DEV_RANDOM);
    $ks = mcrypt_enc_get_key_size($td);

    /* Create key */
    $key = substr(md5('very secret key'), 0, $ks);

    /* Intialize encryption */
    mcrypt_generic_init($td, $key, $iv);

    /* Encrypt data */
    $encrypted = mcrypt_generic($td, 'This is very important data');

    /* Terminate encryption handler */
    mcrypt_generic_deinit($td);

    /* Initialize encryption module for decryption */
    mcrypt_generic_init($td, $key, $iv);

    /* Decrypt encrypted string */
    $decrypted = mdecrypt_generic($td, $encrypted);

    /* Terminate decryption handle and close module */
    mcrypt_generic_deinit($td);
    mcrypt_module_close($td);

    /* Show string */
    echo trim($decrypted) . "\n";
?> <div class="clear">
                 
              
              
        
            </div>
Nach dem Login kopieren
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So ersetzen Sie mcrypt in PHP So ersetzen Sie mcrypt in PHP Oct 31, 2022 am 09:46 AM

So ersetzen Sie mcrypt durch PHP: 1. Öffnen Sie die entsprechende PHP-Datei. 2. Suchen Sie den ursprünglichen Verschlüsselungs- und Entschlüsselungscode. 3. Verwenden Sie die Methoden „openssl_encrypt“ und „openssl_decrypt“.

ModuleNotFoundError: Wie behebt man den Fehler „Python-Modul nicht gefunden'? ModuleNotFoundError: Wie behebt man den Fehler „Python-Modul nicht gefunden'? Jun 25, 2023 pm 09:30 PM

Während des Entwicklungsprozesses von Python stoßen wir häufig auf Fehler, bei denen das Modul nicht gefunden wurde. Die spezifische Manifestation dieses Fehlers besteht darin, dass Python beim Importieren des Moduls einen von zwei Fehlern meldet: ModuleNotFoundError oder ImportError. Dieser Fehler ist sehr ärgerlich und kann die ordnungsgemäße Ausführung des Programms verhindern. In diesem Artikel werden wir uns daher mit den Ursachen dieses Fehlers und der Lösung befassen. ModuleNotFoundError und ImportError in Pyth

Modulare Programmiermethode für neue Java9-Funktionsmodule Modulare Programmiermethode für neue Java9-Funktionsmodule May 19, 2023 pm 01:51 PM

In der Java9-Version führte die Java-Sprache ein sehr wichtiges Konzept ein: Modul. Wenn Sie mit der modularen Verwaltung von JavaScript-Code vertraut sind, sollten Sie sich vertraut fühlen, wenn Sie die modulare Verwaltung von Java 9 sehen. 1. Was ist Javamodule? Ähnlich wie Pakete in Java führen Module eine weitere Ebene der Gruppierung von Java-Code ein. Jede dieser Gruppen (Module) enthält viele Unterpakete. Deklarieren Sie den Ordner und seine Unterordner als Modul, indem Sie die Datei module-info.java zum Stammverzeichnis des Quellcodedateipakets eines Moduls hinzufügen. Die Dateisyntax

Rake-Comb-Verschlüsselungsalgorithmus in Python: Typen und Anwendungsszenarien Rake-Comb-Verschlüsselungsalgorithmus in Python: Typen und Anwendungsszenarien May 07, 2023 pm 09:43 PM

Reversibler Verschlüsselungsalgorithmus (symmetrische Verschlüsselung) Der Verschlüsselungsalgorithmus ist eine Methode zur Umwandlung von Rohdaten in verschlüsselte Daten. Entsprechend den unterschiedlichen Eigenschaften von Verschlüsselungsalgorithmen können sie in reversible Verschlüsselungsalgorithmen und irreversible Verschlüsselungsalgorithmen unterteilt werden. Reversible Verschlüsselungsalgorithmen, auch symmetrische Verschlüsselungsalgorithmen genannt, verwenden denselben Schlüssel für Verschlüsselungs- und Entschlüsselungsprozesse. Bei diesem Algorithmus können die verschlüsselten Daten durch den Entschlüsselungsalgorithmus auf die ursprünglichen Daten zurückgesetzt werden. Dieser Algorithmus wird häufig verwendet, um die Vertraulichkeit von Daten zu schützen, beispielsweise von Dateien, die auf der Festplatte eines Computers gespeichert sind, oder von Daten, die über ein Netzwerk übertragen werden. Vereinfacht gesagt werden die Daten während des Übertragungsprozesses verschlüsselt. Bei der tatsächlichen geschäftlichen Nutzung wird immer noch Klartext verwendet. Verwenden Sie beispielsweise den AES-Verschlüsselungsalgorithmus zum Verschlüsseln von Dateien: fromCrypto.CipherimportAE

Wie kann das Problem „Modulsicherung nicht gefunden' beim Mounten der NTFS-Festplatte unter einem Linux-System gelöst werden? Wie kann das Problem „Modulsicherung nicht gefunden' beim Mounten der NTFS-Festplatte unter einem Linux-System gelöst werden? Dec 31, 2023 pm 03:17 PM

1. Bestätigen Sie zunächst den Linux-Systemkernel [root@localhost~]#uname-r-p2.6.18-194.el5i6862. Gehen Sie zu http://sourceforge.net/projects/linux-ntfs/files/, um das RPM-Paket herunterzuladen des entsprechenden Kernels. Wenn Sie nicht genau den gleichen finden, können Sie den nächstgelegenen finden. Ich konnte nicht genau dasselbe finden. Was ich heruntergeladen habe, ist: kernel-module-ntfs-2.6.18-128.1.1.el5-2.1.27-0.rr.10.11.i686.rpm3. Installieren Sie das RPM-Paket rpm -ivhkernel -m

Vuex-Modul – Einführung in die Verwendung der State-Warehouse-Partitionierung Vuex-Modul – Einführung in die Verwendung der State-Warehouse-Partitionierung Aug 10, 2022 pm 04:01 PM

Vuex besteht hauptsächlich aus den folgenden fünf Teilen: State, Getter, Mutation, Action und Module. Im Folgenden werde ich die Vuex-Modul-State-Warehouse-Segmentierung vorstellen, ich hoffe, dass sie für Freunde in Not hilfreich sein wird.

Laravel-Entwicklung: Wie verschlüsselt man Daten mit Laravel Encryption? Laravel-Entwicklung: Wie verschlüsselt man Daten mit Laravel Encryption? Jun 15, 2023 am 08:31 AM

Laravel ist ein hervorragendes PHP-Framework, dessen Designkonzept einfach und elegant ist und gleichzeitig leistungsstarke Funktionen und benutzerfreundliche API-Schnittstellen bietet, was von Entwicklern allgemein begrüßt wird. Im Laravel-Framework ist es sehr praktisch, LaravelEncryption zum Verschlüsseln von Daten zu verwenden. In diesem Artikel wird die grundlegende Verwendung von LaravelEncryption vorgestellt. Was ist LaravelEncryption? LaravelEncryption ist Larave

Verwendung des Betriebssystemmoduls von Python und Beispiele Verwendung des Betriebssystemmoduls von Python und Beispiele Apr 22, 2023 pm 10:19 PM

Das OS-Modul von Python ist eine der Standardbibliotheken für die Interaktion mit dem Betriebssystem. Es bietet viele nützliche Funktionen und Variablen für die Arbeit mit Dateien und Verzeichnissen. Im Folgenden finden Sie die Verwendung einiger allgemeiner Betriebssystemmodulfunktionen: 1. Aktuelles Arbeitsverzeichnis abrufen: importoscwd=os.getcwd()print(cwd) 2. Aktuelles Arbeitsverzeichnis wechseln: importosos.chdir('/path/to/new /directory' )3. Alle Dateien und Unterverzeichnisse im Verzeichnis auflisten: importosfiles=os.listdir('/path/to/dire

See all articles