算法在注册码软件加密保护中的应用文档信息
目录
一、引言
二、 A算法
A是最流行的非对称算法加密之一是既能用于数据加密也能用于数字签. . .
(1)选取加密密钥和解密密钥
(2)加密过程s就是与计算机ID相对应的注册码
(3)解密过程
三、用VC编写A动态链接库
四、软件加密保护的测试程序实例
1.软件注册测试程序
2.注册机测试程序
五、结束语
正文
摘要介绍了A算法并以实际开发的软件为例介绍在VB中应用该算法实现注册码软件加密保护的方法实践证明该方法可以有效地保护注册码软件
关键字 A算法VB注册码软件加密保护
一、引言
计算机软件是一类特殊商品极易复制和盗版为了保护自己的利益越来越多的软件作者开始采用“一机一码”的注册机制注册流程是软件用户通过汇款或银行转账的方式付费后将电脑的ID 惟一确定一台电脑的硬件信息一般是硬盘的物理序列号、主板序列号等通过电子邮件发送给软件作者软件作者通过一定的加密算法对用户的电脑ID进行加密生成注册码再通过电子邮件将注册码发送用户进行注册认证成为注册版软件。这种注册机制绑定了注册用户的电脑硬件可以有效地防止注册码在网络上的非法传播它的关键是要采用高强度的加密算法否则很容易被解密者通过逆向分析写出注册机导致软件保护彻底失败严重地损害了开发商的利益。 A是最流行的非对称算法加密之一它的突出特点是破解者即使分析出软件中的注册验证算法也很难推导出注册机的算法非常适合软件注册码的加密算法。本文以笔者实际开发的共享软件为例介绍该算法在软件加密保护中的应用方法。
二、 A算法
A是最流行的非对称算法加密之一是既能用于数据加密也能用于数字签名的算法。它的特点是加密密钥不同于解密密钥而且解密密钥不能根据加密密钥计算出来。该算法可分为三个过程:
(1)选取加密密钥和解密密钥
首先要选取两个大素数:p和q并计算其乘积n=pq再随机选取加密密钥—正整数e使得e和(p-1) (q-1)互素然后用欧几里得扩展算法计算解密密钥d 以满足
(1)
注意: d和n也互素 e和n是公开密钥 d是私人密钥两个素数p和q不再需要它们应该被舍弃但绝不可泄露。
(2)加密过程
加密过程也就是软件注册码生成的过程。将计算机的ID作为明文信息m用私人密钥d对m加密得到密文s
(2)s就是与计算机ID相对应的注册码。
(3)解密过程
解密过程就是对注册码校验的过程。用户输入注册码或从软件从注册文件中读取注册码s用公开密钥e对s进行解密得到明文信息
(3)
比较m与m’ 如果相等则s是软件作者给的合法注册码软件正常运行否则软件拒绝运行。
由(2)知注册码的长度取决于n的长度 n的位数越多越安全在注册码软件加密保护的实际应用中一般认为A算法的密钥需要1024位以上是有安全保障的。
三、用VC编写A动态链接库
MIRACL库是一个大数运算库它提供了大多数密码体制所必需的大数运算是实现密码系统的一个基本工具。本文用VC调用MI RACL库将A算法中的加密解、密函数封装在ADLL.DLL动态链接库中[3] 在VB中使用A算法的方法是通过调用动态链接库中加密、解密函数实现注册码软件的加密保护。
四、软件加密保护的测试程序实例
为了更好地演示A的加密保护效果本文编写一个软件注册验证的测试程序和一个注册码生成程序。下面测试程序A参数是采用ATOOL工具生成的128位RAS算法的参数十六进制) 在实际应用中取1024位以上其中模数是963 251DC5A9C90D9F203A03C363BA411 公钥是
10001私钥是56157D29A89D77BF 2F669A8F0B123CC9。用户电脑ID取硬盘物理序列号读硬盘序列号的方法请参考文献。
1.软件注册测试程序
程序运行时显示图1界面如果输入正确注册码单击“注册”后提示注册成功否则提示注册失败。
图1注册验证演示程序
2.注册机测试程序
程序运行时显示图2界面输入软件用户的机器码单击“生成注册码”即可生成与机器相对应的注册码。
图2注册机演示程序
五、结束语
用A算法对VB注册码软件进行加密保护可以有效地防止破解者写出非法注册机。笔者已经成功地用于开发的《C/C++程序设计学习与实验系统》共享软件中取得了很好的软件加密保护效果。
参考文献:
[1]段刚:加密与解密(第二版) [M] .北京:电子工业出版社 2003
[2]王松:Visual C++6.0程序设计与开发指南[M] .北京高等教育出版社 1999
[3]赵春生:浅谈利用A算法防止非法注册机的制作http:
[4]陆麟:直接从RING3获取硬盘序列号 http:
“算法在注册码软件加密保护中的应用”文档源于网络本人编辑整理。本着保护作者知识产权的原则仅供学习交流请勿商用。如有侵犯作者权益请作者留言或者发站内信息联系本人我将尽快删除。谢谢您的阅读与下载
不知道大家是否注意到sharktech的所有服务器的带宽价格全部跳楼跳水,降幅简直不忍直视了,还没有见过这么便宜的独立服务器。根据不同的机房,价格也是不一样的。大带宽、不限流量比较适合建站、数据备份、做下载、做流媒体、做CDN等多种业务。 官方网站:https://www.sharktech.net 付款方式:比特币、信用卡、PayPal、支付宝、西联汇款 以最贵的洛杉矶机器为例,配置表如...
rfchost怎么样?rfchost是一家开办了近六年的国人主机商,一般能挺过三年的国人商家,还是值得入手的,商家主要销售VPS,机房有美国洛杉矶/堪萨斯、中国香港,三年前本站分享过他家堪萨斯机房的套餐。目前rfchost商家的洛杉矶机房还是非常不错的,采用CN2优化线路,电信双程CN2 GIA,联通去程CN2 GIA,回程AS4837,移动走自己的直连线路,目前季付套餐还是比较划算的,有需要的可...
最近发现一个比较怪异的事情,在访问和登录大部分国外主机商和域名商的时候都需要二次验证。常见的就是需要我们勾选判断是不是真人。以及比如在刚才要访问Namecheap检查前几天送给网友域名的账户域名是否转出的,再次登录网站的时候又需要人机验证。这里有看到"Attention Required"的提示。我们只能手工选择按钮,然后根据验证码进行选择合适的标记。这次我要选择的是船的标识,每次需要选择三个,一...