一些软件开发者为辛辛苦苦开发出的的软件如何不被盗版而发愁,他们想尽方法来为软件加壳,下面介绍一种采用硬盘物理序列号进行加密软件的方法.
1.采用一外部二进制文件用于保存要注册用户的硬盘序列号.需要软件开发者自行开发一注册文件生成工具软件,此软件应可以完成以下功能:根据用户提供的硬盘序列号,将序列号的每一个字符拆分开,将每个字符按不同的算法进行加密成另外一个字符,再将加密后的字符保存到二进制文件中事先定义的字节处.如将硬盘序列号第一个字符的ASCII码以+128值后的ASCII码保存到文件的第2561字节,第二个字符的ASCII码以+55值后的ASCII码保存到文件的第1265字节等等.二进制文件的其它字节位置以随机ASCII填充.
2.用此工具生成的对应二进制文件返回给用户安装到指定位置.用户运行软件时,软件会按工具中的约定算法读出二进制文件中的存储硬盘序列号每个字符的ASCII码值,再按工具加密定入时的算法解密读出并组合成字符串,同时直接得到当前电脑的硬盘序列号,将此序列号同密钥二进制文件读出的硬盘序列号进行比较,如果相同则为注册用户.
3.进行判断是否是注册软件用户时,可以同时加入下面的几个判断:二进制文件是否存在,二进制文件大小是否相符,二进制文件中还可采用类似的方法加入网卡WAC地址,CPUID等加密内容.