當前位置:首頁 » 密碼管理 » thinkphp加密函數

thinkphp加密函數

發布時間: 2022-02-24 05:06:56

1. thinkphp無法使用md5加密 array('password','md5',1,'funct

我記得thinkPHP里有自己的加密的函數的,你看看手冊吧,要不就是你參數給的不對

2. thinkphp資料庫配置信息加密怎麼處理

今天有一個朋友問我thinkphp的這個問題,剛好網路搜索到你這個問題。已經解決。就幫你解答一下這個問題。
首先我嘗試在入口文件封裝一個加密函數,我用php des 加密,然後在配置文件config.php調用。然後在控制器裡面使用,列印配置文件:mp(C());//輸出所有的配置文件信息, 雖然能看到正確的數據用戶名和密碼,但是會報錯。失敗告終。
我說一下我的解決方法。很簡單。
1:把配置文件裡面的用戶名,密碼,資料庫名瞎寫一寫,別人看到你的代碼的配置文件看到的就是錯誤的資料庫名和密碼了。比如:
'DB_NAME' => 'SB', // 資料庫名
'DB_USER' => 'ni_da_ye', // 用戶名
'DB_PWD' => 'da_da_bi', // 密碼
在每個控制器文件裡面。加入一段代碼。
比如你的IndexController.class.php文件。加下面的代碼。
/* 初始化方法*/
public function __construct(){
parent::__construct();

C("DB_NAME",decrypt('712349721937491237'));//資料庫名,
C('DB_USER',decrypt('712349721937491237'));//用戶名
C('DB_PWD',decrypt('712349721937491237'));//密碼
}
看清楚了嗎?
decrypt()這個函數就是我封裝的一個加密函數,親自測試沒有錯誤。可能會犧牲一些性能。但是保證了用戶名,密碼,資料庫名沒有泄露。甚至你都可以把資料庫連接地址也加密一下。希望能幫到你。
PHP加密函數可以考慮用des,aes這些可逆加密。別用什麼md4,md5.

3. thinkphp 密碼是怎麼加密的

md5 需要加密的時候只需要md5('需要加密的字元串')

4. thinkphp這個邏輯是如何執行加密了 是先執行md5($data['password'],然後在執行$data['password']=md5(..)

如果提交的數據里,password不為空,
對password進行md5加密: md5($data['password']);
加密後的字元串再賦值給password。

5. thinkphp中md5演算法位置

直接用md5函數就可以,md5是php函數,TP中沒有封裝,比如


$pwd=$_GET['pwd'];
echo$pwd=md5($pwd);

6. thinkphp怎麼加密url參數

/**
*系統加密方法
*@paramstring$data要加密的字元串
*@paramstring$key加密鑰
*@paramint$expire過期時間單位秒
*returnstring
*@author麥當苗兒<[email protected]>
*/
functionthink_encrypt($data,$key='',$expire=0){
$key=md5(empty($key)?C('DATA_AUTH_KEY'):$key);
$data=base64_encode($data);
$x=0;
$len=strlen($data);
$l=strlen($key);
$char='';
for($i=0;$i<$len;$i++){
if($x==$l)$x=0;
$char.=substr($key,$x,1);
$x++;
}
$str=sprintf('%010d',$expire?$expire+time():0);
for($i=0;$i<$len;$i++){
$str.=chr(ord(substr($data,$i,1))+(ord(substr($char,$i,1)))%256);
}
returnstr_replace(array('+','/','='),array('-','_',''),base64_encode($str));
}
/**
*系統解方法
*@paramstring$data要解的字元串(必須是think_encrypt方法加密的字元串)
*@paramstring$key加密密鑰
*returnstring
*@author當苗兒<[email protected]>
*/
functionthink_decrypt($data,$key=''){
$key=md5(empty($key)?C('DATA_AUTH_KEY'):$key);
$data=str_replace(array('-','_'),array('+','/'),$data);
$mod4=strlen($data)%4;
if($mod4){
$data.=substr('====',$mod4);
}
$data=base64_decode($data);
$expire=substr($data,0,10);
$data=substr($data,10);
if($expire>0&&$expire<time()){
return'';
}
$x=0;
$len=strlen($data);
$l=strlen($key);
$char=$str='';
for($i=0;$i<$len;$i++){
if($x==$l)$x=0;
$char.=substr($key,$x,1);
$x++;
}
for($i=0;$i<$len;$i++){
if(ord(substr($data,$i,1))<ord(substr($char,$i,1))){
$str.=chr((ord(substr($data,$i,1))+256)-ord(substr($char,$i,1)));
}else{
$str.=chr(ord(substr($data,$i,1))-ord(substr($char,$i,1)));
}
}
returnbase64_decode($str);
}

7. thinkphp能夠對源代碼加密嗎

不能,thinkphp只是一個php框架,php源碼的加密可以看看這個:Zend Guard

8. thinkphp MD5加密問題

AUTH_CODE這個參數是自定義的,每個網站的參數都不一樣,有些網站為了安全,這個值還是隨機數,這樣的話,就打打加強了開源程序的安全性。encrypt這個函數在這里就是讀取配置文件中的隨機數和MD5加密之後的文件再做個二次加密,所以就很安全咯
是否可以解決您的問題?

9. 關於thinkphp的md5加密

一般都是這樣的。

熱點內容
php微信支付教程視頻教程 發布:2025-05-14 08:59:59 瀏覽:201
存儲伺服器分類 發布:2025-05-14 08:39:01 瀏覽:645
xz文件解壓軟體 發布:2025-05-14 08:28:43 瀏覽:969
lua腳本學習 發布:2025-05-14 08:20:55 瀏覽:713
python文件刪除一行 發布:2025-05-14 08:06:58 瀏覽:721
如何下載奧特曼高級化3安卓版 發布:2025-05-14 07:47:31 瀏覽:346
qml文件修改後編譯未生效 發布:2025-05-14 07:31:00 瀏覽:331
內到內演算法 發布:2025-05-14 07:29:11 瀏覽:34
文件夾名字不顯示 發布:2025-05-14 07:27:47 瀏覽:775
oracle的資料庫驅動jar 發布:2025-05-14 07:23:20 瀏覽:556