php程序鎖
他想問的應該是PHP源碼加密吧?
用什麼軟體加密的估計不是那麼容易知道,因為這種加密都是可逆的,一般不會把加密演算法公開出來的,也不會把加密軟體發布出來。
基本上沒有好的辦法。唯一的方法就是手工逆向運算。
另外對上面幾位的回答提個醒:MD5是不可逆演算法,不可能用在PHP源碼加密上的,最多隻能作為較驗之用。
『貳』 求PHP程序域名限制使用加密代碼
你想使用的不怎麼靠譜。如果是PHP熟的一眼就能破了或者改寫。另外支持網址ascii碼不知道你說的是什麼意思。。。是指://-之類的符號不
通常php手工加密程序主要有2種:
1 是如果你的網站開了exec,eval之類的(普通的虛擬主機就別想了,一般獨立或者vps才會給你這許可權)可以使用base64或者自己的加解密演算法來加密程序語句,再執行這個語句。
比如 if (1 ==1){echo 'wrong'} 這句,
你執行 echo $str=base64_encode ("if (1== 1){echo 'wrong'} ") ;
可以得到加密後的語句,這個加密後的程序你可以貼到程序里了。
把這個加密後的語句 eval(base64_decode($str)); 就可以執行
第二種比較絕,可以滿足你域名限制的要求。是通過include和require遠程調用(你可以搜索一下。我以前看書看過設置好環境之後,require等可以引用其他伺服器上的php文件)
php官方手冊上是這么說的:只要在 php.ini 文件中激活了 allow_url_fopen 選項,就可以在大多數需要用文件名作為參數的函數中使用 HTTP 和 FTP 的 URL 來代替文件名。同時,也可以在 include、include_once、require 及 require_once 語句中使用 URL。
而手冊上include函數里進一步闡述:遠程調用文件實際上是請求第三方伺服器一個php文件。如果這個伺服器本身也能執行php,返回的實際上是php執行後的文本串文件。請求的伺服器接收到這個文本串,會把它當php程序解析。
那麼利用這一點,你可以在另外一個伺服器上設置一個php文件,判斷請求的網址是否是你允許的,也就是買了你的程序的網站域名。如果允許就把這一關鍵php程序代碼返回給請求伺服器,讓請求伺服器執行相關程序。
比如客戶網站程序里(必要時還可以用第一種方式來加密這句話)
inclue(" 自有的網址/core.php");
你自有的網站的core.php判斷請求的來源網址,輸出程序代碼給客戶網站。
以上方法只是一個思路,稍微牛一點的人都會破解。
實際上像php這種開源編程,任何手工加密都容易被破解。
官方的推薦方法是,php加密可以用zend來實現。
網路一下Zend GUARD或者zend加密即可。然後買空間時候要注意買zend加密的空間。
『叄』 PHP下如何對文件進行加鎖
/**********************************************
*filelock
*@authorZeal
Li
*http://www.zeali.net/
***********************************************/
/*
*lock_thisfile:獲得獨享鎖
*@param$tmpFileStr用來作為共享鎖文件的文件名(可以隨便起一個名字)
*@param$locktype鎖類型,預設為false(非阻塞型,也就是一旦加鎖失敗則直接返回false),設置為true則會一直等待加鎖成功才返回
*@return如果加鎖成功,則返回鎖實例(當使用unlock_thisfile方法的時候需要這個參數),加鎖失敗則返回false.
*/
function
lock_thisfile($tmpFileStr,$locktype=false){
if($locktype==
false)
$locktype=LOCK_EX|LOCK_NB;
$can_write=0;
$lockfp=@fopen($tmpFileStr.".lock","w");
if($lockfp){
$can_write=@flock($lockfp,$locktype);
}
if($can_write){
return$lockfp;
}
else{
if($lockfp){
@fclose($lockfp);
@unlink($tmpFileStr.".lock");
}
returnfalse;
}
}
/**
*unlock_thisfile:對先前取得的鎖實例進行解鎖
*@param$fplock_thisfile方法的返回值
*@param$tmpFileStr
用來作為共享鎖文件的文件名(可以隨便起一個名字)
*/
function
unlock_thisfile($fp,$tmpFileStr){
@flock($fp,LOCK_UN);
@fclose($fp);
@fclose($fp);
@unlink($tmpFileStr.".lock");
}
?>
<?php
//使用舉例
$tmpFileStr="/tmp/mylock.loc";
//等待取得操作許可權,如果要立即返回則把第二個參數設為false.
$lockhandle=
lock_thisfile($tmpFileStr,true);
if($lockhandle){
//
在這里進行所有需要獨占的事務處理。
//......
//事務處理完畢。
unlock_thisfile($lockhandle,$tmpFileStr);
}
?>
『肆』 php源碼加密是怎麼執行的介紹幾個好的加密軟體
比如說你用zend加密,只要伺服器裝了zend就會自動解密執行,其他一些混淆加密同理,但是用源碼來驅動的,有類似eval這樣的函數來執行,不用你操心.
『伍』 如何給編寫的PHP程序加密
你可以去下載一個
SourceCop for PHP
是一款 Windows 平台應用程序,你可以使用它加密你的 PHP 源代碼
另外,你也可以限制加密後的 PHP 腳本代碼運行於指定的 IP 或設定腳本代碼的到期時限。
程序特徵
* 獨特和非常簡單的程序界面
* 加密你的 PHP 源代碼
* 不需要安裝在伺服器上
* 方案非常容易操作
* 原始代碼備份選項
* 單擊進行加密
* 加密後的腳本代碼可以運行於任何平台和 PHP 的大部分版本
其實PHP沒必要加密 加密怎麼都會對你程序有影響
『陸』 php程序加密會過期嗎是試使版的加密軟體..
把你電腦時間改成一個星期後,看能不能用!如果是代碼加密沒關系,也可以破解回來看看多沒多代碼!
『柒』 關於PHP程序加密
Fatal error: Call to undefined function zmc_*o9k_hwk_() in /home/u97942/public_html/mail.php on line 2
這個錯誤提示是沒有定義函數zmc_*o9k_hwk_,你發的代碼裡面沒有這個函數吧?是不是引用了函數,但是裡面沒有那個文件
『捌』 php+mysql的程序如何加密,程序才不被盜用
php由於是腳本語言註定了它的代碼是對外公開的,,註定了他是開源的。。。加密的話還是保證伺服器的安全性吧。。
『玖』 PHP代碼如何加密
<?php
functionencode_file_contents($filename){
$type=strtolower(substr(strrchr($filename,'.'),1));
if('php'==$type&&is_file($filename)&&is_writable($filename)){//如果是PHP文件並且可寫則進行壓縮編碼
$contents=file_get_contents($filename);//判斷文件是否已經被編碼處理
$contents=php_strip_whitespace($filename);
//去除PHP頭部和尾部標識
$headerPos=strpos($contents,'<?php');
$footerPos=strrpos($contents,'?>');
$contents=substr($contents,$headerPos+5,$footerPos-$headerPos);
$encode=base64_encode(gzdeflate($contents));//開始編碼
$encode='<?php'." eval(gzinflate(base64_decode("."'".$encode."'"."))); ?>";
returnfile_put_contents($filename,$encode);
}
returnfalse;
}
//調用函數
$filename='dam.php';
encode_file_contents($filename);
echo"OK,加密完成!"
?>
『拾』 php代碼怎麼加密最好,不能破解的那種
無論怎麼混淆,它最終都是靠執行eval來運行其代碼的。
所以我們只要在php中載入runkit擴展,啟用runkit.internal_override選項,然後另寫一個php文件來rename掉eval,然後自己實現一個function eval($code) {echo $code;},然後include這個文件。接著只要訪問一下那個文件,這個加密的文件就會自己輸出自己解密後的代碼了。
http://php.net/manual/zh/function.runkit-function-rename.php
這種解密的思路稱為「通過劫持eval破解程序加密」。