一种通用计算机的访问控制和软件版权保护装置及方法

文档序号:6412607阅读:206来源:国知局
专利名称:一种通用计算机的访问控制和软件版权保护装置及方法
技术领域
本发明涉及计算机技术领域,尤其涉及计算机访问权限控制装置和计算机软件版权保护方法。
在当今信息社会里,人们对信息的安全和保密要求越来越高,而目前的微机操作系统(譬如DOS、Windows3.1、Windows95等)基本上不对操作者的身份进行鉴别,使得操作者可以随意地访问系统中的资源,而这些资源中有些可能是隐私性方面的内容或其它有保密要求的内容。另外一些多用户操作系统(譬如WindowsNT、Unix等)虽然提供了较好的用户权限控制,但若重装操作系统,则已有的用户权限控制将被轻易地击破。
目前的软件版权保护手段很弱,部分专业软件以提供软件狗的方式发放软件使用许可权,而更多的软件仅仅只是在安装时显示一段劝说用户遵守国际版权公约的文字,软件开发者的利益受到盗版行业的严重威胁。
尽管已有一些限制对计算机系统进行存取的方法,譬如控制计算机的预引导方案、采用总线插卡形式电子锁的信息保护装置。这些方案在起初提出时是具有一定特色和新颖性的,但随着时间的推移和电子技术的进步,有些方案已明显落后,不仅可以较容易地绕开方案中所设置的障碍点,而且实现起来即繁复又低效,不利于方案的产业化。
关于计算机软件版权保护的方法,也有许多,譬如采用电话通信网络或Internet网动态购买软件使用许可证的方法。但时至今日,软件版权保护的重要方法依然是努力培养人们的道德观念,而不是依靠那些已公开的技术方案,许多技术方案实施起来存在这样或那样的不便。
在限制对计算机系统进行存取的方法中,大多数方案(譬如CN1146813A)采用总线插卡首先引导,占据CPU的控制权,从而根据后续条件判断是否正常启动计算机,解除该方案所制造的障碍仅需拔掉插卡而已。当然CN1146813A方案还提到了其它一些保护计算机资源的技术手段,诸如逻辑上和物理上破坏计算机部件的方法。其实即便在大多数安全性要求较高的应用场合,也是完全没有必要或者根本就不应该破坏计算机的部件。一方面是因为如果硬盘等存储媒质上的数据采用了诸如DES等高强度的加密处理,那么即便将硬盘中的资料完全公开,得到的也仅是解不开密无任何意义的二进制串,破坏硬盘当然就没有必要了。另外,自动破坏计算机部件可能会带来其它恶性后果,那就是除了数据安全之外的其它安全问题,譬如短路引起的火灾等等。CN1146813A方案主要依靠监视总线来完成计算机资源访问控制。在中央处理器发展到今天的这个时代,要真正实时监测高达数百兆时钟频率的复杂总线时序,在技术上实现起来是比较困难的,若采用其它方式回避这个正面问题,也就正反映了该方案实现起来比较困难的弱点。实际上,此方案确实在许多地方主要是以CPU监视BIOS呼叫来间接实现总线监视。显然,监视BIOS呼叫与监视计算机总线并不是一回事。
本发明的目的主要是为了更好地解决对计算机访问权限的控制,限制非法用户随意开启计算机,保护计算机硬盘中存储的资料不被未授权用户访问,以及提供一种方便的、便于实施的、既有利于软件使用者又有利于软件制造商的软件版权保护的通用计算机的访问控制和软件版权保护装置及方法。
本发明需要对现行微机系统的主板设计稍加改造,其特征在于中央处理器U1的复位引脚与增加的微控制器U2的一个输出引脚直接或间接相连接,主板上的复位信号不再与中央处理器U1的复位引脚相接,而是与微控器U2的复位端相连,以实现U2对中央处理器U1的复位控制;微控制器U2与主板保持串行或并行数据通信联系,以实现计算机上层应用软件对U2的完全控制;在主板增加一个内嵌式CPU卡模块U3,该模块与微处理器U2也保持异步通信联系,使得U2可以读写该CPU卡;在机箱前面板安装IC卡读写器U4,该IC卡读写器包含读写卡座及外围读写电路,并与微控制器U2保持异步串行通信联系,IC卡读写器还包括一个密码小键盘。
本发明所述的通用计算机访问控制方法,其特征在于在计算机上电时,将主板复位电路产生的复位信号给增设的微控制器U2,U2复位后控制其与中央处理器U1复位端相连的输出管脚,使中央处理器U1一直处于复位状态,而暂不能进入正常工作状态;微机用户将SIM卡插入微机增设的IC卡读写器U4;微控制器U2从IC卡读写器的密码小键盘读取用户输入的用户密码;微处理器U2把用户密码转发给SIM卡进行密码比较,若比较是成功的则允许U2读取该SIM卡的用户帐号;若比较失败,SIM卡将拒绝执行U2发出的读写指令;控制器U2产生一随机数送给SIM卡,令SIM卡产生认证符,SIM卡采用密码算法f1,从内部密钥、帐号、随机数三者中产生认证符,SIM卡使用的内部密钥存放在SIM卡内部,认证符计算完毕,送给微控制器U2;微控制器U2采用同一密码算法f1,从其自己内部密钥、帐号、随机数三者中产生认证符,微控制器U2使用的内部密钥存放在内部CPU卡U3内部;微控制器U2将两个认证符进行比较,若相等,U2控制输出管脚,使中央处理器U1脱离复位状态进入正常工作状态,执行操作系统引导工作;若不相等,则仍旧使U1处于复位状态。
本发明所述的通用计算机的数据访问控制方法,其特征在于用户启动数据加密软件,加密软件产生一随机数,发给主板上的微控制器U2,U2采用加密算法f2以密钥对随机数进行加密得到第二随机数,并将第二随机数回传给加密软件,加密软件采用解密算法f2以所述密钥对第二随机数进行解密得到第三随机数,若第一随机数与第三随机数相等,表示该软件正在原配微机上运行,否则停止运行;加密软件命令微控制器U2执行用户身份鉴别,若身份鉴别失败,则停止运行;若身份鉴别成功,则得到微控制器U2返回的用户帐号和内部密钥;加密软件根据用户帐号和内部密钥采用高强度数据加密算法f3对指定原始数据进行加密,生成秘密数据;加密软件对原始数据存放空间进行擦除操作,避免留下任何原始数据。
本发明所述的通用计算机的软件版权保护方法,其特征在于每套正版软件附带一张版权许可CPU卡,CPU卡存放该软件的序列号,软件中存放有该CPU卡的用户密码;安装软件时,用户需将版权许可CPU插入前面板的IC卡读写器U4;安装程序以内部存储的密码与版权许可CPU卡进行核对,密码核对成功后,可以读取存放于版权许可CPU卡内部的软件序列号;安装软件将此软件序列号发给主板上的微控制器U2,令其在主板上的CPU卡U3中创立基本文件并存储此软件序列号,安装软件记录基本文件名并继续其它安装工作;软件安装成功后,在每次执行时,软件先命令微控制器U2根据基本文件名在主板CPU卡U3中检索是否存放有合法的软件序列号,若检索不成功,则停止运行。
本发明具有以下优点1.可以对计算机用户进行身份鉴别,阻止未授权用户擅自开启计算机。由于微控制器U2与计算机主板进行一体化设计,而不是采取主板插卡方式,所以不存在主板插卡被拔掉从而绕过障碍这方面的缺陷。另外,控制中央处理器的复位端要比监视和控制计算机数据总线要容易得多,实现很方便,功能也能得到很好地保证。
2.提供方便的、针对用户身份卡的数据加密。可以将用户存放在计算机硬盘上的数据资料进行高强度加密,防止他人将硬盘卸下在别的计算机系统上读出而泄密,加密后的数据只有凭用户身份卡方可解密。从而为个人隐私、商业秘密、政府机密等数据提供非常好的保护手段。
3.可以提供完美的软件版权保护方法,最大限度地保护计算机软件生产商和最终用户的利益。由于每套软件附带一张存放软件序列号的CPU卡,缺此CPU卡,安装软件将不能执行正常的安装操作,而CPU卡极难复制和解密,再加上安装软件和CPU卡要进行双向身份认证,所以要从安装软件破解实现盗版也是极其困难的。
总之本发明具有方便、易实现、易于产业化和安全可靠的效果。
图面说明附图
是本发明所述一种通用计算机的访问控制和软件版权保护装置的实施例电路框图。
根据以上硬件系统的改造要实现对计算机访问权限的控制和软件版权的保护,按照下述方法实施即可。
1、用户身份鉴别计算机用户需持有合法的用户身份卡(Subscriber Idenrtity Module,简称SIM卡),凭SIM卡就可以启动计算机,从而访问其资源,并实现计算机访问权限的控制。SIM卡可以是那些目前安全性较高的CPU卡,很难被伪造,每张SIM卡带有一个用户密码(Personal Identify Number,简称PIN),用户使用SIM卡时,必须提供相应的PIN,否则就不认为他是该SIM卡的合法持有者。仅当PIN正确时,才可能对该SIM卡进行读写操作。如果用户提供的PIN与SIM卡内部存储的PIN不符,在连续尝试几次均不成功时,该卡将被阻塞而报废。
典型的用户身份鉴别过程如下①给计算机上电,主板复位电路产生复位信号给微控制器U2,微控制器U2复位后,控制其与中央处理器U1复位端相连的输出管脚,使中央处理器U1一直处于复位状态,而暂不能进入正常工作状态;②微机用户将SIM卡插入微机前面板的IC卡读写器U4;③微控制器U2从IC卡读写器密码小键盘读取用户输入的用户密码UserPin;④微控制器U2把用户密码UserPin转发给SIM卡进行密码比较,若密码比较成功,则允许微控制器U2读取该SIM卡的用户帐号UserCounterNumber;若密码比较失败,SIM卡将拒绝执行微控制器U2发出的读写指令;⑤微控制器U2产生一随机数RandomNumber送给SIM卡,命令SIM卡产生认证符VerifyDataIC。因为用户密码UserPin已经比较成功,所以SIM卡接受命令并执行。SIM卡采用密码算法f1,从内部密钥UserKeyIC、帐号UserCounterNumber、随机数RandomNumber三者中产生认证符VerifyDataIC,也即VerfiyDartaIC=f1(UserKeyIC,UserCounterNumber、RandomNumber)。SIM卡使用的内部密钥UserKeyIC存放在SIM卡内部。认证符VerifyDataIC计算完毕,送给微控制器U2;⑥微控制器U2采用同一密码算法f1,从内部密钥UserKeyPC、帐号UserCounterNumber、随机数RandkomNumber三者中产生认证符VerifyDataPC,也即VerfiyDataPC=f1(UserKeyPC,UserCounterNumber,RandomNumber)。微控制器U2使用的内部密钥UserKeyPC存放在内部CPU卡U3内部;⑦微控制器U2将两个认证符UserKeyIC、UserKeyPC进行比较,若相等,微控制器U2控制输出管脚,使中央处理器U1脱离复位状态进入正常工作状态,执行操作系统引导工作;若不相等,则表示该SIM卡不是启动该计算机的合法卡,将仍旧使U1处于复位状态。
至此,用户身份鉴别完毕。
显然,由于采用了较好的密码算法,微控制器U2可以较好地完成对用户SIM卡的正确鉴别,相比这下,微控制器U2对中央处理器U1的复位端控制就显得更为关键而且也比较薄弱。因为尽管绝大多数未授权用户难以越过这一步,但是在某些场合未授权用户却可以在中央处理器U1复位端的暴露部位采用割线的方式直接进行复位控制,从而成功地引导系统。然而这种方法显然比直接移走硬盘去另一套系统上读取要艰辛得多。
当然,如果硬盘上的数据经过高强度加密处理,那么上述非法操作就显得没有任何实际意义。
2、数据加密存放在硬盘上的资料,有些需要得到较高强度的保密。用户身份鉴别虽然能阻止非法用户启动微机系统,但并不能防止他人将硬盘卸下而导致泄密。数据加密流程可以对硬盘上的数据进行高强度的加密,加密过程不仅与微机有关,而且与加密用户有关,这就使得即便硬盘上的资料被窃取,他人也根本无法将其解密。
典型的数据加密流程如下①加密软件首先进行版权合法性判断。用户启动数据加密软件,加密软件产生一随机数Random2,发给主板上的微控制器U2,U2采用加密算法f2以密钥Key2对Random2进行加密得到RandomE2(RandomE2=f2(Key2,Random2)),并将RandomE2回传给加密软件。加密软件采用解密算法f2’以密钥Key2’对RandomE2进行解密得到Random2’(Random2’=f2’(Key2’,RandomE2)),若Random2与Random2’相等,表示该软件正在原配微机上运行,否则停止行动;②加密软件命令微控制器U2执行用户身份鉴别(用户身份鉴别具体过程如前述),若身份鉴别失败,则停止运行;若身份鉴别成功,则得到微控制器U2返回的用户帐号UserCounterNumber和内部密钥UserKeyIc;③加密软件根据用户帐号UserCounterNumber和内部密钥UserKeyIc,采用高强度数据加密算法f3对指定数据文件进行加密,生成秘密文件;④加密软件对原始文件存放空间进行擦除操作,避免留下任何原始数据;至此,完成数据加密过程。解密流程与加密流程相似,仅将加密算法f3换成解密算法f3’即可。
上面叙述了对计算机进行访问控制的方案,下面解释有关软件版权保护方案中的问题。
3、软件版权保护正版软件发行时,通常带有序列号,该序列号存放在CPU卡内。在最终用户安装该软件时,安装程序将存放在CPU卡内的序列号写入计算机主板上的内嵌式CPU卡,启动软件时,软件先检测计算机主板上的CPU卡内是否存储有正确的软件序列号,若不存在,则停止运行。存放软件序列号的CPU卡不可伪造,每套软件对应于唯一的序列号和CPU卡,可以实现软件版权的很好保护,防止拷贝软件的随意安装。
软件版权保护过程如下
①每套正版软件附带一张版权许可CPU卡,CPU卡存放该软件的序列号,软件中存放有该CPU卡的用户密码;②安装软件时,用户需将版权许可CPU卡插入前面板的IC卡读写器U4。安装程序以内部存储的密码与版权许可CPU卡进行核对,密码核对成功后,可以读取存放于版权许可CPU卡内部的软件序列号;③安装软件将此软件序列号发给主板上的微控制器U2,令其在主板上的CPU卡U3中创立基本文件并存储此软件序列号,安装软件记录基本文件名并继续其它安装工作;④软件安装成功后,在每次执行时,软件先命令微控制器U2根据基本文件名在主板CPU卡U3中检索是否存放有合法的软件序列号,若检索不成功,则停止运行。
4、关于用户身份鉴别的说明采用该设计方案的保密计算机出厂时随机配有系统管理员SIM卡。该卡已初始化,可按正确步骤启动计算机。另外与该系统管理员SIM卡配套的软件可用来制作普通SIM卡,供普通上机人员使用,而且普通SIM卡仅供开机使用,无法复制或用来制作用户卡;制作普通SIM卡的流程如下①将系统管理员SIM卡插入IC读写器U4,启动制作普通SIM的管理软件;②管理软件进行版权合法性判断。具体过程如数据加密的流程①;③管理软件命令微控制器U2执行用户身份鉴别,仅当用户身份鉴别成功,而且用户帐号为系统管理员时,才继续执行;④从IC卡读写器抽走系统管理员SIM卡,插入用来制作普通SIM卡的CPU卡,对其执行初始化,并设置用户密码UserPin,内部密钥UserKeyIC、帐号UserCounterNumber等项目,其中仅有用户密码UserPin是需要提示用户输入的,其它均由管理软件自动生成。
⑤普通SIM卡初始化完毕,进行用户身份鉴别测试,并给出测试结果,制作过程结束。
权利要求
1.一种通用计算机的访问控制和软件版权保护装置,其特征在于主板中央处理器U1的复位引脚与增加的微控制器U2的一个输出引脚直接或间接相连接,主板上的复位信号不再与中央处理器U1的复位引脚相接,而是与微控器U2的复位端相连,以实现U2对中央处理器U1的复位控制;微控制器U2与主板保持串行或并行数据通信联系,以实现计算机上层应用软件对U2的完全控制;在主板上增加一个内嵌式CPU卡模块U3,该模块与微处理器U2也保持串行或并行数据通信联系,使得U2可以读写该CPU卡;在机箱前面板安装IC卡读写器U4,该IC卡读写器包含读写卡座及外围读写电路,并与微控制器U2保持异步串行通信联系,IC卡读写器还包括一个密码小键盘。
2.一种通用计算机的访问控制方法,其特征在于在计算机上电时,将主板复位电路产生的复位信号给增设的微控制器U2,U2复位后控制其与中央处理器U1复位端相连的输出管脚,使中央处理器U1一直处于复位状态,而暂不能进入正常工作状态;微机用户将SIM卡插入微机增设的IC卡读写器U4;微控制器U2从IC卡读写器的密码小键盘读取用户输入的用户密码;微处理器U2把用户密码转发给SIM卡进行密码比较,若比较是成功的则允许U2读取该SIM卡的用户帐号;若比较失败,SIM卡将拒绝执行U2发出的读写指令;微控制器U2产生一随机数送给SIM卡,令SIM卡产生认证符,SIM卡采用密码算法f1,从内部密钥、帐号、随机数三者中产生认证符,SIM卡使用的内部密钥存放在SIM卡内部,认证符计算完毕,送给微控制器U2;微控制器U2采用同一密码算法f1,从其自己内部密钥、帐号、随机数三者中产生认证符,微控制器U2使用的内部密钥存放在内部CPU卡U3内部;微控制器U2将两个认证符进行比较,若相等,U2控制输出管脚,使中央处理器U1脱离复位状态进入正常工作状态,执行操作系统引导工作;若不相等,则仍旧使U1处于复位状态。
3.一种通用计算机的数据访问控制方法,其特征在于用户启动数据加密软件,加密软件产生一随机数,发给主板上的微控制器U2,U2采用加密算法f2以密钥对随机数进行加密得到第二随机数,并将第二随机数回传给加密软件,加密软件采用解密算法f2以所述密钥对第二随机数进行解密得到第三随机数,若第一随机数与第三随机数相等,表示该软件正在原配微机上运行,否则停止运行;加密软件命令微控制器U2执行用户身份鉴别,若身份鉴别失败,则停止运行;若身份鉴别成功,则得到微控制器U2返回的用户帐号和内部密钥;加密软件根据用户帐号和内部密钥采用高强度数据加密算法f3对指定原始数据进行加密,生成秘密数据;加密软件对原始数据存放空间进行擦除操作,避免留下任何原始数据。
4.一种通用计算机的软件版权保护方法,其特征在于每套正版软件附带一张版权许可CPU卡,CPU卡存放该软件的序列号,软件中存放有该CPU卡的用户密码;安装软件时,用户需将版权许可CPU卡插入前面板的IC卡读写器U4;安装程序以内部存储的密码与版权许可CPU卡进行核对,密码核对成功后,可以读取存放于版权许可CPU卡内部的软件序列号;安装软件将此软件序列号发给主板上的微控制器U2,令其在主板上的CPU卡U3中创立基本文件并存储此软件序列号,安装软件记录基本文件名并继续其它安装工作;软件安装成功后,在每次执行时,软件先命令微控制器U2根据基本文件名在主板CPU卡U3中检索是否存放有合法的软件序列号,若检索不成功,则停止运行。
全文摘要
一种通用计算机的访问控制和软件版权保护装置及方法。本发明对现行的微机主板稍加改造,将微控制器U
文档编号G06F17/00GK1221915SQ9712572
公开日1999年7月7日 申请日期1997年12月29日 优先权日1997年12月29日
发明者张义农, 蔡华 申请人:张义农, 蔡华
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1