PHP加密与解密

一、不可逆的加密函数为:md5()、crypt() 

md5() 用来计算 MD5 哈稀。语法为:string md5(string str); 

crypt() 将字符串用 UNIX 的标准加密 DES 模块加密。这是单向的加密函数,无法解密。欲比对字符串,将已加密的字符串的头二个字符放在 salt 的参数中,再比对加密后的字符串。语法为:string crypt(string str, string [salt]); 

二、可逆转的加密为:base64_encode()、urlencode() 相对应的解密函数:base64_decode() 、urldecode() 

base64_encode() 将字符串以 MIME BASE64 编码。此编码方式可以让中文字或者图片也能在网络上顺利传输。语法为string base64_encode(string data); 它的解密函数为:string base64_decode(string encoded_data); 将复回原样

 
urlencode() 将字符串以 URL 编码。例如空格就会变成加号。语法为:string urlencode(string str); 
它的解密函数为:string urldecode(string str); 将复回原样 

看段代码: 
复制代码 代码如下:

<?php
define("str","墨剑");
echo 'md5 加密后的结果为:'.md5(str).'<br>';//md5 加密
echo 'crypt加密后的结果为:'.crypt(str,str).'<br>';// crypt加密
$base64encode=base64_encode(str);// base64_encode() 加密
echo 'base64_encode加密后的结果为:'.$base64encode.'<br>';
echo 'base64_decode解密后的结果为:'.base64_decode($base64encode).'<br>'; //base64_decode()解密
$urlencode=urlencode(str); //urlencode() 加密
echo 'urlencode加密后的结果为:'.$urlencode.'<br>';
echo 'urldecode解密后的结果为:'.urldecode($urlencode).'<br>';//urldecode() 解密
?> 

输出的结果为: 

md5 加密后的结果为:ea796af15c74e90faeba49576fa7984b 
crypt加密后的结果为:墨ylCzgTtYXPs 
base64_encode加密后的结果为:xKu9ow== 
base64_decode解密后的结果为:墨剑 
urlencode加密后的结果为:%C4%AB%BD%A3 
urldecode解密后的结果为:墨剑 

注:加号处理:str_replace('+', '%2b', base64_encode(serialize($string)));

时间: 2024-11-03 21:55:38

PHP加密与解密的相关文章

采用Cipher DES针对文件加密、解密

由于经常用一些加密或者解密文件的,所以写了一个简单的采用Cipher DES针对文件加密.解密的工具类,记录一下,防止以后忘记了! import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStrea

xml的加密和解密

xml|加密|解密 xml加密(XML Encryption)是w3c加密xml的标准.这个加密过程包括加密xml文档的元素及其子元素,通过加密,xml的初始内容将被替换,但其xml格式仍然被完好的保留. 介绍我们有3个加密xml的方法 1.仅仅使用对称加密的方法加密xml这种加密方法只使用一个密钥,也就是说无论是加密xml还是解密xml都使用一个相同的密钥.因为这个密钥不会在被加密的xml中保存,所以我们需要在加密和解密的过程中加载这个密钥并保护它不被窃取. 2.使用对称加密和非对称加密相结合

用asp写个简单的加密和解密的类

加密|解密 用asp写个简单的加密和解密的类,在这个类中简单的实现了一个加密和解密.目的是和大家分享一下.这个类的破解非常简单.看看我的注释就知道是怎么回事了.下次编写一个java的加密和解密的类. class Base64Class rem Const dim sBASE_64_CHARACTERS'转化码 dim lenString '计算字符串的长度 dim iCount '计数器 dim returnValue '返回值 dim tempChar'缓存字符 dim tempString'

javascript加密与解密

javascript|加密|解密 javascript加密主要有JScript.Encode加密方式跟escape方式. 加密的用处主要有:1.隐藏自己的js代码,或者阻止他人使用自己的js成果.这方面在网页木马里面尤其使用的多. 2.阻止别人盗链.现在很多宽频网站或者网络电视网站,由于没有使用drm保护, 他们只能通过保护url地址来防止别人直接打开mms或者http地址.故而需要加密地址.这个现在的qq直播网站,sina,sohu的宽频都是这样.不过都是可以破解的. 因为js再怎么加密最终i

ASP中加密与解密对应的函数

函数|加密|解密 在ASP中加密方法有对应的解密方法好象不多,现在根据前辈资料整理出在asp中加密与解密函数 rsa.asp<%rem 在ASP中实现加密与解密,加密方法:根据RSArem 联系:hnsoso@sina.comClass clsRSA Public PrivateKeyPublic PublicKeyPublic Modulus Public Function Crypt(pLngMessage, pLngKey)On Error Resume NextDim lLngModDi

一段在asp中加密与解密对应的函数

函数|加密|解密 在ASP中加密方法有对应的解密方法好象不多,现在根据前辈资料整理出在asp中加密与解密函数 rsa.asp <% rem 在ASP中实现加密与解密,加密方法:根据RSA rem 联系:hnsoso@sina.com Class clsRSA Public PrivateKey Public PublicKey Public Modulus Public Function Crypt(pLngMessage, pLngKey) On Error Resume Next Dim l

數据庫加密与解密技術之一 FOXPRO篇

加密|解密      數据庫加密与解密技術之一 FOXPRO篇作者:  CCBZZP       在現實的應用中, 數据的安全是很重要的, 特別是象銀行等保密性非常重要的部門,所以對數据的加密就特別重要, 筆者在長期的應用中總結出各种數据庫的加密和解密的寫法, 希望對大家有幫助, 同時也和大家一起探討, 一起學習, 共同進步!       FOXPRO為用戶提供一些低級的文件操作函數,利用這些低級的操作函數用戶可以實現對低級文件的操作,這些低級的函數主要有: FCLOSE(),FCREATE()

authcode函数使用异或运算进行加密和解密

康盛的 authcode 函数可以说对中国的PHP界作出了重大贡献.包括康盛自己的产品,以及大部分中国使用PHP的公司都用这个函数进行加密,authcode 是使用异或运算进行加密和解密. 原理如下,假如: 加密 明文:1010 1001 密匙:1110 0011 密文:0100 1010 得出密文0100 1010,解密之需和密匙异或下就可以了 解密 密文:0100 1010 密匙:1110 0011 明文:1010 1001 并没有什么高深的算法,密匙重要性很高,所以,关键在于怎么生成密匙.

在asp中通过vbs类实现rsa加密与解密,建议入精华

加密|解密|精华 在asp中通过vbs类实现rsa加密与解密,建议入精华 本文章有两文件组成 test.asp 测试演示文件 clsrsa.asp 实现rsa加密与解密的vbs类文件下面是代码: 1. test.asp <%rem 文章标题:在asp中通过vbs类实现rsa加密与解密rem 收集整理:yanekrem 联系:aspboy@263.net %><%Option Explicit%><!--#INCLUDE FILE="clsRSA.asp"-

用Asp写个加密和解密的类

用asp写个简单的加密和解密的类,在这个类中简单的实现了一个加密和解密.目的是和大家分享一下.这个类的破解非常简单.看看我的注释就知道是怎么回事了.下次编写一个java的加密和解密的类. class Base64Class rem Const dim sBASE_64_CHARACTERS转化码 dim lenString 计算字符串的长度 dim iCount 计数器 dim returnValue 返回值 dim tempChar缓存字符 dim tempString缓存字符串 dim pa