婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > php DES加密算法實例分析

php DES加密算法實例分析

熱門標簽:長春人工外呼系統服務商 廣東地市地圖標注 哪里辦理400電話 高德地圖標注家 廣州防封卡外呼系統多少錢一個月 仁和怎么申請400開頭的電話 外呼系統撥打暫時無法接通 怎么向銷售公司推銷外呼系統 江西手機自動外呼防封系統是什么

本文實例講述了php DES加密算法。分享給大家供大家參考,具體如下:

yii框架的DES代碼

?php
/**
 *@see Yii CSecurityManager;
 */
class Des{
 public static function encrypt($data,$key){
   $module=mcrypt_module_open('des','', MCRYPT_MODE_CBC,'');
   $key=substr(md5($key),0,mcrypt_enc_get_key_size($module));
   srand();
   $iv=mcrypt_create_iv(mcrypt_enc_get_iv_size($module), MCRYPT_RAND);
   mcrypt_generic_init($module,$key,$iv);
   $encrypted=$iv.mcrypt_generic($module,$data);
   mcrypt_generic_deinit($module);
   mcrypt_module_close($module);
   return md5($data).'_'.base64_encode($encrypted);
 }
 public static function decrypt($data,$key){  
   $_data = explode('_',$data,2);
   if(count($_data)2){
    return false;
   }
   $data = base64_decode($_data[1]);   
   $module=mcrypt_module_open('des','', MCRYPT_MODE_CBC,'');
   $key=substr(md5($key),0,mcrypt_enc_get_key_size($module));
   $ivSize=mcrypt_enc_get_iv_size($module);
   $iv=substr($data,0,$ivSize);
   mcrypt_generic_init($module,$key,$iv);
   $decrypted=mdecrypt_generic($module,substr($data,$ivSize,strlen($data)));
   mcrypt_generic_deinit($module);
   mcrypt_module_close($module);
   $decrypted = rtrim($decrypted,"\0");    
   if($_data[0]!=md5($decrypted)){
    return false;
   }
   return $decrypted;
 }
}

在網上看到了一篇文章,講到:

由于PHP使用mcrypt擴展進行3DES加密,填充模式是跟JAVA以及.NET是不一樣的,JAVA和.NET填充模式使用的是PKCS7。

所以PHP端必須自定義一個函數對加密字符串進行PKCS7模式補位填充。

另外一點就是雙方的KEY注意進行base64編碼,最后PHP端經過3DES加密后得到的結果也需要進行base64編碼。

以上幾點都做好之后,加密結果就一致了。

下面是兼容C#和java的3DES加密的算法

?php
class STD3Des
{
  private $key = "";
  private $iv = "";
  /**
  * 構造,傳遞二個已經進行base64_encode的KEY與IV
  *
  * @param string $key
  * @param string $iv
  */
  function __construct ($key, $iv)
  {
    if (empty($key) || empty($iv)) {
      echo 'key and iv is not valid';
      exit();
    }
    $this->key = $key;
    $this->iv = $iv;
  }
  /**
  *加密
  * @param type> $value
  * @return type>
  */
  public function encrypt ($value)
  {
    $td = mcrypt_module_open(MCRYPT_3DES, '', MCRYPT_MODE_CBC, '');
    $iv = base64_decode($this->iv);
    $value = $this->PaddingPKCS7($value);
    $key = base64_decode($this->key);
    mcrypt_generic_init($td, $key, $iv);
    $ret = base64_encode(mcrypt_generic($td, $value));
    mcrypt_generic_deinit($td);
    mcrypt_module_close($td);
    return $ret;
  }
  /**
  *解密
  * @param type> $value
  * @return type>
  */
  public function decrypt ($value)
  {
    $td = mcrypt_module_open(MCRYPT_3DES, '', MCRYPT_MODE_CBC, '');
    $iv = base64_decode($this->iv);
    $key = base64_decode($this->key);
    mcrypt_generic_init($td, $key, $iv);
    $ret = trim(mdecrypt_generic($td, base64_decode($value)));
    $ret = $this->UnPaddingPKCS7($ret);
    mcrypt_generic_deinit($td);
    mcrypt_module_close($td);
    return $ret;
  }
  private function PaddingPKCS7 ($data)
  {
    $block_size = mcrypt_get_block_size('tripledes', 'cbc');
    $padding_char = $block_size - (strlen($data) % $block_size);
    $data .= str_repeat(chr($padding_char), $padding_char);
    return $data;
  }
  private function UnPaddingPKCS7($text)
  {
    $pad = ord($text{strlen($text) - 1});
    if ($pad > strlen($text)) {
      return false;
    }
    if (strspn($text, chr($pad), strlen($text) - $pad) != $pad) {
      return false;
    }
    return substr($text, 0, - 1 * $pad);
  }
}
?>

