一种通过脚本装置实现签名的方法及脚本装置制造方法及图纸

技术编号:21060681 阅读:37 留言:0更新日期:2019-05-08 07:15
本发明专利技术公开了一种通过脚本装置实现签名的方法及装置。通过脚本装置实现签名的方法包括:脚本装置生成调用浏览器的创建凭证接口所需的第二参数;调用浏览器的创建凭证接口,并将第二参数通过浏览器发送给密钥设备;通过浏览器接收密钥设备返回的第一响应数据进行解析获得签名值。通过本方法在实现签名的过程中,不再需要安装各种中间件,省去了中间件环节,实现了跨平台的签名操作。

A Method of Signature by Script Device and Script Device

【技术实现步骤摘要】
一种通过脚本装置实现签名的方法及脚本装置
本专利技术涉及信息安全领域,特别涉及一种通过脚本装置实现签名的方法及脚本装置。
技术介绍
目前通过不同的浏览器与智能密钥设备一起实现签名功能时都需要安装不同的中间件,无法通过统一的中间件来实现浏览器与智能密钥设备之间的通讯。
技术实现思路
为解决以上技术问题,本专利技术提供了一种通过脚本装置实现签名的方法及脚本装置。一种通过脚本装置实现签名的方法,包括如下步骤:步骤101:脚本装置生成调用浏览器的创建凭证接口所需的第二参数;其中,第二参数包括依赖方信息、用户信息、挑战码、第一公钥凭证参数、黑名单和第一扩展参数;步骤102:脚本装置调用浏览器的创建凭证接口,并将第二参数通过浏览器发送给密钥设备;步骤103:脚本装置通过浏览器接收密钥设备返回的第一响应数据,对第一响应数据进行解析获得依赖方信息哈希值、凭证标识、第一公钥、第二扩展参数和证书链,并对第二扩展参数进行解析获得签名值。一种脚本装置,包括:生成模块,用于生成调用浏览器的创建凭证接口所需的第二参数;其中,第二参数包括依赖方信息,用户信息,挑战码,第一公钥凭证参数、黑名单和第一扩展参数;调用模块,用于调用浏览器的创建凭证接口;发送模块,用于将第二参数通过浏览器发送给密钥设备;接收模块,用于通过浏览器接收密钥设备返回的第一响应数据;解析模块,用于对第一响应数据进行解析,获得依赖方信息哈希值、凭证标识、第一公钥、第二扩展参数和证书链,并对第二扩展参数进行解析获得签名值。本专利技术的有益效果为:本专利技术提供了一种通过脚本装置实现签名的方法及脚本装置,在实现签名的过程中,不再需要安装各种中间件,省去了中间件环节,实现了跨平台的签名操作。附图说明为了更清楚的说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例1提供的一种通过脚本装置实现签名的方法;图2为本专利技术实施例2提供的一种通过脚本装置实现签名的方法中验证个人验证码的流程图;图3为本专利技术实施例2提供的一种通过脚本装置实现签名的方法;图4为本专利技术实施例3提供的一种脚本装置的结构框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例1一种通过脚本装置实现签名的方法,如图1所示,包括如下步骤:步骤101:脚本装置生成调用浏览器的创建凭证接口所需的第二参数;具体的,第二参数包括依赖方信息、用户信息、挑战码、第一公钥凭证参数、黑名单和第一扩展参数;步骤102:脚本装置调用浏览器的创建凭证接口,并将第二参数通过浏览器发送给密钥设备;步骤103:脚本装置通过浏览器接收密钥设备返回的第一响应数据,对第一响应数据进行解析获得依赖方信息哈希值、凭证标识、第一公钥、第二扩展参数和证书链,并对第二扩展参数进行解析获得签名值。在本实施例中,步骤101之前还可以包括步骤100:当脚本装置的签名接口被上层调用时,脚本装置接收上层发送的第一参数,第一参数包括:密钥类型和签名算法、签名原文。在本实施例中,步骤101还包括:脚本装置根据第一参数生成第一扩展参数。在本实施例中,脚本装置根据第一参数生成第一扩展参数具体为:脚本装置将签名操作指令和第一参数组合得到第一扩展参数。步骤103之后还包括步骤104:脚本装置将签名值发送给上层。在本实施例中,步骤103之后步骤104之前还包括:脚本装置使用预置的服务器证书验证证书链中的证书是否合法,如果合法,执行步骤104,如果不合法,则向上层返回错误信息。在本实施中,步骤101之前还包括如下步骤:步骤101’:脚本装置被上层调用验证个人验证码接口,接收上层发送的个人验证码值;步骤102’:脚本装置根据个人验证码值组成调用浏览器的创建凭证接口所需的第三参数;步骤103’:脚本装置调用浏览器的创建凭证接口,将第三参数通过浏览器发送给智能密钥设备;步骤104’:脚本装置接收智能密钥设备通过浏览器返回的第二响应数据,并对第二响应数据进行解析后得到验证结果;步骤105’:脚本装置将验证结果发送给上层。在本实施中,验证结果具体为表示验证成功的状态码,步骤105’具体为,脚本装置将表示验证成功的状态码发送给上层后,执行步骤101。实施例2本实施例提供了一种通过脚本装置实现签名的方法,如图2所示,具体包括如下步骤:步骤201,脚本装置被上层调用签名接口,接收上层发送的第一参数:密钥类型和签名算法、签名原文;具体的,第一参数中,签名接口具体为:makeSign();密钥类型具体为:"ecc";签名算法具体为:-7(ES256);签名原文具体为:"SignData":h'03AC674216F3E15C761EE1A5E255F067953623C8B388B4459E13F978D7C846F4';步骤202,脚本装置生成调用浏览器的创建凭证接口所需的第二参数;在本实施中,浏览器的创建凭证接口具体为:navigator.credentials.create();具体的,调用创建凭证接口所需的第二参数具体为:依赖方信息、用户信息、挑战码、第一公钥凭证参数、黑名单和第一扩展参数;在本实施中,依赖方信息具体为:{"id":"yifanftsafe.onmicrosoft.com","name":"yifanftsafe.onmicrosoft.com"};用户信息具体为:{"id":h'03AC674216F3E15C761EE1A5E255F067953623C8B388B4459E13F978D7C846F4',"icon":"https://www.ftsafe.com","name":"ChenQi@yifanftsafe.onmicrosoft.com","displayName":"ChenQi"}在本实施例中,挑战码为预置的静态值,具体的,预置的挑战码为:h'687134968222EC17202E42505F8ED2B16AE22F16BB05B88C25DB9E602645F141'第一公钥凭证参数具体为:{"type":"public-key","alg":-7};黑名单具体为:null。在本实施中,挑战码还可以根据用户输入的信息生成,例如:根据控件inputdata信息生成32字节挑战码,具体为:varclientData=document.getElementById("inputdata");varchallenge=Uint8Array.from(clientData,c=>c.charCodeAt(0));其中,脚本装置根据第一参数生成第一扩展参数,具体的,脚本装置将签名操作指令和第一参数组合得到第一扩展参数。具体的,签名操作指令为:0x0A;在本步骤中,签名操作指令0x0A和第一参数{"index":1,"alg":-7,"本文档来自技高网...

【技术保护点】
1.一种通过脚本装置实现签名的方法,其特征在于,所述方法包括:步骤101:脚本装置生成调用浏览器的创建凭证接口所需的第二参数;其中,所述第二参数包括依赖方信息、用户信息、挑战码、第一公钥凭证参数、黑名单和第一扩展参数;步骤102:所述脚本装置调用所述浏览器的创建凭证接口,并将所述第二参数通过所述浏览器发送给密钥设备;步骤103:所述脚本装置通过所述浏览器接收所述密钥设备返回的第一响应数据,并解析所述第一响应数据,获得依赖方信息哈希值、凭证标识、第一公钥、第二扩展参数和证书链,并对第二扩展参数进行解析获得签名值。

【技术特征摘要】
1.一种通过脚本装置实现签名的方法,其特征在于,所述方法包括:步骤101:脚本装置生成调用浏览器的创建凭证接口所需的第二参数;其中,所述第二参数包括依赖方信息、用户信息、挑战码、第一公钥凭证参数、黑名单和第一扩展参数;步骤102:所述脚本装置调用所述浏览器的创建凭证接口,并将所述第二参数通过所述浏览器发送给密钥设备;步骤103:所述脚本装置通过所述浏览器接收所述密钥设备返回的第一响应数据,并解析所述第一响应数据,获得依赖方信息哈希值、凭证标识、第一公钥、第二扩展参数和证书链,并对第二扩展参数进行解析获得签名值。2.如权利要求1所述方法,其特征在于,所述步骤101之前还包括步骤100:当脚本装置的签名接口被上层调用时,脚本装置接收所述上层发送的第一参数,所述第一参数包括:密钥类型和签名算法,签名原文;所述步骤101还包括:所述脚本装置根据所述第一参数生成所述第一扩展参数;所述步骤103之后还包括步骤104:所述脚本装置将所述签名值发送给所述上层。3.如权利要求2所述方法,其特征在于,所述脚本装置根据所述第一参数生成所述第一扩展参数具体为:所述脚本装置将签名操作指令和所述第一参数组合得到第一扩展参数。4.如权利要求2所述方法,其特征在于,所述步骤103之后步骤104之前还包括:所述脚本装置使用预置的服务器证书验证所述证书链中的证书是否合法,如果合法,执行步骤104,如果不合法,则向上层返回错误信息。5.如权利要求2所述方法,其特征在于,所述步骤101之前还包括如下步骤:步骤101’:所述脚本装置被上层调用验证个人验证码接口,接收上层发送的个人验证码值;步骤102’:所述脚本装置根据所述个人验证码值组成调用浏览器的创建凭证接口所需的第三参数;步骤103’:所述脚本装置调用所述浏览器的创建凭证接口,将第三参数通过浏览器发送给所述智能密钥设备;步骤104’:所述脚本装置接收所述智能密钥设备通过浏览器返回的第二响应数据,并对所述第二响应数据进行解析后得到验证结果;步骤105’:所述脚本装置将验证结果发送给上层。6.如权利要求5所述方法,其特征在于,所述验证结果具体为表示验证成功的状态码,所述步骤105...

【专利技术属性】
技术研发人员:陆舟于华章
申请(专利权)人:飞天诚信科技股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1