delphiforphp破解,delphi 破解 軟件

本文目錄一覽:

求delphi for php 2.0 的激活文件或破解

我家裡台式機里有,但不是太好用,php沒必要這樣寫,會生成大量不知所云的代碼,還不如自己寫,維護也方便

delphi 異或加密 如何用PHP解密 如圖

你看看下在的代碼行不行 差不多這個意思了,如果有問題可以私信

function dec( $str )

{

    $XorKey = array(1,2,3,4,5,6,7,8); //這個應當是密鑰

    $rt = ”;

    $j = 0;

    for ($i=1; $i = strlen($str) / 2; $i++)

    {

        $t = intval(‘0x’.substr($str, $i * 2 – 1, 2)) ^ $XorKey[$j];

        $rt = $rt . chr($t);

        $j = ($j + 1) % 8;

    }

    return $rt;

}

$ec = ‘12345678’;

echo dec($ec);

delphi編寫的軟件限制了使用次數如何破解

1。先要摸清楚軟件限制使用次數的方法,如果是通過註冊表和寫入本地文件的方法,監視軟件使用次數的話,可以修改註冊表和本地文件內的數值來達到破解。

2。如果軟件有加殼的話,先要將軟件的殼去掉,如果是常用的殼,網上直接有脫殼機。在脫完殼後可以使用OD和其它一些反彙編軟件來進行斷點破解或其它方式破解。具體知識你可以百度找一下答案!

Delphi軟件的破解

第一招:製造假相

反彙編和調試器跟蹤都是不可能防止的,因為所有的Win32程序都必須通過API來調用Windows系統中的關鍵DLL的(如Kernel32.dll、GDI32.dll等),然而API是可以Hook的。我們只能從自己的代碼着手來保護我們的勞動果實了。

為了自己調試和以後維護的方便,我們一般採用有意義的名字給我們的函數命名,可這給了Cracker可乘之機。例如這樣的函數是什麼意思大家應該一目了然吧?IsRegistered(),IsLicensed(),LicenseVerify(),CheckReg()……這樣Cracker就可以輕鬆地從數千個函數中找到他的目標——你的註冊碼校驗函數!而且破解Delphi編寫的軟件還有一件TMG小組的破解利器——DeDe。它可以輕鬆地看到你軟件里的Form、Unit和函數名,還可以反彙編一部分代碼,更可以和Win32DASM合作反彙編更多的代碼,對Delphi編出的程序威脅極大。

為了不給Cracker創造溫馨舒適的破解環境,要故意混亂(Obfuscate)我們的代碼,將軟件中所有的函數名全部替換成隨機生成的函數名。例如Func_3dfsa_fs32zlfv��這個函數是什麼意思?恐怕只有天知道了。網上有現成的代碼混亂器,按你使用的編程語言的種類可以找到一些。但要注意,只有當你要發布軟件時才使用它,而且一定注意備份源代碼。否則,當你看不懂你自己的代碼時就着急了:)

第二招:用公匙,並改名

另外,一定要使用公開密匙算法保護你的軟件。RSA、DSA和El Gamal之類的算法都可以從網上找到。但注意:將你算法單元中所有涉及到算法名稱的字符串全部改名。避免被Cracker發現你用的算法而模仿寫出註冊機來!你還可以張冠李戴,明明用的DSA,將名字全部替換成RSA。

其它算法,如對稱算法和Hash算法也要注意改名,否則這樣:

EncryptedCode = Blowfish(MD5(UserName),MD5(Key));

//你的加密算法,使用了Blowfish(對稱算法)和MD5(Hash算法)

雖然那些Cracker不了解Blowfish和MD5算法的原理,也不會逆向推測它們,但他們了解你的校驗算法的流程和算法名,便可馬上從網上找到類似的Blowfish和MD5算法包,從而模擬你的軟件仿造出註冊機。

如果你用不常見的,算法如Skipjack(NASA美國航天局標準算法)、LOKI、3-WAY、Safer之類不出名但保密程度很高的算法,並且全部改名,這樣就會傷透他們腦筋了。

當然,最好把Hash算法也全部改名,會給他們製造更多的困難。但注意,MD5和SHA之類的Hash初始值會被Cracker從內存中找到,這樣他就知道你用的Hash了。所以建議同時使用MD5的變形算法Ripe-MD(RMD)128或160或其它的Hash,如Tiger、Haval等算法。

第三招:阻止別人調試

還有一點,調試器對我們的威脅很大,我們不會讓Cracker們舒舒服服地使用SoftICE、TRW或OllyDbg來調試我們的程序。除了常用的MeItICE方法外,這裡我給一個筆者寫的方法:

{檢查自己的進程的父進程是否為Explorer.exe,否則是被調試器加載了}

{不過注意,控制台程序的父進程在WinNT下是Cmd.exe!}

{注意加載TlHelp32.pas單元}

procedure CheckParentProc;

var //檢查自己的進程的父進程