PS:關于加密解密感興趣的朋友還可以參考本站在線工具:

在線DES加密/解密工具
http://tools.jb51.net/password/des_encode

MD5在線加密工具:
http://tools.jb51.net/password/CreateMD5Password

在線散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt

在線MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha

在線sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.jb51.net/password/sha_encode

更多關于PHP相關內容感興趣的讀者可查看本站專題:《php加密方法總結》、《PHP編碼與轉碼操作技巧匯總》、《PHP數學運算技巧總結》、《PHP數組(Array)操作技巧大全》、《php字符串(string)用法總結》、《PHP數據結構與算法教程》、《php程序設計算法總結》及《php正則表達式用法總結》

希望本文所述對大家PHP程序設計有所幫助。

您可能感興趣的文章:
  • PHP實現基于3DES算法加密解密字符串示例
  • PHP對稱加密算法(DES/AES)類的實現代碼
  • php實現和c#一致的DES加密解密實例
  • PHP實現的DES加密解密封裝類完整實例
  • PHP簡單實現DES加密解密的方法
  • PHP中加密解密函數與DES加密解密實例
  • 兼容PHP和Java的des加密解密代碼分享
  • 如何通過PHP實現Des加密算法代碼實例

標簽:鷹潭 赤峰 迪慶 三亞 烏魯木齊 濟寧 山南 南寧

