獨創的HVM技術,不同於其它同類產品.其它同類產品加密保護的程序運行時,每當一個方法需要進行即時編譯(Just-Int-Time Compilation)時,就會在短時間內於內建記憶體中進行還原方法體的原始IL程式碼解密 。
這就給破解者提供了可乘之機。 HVM技術使得在進行方法即時編譯時,不會還原出原始的IL程式碼 ,而是以HVM偽代碼的形式出現在內建記憶體中,由HVM編譯器協助Jit直接從HVM偽代碼生成本地代碼,從而保證您的程序代碼任何時候都不會在內建記憶體中出現。
保護您的知識產權 - 加密您的IL代碼
DNGuard HVM 保護儲存在您程式集的IL代碼。在執行過程中,在編譯發生之前,代碼會以動態偽代碼的形式交給 jitter。DNGuard HVM 執行引擎,確保您的程式集是從來沒有在內建記憶體中解密。這使得它無法藉由內建記憶體 dump tools 重建您原始裝置。
透過使用一個命令行程式, DNGuard HVM 將您的組件作為輸入並針對它們使用安全信封 (security envelope) 。此應用程式將使用一個額外與 .NET 執行引擎的資料函式庫組合,交給執行代碼的應用程式,然後分發到客戶端。
DNGuard HVM 組合包含以下組件:
1. DNGuard HVM 命令行工具 - 一個命令行工具,可以讓您保護您的程式集。
2. DNGuard HVM GUI 的基礎工具 - 基於GUI的界面,為您提供便利。
3. 即時的 解碼器/ HVM 運行 - 資料庫組件結合於 .NET 執行引擎來執行你的代碼。
受保護的代碼,就在在解碼器/ HVM運行時,資料庫組件可以自由地分發到最終用戶的數量不受限制。
HVM 保護技術
DNGuard獨創的HVM技術,不同於其它同類產品.其它同類產品加密保護的程序運行時,每當一個方法需要進行即時編譯(Just-Int-Time Compilation)時,會短時間在內存中解密還原方法體的原始IL代碼 .這就給破解者提供了可乘之機.
HVM技術使方法在進行即時編譯時不會還原出原始的IL代碼 ,而是以HVM偽代碼的形式出現在內存中,由HVM編譯器協助Jit直接從HVM偽代碼生成本地代碼,從而保證您的程序代碼任何時候都不會在內存中出現.
支持Windows Forms 程序,Windows 服務程序, 組件&類庫開發者, ASP.NET 程序以及Web 服務程序.
DNGuard 加密後生成的程序集是仍然是一個可驗證的.Net程序集,符合.Net程序集規範。原程序集的類、方法以及其它標識名稱仍然保留為.Net規範的格式,這樣使加密後的程序集在應用行為上和原始程序集一樣。加密後的程序集並不需要特許的運行環境限制即可運行, 使用上和原始程序集完全一樣。this makes DNGuard HVM the perfect choice for component developers, Asp.net applications as well as winforms based applications.
完全支持加密VC++ .Net 生成的混合程序集(包含本地代碼的程序集)
DNGuard HVM 完全支持加密混合程序集(mixed images) (由VC++ .NET 生成).
用戶字符串加密
加密字符串能阻止破解者查看、搜索敏感的關鍵字符, 像MSIL代碼中使用到的用戶ID,加密密鑰,關鍵提示信息等。DNGuard 加密字符串採用的是高效安全的方式,不會向程序代碼中引入額外的指令。相反,一般混淆器的字符串加密會 向程序集中註入一個解密函數,每個字符串在使用前都會調用一次解密函數。這樣破解者可以通過反射直接調用解密函數 還原所有字符串。另外每個字符串前面都插入一個函數調用,造成一些性能損失.
託管資源加密
託管資源是DOTNET 在開發生中生成的資源文件,例如圖片,控件信息,窗體信息等。加密可以防止這些信息被查看,從而保護 您的知識產權以及敏感信息。
支持授權管理
DNGuard HVM 提供了簡單的SDK函數,用來和授權管理系統交互。使用授權管理,不用書寫任何代碼就能生成試用版程序。
自帶混淆功能
DNGuard 自帶名稱混淆,和運行時動態流程混淆功能。如需更強大的混淆,請使用第三方混淆工具處理後,再使用DNGuard加密保護。
圖形界面和命令行工具
DNGuard HVM 的使用很簡單. 同時提供的圖形界面和命令工具. 命令行工具可以方便您將DNGuard 加入批處理服務。
無運行時差異
DNGuard HVM 支持加密可執行程序文件(.exe)、動態庫文件(.dll), 如ASP.NET, Windows Form Controls, Web Components, Windows Services, Web Services 等. 在所有情況下,加密後的程序集不論是在設計時還是運行時都表現得原始程序集完全一樣。並不會出現混淆器保護造成的反射相關問題。
DNGuard 標準版 已停售
DNGuard Professional 專業版 (未含 HVM 技術)
DNGuard Enterprise 企業版 (包含 HVM 技術)
DNGuard 不同版本功能比較(主要列出了有差異的功能項) | ||
功能 | 專業版 | 企業版/旗艦版 |
第二代HVM保護技術 | X | V |
HVM 保護技術 | X | V |
局部變量簽名加密時轉換保護 | V | V |
類型匿名保護 | X | V |
創建本地單一EXE文件(32位) | V | V |
創建本地單一EXE文件(64位) | X | V |
支持.Net Core | X | V |
Web應用程序優化 | V | V |
授權管理 | V | V |
一機一碼授權管理 | X | V |
命令行工具 | V | V |
構造函數加密保護 | V | V |
程序代碼加密保護 | V | V |
字符串加密保護 | V | V |
託管資源加密保護 | V | V |
Blob數據流加密保護 | V | V |
程序名稱混淆保護 | V | V |
其它功能* | V | V |
注:上面兩項 紅色 顯示的保護技術,是DNGuard獨創的保護技術。
支持Framework 1.0, 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.51, 4.52, 4.6, 4.7, 4.8
支持所有版本的.Net framework 包括最新的3.0, 3.5, 4.0, 4.5, 4.51, 4.52, 4.6, 4.7, 4.8. DNGuard獨特的內核技術,使其可以最大兼容未來的新版.Net framework.
支持.Net Core 3.0,3.1 on windows
支持Windows系統中的.Net Core 3.0,3.1.
支援.Net 5.0,6.0,7.0,8.0 on windows
支援Windows系統中的.Net 5.0, 6.0,7.0, 8.0 。
支持64位Windows系統(X64)
DNGurad 加密的程序集能運行在Windows 98,NT 及以上的所有Windows系統上,包括64位Windows系統(X64).