计算机驱动服务安全网络系统的实现方法

文档序号:7589555阅读:192来源:国知局
专利名称:计算机驱动服务安全网络系统的实现方法
技术领域
本发明属于计算机技术领域,尤其涉及一种计算机驱动服务安全网络系统的实现方法。
背景技术
随着Windows操作系统在个人电脑的广泛使用,人们经常会遇到驱动安装的故障,导致设备无法正常使用,许多PC厂商或硬件设备厂商在给用户提供服务的过程中也遇到这样的情况。现在有一些技术发明采用各种方式对此加以解决。这些方式有的解决用户安装驱动困难的问题,有的解决用户无法检测出故障设备类型的问题,还有的解决如何从网络找到合适的驱动程序并下载安装的问题等等。但驱动服务的安全性问题尤其是在网络环境中的安全性问题却没有被重视。在网络环境中的驱动程序服务存在以下安全问题1、驱动程序在网络中的传播没有任何安全保障。驱动程序是操作系统的底层程序,对用户系统的安全非常重要,是操作系统的一部分,具有操作系统级的操作权限,涉及到整个计算机系统的稳定性和安全性。如果驱动程序被用于攻击用户计算机系统的安全,那将是致命的。驱动程序虽然如此重要,却被以一种同普通计算机程序或数据一样的方式在网络中传播着。人们获取驱动程序的来源非常杂乱,这些来源没有权威性、唯一性可言,一个普通的个人网站就可以提供驱动程序下载服务,甚至某些大的PC厂商在给用户提供支持时竟然推荐用户到一些驱动下载网站去查找、下载驱动程序。
2、用户在获得一个驱动程序后,无法简单地判断驱动程序来源(或者说驱动程序提供者)的真实性和合法性。
驱动下载服务的提供者往往不是驱动程序的提供者,一些大的PC厂商提供用户下载的驱动程序也多是自己的OEM厂商提供的。而在安装和使用这些驱动程序的过程中,即使用户是专业人士,也无法判断驱动程序来源的真实性和合法性。
许多驱动程序中包含一个CAT后缀的驱动程序签名文件,可以供Windows在安装驱动过程中检查驱动程序是否被修改过,但一方面许多驱动程序可能不包含.CAT文件,另一方面,还有许多驱动程序拥有自己的驱动安装程序而不使用操作系统来安装,这种驱动程序形式上的复杂性也是用户无法判断驱动程序来源真实性和合法性的重要原因。
3、用户在使用驱动程序的过程中承担更多的风险。
目前常见的用户接受驱动服务的形式有从提供驱动下载服务网站上下载并安装、由在线支持工程师远程安装、由上门服务工程师手工安装等。前者面临的是问题1中已讨论过的安全问题,后面的两种方式用户要面临计算机系统被他人侵入的可能,虽然这种侵入是在用户授权下进行的。驱动服务提供商在为用户提供服务过程中对给用户提供的驱动服务内容(即驱动程序)的真实性无法保证,对给用户服务的服务过程和服务结果也没有第三方的、不可抵赖性记录,这对那些对信息安全有较高要求的单位无疑是非常危险的。

