亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于注冊碼的軟件授權保護系統(tǒng)的設計與實現(xiàn)

        2020-05-20 01:35:12何永瑾郭肖旺趙德政
        關鍵詞:信息

        何永瑾,郭肖旺,趙德政

        (1.華北計算機系統(tǒng)工程研究所,北京 100083; 2.中電智能科技有限公司,北京 102209)

        0 引言

        計算機軟件的發(fā)展和應用為社會帶來了巨大的效益,也提供了大量的就業(yè)崗位。在為人們帶來便利的同時,軟件保護的問題也開始備受關注。由于軟件廠商版權意識不強,人們對知識產(chǎn)權不夠重視,盜版軟件和非授權軟件的使用不僅使企業(yè)遭受經(jīng)濟損失,更容易使用戶和軟件的信息泄露,被不法人員利用。2018年,商業(yè)軟件聯(lián)盟(BSA)公布了《全球軟件調(diào)查》報告,報告結(jié)果表明,我國計算機軟件盜版率同2014年相比下降了8個百分點。這一方面歸功于國家一直在完善的軟件知識產(chǎn)權保護制度,另一方面軟件研發(fā)者們不斷研究各種各樣的軟件保護技術應用在自己的軟件上,延長非法破解軟件時間,增加不法分子盜版軟件的技術和時間成本,盡可能保護軟件不被非法利用[1]。

        按照工作方式和原理的不同,國內(nèi)外常見的軟件保護技術分為兩種,一種是基于軟件的軟加密技術,一種是需要特定硬件配合的硬加密技術。然而不論是軟加密還是硬加密,都有不可避免的劣勢。硬加密的缺點在于:①容易引起硬件沖突,操作要求高;②隨著軟件的升級,加密鎖也需要不斷更換,成本高;③需要附加專業(yè)硬件設備,靈活性差。軟加密技術減少了硬加密的一些缺點,不需要附加硬件設備,不過軟加密使用的keyfile和序列號的格式大同小異,容易被篡改,無法保證安全性。

        在國外,軟加密保護產(chǎn)品憑借其易分發(fā)、成本低、靈活性好等優(yōu)勢,已經(jīng)代替加密鎖成為主流趨勢,如已經(jīng)成熟的Flexlm系統(tǒng),軟許可CmActLicense等。目前國內(nèi)加密鎖仍是主流軟件保護產(chǎn)品,自主研發(fā)的軟加密授權產(chǎn)品較少,系統(tǒng)仍有待完善[2]。

        國內(nèi)的軟件保護技術目前存在的問題在于現(xiàn)有的軟件保護的方式過于單一,如硬件綁定、加殼技術等,未對軟件的保護方法進行二次設計開發(fā),導致軟件破解有規(guī)律可循;再者,軟件多側(cè)重于對軟件自身的保護,購買一次可以獲得永久的使用權,沒有結(jié)合用戶的需求采取靈活的授權模式,例如不同的用戶應該擁有不同的使用期限和不同的功能模塊。

        本文提出了一種基于機器注冊碼的軟件授權保護策略,優(yōu)先使用國產(chǎn)加密算法,對軟件授權的各個環(huán)節(jié)進行優(yōu)化和改進。在保護軟件的同時,也可以按時間、功能模塊對用戶進行授權。

        1 系統(tǒng)方案

        為解決傳統(tǒng)軟件保護技術存在的保護方式單一、授權不夠靈活等問題,設計基于注冊碼的軟件授權保護方案,該方案的設計目標包括以下四點。

        (1)激活碼需要和硬件信息相結(jié)合。硬件信息是唯一且不變的,做到“一機一碼”,保證每臺機器的激活碼不可通用,單獨授權,并且要做到硬件信息不易推測出來。

        (2)生成激活碼的算法的安全性。基于軟加密的保護機制的核心在于加解密算法,采用安全可靠的加解密算法防止軟件輕易被破壞。

        (3)安全的授權校驗機制,解密的過程是一個明文信息暴露的過程,如果校驗機制出現(xiàn)了隱患,對軟件來說則是致命的威脅。

        (4)具有一定的自身檢查能力,包括對磁盤文件和內(nèi)存映像的檢查,避免軟件在開發(fā)者不知情的情況下修改校驗機制,被破解而不自知。

        基于上述設計目標,制定了軟件授權保護系統(tǒng)的授權流程,其流程如圖1所示。主要思路是:首先,客戶啟動軟件,軟件提取能夠唯一標識機器身份的指紋信息,使用加密算法對其加密形成注冊碼。服務端收到注冊碼之后,根據(jù)軟件的基本信息和用戶的需求信息(功能需求和使用期限)生成激活碼,發(fā)送給客戶端??蛻舳耸褂眉せ畲a激活軟件,在校驗激活信息無誤后,進入軟件主界面。

        2 系統(tǒng)組成部分

        基于功能的需求,對系統(tǒng)功能進行功能模塊的劃分,得出系統(tǒng)功能組成,如圖2所示。

        圖1 授權流程

        圖2 系統(tǒng)組成

        (1)服務端的加密模塊和授權模塊是本系統(tǒng)的重要功能模塊。授權模塊需要讀取客戶端發(fā)來的注冊碼和用戶的需求信息并調(diào)用加密模塊的加密算法對信息加密。

        (2)客戶端的加解密模塊包括生成注冊碼和完整性校驗時需要的加密摘要算法,以及解析激活碼時的解密算法。

        (3)硬件信息采集模塊主要用于采集可以唯一標識用戶身份的硬件信息,如磁盤序列號、MAC地址等。

        (4)注冊碼生成模塊包括讀取硬件信息、組合硬件信息和生成信息摘要三部分。

        (5)激活校驗模塊獲取到解密后的信息后校驗內(nèi)容的正確性,包括激活碼校驗、時間校驗和功能校驗。

        (6)完整性校驗模塊在程序最開始運行的時候?qū)φ麄€軟件的完整性進行檢驗,校驗無誤后才可進入激活校驗。

        3 系統(tǒng)具體實現(xiàn)

        3.1 注冊碼生成模塊

        計算機中,可以作為指紋的能讀取的硬件信息有:MAC地址,CPU序列號,BIOS序列號,硬盤序列號。MAC地址具有全球唯一性;BIOS序列號的讀取并不容易,但有些主板沒有BIOS序列號,使用一些工具也可以輕易更改它,如DMIScope;如果是同一批次同一配置的電腦,CPU序列號存在重復的可能;硬盤序列號是獨一無二的,是計算機信息的重要組成部分,如果執(zhí)意修改,可能會導致系統(tǒng)錯誤,硬盤無法使用。所以本方案采取讀取硬盤序列號和MAC地址作為指紋信息。采用這一方式有一定的風險,兩種信息的簡單組合很容易被推測出所使用的硬件信息,在安全性上有所欠缺。故本方案中將硬盤序列號和MAC地址分組進行交叉,使信息變得復雜化,如圖3所示。

        圖3硬件信息組成方式

        由于硬件信息的長度不固定,注冊碼的生成采用摘要算法,生成固定長度的消息摘要。MD5和SHA-1算法不再安全[3],本文采用安全性更高的SM3摘要算法生成摘要。將其作為加密算法的消息輸入,摘要算法加密的不可逆性,可以保證硬件信息的交叉處理原文不被反推出來。

        3.2 加密授權模塊

        和非對稱加密算法相比,對稱密碼算法運算速度快,加密效率高,不需要考慮安全傳輸?shù)膯栴}。在對稱密碼算法中,國產(chǎn)SM4對稱分組密碼算法具有較高的可靠性和安全性,故本方案中采用SM4算法。它的分組長度為128 bit,密鑰長度也為等長的128 bit。加密算法和密鑰擴展算法均采用32輪非線性迭代結(jié)構(gòu),每次迭代為一個圓形變換函數(shù)f。該SM4算法添加/解密相同的結(jié)構(gòu),只使用車輪密鑰相反,其中解密車輪密鑰是加密車輪密鑰的相反順序[4]。

        3.2.1 SM4算法的改進使用

        由于SM4是對稱加密密鑰,加密和解密過程使用相同的密鑰,獲取了加密密鑰,相當于得到了解密密鑰,就可以破解密文。另外SM4算法在擴展密鑰的計算過程中使用固定參數(shù)CK和FK,不具有良好的隨機性。故在使用過程中,對SM4算法進行了改進[5]。本文提出在輪密鑰的生成過程中添加隨機性參數(shù),改進參數(shù)的選擇方式,無法獲得這些參數(shù),則無法生成正確的輪密鑰,也無法還原解密過程。具體改進描述如下。

        (1)將4個系統(tǒng)參數(shù)FK增加至16個,原來的4個系統(tǒng)參數(shù)不變,另外使用隨機數(shù)生成12個不同的參數(shù)FK4~FK15。采取以下方式隨機選擇4個參數(shù)進行加密運算。

        采用線性探測法構(gòu)建哈希表,存儲16個FK,如圖4所示。

        圖4 固定參數(shù)表

        取明文的最后一位X15,模4求余得j=X15mod4,計算取FK的關鍵字地址hi=4×i+j(i=0,1,2,3),得到4個FKi=Hash(hi)(i=0,1,2,3)。

        CK32=80878e95 CK33=acb3bac1

        CK34=c8cfd6dd CK35=e1ebf2f9

        在固定參數(shù)FK中添加隨機參數(shù),增加了生成輪密鑰的隨機性,提高密鑰的安全性。增加CK的值,并且增加密鑰擴展的輪數(shù),提高了算法的復雜度,進而提高整個算法的安全。

        3.2.2 加密授權方法

        激活碼由軟件供應商提供生成。SM4算法為分組為128 bit長度的對稱加密算法,加密數(shù)據(jù)格式較為固定,若一次加密,形式過于單一,故采用兩次加密,先驗證注冊碼的合法性,如果合法,則設置軟件信息,包括軟件版本信息、注冊時間等,合成等長的128 bit字符串作為密鑰,對注冊碼進行第一次SM4加密。把授權信息,如使用期限、使用的功能、供應商等,生成128 bit的字符串,使用上一次生成的密鑰,對授權信息進行第二次加密,生成最終的激活碼[6]。生成激活碼流程如圖5所示。

        圖5 生成激活碼流程

        3.3 軟件激活校驗模塊

        驗證激活碼是為了判斷用戶是否有合法的使用權。驗證過程在客戶端進行,可以在無網(wǎng)絡的環(huán)境下驗證,保證其安全性。主要流程[7]如圖6所示。

        圖6 校驗流程

        獲取到激活碼后,首先和生成過程類似,將注冊碼和軟件信息加密,生成解析授權信息的軟件密鑰,使用軟件密鑰對激活碼解密,獲取授權信息,判斷授權信息的數(shù)據(jù)格式是否合法。這一步也是對激活碼進行校驗,如果數(shù)據(jù)格式不合法說明激活碼中加密的注冊碼有誤,無法對軟件激活。獲取到軟件信息后,判斷軟件的使用期限和功能信息是否有效,有效則進入軟件主界面。

        在軟件運行期間,會一直讀取激活碼,檢查硬件信息是否相符。還會進行功能和時間校驗。讀取上次使用的時間,并計算出剩余使用時間,寫入注冊表中。在軟件校驗時間時,讀取注冊表中的時間信息,判斷時間是否在有效期內(nèi),如果不是則標志為過期,阻止用戶通過篡改時間達到延長期限的目的,保證軟件一直運行在授權期限中[8]。如果在軟件運行中修改時間,程序檢測到當前時間大于上次使用時間,則停止運行,直到時間修改回來才能繼續(xù)運行。

        在客戶端軟件中嵌入功能模塊信息列表,用戶使用某一功能模塊的時候,檢測程序中的功能模塊碼值和授權信息中的功能信息是否一致,則開放對應模塊的功能。

        3.4 文件完整性校驗

        在保護方案中,為了阻止惡意程序修改軟件信息,保護授權校驗機制,增加了對軟件的完整性校驗[9]。完整性校驗包括磁盤文件和內(nèi)存映像的檢查,DLL文件和EXE文件的完整性檢查。對原始文件使用SM3計算得到散列值,并將值放在某處,每當EXE文件開始運行時,重新計算文件的散列值,同原值進行比較,如果不同則表明文件已經(jīng)被修改。對內(nèi)存映像檢測的方法是從內(nèi)存映像中獲得代碼區(qū)塊的RVA值和內(nèi)存大小,計算內(nèi)存數(shù)據(jù)的散列值,與自身文件先前儲存的散列值進行比較,判斷數(shù)據(jù)是否被修改。如果檢測到數(shù)據(jù)被修改,則停止程序的運行。

        4 結(jié)論

        本文從實際應用出發(fā),分析常見軟件保護技術的不足之處,將軟件保護和用戶授權相結(jié)合,提出了一種基于注冊碼的軟件授權保護方案,改進了注冊碼的構(gòu)成方式,設計了授權和加密方案,完成了激活校驗的流程,并對軟件做了完整性校驗,保證軟件的完整性,在對軟件起到保護作用的同時,可以對用戶分時間和功能授權,提高了授權的靈活性。

        本方案還可以做一些改進,例如增加云授權、次數(shù)授權等。還應該從不同角度進行安全防護,從底層系統(tǒng)的安全性開始同軟件保護技術結(jié)合起來,保證軟件的安全,這也是接下來重點研究的內(nèi)容。

        猜你喜歡
        信息
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        展會信息
        中外會展(2014年4期)2014-11-27 07:46:46
        信息超市
        展會信息
        展會信息
        展會信息
        展會信息
        展會信息
        信息
        健康信息
        祝您健康(1987年3期)1987-12-30 09:52:32
        亚洲小说图区综合在线| 亚州性无码不卡免费视频| 亚洲日韩一区二区三区| 欧美日韩国产综合aⅴ| 精品蜜桃视频在线观看| 中文字幕中文字幕在线中二区| 亚洲一区二区三区四区五区六| 成人免费ā片在线观看| 亚洲精品乱码久久久久久按摩高清| 日韩极品在线观看视频| 中文字幕人妻熟女人妻| 国产又黄又猛又粗又爽的a片动漫 亚洲精品毛片一区二区三区 | 乱人伦人妻中文字幕无码| 亚洲AV一二三四区四色婷婷| 成人在线视频亚洲国产| 亚洲深深色噜噜狠狠网站| 18禁裸男晨勃露j毛免费观看| 国产亚洲欧美精品一区| 白色月光免费观看完整版| 久久婷婷色香五月综合缴缴情 | 亚洲一区二区三区地址| 亚洲精品无码国产| 亚洲欧美日韩综合中文字幕| 久久久精品国产亚洲av网不卡| 国产精品毛片无遮挡高清| 男男啪啪激烈高潮无遮挡网站网址| 久久人妻无码一区二区| 国内精品久久久久久无码不卡| 国产美女自拍国语对白| 国产91色综合久久高清| 国产精品成人观看视频| 久久国产精99精产国高潮| 久久综合伊人有码一区中文字幕 | 午夜亚洲AV成人无码国产| 亚洲精品中文字幕熟女| 无码乱肉视频免费大全合集| 亚洲av无码成人黄网站在线观看 | 青青视频一区| 亚洲国产精品二区三区| 亚洲2022国产成人精品无码区| 亚洲色偷拍区另类无码专区 |