幫助中心

當(dāng)前位置:首頁 > 幫助中心 > U盤也可以進(jìn)行軟件加密

U盤也可以進(jìn)行軟件加密

日期:2011-05-04 | 時(shí)間:01:42
一般的U盤不具備加密的功能,雖然U盤和加密狗外形有一些相似,但是內(nèi)部完全不一樣的,U盤只是一個(gè)存儲(chǔ)器芯片和簡單的附屬電路,而現(xiàn)在的智能卡加密狗都具有一個(gè)單獨(dú)的CPU或者加密芯片,可以執(zhí)行相當(dāng)復(fù)雜的加密算法。

 


  有的軟件開發(fā)商有這樣一種需求,就是使用U盤發(fā)布軟件的同時(shí),想要節(jié)約成本,防止U盤中的軟件被復(fù)制,但又不想再購買昂貴的加密狗,因此想要把軟件綁定在U盤上執(zhí)行,當(dāng)U盤拔下來的時(shí)候,軟件就不能正常運(yùn)行,和我先前介紹的綁定硬件指紋相似,使用綁定U盤的方式加密軟件。

 


  在對(duì)軟件安全不是特別在意的情況下,可以在軟件中采用綁定U盤內(nèi)部ID的方式來實(shí)現(xiàn)這種加密,先使用程序?qū)盤的ID讀出來,然后根據(jù)這個(gè)ID生成License文件,當(dāng)解密者將U盤內(nèi)的文件復(fù)制到其他電腦的時(shí)候,軟件執(zhí)行過程中讀取U盤ID失敗,因此就無法校驗(yàn)License。


  通常情況下兩個(gè)U盤的ID是不相同的,因此即使將軟件復(fù)制到另外一個(gè)U盤,軟件執(zhí)行的時(shí)候,根據(jù)U盤ID驗(yàn)證License,也會(huì)出現(xiàn)不匹配的現(xiàn)象,這樣就實(shí)現(xiàn)了軟件綁定U盤的加密方式。

  需要指出的是,這種U盤加密并不算安全,大多數(shù)U盤廠商有內(nèi)部量產(chǎn)工具,可以修改U盤的內(nèi)部ID號(hào)碼,這就存在了復(fù)制U盤的可能性,但對(duì)于普通用戶來說,通常沒有修改U盤內(nèi)部ID的能力,因此也具有一定的加密性。

  這個(gè)加密方法中,讀取U盤ID號(hào)的函數(shù)的VB源代碼如下所示:


Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")

Set colItems = objWMIService.ExecQuery("Select * From Win32_USBHub")

For Each objItem In colItems    

        a = objItem.DeviceID    

         If InStr(a, "VID") Then b = Split(a, "\")  

       USB_ID = b(UBound(b))

Next

  大白菜官網(wǎng)

(責(zé)任編輯:m.chanjuzi.cn)

大白菜超級(jí)U盤啟動(dòng)盤制作工具