Maison développement back-end tutoriel php 请帮写个加密函数

请帮写个加密函数

Jun 13, 2016 am 10:28 AM
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>
Copier après la connexion
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment remplacer mcrypt en php Comment remplacer mcrypt en php Oct 31, 2022 am 09:46 AM

Comment remplacer mcrypt par php : 1. Ouvrez le fichier php correspondant ; 2. Recherchez le code de cryptage et de décryptage d'origine ; 3. Utilisez les méthodes "openssl_encrypt" et "openssl_decrypt" pour le remplacer.

ModuleNotFoundError : Comment résoudre l'erreur de module Python introuvable ? ModuleNotFoundError : Comment résoudre l'erreur de module Python introuvable ? Jun 25, 2023 pm 09:30 PM

Au cours du processus de développement de Python, nous rencontrons souvent des erreurs de module introuvable. La manifestation spécifique de cette erreur est que Python signale l'une des deux erreurs suivantes : ModuleNotFoundError ou ImportError lors de l'importation du module. Cette erreur est très ennuyeuse et peut empêcher le programme de fonctionner correctement, c'est pourquoi dans cet article, nous explorerons les causes de cette erreur et comment la résoudre. ModuleNotFoundError et ImportError dans Pyth

Java9Nouvelle fonctionnalitéMéthode de programmation modulaire du module Java9Nouvelle fonctionnalitéMéthode de programmation modulaire du module May 19, 2023 pm 01:51 PM

Dans la version Java9, le langage Java a introduit un concept très important : le module. Si vous êtes familier avec la gestion modulaire du code JavaScript, vous devriez vous sentir familier lorsque vous verrez la gestion modulaire de Java 9. 1. Qu'est-ce que le module Java ? Un peu similaires aux packages Java, les modules introduisent un autre niveau de regroupement du code Java. Chacun de ces groupes (modules) contient de nombreux sous-packages. Déclarez le dossier et ses sous-dossiers en tant que module en ajoutant le fichier module-info.java à la racine du package de fichiers de code source d'un module. La syntaxe du fichier

Comment résoudre le problème du « fusible de module introuvable » lors du montage d'un disque ntfs sous le système Linux ? Comment résoudre le problème du « fusible de module introuvable » lors du montage d'un disque ntfs sous le système Linux ? Dec 31, 2023 pm 03:17 PM

1. Confirmez d'abord le noyau du système Linux [root@localhost~]#uname-r-p2.6.18-194.el5i6862. Accédez à http://sourceforge.net/projects/linux-ntfs/files/ pour télécharger le package RPM. du noyau correspondant. Si vous ne trouvez pas exactement le même, vous pouvez trouver le plus proche. Je n'ai pas trouvé exactement le même. Ce que j'ai téléchargé est : kernel-module-ntfs-2.6.18-128.1.1.el5-2.1.27-0.rr.10.11.i686.rpm3 Installez le package rpm rpm. -ivhkernel -m

Algorithme de chiffrement Rake-comb en Python : types et scénarios d'application Algorithme de chiffrement Rake-comb en Python : types et scénarios d'application May 07, 2023 pm 09:43 PM

Algorithme de chiffrement réversible (cryptage symétrique) L'algorithme de chiffrement est une méthode de conversion de données brutes en données cryptées. Selon les différentes caractéristiques des algorithmes de chiffrement, ils peuvent être divisés en algorithmes de chiffrement réversibles et algorithmes de chiffrement irréversibles. Les algorithmes de chiffrement réversibles, également appelés algorithmes de chiffrement symétrique, utilisent la même clé pour les processus de chiffrement et de déchiffrement. Dans cet algorithme, les données cryptées peuvent être restaurées aux données d'origine grâce à l'algorithme de décryptage. Cet algorithme est souvent utilisé pour protéger la confidentialité des données, telles que les fichiers stockés sur le disque dur d'un ordinateur ou les données transmises sur un réseau. Pour parler franchement, les données sont cryptées pendant le processus de transmission. Lorsqu'elles sont réellement utilisées dans l'entreprise, le texte en clair est toujours utilisé. Par exemple, utilisez l'algorithme de chiffrement AES pour chiffrer les fichiers : fromCrypto.CipherimportAE

Module Vuex-Introduction à l'utilisation du partitionnement des entrepôts d'état Module Vuex-Introduction à l'utilisation du partitionnement des entrepôts d'état Aug 10, 2022 pm 04:01 PM

Vuex comprend principalement les cinq parties suivantes : État, Getter, Mutation, Action et Module. Ci-dessous, je présenterai la segmentation de l'entrepôt d'état du module Vuex. J'espère que cela sera utile aux amis dans le besoin !

Développement Laravel : Comment chiffrer des données à l'aide de Laravel Encryption ? Développement Laravel : Comment chiffrer des données à l'aide de Laravel Encryption ? Jun 15, 2023 am 08:31 AM

Laravel est un excellent framework PHP. Son concept de conception est simple et élégant, tout en fournissant des fonctions puissantes et des interfaces API faciles à utiliser, ce qui est largement apprécié par les développeurs. Dans le framework Laravel, il est très pratique d'utiliser LaravelEncryption pour chiffrer des données. Cet article présentera l'utilisation de base de LaravelEncryption. Qu’est-ce que LaravelEncryption ? LaravelEncryption est Larave

Comment utiliser le module OS de Python et des exemples Comment utiliser le module OS de Python et des exemples Apr 22, 2023 pm 10:19 PM

Le module os de Python est l'une des bibliothèques standard utilisées pour interagir avec le système d'exploitation. Il fournit de nombreuses fonctions et variables utiles pour travailler avec des fichiers et des répertoires. Voici l'utilisation de certaines fonctions courantes du module OS : 1. Obtenez le répertoire de travail actuel : importoscwd=os.getcwd()print(cwd) 2. Changez le répertoire de travail actuel : importosos.chdir('/path/to/new /directory' )3. Listez tous les fichiers et sous-répertoires du répertoire : importosfiles=os.listdir('/path/to/dire

See all articles