步驟 2.3:受保護(hù)產(chǎn)品的首次啟動
VMProtect軟件公司生產(chǎn)VMProtect,是新一代軟件盜版保護(hù)解決方案。VMProtect是目前強(qiáng)大的反盜版解決方案之一,許多領(lǐng)先的軟件發(fā)行商都在使用它。VMProtect允許保護(hù)可執(zhí)行文件(EXE,SCR),動態(tài)鏈接庫(DLL,OCX,BPL)和驅(qū)動程序(SYS)。
技術(shù)交流群(766135708)
許可系統(tǒng)已經(jīng)初始化,讓我們嘗試編譯 VMProtect 項目并運行被保護(hù)的文件。從命令行運行后,我們會收到以下信息:
C:\test>dummy_app.vmp.exe
serial number is bad
state = SERIAL_STATE_FLAG_INVALID
如果你運行 depends.exe,可以看到我們受保護(hù)的可執(zhí)行文件不再使用VMProtectSDK.dll。這意味著許可模塊已經(jīng)被內(nèi)置到程序中。你也可以在 "Details | Imports"部分查看 VMProtect 使用的 DLL 列表。
我們的受保護(hù)程序從 serial.txt 文件中讀取序列號。由于還沒有這樣的文件,許可模塊收到一個空的序列號,被解釋為不正確。現(xiàn)在我們切換到 “Licenses "部分,生成一個序列號。這個過程在這里有詳細(xì)的描述,現(xiàn)在我們只是創(chuàng)建一個沒有任何限制的簡單序列號。
然后,我們復(fù)制這個序列號(在許可證屬性中選擇 "Serial number"字段,然后按Ctrl+C鍵),在受保護(hù)程序的同一文件夾中創(chuàng)建一個名為serial.txt的文件,并將復(fù)制的序列號粘貼到那里?,F(xiàn)在,如果我們運行我們的應(yīng)用程序,我們會看到這個:
C:\test>dummy_app.vmp.exe
serial number is correct, calling foo()
I'm foo
done
許可系統(tǒng)檢查了序列號,發(fā)現(xiàn)它是正確的。在下一步,我們將嘗試應(yīng)用一些限制,觀察結(jié)果。