中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

PHP加密解密字符串匯總
來源:易賢網 閱讀:880 次 日期:2015-04-28 15:20:57
溫馨提示:易賢網小編為您整理了“PHP加密解密字符串匯總”,方便廣大網友查閱!

PHP加密解密函數分享,一個是Discuz!的authcode加密函數(帶詳細分解),一個是encrypt()函數。需要使用PHP將特定的信息進行加密,也就是通過加密算法生成一個加密字符串,這個加密后的字符串可以通過解密算法進行解密,便于程序對解密后的信息進行處理。

項目中有時我們需要使用PHP將特定的信息進行加密,也就是通過加密算法生成一個加密字符串,這個加密后的字符串可以通過解密算法進行解密,便于程序對解密后的信息進行處理。

最常見的應用在用戶登錄以及一些API數據交換的場景。

筆者收錄了一些比較經典的PHP加密解密函數代碼,分享給大家。加密解密原理一般都是通過一定的加密解密算法,將密鑰加入到算法中,最終得到加密解密結果。

1、非常給力的authcode加密函數,Discuz!經典代碼(帶詳解):

function authcode($string, $operation = 'DECODE', $key = '', $expiry = 0) {

// 動態密匙長度,相同的明文會生成不同密文就是依靠動態密匙

$ckey_length = 4;

// 密匙

$key = md5($key ? $key : $GLOBALS['discuz_auth_key']);

// 密匙a會參與加解密

$keya = md5(substr($key, 0, 16));

// 密匙b會用來做數據完整性驗證

$keyb = md5(substr($key, 16, 16));

// 密匙c用于變化生成的密文

$keyc = $ckey_length ? ($operation == 'DECODE' ? substr($string, 0, $ckey_length):

substr(md5(microtime()), -$ckey_length)) : '';

// 參與運算的密匙

$cryptkey = $keya.md5($keya.$keyc);

$key_length = strlen($cryptkey);

// 明文,前10位用來保存時間戳,解密時驗證數據有效性,10到26位用來保存$keyb(密匙b),

//解密時會通過這個密匙驗證數據完整性

// 如果是解碼的話,會從第$ckey_length位開始,因為密文前$ckey_length位保存 動態密匙,以保證解密正確

$string = $operation == 'DECODE' ? base64_decode(substr($string, $ckey_length)) :

sprintf('%010d', $expiry ? $expiry + time() : 0).substr(md5($string.$keyb), 0, 16).$string;

$string_length = strlen($string);

$result = '';

$box = range(0, 255);

$rndkey = array();

// 產生密匙簿

for($i = 0; $i <= 255; $i++) {

$rndkey[$i] = ord($cryptkey[$i % $key_length]);

}

// 用固定的算法,打亂密匙簿,增加隨機性,好像很復雜,實際上對并不會增加密文的強度

for($j = $i = 0; $i < 256; $i++) {

$j = ($j + $box[$i] + $rndkey[$i]) % 256;

$tmp = $box[$i];

$box[$i] = $box[$j];

$box[$j] = $tmp;

}

// 核心加解密部分

for($a = $j = $i = 0; $i < $string_length; $i++) {

$a = ($a + 1) % 256;

$j = ($j + $box[$a]) % 256;

$tmp = $box[$a];

$box[$a] = $box[$j];

$box[$j] = $tmp;

// 從密匙簿得出密匙進行異或,再轉成字符

$result .= chr(ord($string[$i]) ^ ($box[($box[$a] + $box[$j]) % 256]));

}

if($operation == 'DECODE') {

// 驗證數據有效性,請看未加密明文的格式

if((substr($result, 0, 10) == 0 || substr($result, 0, 10) - time() > 0) &&

substr($result, 10, 16) == substr(md5(substr($result, 26).$keyb), 0, 16)) {

return substr($result, 26);

} else {

return '';

}

} else {

// 把動態密匙保存在密文里,這也是為什么同樣的明文,生產不同密文后能解密的原因

// 因為加密后的密文可能是一些特殊字符,復制過程可能會丟失,所以用base64編碼

return $keyc.str_replace('=', '', base64_encode($result));

}

}

函數authcode($string, $operation, $key, $expiry)中的$string:字符串,明文或密文;$operation:DECODE表示解密,其它表示加密;$key:密匙;$expiry:密文有效期。

用法:

$str = 'abcdef';

