基於硬體指紋的軟體加密和註冊技術–擷取硬碟物理序號、CPU序號、網卡MAC地址、BIOS序號、主板序號

來源:互聯網
上載者:User
在軟體加密保護技術中,一種常用的保護方法就是基於硬體指紋進行許可授權,本文將詳細介紹硬體指紋的具體擷取技術,並提供一段示範原始碼程式。

  硬體指紋加密,指的是使用者免費得到軟體並安裝後,軟體從使用者的機器上取得該機器的一些硬體資訊(如硬碟序號、BOIS序號等等),然後把這些資訊和使用者授權進行綁定,產生硬體特徵碼,使用者需要將此特徵碼提交給軟體供應商或開發商,軟體開發商利用註冊機(軟體)產生該軟體的註冊號發給使用者,使用者通過此註冊號可以啟用本地授權許可。軟體加密雖然加密強度比硬體方法較弱,但它具有非常廉價的成本、方便的使用方法等優點,從而在低成本的共用軟體領域廣泛應用。

  硬體指紋加密的關鍵是電腦硬體資訊的擷取,我們需要通過程式將機器的標識一一讀取出來,根據機器的標識,通過一定的演算法,對使用者進行授許可權制。

  目前比較常見的硬體資源套件或:硬碟物理序號、CPU序號、網卡MAC地址、BIOS序號、主板序號等,如果使用者的硬體資訊發生變化,比如更換了網卡等硬體,則按照一定比例進行判斷,比如三分之二的硬體資訊沒有變化,則表示同一使用者。

  下面是使用VB調用Windows的WMI編寫的一段硬體指紋擷取的示範程式,直接將其另存新檔VBS尾碼檔案即可運行。稍加修改即可應用在共用軟體裡,實現用註冊碼對軟體進行保護的功能。

    MsgValue = ""
    Set objWMIService = GetObject("winmgmts://./root/cimv2")
    '擷取硬碟序號
    Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_PhysicalMedia", , 48)
    For Each objItem In colItems
        MsgValue = MsgValue & vbCrLf & "硬碟 = " & objItem.SerialNumber
    Next
    '擷取主板序號
    Set colItems = objWMIService.ExecQuery("Select * from Win32_BaseBoard", , 48)
    For Each objItem In colItems
        MsgValue = MsgValue & vbCrLf & "主板=" & objItem.SerialNumber
    Next
    '擷取CPU ID
    Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor", , 48)
    For Each objItem In colItems
        MsgValue = MsgValue & vbCrLf & "CPU = " & objItem.ProcessorId
    Next
    '擷取BIOS序號
    Set colItems = objWMIService.ExecQuery("Select * from Win32_BIOS", , 48)
    For Each objItem In colItems
        MsgValue = MsgValue & vbCrLf & "BIOS= " & objItem.SerialNumber
    Next
    '擷取網卡MAC地址
    Set colItems = objWMIService.ExecQuery("SELECT MACAddress FROM Win32_NetworkAdapter WHERE ((MACAddress Is Not NULL) AND (Manufacturer <> 'Microsoft'))", , 48)
    For Each objItem In colItems
        MsgValue = MsgValue & vbCrLf & "網卡 = " & objItem.MACAddress
    Next
    Wscript.Echo MsgValue

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.