本申请公开了一种驱动程序安全验证方法,包括:对驱动程序发布方提供的驱动程序进行加密,生成数字签名;当所述驱动程序安装时,通过所述驱动程序发布方发布的公钥对所述数字签名进行解密,获取所述驱动程序的标准特征值;对解密后的所述驱动程序进行计算,得到校验特征值;判断所述标准特征值与所述校验特征值是否一致,若一致,则所述驱动程序通过安全验证。驱动程序安全验证方法保证了驱动程序是发布方发布的原始文件,同时没有被其它程序篡改或者覆盖,以便于保证安装驱动程序的安全性。本申请还提供一种驱动程序安全验证系统,具有上述有益效果。
【技术实现步骤摘要】
本专利技术涉及计算机
,特别涉及一种驱动程序安全验证方法,还涉及一种驱动程序安全验证系统。
技术介绍
目前,有些操作系统提供驱动程序数字签名策略,如MicrosoftWindows操作系统。Windows中的设备驱动程序和操作系统文件都具有Microsoft数字签名。数字签名表明某个特殊的驱动程序或文件确实是发布方发布,确保此驱动程序是发布方发布的原始文件,并且没有被其他程序的安装过程更改或覆盖。驱动程序数字签名策略在一定程度上保证了驱动程序的安全性。然而,对于Linux操作系统,以及一批类UNIX操作系统,则没有相应的驱动程序签名策略。这些操作系统的驱动程序以内核扩展的形式存在,一般认为是操作系统的发布者提供,并随操作系统的安装过程同时安装到主机系统。但对于一些设备制造商,或者系统集成商,当需要对外部设备提供驱动支持时,公开发布这些平台上的驱动程序包,就存在安全问题。验证者并不能确认驱动程序文件就是发布方发布的原始文件,同时也不能确认公开发布的驱动程序是否存在被篡改,被假冒。因此,如何验证驱动程序是发布方发布的原始文件,同时没有被其它程序篡改或者覆盖,以便于保证安装驱动程序的安全性是本领域技术人员需要解决的技术问题。
技术实现思路
本专利技术的目的是提供一种驱动程序安全验证方法,能够有效验证驱动程序是发布方发布的原始文件,同时没有被其它程序篡改或者覆盖,以便于保证安装驱动程序的安全性。为解决上述技术问题,本专利技术提供一种驱动程序安全验证方法,包括:对驱动程序发布方提供的驱动程序进行加密,生成数字签名;当所述驱动程序安装时,通过所述驱动程序发布方发布的公钥对所述数字签名进行解密,获取所述驱动程序的标准特征值;对解密后的所述驱动程序进行计算,得到校验特征值;判断所述标准特征值与所述校验特征值是否一致,若一致,则所述驱动程序通过安全验证。优选的,在上述驱动程序安全验证方法中,对驱动程序发布方提供的驱动程序进行加密,生成数字签名,包括:提取所述驱动程序的标准特征值,并对所述标准特征值进行加密,将加密后的所述标准特征值作为所述驱动程序发布方的数字签名。优选的,在上述驱动程序安全验证方法中,所述提取所述驱动程序的标准特征值,包括:通过SHA-1安全散列算法摘要生成算法提取所述驱动程序的镜像文件摘要。优选的,在上述驱动程序安全验证方法中,所述对所述标准特征值进行加密,包括:通过RSA公钥加密算法对所述镜像文件摘要进行加密。优选的,在上述驱动程序安全验证方法中,若所述标准特征值与所述校验特征值不一致,则所述驱动程序退出安装。本专利技术还提供一种驱动程序安全验证系统,包括:数字签名生成模块,用于对驱动程序发布方提供的驱动程序进行加密,生成数字签名;公钥,用于当所述驱动程序安装时,对所述数字签名进行解密,获取所述驱动程序的标准特征值;计算模块,用于对解密后的所述驱动程序进行计算,得到校验特征值;安全验证模块,用于判断所述标准特征值与所述校验特征值是否一致,若一致,则所述驱动程序通过安全验证。优选的,在上述驱动程序安全验证系统中,所述数字签名生成模块包括:提取单元,用于通过SHA-1安全散列算法摘要生成算法提取所述驱动程序的镜像文件摘要。优选的,在上述驱动程序安全验证系统中,所述数字签名生成模块包括:加密单元,用于通过RSA公钥加密算法对所述镜像文件摘要进行加密。本专利技术所提供一种驱动程序安全验证方法,包括:对驱动程序发布方提供的驱动程序进行加密,生成数字签名;当所述驱动程序安装时,通过所述驱动程序发布方发布的公钥对所述数字签名进行解密,获取所述驱动程序的标准特征值;对解密后的所述驱动程序进行计算,得到校验特征值;判断所述标准特征值与所述校验特征值是否一致,若一致,则所述驱动程序通过安全验证。驱动程序的发布方以生成数字签名的方式对驱动程序加密,在安装过程中防止被篡改,驱动程序同时提供了能够解开数字签名的公钥,安装后,利用公钥对驱动程序进行解密,获取驱动程序的标准特征值,同时对解密后的所述驱动程序进行计算,得到校验特征值,将标准特征值与校验特征值进行对比,若一致,验证了安装过程中的驱动程序并没有被篡改。保证了驱动程序是发布方发布的原始文件,同时没有被其它程序篡改或者覆盖,以便于保证安装驱动程序的安全性。本专利技术还提供一种驱动程序安全验证系统,具有上述有益效果,在此不再赘述。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术实施例所提供的驱动程序安全验证方法的流程图;图2为本专利技术实施例所提供的驱动程序安全验证系统结构框图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参考图1,图1为本专利技术实施例所提供的驱动程序安全验证方法的流程图,该方法具体可以包括:本专利技术提供一种驱动程序安全验证方法,包括:步骤S1:对驱动程序发布方提供的驱动程序进行加密,生成数字签名;其中,驱动程序发布方提供的数字签名方法对要发布的驱动包进行数字签名,驱动包中包括了驱动程序和驱动程序发布方预先计算的驱动程序的标准特征值。标准特征值被加密后,作为数字签名随驱动程序包一同发布,用于驱动程序文件安装前的数字签名验证操作。步骤S2:当所述驱动程序安装时,通过所述驱动程序发布方发布的公钥对所述数字签名进行解密,获取所述驱动程序的标准特征值;其中,驱动程序发布方提供数字签名密钥生成工具,此工具根据用户输入的特征值,生成用于公开密钥加密算法所需的公钥(pub-key)以及私钥(pri-key),公钥作为能够解开数字签名的密钥。步骤S3:对解密后的所述驱动程序进行计算,得到校验特征值;利用SHA-1安全散列算法对解密后的驱动程序进行计算,得到校验特征值,目的是得到的校验特征值是否具有偏差,若有,则说明加密的驱动程序可能在安装过程中仍然被篡改或者被攻击,若没有,则说明驱动程序通过安全验证。步骤S4:判断所述标准特征值与所述校验特征值是否一致,若一致,则所述驱动程序通过安全验证。驱动程序的发布方以生成数字签名的方式对驱动程序加密,在安装过程中防止被篡改,驱动程序同时提供了能够解开数字签名的公钥,安装后,利用公钥对驱动程序进行解密,获取驱动程序的标准特征值,同时对解密后的所述驱动程序进行计算,得到校验特征值,将标准特征值与校验特征值进行对比,若一致,验证了安装过程中的驱动程序并没有被篡改。保证了驱动程序是发布方发布的原始文件,同时没有被其它程序篡改或者覆盖,以便于保证安装驱动程序的安全性。在上述驱动程序安全验证方法的基础上,对驱动程序发布方提供的驱动程序进行加密,生成数字签名,包括:提取所述驱动程序的标准特征值,并对所述标准特征值进行加密,将加密后的所述标准特征值作为所述驱动程序发布方的数本文档来自技高网...
【技术保护点】
一种驱动程序安全验证方法,其特征在于,包括:对驱动程序发布方提供的驱动程序进行加密,生成数字签名;当所述驱动程序安装时,通过所述驱动程序发布方发布的公钥对所述数字签名进行解密,获取所述驱动程序的标准特征值;对解密后的所述驱动程序进行计算,得到校验特征值;判断所述标准特征值与所述校验特征值是否一致,若一致,则所述驱动程序通过安全验证。
【技术特征摘要】
1.一种驱动程序安全验证方法,其特征在于,包括:对驱动程序发布方提供的驱动程序进行加密,生成数字签名;当所述驱动程序安装时,通过所述驱动程序发布方发布的公钥对所述数字签名进行解密,获取所述驱动程序的标准特征值;对解密后的所述驱动程序进行计算,得到校验特征值;判断所述标准特征值与所述校验特征值是否一致,若一致,则所述驱动程序通过安全验证。2.如权利要求1所述的驱动程序安全验证方法,其特征在于,对驱动程序发布方提供的驱动程序进行加密,生成数字签名,包括:提取所述驱动程序的标准特征值,并对所述标准特征值进行加密,将加密后的所述标准特征值作为所述驱动程序发布方的数字签名。3.如权利要求2所述的驱动程序安全验证方法,其特征在于,所述提取所述驱动程序的标准特征值,包括:通过SHA-1安全散列算法摘要生成算法提取所述驱动程序的镜像文件摘要。4.如权利要求3所述的驱动程序安全验证方法,其特征在于,所述对所述标准特征值进行加密,包括:通过RSA公...
【专利技术属性】
技术研发人员:耿芳忠,
申请(专利权)人:郑州云海信息技术有限公司,
类型:发明
国别省市:河南;41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。