smartlock并口单片机软件狗加密技术

smartlock并口单片机软件狗加密技术

ID:22311008

大小:53.50 KB

页数:8页

时间:2018-10-28

smartlock并口单片机软件狗加密技术_第1页
smartlock并口单片机软件狗加密技术_第2页
smartlock并口单片机软件狗加密技术_第3页
smartlock并口单片机软件狗加密技术_第4页
smartlock并口单片机软件狗加密技术_第5页
资源描述:

《smartlock并口单片机软件狗加密技术》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、SmartLock并口单片机软件狗加密技术

2、第1摘要:介绍一套单片机软件狗加密系统——SmartLock。它安装在微机并行口上,通过并口与加密软件进行通信,主要使用代码移植的方法实现软件加密。该系统具有加密可靠、使用方便、兼容性好等特点。由于加密给软件开发者和用户带来了许多不便和麻烦,因此,全球软件业的趋势是开发不加密软件,依靠版权法来保持软件开发者的权益。但对于一些大型的工程应用软件系统如:AutoCAD、Xilinx  SmartLock并口单片机软件狗加密技术

3、第1摘要:介绍一套单片机软件狗加密系统——Smar

4、tLock。它安装在微机并行口上,通过并口与加密软件进行通信,主要使用代码移植的方法实现软件加密。该系统具有加密可靠、使用方便、兼容性好等特点。由于加密给软件开发者和用户带来了许多不便和麻烦,因此,全球软件业的趋势是开发不加密软件,依靠版权法来保持软件开发者的权益。但对于一些大型的工程应用软件系统如:AutoCAD、XilinxFPGA开发系统等,由于销量小、成本高,不得已仍然需要使用软件加密技术。另外,对于某些敏感行业的应用软件也必须实行软件加密,对程序代码进行保护。早期的软件加密方法有:软盘或硬盘加密、加密卡等,

5、由于加密性能、兼容性能或使用不方便等方面的原因被淘汰。目前广流行的是软件狗硬件电路加密法,其中又以使用单片机的加密技术最为可靠。其硬件通常带有智能抗分析技术,不可复制,且加密方式灵活、工作可靠、运行速度快、使用方便,不失为软件加密的一种优选方法。500)this.style.ouseg(this)">SmartLock软件狗加密系统的硬件部分外形类似火柴盒,两头分别带有一个IEEE-1284并行口的公头和母头,串接在并行口和打印机之间。软件狗使用的是Atmel公司的89C2051单片机,芯片从微机并行口取电,通过并口

6、与加密软件进行通信,系统主要使用代码移值技术实现软件加密。1SmartLock系统的硬件设计通过研究微机打印口接口电路、IEEE-1284并口通信标准和89C2051型单片机特性,设计出SmartLock加密系统的硬件电路如图1所示。有89C2051单片机、3个锗二极管、1个12MHz晶振、2个30pF瓷片电容和1个电阻共8个元件。系统从并行口中共引出了11根端口线,其中有8根数据线D0~D7、1根状态线ACK(低电平有效,当打印机接收完一字节数据允许微机发送下一字节数据时,发给微机ACK信号)、1根控制线AUTOF

7、EED(低电平有效,打印机自动换行信号)和地线GND。微机的标准并口并不提供+5V电源,所以只有从驱动能力较强的数据口“借电”。依据IBMPCAT/XT设计标准,并行口数据位的高电平(4.5V)输出电流为2.5mA(旧式的TTL型)或15mA(CMOS型),而89C2051单片机的典型工作电流为5.5mA/3V,工作频率为12MHz。所以使用D4~D6三根数据线经锗二极管并在一起作为单片机电源(采用锗管的原因是因为它的压降较小,只有0.4V)。同时为减少软件狗硬件的功耗,电路设计得极其简洁,除了单片机,没有其它有源器

8、件。单片机复位使用的是上电自动复位电路。因此微机对并行口供电几百毫秒之后,单片机才进入正常工作状态。2并口通信协议软件狗使用数据口的D0~D3及D7作为微机向单片机传送数据的前向数据通道(一次送半字节数据,用D7位标志高/低半字节);并口控制/状态信号中的AUTOFEED和ACK平时不常用,所以这里用来作为微机向单片机传送数据时的握手信号。AUTOFEED信号为高电平,则表示微机已准备好待传送数据,此协议中称为DR(dataready)信号;ACK信号为低电平,表示单片机已准备好接收数据,此协议中称为PR(perip

9、heralready)信号。500)this.style.ouseg(this)">软件狗从微机接收数据的时序如图2所示。具体步骤是:(1)微机中的加密程序将DR(AutoFeed)控制线设置为0,然后在并口的D4~D6数据线上给一个负脉冲后再置恒1,使软件狗复位启动;(2)加密程序延时300ms后,设置D7为0,表示传送的是数据的低半字节;(3)加密程序将需要传送的数据放到并口的D0~D3;(4)加密程序在DR控制线上给出一个正脉冲,通知软件狗数据已准备好;(5)软件狗收到DR信号后从D0~D3线上读取数据,同时,

10、从D7位可以了解这半字节数据是低位还是高位。读完数据后在PR(ACK)状态线上给出负脉冲,通知微机数据已读完,可以进行下一次传送;(6)加密程序收到PR信号后,即进行下一轮的数据传送,直到最后所有数据传送完毕或一定时间后仍没有收到PR信号,则出错退出。SmartLock系统使用了ACK状态线作为单片机向微机发送“串行”数据时的数据线。同时,通过

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。