Pn: TProcesseNtry32;

sHandle:THandle;

H,ExplProc,ParentProc:Hwnd;

Found:Boolean;

Buffer:array[0..1023]of Char;

 Path:string;

begin

H:= 0;

ExplProc:= 0;

ParentProc:= 0;

//得到Windows的目錄

SetString(Path,Buffer)

GetWindowsDirectory(Buffer,Sizeof(Buffer)- 1));

Path:= UpperCase(Path)+ ‘\EX PLORER.EXE’;//得到Explorer的路徑

//得到所有進程的列錶快照

sHandle:= CreateToolHelp32Snap Shot(TH32CS_SNAPALL,0);

Found:= Process32First(sHandle,Pn);//查找進程

while Found do //遍歷所有進程

begin

if Pn.szExeFile = ParamStr(0)then //自己的進程

begin

ParentProc:= Pn.th32ParentProcessID://得到父進程的進程ID

//父進程的句柄

H:= OpenProcess(PRO CESS_ALL_ACCESS,True,Pn.th32Parent ProcessID);

end

else if UpperCase(Pn.szExeFile)= Path then

ExplProc:= Pn.th32ProcessID;//Ex plorer的PID

Found:= Process32Next(sHandle,Pn);//查找下一個

end;

//父進程不是Explorer,是調試器……

if ParentProc ExplProc then

begin

TerminateProcess(H,0);//殺之!除之而後快也! :)

//你還可以加上其它什麼死機代碼來消遣消遣這位可愛的Cracker:)

 end�

end�

你可以在Delphi或者VC中試試,這樣可以把Delphi和VC殺掉了,因為你現在用的是Delphi和VC的內置調試器來運行你的程序。調試的時候你還是把它的注釋刪掉吧,發布時別忘記激活喲!

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/184926.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-26 05:03
下一篇 2024-11-26 05:03

相關推薦

  • Python腳本控制其他軟件

    Python作為一種簡單易學、功能強大的腳本語言,具有廣泛的應用領域,在自動化測試、Web開發、數據挖掘等領域都得到了廣泛的應用。其中,Python腳本控制其他軟件也是Python…

    編程 2025-04-29
  • 量化交易軟件哪個好?

    量化交易軟件是為量化交易而設計的工具,能夠用程序化方法對市場數據進行分析和交易決策。那麼,哪個量化交易軟件最好呢?下面從幾個方面進行詳細闡述。 一、交易功能 交易功能是量化交易軟件…

    編程 2025-04-29
  • Python計算機二級刷題軟件推薦

    Python作為編程語言的代表,已經在計算機學習和開發領域佔據了重要角色。Python計算機二級是國家信息技術應用能力證書的一種,是計算機應用能力的重要評估標準。對於想要獲取Pyt…

    編程 2025-04-29
  • 電腦如何下載ps軟件

    如果您想在電腦上使用Photoshop,那麼您需要下載安裝該軟件。下面是詳細的步驟說明: 一、選擇下載網站 目前市面上有很多下載網站都可以下載到Photoshop軟件,比如Adob…

    編程 2025-04-29
  • Python編程開發中,用哪些軟件呢?

    在Python編程的過程中,開發過程的效率和代碼的質量往往取決於選擇的開發工具。下面就讓我們從多個方面來探討,Python編程開發中需要用到哪些軟件。 一、Python IDE(集…

    編程 2025-04-28
  • 開源軟件授權使用證明

    開源軟件在現今的軟件開發領域中發揮了非常重要的作用。但是,開源軟件的免費使用並不意味着用戶可以隨意使用,因為開源軟件本身也有授權的問題。本文將從多個方面闡述開源軟件授權使用證明的相…

    編程 2025-04-28
  • 學Python需要下載什麼軟件?

    Python是一種高級編程語言,常用於Web開發、數據分析、人工智能等領域。在學習Python之前,我們需要下載一些必要的軟件。本文將從多個方面介紹學Python需要下載哪些軟件。…

    編程 2025-04-27
  • 有哪些Python軟件可以用來構建Web應用

    Python語言是一種膠水語言,可以和多種語言以及系統進行交互,廣泛應用於多個領域。在Web應用開發領域,Python是一個功能強大的語言,在Python社區中有許多優秀的Web應…

    編程 2025-04-27
  • Python控制軟件操作

    本文將從多個方面探討如何使用Python控制軟件操作。 一、自動化GUI操作 Python的PyAutoGUI庫可以幫助我們實現自動化GUI操作。它可以控制鼠標、鍵盤,以及讀取屏幕…

    編程 2025-04-27
  • 為什麼我安裝了軟件卻找不到?

    你安裝了軟件,卻發現找不到它在哪裡?別著急,下面會從多個方面為你詳細解答這個問題。 一、安裝路徑 在安裝軟件時,通常可以選擇安裝路徑,也可以使用軟件默認的路徑。如果你選擇了自定義路…

    編程 2025-04-27

發表回復

登錄後才能評論