发明内容
本发明克服了上述驱动程序服务在网络环境中存在不安全的缺陷,提供一种可以保障安全性的计算机驱动服务安全网络系统实现方法。
计算机驱动服务安全网络系统的实现方法,步骤包括(1)驱动服务提供服务器SP(13-1,13-2)向驱动服务运营服务器SM(12)申领驱动服务提供服务器身份证书SPC;(2)提供驱动程序的驱动服务提供服务器SPDP(13-1)向驱动服务运营服务器SM(12)提供驱动程序DF,经驱动服务运营服务器SM(12)审核通过后,驱动程序文件DF被以驱动服务项目SI发布;(3)驱动服务提供服务器SPSP(13-2)向驱动服务运营服务器SM(12)注册一个驱动服务项目SI的服务;(4)用户客户端程序Client(14)得到驱动服务项目SI的服务。
驱动服务运营服务器SM(12)可通过证书颁发机构服务器CA(11)颁发证书。
驱动服务提供服务器SPDP(13-1)向驱动服务运营服务器SM(12)提供驱动程序DF,有以下子步骤(1)SPDP(13-1)凭驱动服务提供服务器身份证书SPC向驱动服务运营服务器SM(12)注册驱动服务项目SI;(2)获得批准后,SPDP(13-1)将驱动服务项目SI对应的驱动程序文件DF提交到驱动服务运营服务器SM(12),并请求发布;(3)经驱动服务运营服务器SM(12)审核通过后驱动程序文件DF被予以发布,并被打包成驱动程序包DP且不能再被修改。
驱动服务提供服务器SPSP(13-2)向驱动服务运营服务器SM(12)注册一个驱动服务项目SI的服务,有以下子步骤(1)SPSP(13-2)凭服务提供服务器身份证书SPC向驱动运营服务器SM(12)申请注册驱动服务项目SI的服务;(2)经服务运营服务器SM(12)审批、由证书颁发机构服务器CA(11)颁发驱动服务项目SI服务授权证书SAC,以授权SPSP(13-2)提供驱动服务项目SI的服务;
(3)SPSP(13-2)下载并安装服务授权证书SAC;(4)SPSP(13-2)下载与驱动服务项目SI对应的驱动程序包DP,并凭服务授权证书SAC填写部署参数SIDP将DP部署到SPSP(13-2)上;(5)SPSP(13-2)填写驱动服务项目SI的服务的相关参数SIP开通驱动服务项目SI的服务。
用户客户端程序Client(14)接受驱动服务项目SI的服务,有以下子步骤。
(1)Client(14)从服务运营服务器SM(12)为新用户申领服务运营服务器用户身份证书SMUC;(2)Client(14)向服务运营服务器SM(12)提出驱动服务申请,服务运营服务器SM(12)找到匹配的驱动服务提供服务器SPSP(13-2)提供的驱动服务项目SI的服务,并把相关参数SIP返回给Client(14);(3)Client(14)通过参数SIP从驱动服务提供服务器SPSP(13-2)为新用户申领驱动服务提供服务器用户身份证书SPUC;(4)Client(14)通过参数SIP从驱动服务提供服务器SPSP(13-2)查询驱动服务项目SI的服务的部署参数SIDP。
(5)Client(14)通过驱动服务项目SI的服务的部署参数SIDP凭身份证书SPUC从驱动服务提供服务器SPSP(13-2)申领服务提供服务器用户服务证书SPSC;(6)Client(14)从驱动服务提供服务器SPSP(13-2)上下载驱动程序包DP并验证DP的内容是否被修改,若没有,则解包得到驱动程序文件DF;(7)Client安装驱动程序文件DF以解决设备的驱动程序故障;并凭服务运营服务器用户身份证书SMUC、服务提供服务器用户服务证书SPSC向服务运营服务器SM(12)报告服务结果。
服务提供服务器身份证书SPC可包括(1)版本1字符域版本、序列号、签名算法、颁发者、生效日期(又称有效期起始日期)、失效日期(又称有效期终止日期)、主题、公钥;(2)标准扩展项目主题密钥标识符、增强型密钥用法、颁发机构密钥标识符、缩微图算法、缩微图;(3)非标准扩展项目(即自扩展项目)证书类别、证书类别标题。
驱动服务项目SI服务授权证书SAC可包括(1)版本1字符域版本、序列号、签名算法、颁发者、生效日期(又称有效期起始日期)、失效日期(又称有效期终止日期)、主题、公钥。
(2)标准扩展项目主题密钥标识符、增强型密钥用法、颁发机构密钥标识符、缩微图算法、缩微图。
(3)非标准扩展项目(即自扩展项目)证书类别、校验码、证书类别标题、服务标识、拥有者证书序列号、授权使用次数、授权可颁发服务证书类别、授权可颁发服务证书起始序列号、授权服务可适用的软件平台、服务项目号。
服务提供服务器用户服务证书SPSC可包括(1)版本1字符域版本、序列号、签名算法、颁发者、生效日期、失效日期、主题、公钥;(2)标准扩展项目主题密钥标识符、增强型密钥用法、颁发机构密钥标识符、缩微图算法、缩微图;(3)非标准扩展项目证书类别、证书类别标题、校验码、服务标识、拥有者证书序列号、增强型序列号。
驱动程序包DP可包括三个文件,文件1为由服务运营服务器SM产生的一个服务项目SI和驱动程序文件DF的概要文件,它描述了服务项目SI和驱动程序文件DF的主要参数,包括设备标识DeviceID、INF文件名InfName、INF安装节InfSection、驱动日期、驱动版本、驱动包大小等;文件2为服务运营服务器SM产生的驱动程序文件DF压缩文件;文件3为用服务运营服务器身份证书SMC私钥对文件1和文件2内容进行签名生成的签名文件。
本发明的技术效果该方案基于公钥体系结构,通过身份证书和服务证书的发放和授权,对系统中的各对象的身份和行为进行安全管理;同时,对驱动程序在网络中的传播提出了一套方法,能有效地解决驱动程序形式的复杂性、传播的不安全性带来的隐患,保证驱动程序来源的真实性和合法性,从而杜绝前面列举出的、用户在使用驱动程序中的各种不安全问题。
本发明有以下特点1、驱动程序在网络中的传播是安全的、有序的。
驱动程序的发布和传播都有严格的审核机制,驱动程序在传播过程中不能被修改,驱动服务的提供也经过了审查和监督,整个系统具有驱动发布的权威性、驱动传播的一致性和驱动服务的安全性和有序性。
驱动程序在提供给用户时,可以明确知道驱动服务的提供者是谁、驱动程序的提供者是谁、驱动程序是否是安全合法的。整个过程有第三方的证明;在技术上由公钥体系结构做保证,具有不可抵赖性,这些都是商品化服务不可缺少的条件。
由于方案基于公钥体系结构,因此安全程度可以信赖。而且随着时间的推移,只要升级密钥的长度就可以提高安全程度,满足不断提高的安全需求。
由于第三方的存在,对驱动服务提供者之间提供服务行为进行了协调,因此,提供驱动服务的混乱、无序局面就可以改变,驱动服务的有序性得以实现。
2、用户通过一个统一的驱动服务客户端程序就可以简单地、快捷地、安全地获得驱动服务。
由于驱动程序的发布、传播、驱动服务的提供是在一个有序的环境中进行的,因此,可以最大程度地简化用户获得驱动服务的难度,用户不再需要过问其中的细节就可以获得驱动服务,这些细节包括需要驱动服务的设备是什么类型、设备是什么厂家生产的、网络中哪里有这个设备的驱动程序、如何下载、如何安装等等。用户只需要获得一个驱动程序客户端程序,通过点击一个驱动服务按钮就可以轻松完成上面所有工作。
由于驱动程序的发布、传播、驱动服务的提供是在一个有序的环境中进行的,因此可以实现驱动服务的全部自动化,用户可以接受每天24小时、一年365天不间断的、实时响应的驱动服务,这种服务的方便性和快捷性是显而易见的。
3、用户和硬件厂商都可以降低驱动服务成本。
为了解决设备的驱动故障,用户通常需要服务工程师上门服务,这对用户和驱动服务提供商来说都要付出比较大的成本,即使这样,由于是人工服务,服务的响应速度和客户满意度也不能保证。本发明可以有效地解决此问题,通过一个自动化的、自服务的驱动服务网络系统可以实现低成本、高效率和品质一致的驱动服务,考虑到驱动服务基数的庞大,这种由于自动化服务代替人工服务而节省的服务成本的规模效益是巨大的。


