文檔金喜正規買球>>VMPsoft中文文檔>>序列號加密算法
序列號加密算法
VMProtect 是新一代軟件盜版保護解決方案。VMProtect 是目前強大的反盜版解決方案之一,許多領先的軟件發行商都在使用它。VMProtect允許保護可執行文件(EXE,SCR),動態鏈接庫(DLL,OCX,BPL)和驅動程序(SYS)。
加密解密技術交流群(766135708)
序列號加密算法
許可證系統中的密鑰的安全性是基于非對稱加密算法的。目前的版本實現了RSA算法,密鑰長度為1024至16384比特。未來的版本計劃實現基于ECC的其他算法,以及對稱+非對稱組合密碼學。
每個產品使用的算法都是獨一無二的。用一種算法制作的密鑰不能用于另一種算法,這意味著在創建了至少一個許可證后,改變算法是不允許的。被保護程序中的保護模塊 "知道 "序列號是用哪種算法加密的,不會接受用其他算法或用相同算法但參數不同(例如,不同的密鑰長度)的密鑰。
RSA算法
用RSA算法對一個序列號進行加密,具體方法如下:
- 在序列號的開頭添加隨機數據--該方法是基于RFC2313,但實現方式略有不同。以下字節被添加到密鑰的開頭:00 02 NN...NN 00,其中NN...NN是8到16個隨機非零字節。字節的數量是隨機的,但系統考慮到了密鑰的長度和最大容量。
- 在序列號的末尾添加隨機數據--序列號中的字節總數必須等于算法中密鑰的比特數除以8,序列號被附加上相應數量的持有隨機數據的字節。因此,產生了以下的序列號格式: 00 02 NN...NN 00 DD...DD MM...MM,其中NN是一組隨機非零字節,DD是原始序列號,MM是一組隨機字節(包括零)。序列的摘要長度應等于算法中密鑰的比特數除以8。
- 加密使用許多庫中實現的典型程序來處理大數字。PHP生成器包含所有需要的信息。
- 包裝 - 加密后得到的字節集被編碼為base-64 - 這是一個給客戶的序列號。