请帮写个加密函数

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>
Salin selepas log masuk
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk menggantikan mcrypt dalam php Bagaimana untuk menggantikan mcrypt dalam php Oct 31, 2022 am 09:46 AM

Cara menggantikan mcrypt dengan php: 1. Buka fail php yang sepadan 2. Cari kod penyulitan dan penyahsulitan asal 3. Gunakan kaedah "openssl_encrypt" dan "openssl_decrypt" untuk menggantikannya.

ModuleNotFoundError: Bagaimana untuk menyelesaikan ralat modul Python tidak dijumpai? ModuleNotFoundError: Bagaimana untuk menyelesaikan ralat modul Python tidak dijumpai? Jun 25, 2023 pm 09:30 PM

Semasa proses pembangunan Python, kami sering menghadapi ralat modul tidak ditemui. Manifestasi khusus ralat ini ialah Python melaporkan satu daripada dua ralat: ModuleNotFoundError atau ImportError apabila mengimport modul. Ralat ini sangat menjengkelkan dan boleh menghalang program daripada berjalan dengan betul, jadi dalam artikel ini, kami akan meneroka punca ralat ini dan cara menyelesaikannya. ModuleNotFoundError dan ImportError dalam Pyth

Kaedah pengaturcaraan modular modul ciri baharu Java9 Kaedah pengaturcaraan modular modul ciri baharu Java9 May 19, 2023 pm 01:51 PM

Dalam versi Java9, bahasa Java memperkenalkan konsep yang sangat penting: modul. Jika anda sudah biasa dengan pengurusan modular kod JavaScript, anda sepatutnya berasa biasa apabila anda melihat pengurusan modular Java 9. 1. Apakah Javamodule? Agak serupa dengan pakej dalam Java, modul memperkenalkan satu lagi tahap pengelompokan kod Java. Setiap kumpulan (modul) tersebut mengandungi banyak sub-pakej. Isytiharkan folder dan subfoldernya sebagai modul dengan menambahkan fail module-info.java pada akar pakej fail kod sumber modul. Sintaks fail

Bagaimana untuk menyelesaikan masalah 'fius modul tidak dijumpai' semasa memasang cakera ntfs di bawah sistem Linux? Bagaimana untuk menyelesaikan masalah 'fius modul tidak dijumpai' semasa memasang cakera ntfs di bawah sistem Linux? Dec 31, 2023 pm 03:17 PM

1. Mula-mula sahkan kernel sistem Linux [root@localhost~]#uname-r-p2.6.18-194.el5i6862 Pergi ke http://sourceforge.net/projects/linux-ntfs/files/ untuk memuat turun pakej rpm. daripada kernel yang sepadan Jika anda tidak dapat mencari yang sama, anda boleh mencari yang paling hampir. Saya tidak dapat mencari yang sama yang saya muat turun ialah: kernel-module-ntfs-2.6.18-128.1.1.el5-2.1.27-0.rr.10.11.i686.rpm3 -ivhkernel -m

Algoritma penyulitan rake-comb dalam Python: jenis dan senario aplikasi Algoritma penyulitan rake-comb dalam Python: jenis dan senario aplikasi May 07, 2023 pm 09:43 PM

Algoritma Penyulitan Boleh Balik (Symmetric Encryption) Algoritma penyulitan ialah kaedah menukar data mentah kepada data yang disulitkan. Mengikut ciri-ciri berbeza algoritma penyulitan, ia boleh dibahagikan kepada algoritma penyulitan boleh balik dan algoritma penyulitan tidak boleh balik. Algoritma penyulitan boleh balik, juga dikenali sebagai algoritma penyulitan simetri, menggunakan kunci yang sama untuk proses penyulitan dan penyahsulitan. Dalam algoritma ini, data yang disulitkan boleh dipulihkan kepada data asal melalui algoritma penyahsulitan. Algoritma ini sering digunakan untuk melindungi kerahsiaan data, seperti fail yang disimpan pada pemacu keras komputer atau data yang dihantar melalui rangkaian. Secara terang-terangan, data disulitkan semasa proses penghantaran Apabila ia benar-benar digunakan dalam perniagaan, teks biasa masih digunakan. Contohnya, gunakan algoritma penyulitan AES untuk menyulitkan fail: dariCrypto.CipherimportAE

Modul Vuex-Pengenalan kepada penggunaan pembahagian gudang negeri Modul Vuex-Pengenalan kepada penggunaan pembahagian gudang negeri Aug 10, 2022 pm 04:01 PM

Vuex terutamanya terdiri daripada lima bahagian berikut: State, Getter, Mutation, Action, dan Module Di bawah saya akan memperkenalkan pembahagian gudang keadaan Modul Vuex Saya harap ia akan membantu rakan yang memerlukan.

Pembangunan Laravel: Bagaimana untuk menyulitkan data menggunakan Penyulitan Laravel? Pembangunan Laravel: Bagaimana untuk menyulitkan data menggunakan Penyulitan Laravel? Jun 15, 2023 am 08:31 AM

Laravel ialah rangka kerja PHP yang sangat baik Konsep reka bentuknya ringkas dan elegan, sambil menyediakan fungsi yang berkuasa dan antara muka API yang mudah digunakan, yang disambut baik oleh pembangun. Dalam rangka kerja Laravel, sangat mudah untuk menggunakan LaravelEncryption untuk menyulitkan data. Artikel ini akan memperkenalkan penggunaan asas LaravelEncryption. Apakah LaravelEncryption? LaravelEncryption ialah Larave

Cara menggunakan modul dan contoh OS Python Cara menggunakan modul dan contoh OS Python Apr 22, 2023 pm 10:19 PM

Modul os Python ialah salah satu perpustakaan standard yang digunakan untuk berinteraksi dengan sistem pengendalian Ia menyediakan banyak fungsi dan pembolehubah yang berguna untuk bekerja dengan fail dan direktori. Berikut ialah penggunaan beberapa fungsi modul os biasa: 1. Dapatkan direktori kerja semasa: importoscwd=os.getcwd()print(cwd) 2. Tukar direktori kerja semasa: importosos.chdir('/path/to/new /directory' )3. Senaraikan semua fail dan subdirektori dalam direktori: importosfiles=os.listdir('/path/to/dire

See all articles