论文部分内容阅读
近些年来,人们开始越来越重视对软件的保护。软件开发者除了采用法律手段保护自己的利益外,还应着重从技术上采取手段保护自己的知识产权,其方法就是采用软件加密技术。软件狗是一种基于硬件的软件保护技术。传统的软件狗通过在并行口上附加一定的电路实现,而并行口本身的特点限制了传统软件狗技术的进一步发展。同时,目前市场上已有的软件加密狗产品大都存在加密强度不高的缺点。 本文通过借鉴前人的研究成果及对目前市场上的商业加密狗的技术分析,结合自己的开发实践,详细阐述了将USB接口技术和软件狗技术成功地结合在一起来设计加密强度高、使用便利、兼容性更强的USB软件加密狗的有关内容。通过研究发现,USB软件加密狗与PC主机的数据通信采用DES算法加密,并且结合对产品序列号及安装次数的有效控制等措施可以构成高强度的加密体系,从而有效地对抗破解。另外,为了便于软件开发商使用加密狗,本设计还提供了外壳工具。 本文第一章概述了软件保护技术及软件加密狗的有关知识;第二章对密码学的基本概念和原理做了简单的阐述,通过对密码算法的分析,为软件加密狗数据的安全传输提供了理论依据;在第三章详细分析USB总线规范和技术特点,针对USB接口软件加密狗的设计,介绍了本系统中使用的USB接口控制芯片PDIUSBD12的结构和技术参数;第四章研究和论证了基于USB的高强度软件加密方案,提出了具有创新性的高强度软件加密狗实现方法,并针对目前的软件加密狗的破解方法,提出了几点反破解措施;第五章详细叙述了USB软件加密狗硬件的设计,同时把单片机中的固件作为硬件的重要组成部分,讨论了固件的功能,描述了其实现过程;第六章是本文重点介绍的部分,按软件实现的功能不同分为几个模块:加密算法的实现、USB主机驱动程序的设计和应用程序的接口。 最后,对全文进行了总结,并针对本系统在安全性方面存在的问题提出了进一步的探索。