$key = 'www.helloweba.com';

echo authcode($str,'ENCODE',$key,0); //加密

$str = '56f4yER1DI2WTzWMqsfPpS9hwyoJnFP2MpC8SOhRrxO7BOk';

echo authcode($str,'DECODE',$key,0); //解密

2、加解密函數encrypt():

function encrypt($string,$operation,$key=''){

$key=md5($key);

$key_length=strlen($key);

$string=$operation=='D'?base64_decode($string):substr(md5($string.$key),0,8).$string;

$string_length=strlen($string);

$rndkey=$box=array();

$result='';

for($i=0;$i<=255;$i++){

$rndkey[$i]=ord($key[$i%$key_length]);

$box[$i]=$i;

}

for($j=$i=0;$i<256;$i++){

$j=($j+$box[$i]+$rndkey[$i])%256;

$tmp=$box[$i];

$box[$i]=$box[$j];

$box[$j]=$tmp;

}

for($a=$j=$i=0;$i<$string_length;$i++){

$a=($a+1)%256;

$j=($j+$box[$a])%256;

$tmp=$box[$a];

$box[$a]=$box[$j];

$box[$j]=$tmp;

$result.=chr(ord($string[$i])^($box[($box[$a]+$box[$j])%256]));

}

if($operation=='D'){

if(substr($result,0,8)==substr(md5(substr($result,8).$key),0,8)){

return substr($result,8);

}else{

return'';

}

}else{

return str_replace('=','',base64_encode($result));

}

}

函數encrypt($string,$operation,$key)中$string:需要加密解密的字符串;$operation:判斷是加密還是解密,E表示加密,D表示解密;$key:密匙。

用法:

$str = 'abc';

$key = 'www.helloweba.com';

$token = encrypt($str, 'E', $key);

echo '加密:'.encrypt($str, 'E', $key);

echo '解密:'.encrypt($str, 'D', $key);

更多信息請查看IT技術專欄