巨人網絡通訊聲明:本文標題《php DES加密算法實例分析》,本文關鍵詞  php,DES,加密,算法,實例分析,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《php DES加密算法實例分析》相關的同類信息!
  • 本頁收集關于php DES加密算法實例分析的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    久久国产精品色| 色94色欧美sute亚洲线路一久| 91在线porny国产在线看| 欧美久久久久免费| 亚洲视频一区在线| 国产成+人+日韩+欧美+亚洲| 欧美精品黑人性xxxx| 亚洲婷婷在线视频| 色综合久久久久久久久久久| 久久精品视频一区二区三区| 亚洲国产精品人人做人人爽| 一本色道a无线码一区v| 亚洲国产精品国自产拍av| 国内精品免费在线观看| 日韩精品中文字幕一区二区三区 | av不卡在线观看| 国产精品久久毛片a| 成年人国产精品| 自拍偷拍国产亚洲| 欧美性xxxxx极品少妇| 亚洲成人tv网| 日韩免费视频一区二区| 免费人成精品欧美精品 | 成人免费观看av| 一区二区三区**美女毛片| 日本丰满少妇一区二区三区| 亚洲视频在线一区二区| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 一区在线播放视频| 欧美浪妇xxxx高跟鞋交| 蜜桃久久久久久| 国产日产欧美一区| 欧美三日本三级三级在线播放| 全国精品久久少妇| 综合久久国产九一剧情麻豆| 在线观看视频一区二区| 国产一区二区三区日韩| 亚洲欧美日韩国产成人精品影院| 欧美日韩aaaaa| av亚洲精华国产精华精华| 亚洲自拍另类综合| 欧美激情一区在线观看| 欧美欧美欧美欧美首页| 韩国精品主播一区二区在线观看 | 日韩成人精品在线观看| 午夜伦理一区二区| 亚洲欧美日韩国产另类专区| 国产成a人无v码亚洲福利| 一区二区日韩电影| 国产精品乱码一区二三区小蝌蚪| 欧美精品久久久久久久久老牛影院| 国产成人av电影在线| 精品一区在线看| 青草国产精品久久久久久| 亚洲一区二区三区美女| 亚洲免费在线看| 亚洲精品免费在线| 亚洲精品第1页| 一区二区三区**美女毛片| 夜夜精品浪潮av一区二区三区| 国产精品久久久久久久午夜片| 国产三级精品在线| 国产视频一区二区三区在线观看| 久久午夜国产精品| 国产婷婷色一区二区三区在线| 久久久综合激的五月天| 久久精品人人做人人爽人人| 精品国产露脸精彩对白| 久久精品夜色噜噜亚洲aⅴ| 久久精品亚洲精品国产欧美| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 久久久高清一区二区三区| 日本一区二区三区在线观看| 中文字幕在线不卡| 亚洲精品高清在线观看| 日韩电影免费一区| 国产成人在线视频网址| 欧美日韩一区二区三区四区五区 | 精品成人在线观看| 国产婷婷色一区二区三区| 亚洲精品国产无套在线观 | 欧美国产日韩一二三区| 亚洲精品免费电影| 国产精品一区二区在线播放| 97精品视频在线观看自产线路二| 91久久精品一区二区二区| 69堂亚洲精品首页| 日韩精品一区二区在线观看| 色婷婷亚洲一区二区三区| 欧美熟乱第一页| 久久久久九九视频| 中文字幕综合网| 久久9热精品视频| 理论电影国产精品| 日本黄色一区二区| 精品粉嫩超白一线天av| 亚洲欧美日韩人成在线播放| 午夜婷婷国产麻豆精品| 成人app软件下载大全免费| 欧美亚洲日本国产| 欧美成人女星排名| 亚洲精品日韩一| 国产91综合一区在线观看| 一本一本大道香蕉久在线精品 | 成人精品国产福利| 日韩午夜三级在线| 国产精品成人一区二区三区夜夜夜| 一区二区三区波多野结衣在线观看| 一区二区激情小说| 97精品视频在线观看自产线路二| 日韩欧美专区在线| 亚洲成人激情综合网| 91蝌蚪porny成人天涯| 久久久综合网站| 免费视频最近日韩| 欧美丰满嫩嫩电影| 日本欧美久久久久免费播放网| 欧美日韩综合色| 亚洲精品乱码久久久久久黑人 | 国产欧美精品一区二区色综合朱莉| 日韩av一区二区三区| 欧美亚洲国产bt| 蜜桃一区二区三区四区| 18涩涩午夜精品.www| 亚洲风情在线资源站| 色婷婷综合在线| 亚洲v日本v欧美v久久精品| 欧美性色黄大片手机版| 日韩va欧美va亚洲va久久| 6080亚洲精品一区二区| 美女视频免费一区| 久久女同性恋中文字幕| 不卡视频在线看| 一区二区三区成人| 欧美一卡二卡在线| 免费欧美在线视频| 国产精品久久午夜夜伦鲁鲁| 色综合久久九月婷婷色综合| 亚洲电影视频在线| 亚洲精品在线免费观看视频| 国产精品性做久久久久久| 欧美国产成人精品| 欧美图区在线视频| 美女一区二区在线观看| 国产精品国产三级国产aⅴ原创 | 日韩高清中文字幕一区| 欧美电影免费观看高清完整版在线 | 日韩一卡二卡三卡四卡| 成人激情小说网站| 三级影片在线观看欧美日韩一区二区 | 国产一区二区三区四区在线观看 | 国产在线不卡视频| 亚洲综合免费观看高清完整版| 亚洲精品一区在线观看| 不卡的av在线| 国产伦精品一区二区三区免费迷| 一区二区在线观看不卡| 国产亚洲午夜高清国产拍精品| 欧美日韩的一区二区| 成人福利视频网站| 国产大片一区二区| 亚洲va欧美va国产va天堂影院| 国产精品午夜在线观看| 国产日韩欧美制服另类| 日韩视频一区在线观看| 欧美日韩国产高清一区二区三区| 99re视频精品| 91麻豆精品在线观看| 95精品视频在线| 91色综合久久久久婷婷| 91福利社在线观看| 色婷婷久久久综合中文字幕| 94-欧美-setu| 色激情天天射综合网| 欧美亚男人的天堂| 这里只有精品99re| 欧美成人一区二区三区在线观看| 制服丝袜一区二区三区| 在线视频中文字幕一区二区| 99久久精品国产麻豆演员表| 色激情天天射综合网| 欧美欧美欧美欧美首页| 精品蜜桃在线看| 欧美激情在线一区二区| 亚洲国产综合91精品麻豆| 爽好多水快深点欧美视频| 国产一区二区三区高清播放| jlzzjlzz亚洲日本少妇| 欧美日韩1区2区| 国产精品免费久久| 天堂资源在线中文精品| 成人在线综合网站| 欧美日韩专区在线| 中文字幕五月欧美| 日本大胆欧美人术艺术动态| 国产成人自拍网| 欧美日韩夫妻久久| 亚洲日本在线a| 国产精品99久久久久久宅男| 欧美三区在线观看|