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