更多信息請查看網絡編程
易賢網手機網站地址:PHP加密解密字符串匯總
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026上岸·考公考編培訓報班

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
黄色成人小视频| 99riav国产精品| 亚洲女与黑人做爰| 亚洲高清自拍| 国产一区二区三区电影在线观看| 美女视频黄 久久| 亚洲性线免费观看视频成熟| 亚洲日本在线视频观看| 尤物在线精品| 国内精品嫩模av私拍在线观看| 国产精品进线69影院| 欧美日韩三级视频| 欧美激情精品久久久久久黑人| 91久久在线视频| 狠狠色伊人亚洲综合网站色| 亚洲片在线资源| 亚洲黄色av一区| 亚洲精品一区在线观看| 亚洲三级观看| 亚洲伦理自拍| 在线亚洲激情| 亚洲欧美精品一区| 国产精品一区二区三区乱码| 欧美日韩国产系列| 欧美高清视频一区| 欧美激情欧美狂野欧美精品 | 国产精品白丝jk黑袜喷水| 欧美剧在线观看| 欧美日韩亚洲视频| 国产精品视频999| 国产一区二区电影在线观看 | 午夜精品亚洲| 一本色道久久综合狠狠躁篇的优点 | 欧美1区3d| 亚洲午夜免费视频| 亚久久调教视频| 亚洲影音一区| 亚洲精品在线免费| 欧美日韩综合一区| 免费欧美网站| 一区二区三区久久精品| 久久精品国产亚洲a| 亚洲美女视频| 一区二区日韩| 午夜精品久久久久久久男人的天堂| 国产精品午夜在线| 亚洲一区二区三区在线观看视频| 日韩一级黄色av| 国产精品99久久久久久白浆小说 | 国产精品久久一级| 国产乱码精品一区二区三区五月婷 | 亚洲一区亚洲| 一区二区三区鲁丝不卡| 国产精品入口夜色视频大尺度| 性感少妇一区| 韩国av一区二区三区在线观看| 中文一区二区在线观看| 久久久久这里只有精品| 一区一区视频| 亚洲精品久久久久久久久久久| 亚洲一区国产视频| 久久蜜桃av一区精品变态类天堂| 国模吧视频一区| 亚洲国产二区| 亚洲在线一区二区| 久久视频免费观看| 亚洲欧美美女| 欧美亚洲免费高清在线观看| 奶水喷射视频一区| 欧美系列精品| 亚洲国产裸拍裸体视频在线观看乱了中文 | 国产一区二区按摩在线观看| 国产在线拍揄自揄视频不卡99 | 亚洲欧美日韩国产成人精品影院| 久久人人爽人人爽爽久久| 欧美国产亚洲精品久久久8v| 国产在线观看一区| 亚洲理论电影网| 亚洲一级网站| 国产精品有限公司| 日韩视频二区| 久久久99国产精品免费| 欧美视频官网| 亚洲日本理论电影| 久久只精品国产| 国内精品视频一区| 欧美一区三区二区在线观看| 午夜一区二区三视频在线观看| 美女精品网站| 一区二区三区在线观看国产| 午夜精品久久久久久久久| 欧美日韩国产系列| 亚洲日本电影在线| 久久精品中文字幕一区| 国产精品视频999| 一本色道久久加勒比88综合| 欧美自拍偷拍午夜视频| 欧美国产综合视频| 亚洲国产精品尤物yw在线观看 | 欧美日韩另类综合| 91久久国产综合久久蜜月精品 | 久久婷婷人人澡人人喊人人爽| 欧美精品色综合| 国产精品一区二区三区四区五区| 亚洲欧美日韩国产精品| 国产视频欧美视频| 亚洲一区二区三区精品在线 | 蜜桃av一区二区在线观看| 国产欧美在线观看| 亚洲视频一区在线| 欧美午夜片在线免费观看| 99热这里只有成人精品国产| 欧美人与性动交α欧美精品济南到| 中文一区在线| 久久国产婷婷国产香蕉| 亚洲国产美女| 欧美理论电影网| 亚洲伊人伊色伊影伊综合网| 国产欧美精品在线播放| 久久视频免费观看| 亚洲国产精品va在线观看黑人| 美女精品在线观看| 日韩一级精品| 国产精品国码视频| 在线观看亚洲一区| 国产一区二区三区在线观看免费 | 亚洲视频在线观看一区| 国产精品久久久对白| 亚洲欧美日本国产专区一区| 国内精品久久久久国产盗摄免费观看完整版 | 久久精品亚洲国产奇米99| 韩国成人精品a∨在线观看| 麻豆精品在线播放| 欧美日韩不卡一区| 亚洲高清不卡av| 欧美日韩一区二区三区在线视频| 亚洲欧美视频在线观看| 国产一区二区福利| 欧美成人a∨高清免费观看| 国产精品99久久久久久久久| 国产综合久久| 欧美日韩亚洲一区二区三区| 久久精品一区中文字幕| 亚洲精品一区二区三区99| 国产精品尤物| 欧美在线播放视频| 亚洲精品国精品久久99热一| 欧美视频在线不卡| 在线天堂一区av电影| 久久精品人人做人人爽| 1000精品久久久久久久久| 久久亚洲欧美| 欧美~级网站不卡| 欧美成人xxx| 亚洲欧美日韩精品一区二区| 在线看一区二区| 欧美性事在线| 欧美91大片| 亚洲综合色噜噜狠狠| 亚洲国产一区二区三区高清 | 欧美日本一区二区三区| 国产啪精品视频| 久久精品最新地址| 一本色道精品久久一区二区三区| 狠狠色狠狠色综合日日91app| 欧美日韩一区二区三区在线看 | 欧美一区二区精品| 亚洲精品免费一二三区| 国产一区二区三区直播精品电影| 欧美日韩黄视频| 久久精品国产亚洲一区二区| 亚洲校园激情| 亚洲美女中文字幕| 亚洲第一狼人社区| 狠狠v欧美v日韩v亚洲ⅴ| 国产精品久久久久久久久果冻传媒 | 欧美一二三视频| 中国女人久久久| 99视频+国产日韩欧美| 亚洲人成人一区二区在线观看 | 在线不卡中文字幕| 亚洲免费成人av| 欧美在线影院| 欧美激情按摩| 国产午夜精品在线| 亚洲美洲欧洲综合国产一区| 欧美主播一区二区三区| 欧美连裤袜在线视频| 国产伊人精品| 一区二区三区免费看| 久久久国产精品一区二区三区| 欧美日本免费一区二区三区| 国产亚洲亚洲| 一区二区三区av| 久久综合导航| 国产欧美成人| 亚洲伦理久久| 麻豆精品在线播放| 国产欧美在线看| 亚洲视频在线观看三级|