下面结合附图,对本发明做出详细描述。
图1是系统结构图;图2是驱动服务提供服务器工作步骤流程图;图3是用户客户端程序工作步骤流程图;图4是系统中所涉及证书的格式图4-a为服务运营服务器用户身份证书SMUC;图4-b为服务提供服务器用户身份证书SPUC;图4-c为服务提供服务器用户服务证书SPSC;图4-d为服务运营服务器身份证书SMC;图4-e为CA身份证书;图4-f为服务提供服务器身份证书SPC图4-g为服务提供服务器服务项目授权证书SAC。
具体实施例方式
以涉及“PC 99”规范的驱动程序服务为例。PC 99是各种类型的PC的硬件和软件规范,包括家用PC、办公PC、娱乐PC、便携PC(不涉及Windows CE便携机),经过PC 99兼容资格认证将获得“Designed for Microsoft Windows”的许可。PC 99规范指出,驱动程序必须不使用INI文件而使用注册表。如果可能的话,必须使用INF格式安装文件。驱动程序必须安装在正确的目录中,驱动程序必须不使用与系统驱动程序相同的文件名。驱动程序必须能够在没有用户输入的情况下安装。
参考图1,驱动服务提供服务器SP13-1、13-2如果要提供驱动服务,要向驱动服务运营服务器SM12申请身份证书SPC;经驱动服务运营服务器SM12审批、由证书颁发机构服务器CA11颁发服务提供服务器身份证书SPC。
对要发布驱动程序的服务提供服务器SPDP13-1,必须要先向驱动服务运营服务器SM12注册驱动服务项目SI,获得驱动服务运营服务器SM批准后,服务提供服务器SP13-1将驱动程序文件DF提交到服务运营服务器SM,经审核通过后予以发布,发布后的驱动程序文件DF被服务运营服务器SM打包成驱动程序包DP并不能再被修改。
对要提供驱动服务项目SI服务的服务提供服务器SPSP13-2,要先向驱动运营服务器SM12注册驱动服务项目SI的服务,经服务运营服务器SM12审批后获得证书颁发机构服务器CA11颁发的驱动服务项目服务授权证书SAC,才可以下载与该项驱动服务项目SI对应的驱动程序包DP,并部署到自己的驱动服务服务器上,然后开通此驱动服务项目SI的服务。
如果用户要接受驱动服务,首先要通过用户客户端程序Client14申请服务运营服务器SM12为用户颁发服务运营服务器用户身份证书SMUC,然后Client14向服务运营服务器SM12提出驱动服务申请,服务运营服务器SM12找到匹配的驱动服务项目SI的服务,并把相关参数返回给Client14;Client14通过参数先为新用户申请驱动服务提供服务器用户身份证书SPUC,然后申请服务提供服务器用户服务证书SPSC,从相应的服务提供服务器SP13-2上下载驱动程序包DP并解包得到驱动程序文件DF,最后Client14安装此驱动程序文件DF,解决设备的驱动程序故障;并凭服务运营服务器用户身份证书SMUC、服务提供服务器用户服务证书SPSC向服务运营服务器SM12报告服务结果。
参考图2,服务提供服务器工作步骤如下步骤201,在服务提供服务器的计算机的证书存储区检查是否已经安装了服务提供服务器身份证书SPC。如果还没有安装,则执行步骤202,向服务运营服务器SM申请颁发服务提供服务器身份证书SPC;如果已经安装则执行步骤205。
步骤202,若服务提供服务器还没有身份证书,则执行申领身份证书。有以下具体操作服务提供服务器SP向服务运营服务器SM发送颁发服务提供服务器身份证书申请,请求内容包括服务提供商名称、注册商标、地址、管理员帐户、密码、联系方式、有效期和一对非对成密钥对KEY1的公钥PK1编码;服务运营服务器SM响应此请求,检查申请内容的真实性和合法性,如果检查通过则颁发服务提供服务器身份证书SPC,并通知服务提供服务器SP证书申请成功,通过SPC_URL地址申领证书。
步骤203,若服务运营服务器SM颁发服务提供服务器身份证书SPC操作失败,则结束服务提供服务器工作步骤;否则,执行步骤204。
步骤204,服务提供服务器SP通过SPC_URL网址下载并安装证书到服务器,且将证书与非对成密钥对KEY1的私钥绑定,完成服务提供服务器身份证书SPC的申领。
步骤205,询问服务提供服务器SP是否发布驱动程序文件DF,若发布则执行步骤206,否则,执行步骤209。
步骤206,服务提供服务器SP向服务运营服务器SM发送申请,请求注册服务项目SI的驱动程序的管理权DM,请求包括以下内容1、服务提供商管理员帐户、密码;2、服务项目标识(即设备标识DeviceID);3、服务项目SI描述;4、生效日期/失效日期;5、服务项目SI适用的软、硬件环境要求;6、服务提供服务器身份证书编码SPCE、时间戳及以上内容的SPC证书私钥签名。服务运营服务器SM响应请求,检查服务提供服务器证书、签名、时间戳、管理员帐户、密码的有效性,并进行审批。若审批没有通过,则注册请求失效;否则,注册请求成功,返回以下内容服务项目号SIN,并执行步骤207。
步骤207,判断步骤206注册行为是否成功。若成功,执行步骤208;否则,执行步骤209。
步骤208,服务提供服务器SP在注册了服务项目SI的驱动程序管理权DM后向服务运营服务器SM提交和发布驱动程序文件DF。驱动程序文件DF必须符合“PC 99”规范。提交操作以文件为单位、不分顺序、将驱动程序文件DF逐一上传到服务运营服务器文件服务器,提交后的文件还可以删除并重新提交。在驱动程序文件DF还未发布前,提交功能一直是可用的。如果服务提供服务器SP认为驱动程序文件DF提交完毕,就可以发布该服务内容了。服务内容一旦发布,就不能再对驱动程序文件DF进行任何的修改。驱动程序文件DF发布请求包有以下内容1、服务项目号SIN;2、服务提供商管理员帐户、密码;3、注册服务的服务提供服务器身份证书编码、时间戳及以上内容的证书私钥签名。服务运营服务器SM响应并处理请求,首先通过驱动程序文件DF的INF文件分析已提交的驱动程序文件间的关系,检查是否有文件被遗漏,甚至包括文件大小、日期等参数是否正确,还可以检查注册服务的软、硬件环境是否与提交的服务项目是否有冲突(如VXD文件若运行在WINDOWS2000平台就是冲突的)。如果所有检查通过,就对服务项目驱动程序文件DF进行打包、生成驱动程序包DP,以供服务提供服务器下载,最后返回服务项目发布号SIPN,执行步骤209。
驱动程序包DP是一个压缩文件,包含三个文件SvcItemInfo.INF、SvcItemContent.CAB、SvcItemSign.SIG(三个文件的文件名均是代称)。SvcItemInfo.INF是由服务运营服务器产生的一个服务项目SI和驱动程序文件DF的概要文件,它描述了服务项目SI和驱动程序文件DF的主要参数,包括设备标识DeviceID、INF文件名InfName、INF安装节InfSection、驱动日期、驱动版本、驱动包大小等。SvcItemContent.CAB文件是服务运营服务器产生的驱动程序文件DF压缩文件。SvcItemSign.SIG是用服务运营服务器身份证书SMC私钥对SvcItemInfo.INF和SvcItemContent.CAB内容进行签名生成的签名文件。
步骤209,询问服务提供服务器SP是否要提供驱动服务,若需要则执行步骤210;否则,结束服务提供服务器SP工作步骤。
步骤210,由服务提供服务器SP向服务运营服务器SM注册驱动服务项目SI,先产生一个请求,包括以下内容1、服务提供商管理员帐户、密码;2、服务项目标识;3、服务项目适用的软、硬件环境(包括网络环境);4、可颁发用户服务证书类型;5、服务项目的有效期;6、可颁发用户服务证书数;7、服务项目可附加的其他内容(如是否提交用户硬件信息给服务提供服务器);8、一对非对称密私对KEY2公钥PK2的编码PK2E;9、服务提供服务器身份证书编码SPCE、时间戳及请求包内容的SPC证书私钥签名。服务运营服务器响应请求,先检查管理员帐户、密码、有效性,并检查是否有一个服务项目SI满足请求的条件,若没有,请求失败,否则,保存满足要求的服务项目SI的服务项目号SIN,并分配用户服务证书SPSC的起始序列号SS,然后产生一个服务项目授权服务证书SAC申请包,并发送给证书颁发机构CA。请求包的内容包括1、服务项目号SIN;2、服务项目标识;3、用户服务证书可颁发的起始序列号SS;4、服务项目有效期;5、可颁发用户服务证书类型;6、可颁发用户服务证书数;7、服务项目适用的软、硬件环境;8、公钥PK2编码PK2E;9、服务项目可附加的其他内容;10、服务提供服务器身份证书编码SPCE、时间戳及以上内容的证书SPC私钥签名。证书颁发机构CA在收到此请求包后,将产生服务项目授权服务证书SAC,并返回以下内容服务项目授权服务证书SAC编码SACE。服务运营服务器收到此返回信息后将保存此证书到数据库,并通知服务项目SI注册申请的服务提供服务器SP注册成功,可以到地址SP_SAC_URL申领服务项目授权服务证书SAC了。
步骤211,检查如果注册驱动服务项目SI不成功,则结束驱动服务提供服务器SP工作流程;否则,执行步骤212。
步骤212,由服务提供服务器SP向服务运营服务器SM申领步骤210注册驱动服务项目SI成功后颁发的驱动服务项目授权证书SAC。服务提供服务器SP获悉驱动服务项目授权证书SAC已经颁发,就通过地址SP_SAC_URL下载并安装证书到服务器,且将证书与非对成密钥对KEY2的私钥绑定,完成证书的申领。
步骤213,由服务提供服务器SP从服务运营服务器SM下载已注册驱动服务项目SI对应的驱动程序包DP。服务提供服务器SP首先通过服务运营服务器SM列出服务项目SI下已发布的所有版本的驱动程序包DPs并选中一个版本的驱动程序包DP,然后通过服务项目SI的服务项目号SIN在服务提供服务器机器的证书存储区中查找对应的服务项目授权服务证书SAC,若没有找到SAC证书,则本步骤失败;否则,向服务运营服务器SM产生一个服务项目SI驱动程序包DP下载请求包,包括以下内容1、服务项目号SIN;2、服务项目发布号SIPN;3、驱动服务项目授权证书编码SACE、时间戳、请求包内容证书SAC私钥签名。服务运营服务器SM响应请求,先检查驱动服务项目授权证书编码SACE的有效性和请求包的有效性,并检查驱动服务项目授权证书SAC中的服务项目号是否等于请求包的服务项目号SIN,若成功,找到服务项目发布号SIPN对应的驱动程序包DP,编码后返回以下内容1、驱动程序包DP编码DPE。服务运营服务器SM把返回的此编码解码后以文件形式保存到DPF中,供服务提供服务器SP布署驱动程序包DP时用。
步骤214,由服务提供服务器SP部署已下载的驱动程序包文件DPF。首先,检查服务程序包文件DPF的有效性。服务提供服务器SP通过服务运营服务器SM身份证书SMC公钥验证服务程序包文件DPF内的SvcItemInfo.INF和SvcItemContent.CAB的签名与SvcItemSign.Sig签名文件内容的一致性。若一致则包是有效的,否则,无效,本步骤失败。其次,读取SvcItemInfo.INF中的服务项目概要信息,信息包含服务项目号SIN、设备标识、驱动日期、驱动版本、驱动大小等。再根据服务项目号SIN查找对应的服务项目授权服务证书SAC,读取证书的主要参数,包括授权使用次数;授权颁发服务证书类别;授权颁发服务证书起始序列号SS;授权服务可使用的软件平台;其他授权信息(如是否授权访问用户硬件信息等)。最后,把服务项目号SIN、服务项目概要信息、服务项目授权服务证书SAC主要参数以及服务提供服务器服务证书颁发地址SPSCURL、服务提供服务器服务项目驱动程序包下载地址SPDPURL写入服务提供服务器数据库,并产生一个服务项目布署号SIDN。
步骤215,由服务提供服务器SP向服务运营服务器SM申请开通服务项目SI。服务提供服务器SP首先选中已注册的服务项目SI,填写以下驱动服务项目SI的服务的相关参数SIP以产生一个服务项目开通请求包1、服务提供商管理员帐户、密码;2、服务提供服务器颁发用户证书程序地址SPIU_URL;3、服务提供服务器身份证书请求模块地址SPC_URL;4、服务提供服务器服务项目查询模块地址SPSI_URL;5、服务项目号SIN;6、服务提供服务器身份证书编码SPCE、时间戳、以上内容的服务提供服务器身份证书SPC私钥签名。服务运营服务器SM响应此请求,并检查上述信息的合法性,若成功,则返回下述信息1、服务项目SI已经开通(服务项目号SIN)。
步骤216,若服务提供服务器SP要更新服务项目SI的驱动程序包DP,则执行步骤213;否则退出服务提供服务器SP工作步骤。
参考图3,用户客户端程序Client的工作步骤如下步骤301,枚举用户计算机上的设备及状态。
步骤302,若有设备DEVICE需要驱动服务,则执行步骤303;否则,Client工作步骤结束。
步骤303,若用户计算机的证书存储区内有服务运营服务器SM的用户身份证书SMUC,则执行步骤305;否则,执行步骤304。
步骤304,Client向服务运营服务器SM申领用户身份证书SMUC。Client运行保存在自己数据区的服务运营服务器用户身份证书颁发程序地址SM_UCI_URL,该程序负责产生一个申请服务运营服务器用户身份证书SMUC请求,请求内容包括1、非对称密钥对KEY3中的公钥作为服务运营服务器SM用户身份证书SMUC公钥;请求提交后服务运营服务器SM响应请求,并颁发用户身份证书SMUC,返回用户身份证书SMUC编码SMUCE。服务运营服务器用户身份证书颁发程序SM_UCI_URL收到SMUCE并解码为SMUC,然后安装SMUC到用户计算机的证书存储区,同时将证书与非对称密钥对KEY3中的私钥绑定,完成服务运营服务器SM用户身份证书SMUC的申领。
步骤305,Client向服务运营服务器SM请求调度一个驱动服务项目SI。Client产生一个服务请求包,包含以下内容1、用户设备信息;2、用户操作系统平台OS信息;3、故障设备标识DeviceIDs;4、运营服务器用户证书SMUC编码SMUCE、时间戳、请求包内容的证书SMUC私钥签名。服务运营服务器SM响应该请求,并根据请求内容的要求在注册的驱动服务项目SI中查找是否有符合条件的,其中的条件包括服务项目SI的服务标识出现在故障设备标识DeviceIDs中、服务项目SI在有效期内、服务项目SI的服务平台包括了用户操作系统平台OS、运营服务器用户证书SMUC没有失效、驱动服务项目授权证书SAC的可颁发用户服务证书数还没有使用完等。若没有找到符合条件的则操作失败;否则,返回如下驱动服务项目SI的服务的相关参数SIP内容1、服务提供商名称SPN;2、服务提供服务器用户证书参数SPUCP;3、服务提供服务器颁发用户证书程序地址SPUCI_URL;4、服务提供服务器服务项目查询模块地址SPSI_URL;5、服务提供服务器符合请求的服务项目号SIN;6、服务提供服务器身份证书请求模块地址SPC_URL。
步骤306,若步骤305没有成功调度到驱动服务项目SI,则Client工作步骤结束;否则,执行步骤307。
步骤307,Client在用户计算机的证书存储区内查找是否有服务提供服务器用户证书参数SPUCP描述的服务提供服务器SP的用户身份证书SPUC,若有,执行步骤309;否则,如果是第一次则执行步骤308如果是第二次则Client工作步骤结束。
步骤308,Client向服务提供服务器SP申领用户身份证书SPUC。Client产生一个服务提供服务器用户身份证书SPUC请求并提交给服务提供服务器颁发用户证书程序地址SPUCI_URL,请求内容包括;1、非对称密钥对KEY4中的公钥作为服务提供服务器SP用户身份证书SPUC的公钥。请求提交后SPUCI_URL响应请求,并颁发用户身份证书SPUC,返回SPUC编码SPUCE。Client收到SPUCE并解码为SPUC,然后安装SPUC到用户计算机的证书存储区,同时将证书与非对称密钥对KEY4中的私钥绑定,完成服务运营服务器SP用户身份证书SPUC的申领。执行步骤307检查SPUC是否申领成功。
步骤309,产生服务提供服务器服务项目查询请求包,包括以下内容1、服务提供服务器服务项目号SIN;2、服务提供服务器用户证书编码SPUCE、时间戳、请求包内容的用户证书SPUC私钥签名。Client将产生的请求包提交到服务提供服务器服务项目查询模块地址SPSI_URL。若失败,Client工作步骤结束;若成功,返回驱动服务项目SI的服务的部署参数SIDP内容1、服务提供服务器服务证书参数SPSCP;2、服务提供服务器服务项目部署号SIDN;3、服务提供服务器服务证书颁发模块地址SPSCI_URL;4、服务提供服务器服务项目驱动程序包下载模块地址SPDPD_URL。
Client将根据返回内容中的服务提供服务器服务证书参数SPSCP查询用户计算机的证书存储区是否有指定的服务证书SPSC。若找到了服务提供服务器颁发的服务证书SPSC,则执行步骤310;若没有,Client将调用服务提供服务器服务证书颁发模块地址SPSCI_URL为用户颁发服务提供服务器服务证书SPSC并负责安装证书。调用请求包项目包括1、服务提供服务器服务项目部署号SIDN;2、服务提供服务器用户证书编码SPUCE、时间戳、以上内容的服务提供服务器用户证书SPUC私钥签名。服务提供服务器服务证书颁发模块地址SPSCI_URL返回内容包括服务提供服务器用户服务证书编码SPSCE。执行步骤310。
步骤310,Client请求下载服务提供服务器SP服务项目SI的驱动程序包DP。Client将产生一个请求包,并发送给服务提供服务器服务项目驱动程序包下载模块地址SPDPD_URL。请求包内容包括1、服务提供服务器服务项目部署号SIDN;2、用户服务证书编码SPSCE、时间戳、请求包内容的服务证书SPSC私钥签名。SPDPD_URL检查请求包的有效性,若无效,请求失败;否则,返回以下内容1、驱动程序包编码DPE。Client负责将驱动程序包编码DPE以文件DPC保存到用户计算机中。执行步骤311。
步骤311,Client检查驱动下载的驱动程序包DPC的合法性。Client先把DPC文件解包得到三个文件SvcItemInfo.INF、SvcItemContent.CAB和SvcItemSign.Sig。Client通过保存在自己数据区的服务运营服务器身份证书下载地址SMC URL下载到服务运营服务器身份证书SMC,通过SMC公钥获得SvcItemInfo.INF和SvcItemContent.CAB的签名SM_SIG,如果SM_SIG与SvcItemSign.Sig文件内容一致,则DPC是合法有效的,执行步骤312;否则,无效,本步骤失败。
步骤312,从驱动程序包文件DPC还原出驱动程序文件DFC。Client先解包得到三个文件SvcItemInfo.INF、SvcItemContent.CAB和SvcItemSign.Sig,然后再对SvcItemContent.CAB进行解包得到DFsC。
步骤313,安装驱动程序文件DFsC。Client读取SvcItemInfi.INF内的参数;设备标识DeviceID、INF文件名InfName和INF安装节名称InfSection,并通过上述参数以INF文件方式安装故障设备DEVICE的驱动程序DFsC。
步骤314,Client将安装驱动后的设备信息返回给服务运营服务器SM。Client提交反馈信息请求包,内容包括1、用户设备信息;2、用户操作系统平台信息;3、故障设备标识DeviceIDs;4、服务提供服务器服务证书编码SPSCE;5、运营服务器用户证书SMUC编码SMUCE、时间戳、请求包内容的证书SMUC私钥签名。服务运营服务器SM响应此请求,将服务提供服务器服务证书编码SPSCE还原为服务提供服务器服务证书SPSC,读出SPSC中的参数内容,累计服务提供服务器SP服务项目SI的服务次数,并将上述信息保存后结束。Client工作步骤全部结束。
参考图4,证书包括服务运营服务器用户身份证书SMUC、服务提供服务器用户身份证书SPUC、服务提供服务器用户服务证书SPSC、服务运营服务器身份证书SMC、CA身份证书、服务提供服务器身份证书SPC、服务提供服务器服务项目授权证书SAC。上述证书符合X·509规范,其中包括版本1字符域项目版本、序列号、签名算法、颁发者、生效日期(又称有效期起始日期)、失效日期(又称有效期终止日期)、主题、公钥;属性及标准扩展项目主题密钥标识符、增强型密钥用法、颁发机构密钥标识符、缩微图算法、缩微图;非标准扩展项目(或叫自扩展项目)证书类别、校验码、证书类别标题、服务标识、拥有者证书序列号、授权使用次数、授权可颁发服务证书类别、授权可颁发服务证书起始序列号、授权服务可适用的软件平台、服务项目号、增强型序列号。
证书的“版本1字符域项目”和“属性及标准扩展项目”在证书的X·509规范中有明确的定义,下面阐述一下“非标准扩展项目”1、证书类别证书类型的编号,在本系统中至少有以下证书类型1、服务运营服务器用户身份证书SMUC;2、服务提供服务器用户身份证书SPUC;3、服务提供服务器用户服务证书SPSC;4、服务运营服务器身份证书SMC;5、证书颁发机构CA身份证书;6、服务提供服务器身份证书SPC;7、服务提供服务器服务项目授权证书SAC。
2、校验码用来验证证书内容的合法性。
3、证书类别标题主题类型格式,用来标识驱动服务安全网络系统与其他系统的不同以及系统的开发者。
4、服务标识硬件设备的唯一标识,例如PCI\VEN_1106&DEV_3065。
5、拥有者证书序列号“服务提供服务器用户服务证书SPSC”所有者“服务提供服务器用户身份证书SPUC”的序列号或“服务提供服务器服务项目授权证书SAC”所有者“服务提供服务器身份证书SPC”的序列号。
6、授权使用次数服务提供服务器服务项目授权证书SAC授权服务提供服务器SP驱动服务项目SI的服务次数。
7、授权可颁发服务证书类别服务提供服务器服务项目授权证书SAC授权服务提供服务器SP为驱动服务项目SI而颁发“服务提供服务器用户服务证书SPSC”的“证书类别”值。
8、授权可颁发服务证书起始序列号;服务提供服务器服务项目授权证书SAC授权服务提供服务器SP为驱动服务项目SI而颁发“服务提供服务器用户服务证书SPSC”的“增强型序列号”最小值。
9、授权服务可适用的软件平台服务提供服务器服务项目授权证书SAC授权服务提供服务器SP可以提供驱动服务项目SI的用户软件平台范围,一般是指操作系统平台。
10、服务项目号服务提供服务器服务项目授权证书SAC授权服务提供服务器SP可以提供驱动服务项目SI时SI的编号。
11、增强型序列号服务提供服务器SP为驱动服务项目SI而为用户颁发的“服务提供服务器用户服务证书SPSC”的编号。
驱动服务运营服务器SM通过证书颁发服务器CA颁发“服务提供服务器身份证书SPC”和“服务提供服务器服务项目授权证书SAC”。用户客户端程序Client要接受驱动服务项目SI的服务,必须依赖于“服务运营服务器用户身份证书SMUC”、“驱动服务提供服务器用户身份证书SPUC”和“服务提供服务器用户服务证书SPSC”。驱动服务提供服务器SPSP要提供驱动服务项目SI的服务,必须依赖于“服务提供服务器身份证书SPC”和“驱动服务项目SI服务授权证书SAC”。
驱动服务提供服务器SPSP提供驱动服务项目SI的服务时受“驱动服务项目SI服务授权证书SAC”中有关项目中声明的条件的约束,这些条件包括驱动服务提供服务器SPSP必须安装特定“拥有者证书序列号”的SPC证书、时间必须在指定的“生效日期”“失效日期”内、被服务的设备标识必须是“服务标识”指定的、服务次数必须不能超越“授权使用次数”、颁发的服务证书增强型序列号必须在“授权可颁发服务证书起始序列号”和“授权使用次数”指定的范围、软件操作系统平台必须在指定的“授权服务可适用的软件平台”范围等等。
权利要求
1.一种计算机驱动服务安全网络系统的实现方法,步骤包括(1)驱动服务提供服务器SP(13-1,13-2)向驱动服务运营服务器SM(12)申领驱动服务提供服务器身份证书SPC;(2)提供驱动程序的驱动服务提供服务器SPDP(13-1)向驱动服务运营服务器SM(12)提供驱动程序DF,经驱动服务运营服务器SM(12)审核通过后,驱动程序文件DF被以驱动服务项目SI发布;(3)驱动服务提供服务器SPSP(13-2)向驱动服务运营服务器SM(12)注册一个服务项目SI的服务;(4)用户客户端程序Client(14)得到驱动服务项目SI的服务。
2.如权利要求1所述的计算机驱动服务安全网络系统的实现方法,其特征在于驱动服务运营服务器SM(12)通过证书颁发机构服务器CA(11)颁发证书。
3.如权利要求1或2所述的计算机驱动服务安全网络系统的实现方法,其特征在于驱动服务提供服务器SPDP(13-1)向驱动服务运营服务器SM(12)提供驱动程序DF,有以下子步骤(1)SPDP(13-1)凭驱动服务提供服务器身份证书SPC向驱动服务运营服务器SM(12)注册驱动服务项目SI;(2)获得批准后,SPDP(13-1)将驱动服务项目SI对应的驱动程序文件DF提交到驱动服务运营服务器SM(12),并请求发布;(3)经驱动服务运营服务器SM(12)审核通过后驱动程序文件DF被予以发布,并被打包成驱动程序包DP且不能再被修改。
4.如权利要求1或2所述的计算机驱动服务安全网络系统的实现方法,其特征在于驱动服务提供服务器SPSP(13-2)向驱动服务运营服务器SM(12)注册一个驱动服务项目SI的服务,有以下子步骤(1)SPSP(13-2)凭服务提供服务器身份证书SPC向驱动运营服务器SM(12)申请注册驱动服务项目SI的服务;(2)经服务运营服务器SM(12)审批、由证书颁发机构服务器CA(11)颁发驱动服务项目SI服务授权证书SAC,以授权SPSP(13-2)提供驱动服务项目SI的服务;(3)SPSP(13-2)下载并安装服务授权证书SAC;(4)SPSP(13-2)下载与驱动服务项目SI对应的驱动程序包DP,并凭服务授权证书SAC填写部署参数SIDP将DP部署到SPSP(13-2)上;(5)SPSP(13-2)填写驱动服务项目SI的服务的相关参数SIP开通驱动服务项目SI的服务。
5.如权利要求1或2所述的计算机驱动服务安全网络系统的实现方法,其特征在于用户客户端程序Client(14)得到驱动服务项目SI的服务,有以下子步骤。(1)Client(14)从服务运营服务器SM(12)为新用户申领服务运营服务器用户身份证书SMUC;(2)Client(14)向服务运营服务器SM(12)提出驱动服务申请,服务运营服务器SM(12)找到匹配的驱动服务提供服务器SPSP(13-2)提供的驱动服务项目SI的服务,并把相关参数SIP返回给Client(14);(3)Client(14)通过参数SIP从驱动服务提供服务器SPSP(13-2)为新用户申领驱动服务提供服务器用户身份证书SPUC;(4)Client(14)通过参数SIP从驱动服务提供服务器SPSP(13-2)查询驱动服务项目SI的服务的部署参数SIDP。(5)Client(14)通过驱动服务项目SI的服务的部署参数SIDP凭身份证书SPUC从驱动服务提供服务器SPSP(13-2)申领服务提供服务器用户服务证书SPSC;(6)Client(14)从驱动服务提供服务器SPSP(13-2)上下载驱动程序包DP并验证DP的内容是否被修改,若没有,则解包得到驱动程序文件DF;(7)Client安装驱动程序文件DF以解决设备的驱动程序故障;并凭服务运营服务器用户身份证书SMUC、服务提供服务器用户服务证书SPSC向服务运营服务器SM(12)报告服务结果。
6.如权利要求1所述的计算机驱动服务安全网络系统的实现方法,其特征在于服务提供服务器身份证书SPC包括(1)版本1字符域版本、序列号、签名算法、颁发者、生效日期、失效日期、主题、公钥;(2)标准扩展项目主题密钥标识符、增强型密钥用法、颁发机构密钥标识符、缩微图算法、缩微图;(3)非标准扩展项目证书类别、证书类别标题。
7.如权利要求4所述的计算机驱动服务安全网络系统的实现方法,其特征在于驱动服务项目SI服务授权证书SAC包括(1)版本1字符域版本、序列号、签名算法、颁发者、生效日期、失效日期、主题、公钥。(2)标准扩展项目主题密钥标识符、增强型密钥用法、颁发机构密钥标识符、缩微图算法、缩微图。(3)非标准扩展项目;证书类别、校验码、证书类别标题、服务标识、拥有者证书序列号、授权使用次数、授权可颁发服务证书类别、授权可颁发服务证书起始序列号、授权服务可适用的软件平台、服务项目号。
8.如权利要求5所述的计算机驱动服务安全网络系统的实现方法,其特征在于服务提供服务器用户服务证书SPSC包括(1)版本1字符域版本、序列号、签名算法、颁发者、生效日期、失效日期、主题、公钥;(2)标准扩展项目主题密钥标识符、增强型密钥用法、颁发机构密钥标识符、缩微图算法、缩微图;(3)非标准扩展项目证书类别、证书类别标题、校验码、服务标识、拥有者证书序列号、增强型序列号。
9.如权利要求5所述的计算机驱动服务安全网络系统的实现方法,其特征在于驱动程序包DP包括三个文件,文件1为由服务运营服务器SM产生的一个服务项目SI和驱动程序文件DF的概要文件,它描述了服务项目SI和驱动程序文件DF的主要参数,包括设备标识DeviceID、INF文件名InfName、INF安装节InfSection、驱动日期、驱动版本、驱动包大小等;文件2为服务运营服务器SM产生的驱动程序文件DF压缩文件;文件3为用服务运营服务器身份证书SMC私钥对文件1和文件2内容进行签名生成的签名文件。
全文摘要
本发明提供一种计算机驱动服务安全网络系统的实现方法,属于计算机技术领域。该方法包括驱动服务提供服务器SP向驱动服务运营服务器SM申领驱动服务提供服务器身份证书SPC;提供驱动程序的驱动服务提供服务器SPDP向驱动服务运营服务器SM提供驱动程序DF,经驱动服务运营服务器SM审核通过后,驱动程序文件DF被以驱动服务项目SI发布;驱动服务提供服务器SPSP向驱动服务运营服务器SM注册一个驱动服务项目SI的服务;用户客户端程序Client得到驱动服务项目SI的服务。由于驱动程序的发布、传播、提供的服务是在一个有序的环境中进行,保证驱动程序来源的真实性和合法性,杜绝用户在使用驱动程序中的各种不安全问题。
文档编号H04L9/32GK1606270SQ200410009820
公开日2005年4月13日 申请日期2004年11月18日 优先权日2004年11月18日
发明者耿健 申请人:耿健
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1