本人就現今全球軟件保護行業(yè)較普遍采用的方法之一使用“硬件加密狗”的方式方法談?wù)勛约旱囊稽c(diǎn)看法。在當今中國市場(chǎng)上最主要的加密鎖品牌有:1。美國彩虹公司(也是最早做硬件加密的公司)的國產(chǎn)品牌“加密狗”、美國品牌“圣天諾軟件加密鎖”;2。阿拉丁的“HASP”系列加密鎖;3。
德國威博公司的“WBU-KEY”加密鎖;4。深思洛克的“深思加密鎖”;5。藍宇風(fēng)公司的“金盾加密鎖”;6。飛天公司的“ROCKEY”加密鎖等幾個(gè)主要品牌。以上加密鎖品牌的工作原理都是大同小異:被保護的軟件--加密鎖之間形成一一對映的關(guān)系,被保護的軟件在運行的過(guò)程當中不斷通過(guò)其API函數向加密鎖發(fā)指令來(lái)判斷加密鎖是否存在于,軟件離開(kāi)保護鎖不能運行。但是從其發(fā)展歷程來(lái)看,本人以美國RAINBOW公司的產(chǎn)品生產(chǎn)研發(fā)的歷程作一個(gè)簡(jiǎn)單的介紹: 1、從最早由美國RAINBOW公司生產(chǎn)的第一代硬件保護鎖,只是通過(guò)一個(gè)簡(jiǎn)單查詢(xún)函數來(lái)驗證并口的硬件保護鎖是否存在,存在則程序繼續運行,不再則軟件終止運行,來(lái)完成并保護軟件開(kāi)發(fā)商的利益; 2、接著(zhù)依然是美國RAINBOW公司對自己的第一代的產(chǎn)品進(jìn)行了改進(jìn)而形成了第二代的加密鎖產(chǎn)品,并且美國RAINBOW公司為其第二代產(chǎn)品取名為:SENTINEL PRO,其與第一代的產(chǎn)品相比較最大的改變在于加密鎖硬件里頭的運算芯片由RAINBOW公司寫(xiě)入了一個(gè)固定的“加密算法”,但這個(gè)算法是單一的固定的。 以上兩種產(chǎn)品對于軟件開(kāi)發(fā)商來(lái)說(shuō)有一個(gè)相當大的風(fēng)險,那就是其必需相信RAINBOW公司不會(huì )把買(mǎi)給他們的加密鎖買(mǎi)給別的個(gè)人,如果RAINBOW把相同的產(chǎn)品出售給別人的話(huà),別人拿到這個(gè)加密鎖就能使用開(kāi)發(fā)商的軟件。 3、通過(guò)軟件開(kāi)發(fā)商對這個(gè)問(wèn)題的重視,RAINBOW公司針對這種情開(kāi)發(fā)出了第三代的加密產(chǎn)品:SENTINEL SUPERPRO,這種產(chǎn)品徹底解決了軟件開(kāi)發(fā)商的后顧之憂(yōu)。這種產(chǎn)品其運算芯片中內置了28種算法,共分為56個(gè)單元,每?jì)蓚(gè)單元可以單獨保護一個(gè)應用程序,故用RAINBOW公司的說(shuō)法其一把鎖可以保護28個(gè)應用程序;且這種加密鎖的每個(gè)算法單元所采用的算法因子是由軟件開(kāi)發(fā)商自己設定的,當其寫(xiě)入加密鎖后對于外界來(lái)說(shuō)就相當于一個(gè)暗箱,是任何人也讀不出來(lái)的。 4、但隨著(zhù)解密者的技術(shù)的不斷提高,RAINBOW中國公司研發(fā)出了第四代的產(chǎn)品-智能狗,與現今的差不多所有品牌的加密鎖相比較,這種狗有了一個(gè)質(zhì)的飛躍:其通過(guò)在開(kāi)發(fā)過(guò)程中把一段代碼加密后寫(xiě)入加密狗,當程序運行時(shí)再把加密狗里的代碼在加密狗里自行運行,程序調用其運算結果來(lái)完成軟件的加密,如此就從理論上杜絕了軟件被破解的可能。