如何利用U盘给软件加密

时间:2020-03-23 12:00:09   浏览:次   点击:次   作者:   来源:   立即下载

    有的软件开发商有这样一种需求,就是使用U盘发布软件的同时,想要节约成本,防止U盘中的软件被复制,但又不想再购买昂贵的加密狗,因此想要把软件绑定在U盘上执行,当U盘拔下来的时候,软件就不能正常运行,和先前介绍的绑定硬件指纹相似,使用绑定U盘的方式加密软件。  

    在对软件安全不是特别在意的情况下,可以在软件中采用绑定U盘内部ID的方式来实现这种加密,先使用程序将U盘的ID读出来,然后根据这个ID生成License文件,当解密者将U盘内的文件复制到其他的时候,软件执行过程中读取U盘ID失败,因此就无法校验License。  

    通常情况下两个U盘的ID是不相同的,因此即使将软件复制到另外一个U盘,软件执行的时候,根据U盘ID验证License,也会出现不匹配的现象,这样就实现了软件绑定U盘的加密方式。  

    需要指出的是,这种U盘加密并不算安全,大多数U盘厂商有内部量产工具,可以修改U盘的内部ID号码,这就存在了复制U盘的可能性,但对于普通用户来说,通常没有修改U盘内部ID的能力,因此也具有一定的加密性。  

    这个加密方法中,读取U盘ID号的函数的VB源代码如下所示:  SetobjWMIService=GetObject("winmgmts:.rootcimv2")  SetcolItems=objWMIService.ExecQuery("Select*FromWin32_USBHub")  ForEachobjItemIncolItems  a=objItem.DeviceID  IfInStr(a,"VID")Thenb=Split(a,"")  USB_ID=b(UBound(b))  Next。  

收起

相关推荐

相关应用

平均评分 0人
  • 5星
  • 4星
  • 3星
  • 2星
  • 1星
用户评分:
发表评论

评论

  • 暂无评论信息