php数字加密
对PHP文件进行加密,通常使用 Zend Guard,这是目前市面上应用比较多的PHP源码加密产品。
加密流程大概如下:
1、打开Zend Guard 5.5.0,[File]->[New]->[Zend Guard Project],新建项目。
2、点击 Next ,下一步。弹出如下对话框,选择要进行加密的源文件或文件夹。
3、接下来是选择PHP的版本[与你web服务器上PHP的版本相对照],这里很重要,版本不对会出错,[Finish]完成项目的创建。
4、在Zend Guard左侧的Guard Explorer中,可以看到你新建的项目了,鼠标选中项目名称后,右键单击[Encode Project],完成。
Ⅱ php加密解密问题,一道10000+公司的phper,大公司的php面试题。
<?php
/**
*加密解密类
*该算法仅支持加密数字。比较适用于数据库中id字段的加密解密,以及根据数字显示url的加密。
*@author深秋的竹子
*@versionalpha
*@加密原则标记长度+补位+数字替换
*@加密步骤:
*将a-z,A-Z,0-962个字符打乱,取前M(数字最大的位数)位作为标记长度字符串,取第M+1到第M+10位为数字替换字符串,剩余的为补位字符串
*1.计算数字长度n,取乱码的第n位作为标记长度。
*2.计算补位的长度,加密串的长度N-1-n为补位的长度。根据指定的算法得到补位字符串。
*3.根据数字替换字符串替换数字,得到数字加密字符串。
*标记长度字符+补位字符串+数字加密字符串=加密串
*Usage:
*$obj=newXDeode(9);
*$e_txt=$obj->encode(123);
*echo$e_txt.'<br/>';
*echo$key->decode($e_txt);
*/
classXDeode{
private$strbase="";
private$key,$length,$codelen,$codenums,$codeext;
function__construct($length=9,$key=2543.5415412812){
$this->key=$key;
$this->length=$length;
$this->codelen=substr($this->strbase,0,$this->length);
$this->codenums=substr($this->strbase,$this->length,10);
$this->codeext=substr($this->strbase,$this->length+10);
}
functionencode($nums){
$rtn="";
$numslen=strlen($nums);
//密文第一位标记数字的长度
$begin=substr($this->codelen,$numslen-1,1);
//密文的扩展位
$extlen=$this->length-$numslen-1;
$temp=str_replace('.','',$nums/$this->key);
$temp=substr($temp,-$extlen);
$arrextTemp=str_split($this->codeext);
$arrext=str_split($temp);
foreach($arrextas$v){
$rtn.=$arrextTemp[$v];
}
$arrnumsTemp=str_split($this->codenums);
$arrnums=str_split($nums);
foreach($arrnumsas$v){
$rtn.=$arrnumsTemp[$v];
}
return$begin.$rtn;
}
functiondecode($code){
$begin=substr($code,0,1);
$rtn='';
$len=strpos($this->codelen,$begin);
if($len!==false){
$len++;
$arrnums=str_split(substr($code,-$len));
foreach($arrnumsas$v){
$rtn.=strpos($this->codenums,$v);
}
}
return$rtn;
}
}
一个PHP针对数字的加密解密类
你可以参照这个来写
Ⅲ PHP中加密方式思路求解
加密方式有很多,比如最简单的加密函数md5,其他可以根据逻辑代码拼接字符串,然后再加密
Ⅳ PHP怎么加密后是一串数字
应该是自己编写的,,这个也很简单,比如:要加密的数是123,加密算法是:
INT((A*5-A/4)*135+A-A*6),当然以上只是我自己写的一个,具体他是怎么写的要推算,能明白我的意思吗?
Ⅳ php怎么把参数id加密成一长串数字
urlencode(str)//加密
urldecode(str)//解密
Ⅵ 谁能告诉我这个php是如何加密的吗
算法都给出了,这个就是简单的查字典转换为字符,下面举例演示算法过程:
最简单的,假设itemid值为1,程序把它乘以16,然后取A-Za-z0-9+/这64个字符里面对应的那个,那么结果去是第16个,就是Q(从0开始数)
继续几个最简单例子,itemid值为2、取32位,值是g,明白过来了没有Z是25、a是27、...;再来一个itemid值为3、取48位、值为w
上面的特殊情况是乘积小于64,那么结果就是一个字符。但是一般都不会这么简单,如果乘积大于64的呢,程序代码是按64取模的多位数字,例如itemid值为5,那么乘积80,第一次取第16个字符、第二次取第1个字符,可以看成倒序的64进制数。
Ⅶ php写一个简单的 数字转化为同位数的数字 的加密可逆函数,带干扰数的(可以用加减乘除)
<?php
/**
* DES Encrypt
*
* @param $input - stuff to decrypt
* @param $key - the secret key to use
* @return string
**/
function DES_Encrypt($input, $key)
{
$input = trim($input);
$key = substr(md5($key), 0, 24);
$td = mcrypt_mole_open('tripledes', '', 'ecb', '');
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
mcrypt_generic_init($td, $key, $iv);
$encrypted_data = mcrypt_generic($td, $input);
mcrypt_generic_deinit($td);
mcrypt_mole_close($td);
return base64_encode($encrypted_data);
}
/**
* DES Decrypt
*
* @param $input - stuff to decrypt
* @param $key - the secret key to use
* @return string
**/
function DES_Decrypt($input, $key)
{
$input = base64_decode($input);
$td = mcrypt_mole_open('tripledes', '', 'ecb', '');
$key = substr(md5($key), 0, 24);
$iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
mcrypt_generic_init($td, $key, $iv);
$decrypted_data = mdecrypt_generic($td, $input);
mcrypt_generic_deinit($td);
mcrypt_mole_close($td);
return trim(chop($decrypted_data));
}
Ⅷ php纯数字加密为可逆的定长密文
你这不是md5加密吗,sql直接写就行了。
你在数据库工具中执行一下,select md5(1);
或者php的md5函数
echo md5(1);
php自带可逆的加密是base64_encode和base64_decode,但是这个不是等长的,根据输入的内容变换长度。估计这个不适合你。
你还是网络”php加密解密“吧,有现成的函数。
Ⅸ PHP如何加密,密文能比较短
用超级兔子比较好点
超级兔子他可以帮你加密文件也可以帮你隐藏你的加密文件
这样比较保险点`!
Ⅹ php 方法,将一个数字加密(或者叫转换)为另一个数字(数字位数不变)
把数字每一位变成9减它的数
<?php
$a=1234567; //此处为待转换的数
$b=$a."";
$a=str_split($a);
for($i=0;$i<strlen($b);$i++)
{
$a[$i]=9-$a[$i];
echo $a[$i];
}
?>