给软件制作加密狗
使用加密狗進行程序的加密保護是非常成熟的加密方案。目前市面上比較常見的加密鎖:深思的精銳5,威步,safenet。國內比較老牌的加密鎖公司是深思,深思的鎖從精銳4,到現在的精銳5,都是比較不錯的產品,加密安全性高,使用體驗好,性價比高,比較推薦這一款。
如何用加密狗加密程序流程:
1、 獲取加密SDK包。
2、 使用加密狗配套的加殼工具對程序直接加殼。
3、 使用控制鎖和寫鎖工具制作配套使用的用戶鎖。
4、 發給用戶加密后的程序及配套用戶鎖。
加密鎖授權管理
精銳5系列的加密鎖可實現軟件的授權管理、遠程升級等功能。
1. 限時限次功能。軟件按訂閱式銷售,訂閱到期可通過遠程升級的方式升級軟件許可。
2. 網絡鎖功能。局域網內實現服務器一把鎖,同一局域網下其他電腦也可使用軟件。
3. 限功能模塊。限制軟件的不同的功能模塊銷售。
加殼工具對程序加密流程
直接將帶加密的程序的exe或者dll直接拖到加殼工具中,選擇要加密的函數,同時選擇保護方式。Virbox Protector加殼工具對函數的保護方式有四種:代碼虛擬化/代碼混淆/代碼碎片化/代碼加密。
代碼碎片化是深思自主知識產權的最新技術:基于 LLVM 和 ARM 虛擬機技術,自動抽取海量代碼移入 SS 內核態模塊,極大的降低了使用門檻, 不再需要手動移植算法,可移植的算法從有限的幾個增長到幾乎無限多,支持的語言也不再限于 C, 這是加密技術的一次綜合應用,效果上類似于將軟件打散執行,讓調試者無從下手。安全度高、建議關鍵函數或調用加密鎖方法;使用太多會影響效率。
代碼加密,將代碼塊作為數據,用許可加密函數存儲, 程序執行到該函數時驗證許可并解 密,內存中不會暴露完整的代碼塊。
代碼虛擬化:針對X86代碼:是指將機器代碼翻譯為機器和人都無法識別的一串偽代碼字節流;在具體執行時再對這些偽代碼進行一一翻譯解釋,逐步還原為原始代碼并執行。這段用于翻譯偽代碼并負責具體執行的子程序就叫作虛擬機VM(好似一個抽象的CPU)。它以一個函數的形式存在,函數的參數就是字節碼的內存地址。由于虛擬機代碼和虛擬機CPU的實現可以做到每次都是隨機設計和隨機執行并且代碼每次可以隨機變化,包括一些邏輯上的等價變化可以參考硬件N個與非門NOT-AND實現各種邏輯門,算法和訪問內存形式的變化,包括數學上的非等價變化,代碼體積幾乎可以膨脹達到100到10000倍,造成機器無法做算法還原到原有邏輯。代碼虛擬化的特點是:安全度中、不會影響效率。
轉載于:https://my.oschina.net/virbox/blog/3060290
總結
- 上一篇: 添加dubbo.xsd的方法
- 下一篇: 你是第几名:Excel 中 Large