CN116244756A - 浏览器插件的校验方法以及装置与计算设备 - Google Patents
浏览器插件的校验方法以及装置与计算设备 Download PDFInfo
- Publication number
- CN116244756A CN116244756A CN202211734536.7A CN202211734536A CN116244756A CN 116244756 A CN116244756 A CN 116244756A CN 202211734536 A CN202211734536 A CN 202211734536A CN 116244756 A CN116244756 A CN 116244756A
- Authority
- CN
- China
- Prior art keywords
- plug
- target
- plugin
- signature
- signing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000012795 verification Methods 0.000 claims abstract description 45
- 238000012546 transfer Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种浏览器插件的校验方法以及装置与计算设备,涉及插件校验技术领域,针对插件被篡改的问题。上述方法包括:获取浏览器需要调用的目标插件的插件信息;获取目标插件的签名信息;签名信息包括目标插件的签名值,签名值为目标插件的厂商服务器根据目标插件的插件信息确定目标插件对应的密钥,并利用密钥使用预设签名算法对目标插件进行签名获得的;获取目标插件的插件证书,并根据插件证书获得目标插件的密钥,并利用插件证书对应的密钥使用预设签名算法对目标插件进行签名确定目标插件的验证值;将目标插件的签名值与目标插件的验证值进行校验;若校验通过,调用目标插件。本申请使得插件使用过程更加安全。
Description
技术领域
本发明涉及插件校验技术领域,尤其是一种浏览器插件的校验方法以及装置与计算设备。
背景技术
插件是浏览器重要的组成部分。针对目前浏览器服务器业务平台在使用过程中需要使用插件,插件的唯一性校验是服务器业务平台在使用插件时,让服务器业务平台能够明确自己调用的插件,并且确保该插件不被篡改。目前的离线模式插件使用方式,当插件下发到客户端之后,服务器业务平台与插件脱离关系,由于服务器业务平台与插件关系脱离,因此,攻击者可以通过模拟插件行为进而伪造插件,伪造插件可能会收集业务平台数据,或者破坏业务平台正常运行等。因此在传统业务平台调用插件时,不能确保插件是否被篡改,也不能确保插件是否是自己希望调用的插件。
发明内容
为此,本发明提供了一种浏览器插件的校验方法以及装置与计算设备,以力图解决或者至少缓解上面存在的至少一个问题。
根据本发明的一个方面,提供了一种浏览器插件的校验方法,包括:获取浏览器需要调用的目标插件的插件信息;获取所述目标插件的签名信息;所述签名信息包括所述目标插件的签名值,所述签名值为所述目标插件的厂商服务器根据所述目标插件的插件信息确定所述目标插件对应的密钥,并利用所述密钥使用预设签名算法对所述目标插件进行签名获得的;获取所述目标插件的插件证书,并根据所述插件证书获得所述目标插件的密钥,并利用所述插件证书对应的密钥使用预设签名算法对所述目标插件进行签名确定所述目标插件的验证值;将所述目标插件的签名值与所述目标插件的验证值进行校验;若校验通过,调用所述目标插件。
可选地,利用所述密钥使用预设签名算法对所述目标插件进行签名包括:读取目标插件的文件列表;计算所述文件列表的哈希值;利用所述密钥使用预设签名算法对所述哈希值进行签名。
可选地,计算所述文件列表的哈希值包括:对所述文件列表中所有文件计算哈希值;使用按位异或计算将所有文件的哈希值进行计算得到所述文件列表的哈希值。
可选地,利用所述密钥使用预设签名算法对所述哈希值进行签名包括:对所述密钥进行解析;当解析出RSA私钥时,利用RSA算法对所述哈希值进行签名;当解析出ECC私钥时,利用ECC算法对所述哈希值进行签名。
可选地,获取所述目标插件的签名信息包括:通过超文本传输协议与所述目标插件的厂商服务器通信,获得获取所述目标插件的签名信息;所述签名信息包括:所述目标插件的签名值、随机数、时间戳信息。
第二方面,本发明还提供一种浏览器插件的校验装置,包括:启动模块,适于获取浏览器需要调用的目标插件的插件信息;签名模块,适于获取所述目标插件的签名信息;所述签名信息包括所述目标插件的签名值,所述签名值为所述目标插件的厂商服务器根据所述目标插件的插件信息确定所述目标插件对应的密钥,并利用所述密钥使用预设签名算法对所述目标插件进行签名获得的;证书模块,适于获取所述目标插件的插件证书,并根据所述插件证书获得所述目标插件的密钥,并利用所述插件证书对应的密钥使用预设签名算法对所述目标插件进行签名确定所述目标插件的验证值;校验模块,适于将所述目标插件的签名值与所述目标插件的验证值进行校验;调用模块,适于若校验通过,调用所述目标插件。
可选地,所述签名模块和所述证书模块利用所述密钥使用预设签名算法对所述目标插件进行签名适于:读取目标插件的文件列表;计算所述文件列表的哈希值;利用所述密钥使用预设签名算法对所述哈希值进行签名。
可选地,所述签名模块获取所述目标插件的签名信息适于:通过超文本传输协议与所述目标插件的厂商服务器通信,获得获取所述目标插件的签名信息;所述签名信息包括:所述目标插件的签名值、随机数、时间戳信息。
本发明的一种计算设备,包括:至少一个处理器和存储有程序指令的存储器;当所述程序指令被所述处理器读取并执行时,使得所述计算设备执行如上所述的浏览器插件的校验方法。
本发明的一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如上所述的浏览器插件的校验方法。
根据本发明的浏览器插件的校验方法以及装置与计算设备,能够实现以下有益效果:
本申请用户访问浏览器时,浏览器服务器业务平台知道用户打开浏览器需要调用哪些插件,一个或者多个;通过插件密钥对插件进行签名,获取签名值;通过HTTP(HyperText Transfer Protocol,超文本传输协议)获取签名信息;在调用插件时将签名值与验证值进行校验,如果校验通过运行插件,校验不通过则认为插件不合法。通过本发明校验方法,通过对插件调用时的唯一性校验流程,可以使得插件使用过程更加安全。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的计算设备100的示意图。
图2示出了根据本发明一个实施例的浏览器插件的校验方法200的流程图。
图3示出了根据本发明一个实施例的利用密钥使用预设签名算法对目标插件进行签名的流程图。
图4示出了根据本发明一个实施例的计算文件列表的哈希值的流程图。
图5示出了根据本发明一个实施例的利用密钥使用预设签名算法对哈希值进行签名的流程图。
图6示出了根据本发明一个实施例的厂商服务器对目标插件进行签名的流程图。
图7示出了根据本发明一个实施例的提供信息的.j s结构示意图。
图8示出了根据本发明一个实施例的浏览器插件的校验装置800的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明的浏览器插件的校验方法,针对浏览器页面,不能确保插件是否被篡改的问题,本申请能够在浏览器插件调用时进行唯一性校验流程,可以使得插件使用过程更加安全。
其中,在本发明的具体实施例中,对如何校验浏览器插件进行了具体说明。
图1示出了根据本发明一个实施例的计算设备100的结构示意图。需要说明的是,图1所示的计算设备100仅为一个示例,在实践中,用于实施本发明的浏览器插件的校验方法200的计算设备100可以是任意型号的设备,其硬件配置情况可以与图1所示的计算设备100相同,也可以与图1所示的计算设备100不同。实践中用于实施本发明的浏览器插件的校验方法200的计算设备100可以对图1所示的计算设备100的硬件组件进行增加或删减,本发明对计算设备100的具体硬件配置情况不做限制,本发明的浏览器插件的校验方法200在执行过程中可以动态地调用计算设备100中的各硬件组件。
如图1所示,计算设备100包括系统存储器110、处理器120以及显示设备130。
系统存储器110中存储执行本发明的浏览器插件的校验方法200的多条程序指令,系统存储器110可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。处理器120可以是任何类型的处理,包括但不限于:微处理器(μP)、微控制器(μC)、数字信息处理器(DSP)或者它们的任何组合。用户在使用浏览器过程中调用插件时,处理器120读取系统存储器110中存储的程序指令并运行这些程序指令,然后将这些程序指令的运行结果(将浏览器服务器业务平台201执行的结果)返回浏览器301并通过显示设备130进行显示。
根据本发明实施例的一种浏览器插件的校验方法200,用户访问浏览器时,浏览器服务器业务平台知道用户打开浏览器需要调用哪些插件,一个或者多个;通过插件密钥对插件进行签名,获取签名值;通过HTTP(Hyper Text Transfer Protocol,超文本传输协议)获取签名信息;在调用插件时将签名值与验证值进行校验,如果校验通过运行插件,校验不通过则认为插件不合法。通过本发明校验方法,通过对插件调用时的唯一性校验流程,确保服务器业务平台在调用插件时,篡改插件无法继续使用,防止钓鱼插件,可以使得插件使用过程更加安全。
图2示出了根据本发明一个实施例的浏览器插件的校验方法200的流程图。方法200在计算设备(例如前述计算设备100)中执行,用于校验浏览器插件。如图2所示,方法200始于210。
在210中,获取浏览器需要调用的目标插件的插件信息。
本发明实施例中,用户启动浏览器后,通过本发明的步骤210,获知启动浏览器页面所需的目标插件或者浏览器需要调用的目标插件,目标插件可以是一个也可以是多个,也可以是由多种功能集合而成的一个插件。
当目标插件是多个插件时,可以多次通过本发明实施例的方式校验插件,每次校验一个目标插件,通过每次传入的一个目标插件的插件信息(标识信息和版本信息)与浏览器服务器业务平台进行通信,进而校验插件。本发明实施例中的浏览器服务器业务平台属于实现启动浏览器、插件加载、插件校验、插件调用等插件对应的服务的处理模块。
在220中,获取目标插件的签名信息;签名信息包括目标插件的签名值,签名值为目标插件的厂商服务器根据目标插件的插件信息确定目标插件对应的密钥,并利用密钥使用预设签名算法对目标插件进行签名获得的。
如图3所示,本发明实施例中,220中利用密钥使用预设签名算法对目标插件进行签名包括:310、读取目标插件的文件列表;320、计算文件列表的哈希值;330、利用密钥使用预设签名算法对哈希值进行签名。
其中,如图4所示,计算文件列表的哈希值包括:410、对文件列表中所有文件计算哈希值;420、使用按位异或计算将所有文件的哈希值进行计算得到文件列表的哈希值。如图5所示,利用密钥使用预设签名算法对哈希值进行签名包括:510、对密钥进行解析;520、当解析出RSA私钥时,利用RSA算法对哈希值进行签名;530、当解析出ECC私钥时,利用ECC算法对哈希值进行签名。
本发明实施例中,获取目标插件的签名信息包括:通过超文本传输协议与目标插件的厂商服务器通信,获得获取目标插件的签名信息;签名信息包括:目标插件的签名值、随机数、时间戳信息。
本发明实施例中,当用户通过URL(Uniform Resource Locator,统一资源定位系统)访问浏览器页面时,浏览器服务器业务平台可以获知启动浏览器页面所需的哪些目标插件(可以是一个或者多个),并获得对应的插件信息(标识信息和版本信息),浏览器服务器业务平台与目标插件的厂商服务器通信,传递对应的插件信息;厂商服务器根据目标插件的插件信息确定目标插件对应的密钥,厂商服务器通过插件密钥(每个插件的密钥,尤指私钥都不相同)对目标插件进行签名获取签名值。浏览器服务器业务平台通过HTTP协议获取签名信息,签名信息包括目标插件的签名值、随机数、时间戳信息等内容。其中,浏览器与浏览器服务器业务平台通过websocket协议进行消息传递。
如图6所示,本发明实施例中,以厂商服务器获取目标插件对应的私钥为例,说明厂商服务器对目标插件进行签名的过程,具体可以由如下实现。
610、通过目标插件配置文件获取文件列表。
620、在获取文件列表成功时,计算文件列表的散列值,在获取文件列表失败时,跳转至690。
630、读取私钥文件。
640、读取私钥文件成功时,尝试解析RSA私钥。读取私钥文件失败时,跳转至690。
650、解析RSA私钥成功时,使用RSA签名算法签名。
660、解析RSA私钥失败时,尝试解析ECC(Ellipse Curve Ctyptography,椭圆曲线加密算法)私钥。
670、解析ECC私钥成功时,使用ECC签名算法签名。
680、解析ECC私钥失败时,跳转至690。
690、提示错误信息,签名失败。
其中,RSA签名算法是广泛使用的加密算法。其密钥包括公钥和私钥。可以用于数字签名、身份认证以及密钥交换。RSA密钥长度一般使用1024位或者更高。由于编译的插件以及发布的插件内容已经固定,因此签名计算在厂商服务器预先计算,也可以在厂商服务器内动态计算。
本发明实施例中,可以采用SHA256进行哈希值计算,使用的哈希值长度是256位,首先将文件列表中所有文件计算SHA256值,然后使用按位异或计算将所有文件的哈希值计算得到最终的签名值。计算签名值时,私钥为key,根据生成证书时选用的算法生成私钥(ECC、RSA等)签名算法根据判断私钥生成的算法而定。(RSA签名校验,ECC签名校验等)。
具体地,文件列表以及SHA256值如表1所示。
表1
文件名称 | SHA256值 |
main | c21c1bd3a1a6c7f43e2e37c23f8f58c8ce1a634cbee871b8b21ba32ce9e2dbfa |
config.ini | d0d1ad635d6fa5f526f03c93bbde07368fcc6a127599b701690a595c3b16fcac |
将SHA256的每一个值转为4位二进制。
文件main表示为:C=1100 2=0010 1=0001...
文件config.ini表示为:D=1101 0=0000 D=1101...
异或计算结果:0001 0010 1100...
签名计算结果:1 2 C...
签名信息由签名字符串strCode表示,strCode为一个拼接字符串,strcode为最终拼接字符串的结果,公式如下。
strCode=″sha256=′hash′&random=′random′×tamp=′timestamp′″。
其中sha256为SHA256值,random为随机数,timestamp为时间戳信息。
在230中,获取目标插件的插件证书,并根据插件证书获得目标插件的密钥,并利用插件证书对应的密钥使用预设签名算法对目标插件进行签名确定目标插件的验证值。
本发明实施例中,230中用插件证书对应的密钥使用预设签名算法对目标插件进行签名的过程与220中相同,如图3所示,310、读取目标插件的文件列表;320、计算文件列表的哈希值;330、利用密钥使用预设签名算法对哈希值进行签名。不同的是,220中读取的目标插件的文件列表为目标插件的厂商服务器存储的文件列表,230中读取的目标插件的文件列表为用户使用的计算机中存储的文件列表,用户使用的计算机存在被篡改、被伪造的可能。因此通过本发明实施例提供的浏览器插件的校验方法进行插件唯一性校验。
本发明实施例中,230在计算签名字符串strCode时,验证值在浏览器服务器业务平台调用具体的插件时,计算将要调用的插件文件的哈希值得出(该值在每次调用前都会进行计算,防止文件被篡改),验证值的算法与厂商服务器签名时计算签名值的算法相同。
strCode=″sha256=′hash′&random=′random′×tamp=′timestamp′″。
本发明实施例中,浏览器与浏览器服务器业务平台通过websocket协议进行消息传递。
提供信息的js结构如图7所示,参数样例配置可以如下。
1.{
2.″componentID″:″d89184b2-16ac-447d-879e-b9744d6e93c4″,//插件ID
3.″name″:″print″,//插件名字
4.″version″:″v1.0.3″,//插件版本
5.″random″:″print″,//随机值
6.″timestamp″:″1627971093″,//时间戳
7.″origin″:″″,
8.″signature″:[
9.{″arch″:″x86″,″sign″:″b94c946de56d6bd2d8c67cc675ba039d35178378e26138d44b38075d2elce602″},//arch:平台架构,sign签名值
10.{″arch″:″arm″,″sign″:″b94c946de56d6bd2d8c67cc675ba039d35178378e26138d44b38075d2e1ce602″}
11.],
12.″store_url″:[″http://www.baidu.com″,″http://www.163.com″]//插件查库地址
13.}
配置说明如表2所示。
表2
在240中,将目标插件的签名值与目标插件的验证值进行校验。
在250中,若校验通过,调用目标插件。
本发明实施例中,标识信息是目标插件被调用插件时使用。在插件安装之后,通过插件的标识信息和版本信息能锁定启动浏览器页面需要调用的是哪个插件,插件的路径是整个系统协议的一部分,安装在哪里会存在配置文件或者约定的规则。
本发明实施例中,浏览器服务器业务平台在调用目标插件时将签名值与验证值进行校验(目标插件中包含用于验签的证书),通过插件内容、插件证书、签名值进行校验,如果校验通过,调用插件,校验不通过,则认为插件不合法。至此,实现目标插件的安全调用,返回给浏览器前端。
在浏览器前端调用目标插件时,浏览器前端可显示、处理、操作返回的结果。浏览器前端调用目标插件根据场景选择使用同步或者异步的方式处理返回值。
如图8所示,本发明还提供一种浏览器插件的校验装置,包括:启动模块810、签名模块820、证书模块830、校验模块840和调用模块850,其中,启动模块810,适于获取浏览器需要调用的目标插件的插件信息;签名模块820,适于获取目标插件的签名信息;签名信息包括目标插件的签名值,签名值为目标插件的厂商服务器根据目标插件的插件信息确定目标插件对应的密钥,并利用密钥使用预设签名算法对目标插件进行签名获得的;证书模块830,适于获取目标插件的插件证书,并根据插件证书获得目标插件的密钥,并利用插件证书对应的密钥使用预设签名算法对目标插件进行签名确定目标插件的验证值;校验模块840,适于将目标插件的签名值与目标插件的验证值进行校验;调用模块850,适于若校验通过,调用目标插件。
本发明实施例中,签名模块820利用密钥使用预设签名算法对目标插件进行签名适于:读取目标插件的文件列表;计算文件列表的哈希值;利用密钥使用预设签名算法对哈希值进行签名。
本发明实施例中,签名模块820获取目标插件的签名信息适于:通过超文本传输协议与目标插件的厂商服务器通信,获得获取目标插件的签名信息;签名信息包括:目标插件的签名值、随机数、时间戳信息。
本发明实施例中,证书模块830利用插件证书对应的密钥使用预设签名算法对目标插件进行签名确定目标插件的验证值的过程与签名模块820的签名过程相同。
本发明实施例还提供一种计算设备,包括:至少一个处理器和存储有程序指令的存储器;当程序指令被处理器读取并执行时,使得计算设备执行如上的浏览器插件的校验方法。
本发明实施例还提供一种存储有程序指令的可读存储介质,当程序指令被计算设备读取并执行时,使得计算设备执行如上的浏览器插件的校验方法。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的浏览器插件的校验方法。
以示例而非限制的方式,可读介质括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的优选实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。
Claims (10)
1.一种浏览器插件的校验方法,包括:
获取浏览器需要调用的目标插件的插件信息;
获取所述目标插件的签名信息;所述签名信息包括所述目标插件的签名值,所述签名值为所述目标插件的厂商服务器根据所述目标插件的插件信息确定所述目标插件对应的密钥,并利用所述密钥使用预设签名算法对所述目标插件进行签名获得的;
获取所述目标插件的插件证书,并根据所述插件证书获得所述目标插件的密钥,并利用所述插件证书对应的密钥使用预设签名算法对所述目标插件进行签名确定所述目标插件的验证值;
将所述目标插件的签名值与所述目标插件的验证值进行校验;
若校验通过,调用所述目标插件。
2.如权利要求1所述的方法,其中,利用所述密钥使用预设签名算法对所述目标插件进行签名包括:
读取目标插件的文件列表;
计算所述文件列表的哈希值;
利用所述密钥使用预设签名算法对所述哈希值进行签名。
3.如权利要求2所述的方法,其中,计算所述文件列表的哈希值包括:
对所述文件列表中所有文件计算哈希值;
使用按位异或计算将所有文件的哈希值进行计算得到所述文件列表的哈希值。
4.如权利要求2所述的方法,其中,利用所述密钥使用预设签名算法对所述哈希值进行签名包括:
对所述密钥进行解析;
当解析出RSA私钥时,利用RSA算法对所述哈希值进行签名;
当解析出ECC私钥时,利用ECC算法对所述哈希值进行签名。
5.如权利要求1所述的方法,其中,获取所述目标插件的签名信息包括:
通过超文本传输协议与所述目标插件的厂商服务器通信,获得获取所述目标插件的签名信息;所述签名信息包括:所述目标插件的签名值、随机数、时间戳信息。
6.一种浏览器插件的校验装置,包括:
启动模块,适于获取浏览器需要调用的目标插件的插件信息;
签名模块,适于获取所述目标插件的签名信息;所述签名信息包括所述目标插件的签名值,所述签名值为所述目标插件的厂商服务器根据所述目标插件的插件信息确定所述目标插件对应的密钥,并利用所述密钥使用预设签名算法对所述目标插件进行签名获得的;
证书模块,适于获取所述目标插件的插件证书,并根据所述插件证书获得所述目标插件的密钥,并利用所述插件证书对应的密钥使用预设签名算法对所述目标插件进行签名确定所述目标插件的验证值;
校验模块,适于将所述目标插件的签名值与所述目标插件的验证值进行校验;
调用模块,适于若校验通过,调用所述目标插件。
7.如权利要求6所述的装置,其中,所述签名模块和所述证书模块利用所述密钥使用预设签名算法对所述目标插件进行签名适于:
读取目标插件的文件列表;
计算所述文件列表的哈希值;
利用所述密钥使用预设签名算法对所述哈希值进行签名。
8.如权利要求6所述的装置,其中,所述签名模块获取所述目标插件的签名信息适于:
通过超文本传输协议与所述目标插件的厂商服务器通信,获得获取所述目标插件的签名信息;所述签名信息包括:所述目标插件的签名值、随机数、时间戳信息。
9.一种计算设备,包括:
至少一个处理器和存储有程序指令的存储器;
当所述程序指令被所述处理器读取并执行时,使得所述计算设备执行如权利要求1-5中任一项所述的浏览器插件的校验方法。
10.一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如权利要求1-5中任一项所述的浏览器插件的校验方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211734536.7A CN116244756A (zh) | 2022-12-30 | 2022-12-30 | 浏览器插件的校验方法以及装置与计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211734536.7A CN116244756A (zh) | 2022-12-30 | 2022-12-30 | 浏览器插件的校验方法以及装置与计算设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116244756A true CN116244756A (zh) | 2023-06-09 |
Family
ID=86630536
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211734536.7A Pending CN116244756A (zh) | 2022-12-30 | 2022-12-30 | 浏览器插件的校验方法以及装置与计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116244756A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117544322A (zh) * | 2024-01-10 | 2024-02-09 | 北京雪诺科技有限公司 | 浏览器的辨识方法、装置、设备及存储介质 |
-
2022
- 2022-12-30 CN CN202211734536.7A patent/CN116244756A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117544322A (zh) * | 2024-01-10 | 2024-02-09 | 北京雪诺科技有限公司 | 浏览器的辨识方法、装置、设备及存储介质 |
CN117544322B (zh) * | 2024-01-10 | 2024-03-22 | 北京雪诺科技有限公司 | 浏览器的辨识方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10516662B2 (en) | System and method for authenticating the legitimacy of a request for a resource by a user | |
CN106534160B (zh) | 基于区块链的身份认证方法及系统 | |
CN112019493B (zh) | 身份认证方法、身份认证装置、计算机设备和介质 | |
CN112507328B (zh) | 一种文件签名方法、计算设备及存储介质 | |
JP5710075B2 (ja) | 証明書の検証 | |
CN114586315A (zh) | 去中心化的数据认证 | |
CN112202705A (zh) | 一种数字验签生成和校验方法、系统 | |
WO2017085159A1 (en) | Method to verify the execution integrity of an application in a target device | |
US20230269093A1 (en) | System and method for providing a verified privacy-preserving attestation of web service data properties | |
CN113010861B (zh) | 一种基于区块链的融资事务中的身份验证方法和系统 | |
KR101890584B1 (ko) | m of n 다중 서명에 의한 인증서 서비스를 제공하는 방법 및 이를 이용한 서버 | |
US11711221B1 (en) | Systems and methods for trusted chain code system | |
US20160149708A1 (en) | Electronic signature system | |
CN106330817A (zh) | 一种网页访问方法、装置及终端 | |
CN111342964B (zh) | 单点登录方法、装置及系统 | |
CN111062059B (zh) | 用于业务处理的方法和装置 | |
CN116244756A (zh) | 浏览器插件的校验方法以及装置与计算设备 | |
CN115664655A (zh) | 一种tee可信认证方法、装置、设备及介质 | |
CN115550060B (zh) | 基于区块链的可信证书验证方法、装置、设备和介质 | |
CN116707758A (zh) | 可信计算设备的认证方法、设备和服务器 | |
CN114168909A (zh) | 基于代码签名的程序保护方法、装置、设备和存储介质 | |
KR20180041052A (ko) | m of n 다중 서명에 의한 인증서 서비스를 제공하는 방법 및 이를 이용한 서버 | |
US20220067727A1 (en) | Method for operating a distributed database system, distributed database system, and industrial automation system | |
CN113326527A (zh) | 一种基于区块链的可信数字签名系统及方法 | |
CN113395161A (zh) | 验证方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |