php 3des 加密解密:
<?php
/*** created by phpstorm.
* user: asus
* date: 2017/3/24
* time: 11:06
*/class encrypt
public function paddingpkcs7($data)
/*** 對字串進行3des加密
* @param string 要加密的字串
* @return mixed 加密成功返回加密後的字串,否則返回false
*/public function encrypt3des($str)
//檢查加密key,iv的長度是否符合演算法要求
$key = $this->fixlen($this->_key, mcrypt_enc_get_key_size($td));
$iv = $this->fixlen($this->_iv, mcrypt_enc_get_iv_size($td));
//加密資料長度處理
$str = $this->paddingpkcs7($str);
if (mcrypt_generic_init($td, $key, $iv) !== 0)
$result = mcrypt_generic($td, $str);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
return $result;
}/**
* 對加密的字串進行3des解密
* @param string 要解密的字串
* @return mixed 加密成功返回加密後的字串,否則返回false
*/public function decrypt3des($str)
//檢查加密key,iv的長度是否符合演算法要求
$key = $this->fixlen($this->_key, mcrypt_enc_get_key_size($td));
$iv = $this->fixlen($this->_iv, mcrypt_enc_get_iv_size($td));
if (mcrypt_generic_init($td, $key, $iv) !== 0)
$result = mdecrypt_generic($td, $str);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
return $this->strunpad($result);
}/**
* 返回適合演算法長度的key,iv字串
* @param string $str key或iv的值
* @param int $td_len 符合條件的key或iv長度
* @return string 返回處理後的key或iv值
*/private function fixlen($str, $td_len)
else if($str_len < $td_len)
return $str;
}/**
* 返回適合演算法的分組大小的字串長度,末尾使用\0補齊
* @param string $str 要加密的字串
* @param int $td_group_len 符合演算法的分組長度
* @return string 返回處理後字串
*/private function strpad($str, $td_group_len)
/*** 返回適合演算法的分組大小的字串長度,末尾使用\0補齊
* @param string $str 要加密的字串
* @return string 返回處理後字串
*/private function strunpad($str)
}
iOS AES加密 解密 3DES加密 解密
加密步驟 字串經過aes加密得到nsdata型別,然後在對加密後的nsdata型別進行base64轉碼,得出最終的字串。解密步驟 對要解密的字串進行base64解碼,然後進行解密,得出原字串。首先建立乙個nsdata jkencrypt類別,寫完的.件如下 import inte ce nsdata...
Des與3Des加密解密
des和3des演算法 public class des b ret.tostring return ret.tostring 3des加密 金鑰不能每8位重複,例如 123456781234567812345678,如果這樣則演算法退化為des,c 會檢測,不能使用 明文 金鑰 public st...
DES加密解密
using system using system.drawing using system.collections using system.componentmodel using system.windows.forms using system.data using system.io us...