电子签名的错误检测方法、装置、设备和存储介质与流程

文档序号:20838859发布日期:2020-05-22 17:13阅读:631来源:国知局
电子签名的错误检测方法、装置、设备和存储介质与流程

本申请实施例涉及互联网技术领域,特别涉及一种电子签名的错误检测方法、装置、设备和存储介质。



背景技术:

随着互联网的迅速发展,网络已经成为用户生活和工作中的必备工具。为了确保网络上数据的安全性,引入了电子签名。

在相关技术中,用户在请求使用云服务器时,云服务器需要对用户进行身份验证,即对用户提供的电子签名进行验证,以保证用户的合法性。电子签名过程比较复杂,用户在请求使用云服务器的过程中经常会出现因生成的电子签名有错误而无法通过验证的情况。由于电子签名具有单向性,即只能根据原始信息(也可以称为元信息)生成电子签名,而不能根据电子签名反向推倒出原始内容,因而用户难以排查出电子签名错误的原因。



技术实现要素:

本申请实施例提供了一种电子签名的错误检测方法、装置、设备和存储介质,可用于解决相关技术中,用户难以排查出电子签名错误的原因的问题。所述技术方案如下:

一方面,本申请实施例提供了一种电子签名的错误检测方法,所述方法包括:

获取待检测签名和所述待检测签名的元信息,所述元信息是指生成所述待检测签名所用到的信息;

根据所述元信息生成正确签名;

若所述待检测签名与所述正确签名不同,则根据所述元信息和参考错误原因,生成错误签名;

通过比对所述待检测签名和所述错误签名,确定所述待检测签名的错误原因。

另一方面,本申请实施例提供了一种电子签名的错误检测方法,所述方法包括:

显示电子签名的错误检测页面;

获取在所述错误检测页面中输入的待检测签名和所述待检测签名的元信息,所述元信息是指生成所述待检测签名所用到的信息;

在接收到检测指令之后,显示所述待检测签名的检测结果;

当所述检测结果为签名有误时,显示所述待检测签名的错误原因。

又一方面,本申请实施例提供了一种电子签名的错误检测装置,所述装置包括:

检测信息获取模块,用于获取待检测签名和所述待检测签名的元信息,所述元信息是指生成所述待检测签名所用到的信息;

正确签名生成模块,用于根据所述元信息生成正确签名;

错误签名生成模块,用于当所述待检测签名与所述正确签名不同时,根据所述元信息和参考错误原因,生成错误签名;

错误原因确定模块,用于通过比对所述待检测签名和所述错误签名,确定所述待检测签名的错误原因。

又一方面,本申请实施例提供了一种电子签名的错误检测装置,所述装置包括:

页面显示模块,用于显示电子签名的错误检测页面;

签名获取模块,用于获取在所述错误检测页面中输入的待检测签名和所述待检测签名的元信息,所述元信息是指生成所述待检测签名所用到的信息;

结果显示模块,用于在接收到检测指令之后,显示所述待检测签名的检测结果;

原因显示模块,用于当所述检测结果为签名有误时,显示所述待检测签名的错误原因。

再一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的电子签名的错误检测方法。

所述计算机设备包括终端和服务器。

再一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述方面所述的电子签名的错误检测方法。

还一方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品被处理器执行时,用于实现上述电子签名的错误检测方法。

本申请实施例提供的技术方案可以包括如下有益效果:

通过在待检测签名与正确签名不同的情况下,根据待检测签名的元信息和参考错误原因,生成错误签名,基于该错误签名确定待检测签名的错误原因。相比于相关技术中,本申请实施例提供的技术方案,终端可以自动检测用户生成的电子签名是否正确,并在电子签名错误的情况下,自动检测出错误原因,提高了电子签名的错误检测的效率,提升了用户使用云服务的体验,降低了用户使用云服务的门槛。

附图说明

图1是本申请一个实施例提供的实施环境的示意图;

图2是本申请一个实施例提供的电子签名的错误检测方法的流程图;

图3是本申请另一个实施例提供的电子签名的错误检测方法的流程图;

图4示例性示出了生成正确签名的流程图;

图5示例性示出了本申请一种确定待检测签名的错误原因的流程图;

图6是本申请另一个实施例提供的电子签名的错误检测方法的流程图;

图7示例性示出了一种检测页面的示意图;

图8是本申请一个实施例提供的电子签名的错误检测装置的框图;

图9是本申请另一个实施例提供的电子签名的错误检测装置的框图;

图10是本申请又一个实施例提供的电子签名的错误检测装置的框图;

图11是本申请一个实施例提供的终端的结构框图;

图12是本申请一个实施例提供的服务器的结构示意图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

请参考图1,其示出了本申请一个实施例提供的实施环境的示意图。该实施环境可以包括:终端10和云服务器20。

上述终端10可以是诸如手机、平板电脑、pc(personalcomputer,个人计算机)、可穿戴设备等电子设备。上述终端10可以通过有线或者无线网络与云服务器20实现通信。

上述云服务器20可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn(contentdeliverynetwork,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。

云技术(cloudtechnology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。

云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。

其中,云计算(cloudcomputing)指it基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是it和软件、互联网相关,也可是其他服务。云计算是网格计算(gridcomputing)、分布式计算(distributedcomputing)、并行计算(parallelcomputing)、效用计算(utilitycomputing)、网络存储(networkstoragetechnologies)、虚拟化(virtualization)、负载均衡(loadbalance)等传统计算机和网络技术发展融合的产物。

随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。

云存储(cloudstorage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。

下面,通过几个实施例对本申请技术方案进行介绍说明。

请参考图2,其示出了本申请一个实施例提供的电子签名的错误检测方法的流程图。在本实施例中,主要以该方法应用于图1所示实施环境的终端中来举例说明。该方法可以包括如下几个步骤:

步骤201,获取待检测签名和待检测签名的元信息。

在本申请实施例中,终端可以获取待检测签名和待检测签名的元信息,以便于对该待检测签名的正确与否进行检测。

上述待检测签名是指用户提供的电子签名。上述元信息是指生成待检测签名所用到的信息,其中可以包括密钥标识(secretid)、密钥(secretkey)、请求方法(method)、uri(uniformresourceidentifier,统一资源标识符)、签名有效时间等等。

其中,密钥标识可以是云服务器分配给用户的,用于标识用户的身份;密钥也是由服务器分配给用户的,用于对签名字符串进行加密,以及云服务器验证用户的身份;密钥标识与密钥是成对的。

请求方法是指http(hypertexttransferprotocol,超文本传输协议)请求方法,用于定义描述如何处理指定资源的字段;该请求方法可以包括get、post、put、delete等等;其中get用于向特定资源发出请求;post用于向指定资源提交数据进行处理请求;put用于向指定资源位置上上传其最新内容;delete用于请求服务器删除某资源。此外,还可以包括head、connect、options和trace等等。

uri是一个用于标识某一互联网资源名称的字符串,如html(hypertextmarkuplanguage,超级文本标记语言)文档、图像、视频片段、程序等都是由一个uri进行定位的。

步骤202,根据元信息生成正确签名。

在获取到上述元信息之后,终端可以根据该元信息生成正确签名。

关于生成正确签名的流程步骤,在下文图3实施例中进行介绍说明,此处不再赘述。

步骤203,若待检测签名与正确签名不同,则根据元信息和参考错误原因,生成错误签名。

在生成正确签名之后,终端可以将待检测签名与正确签名进行对比,若待检测签名与正确签名不同,则表示用户生成的待检测签名是错误的。在这种情况下,终端可以进一步根据元信息和参考错误原因,生成错误签名。

另外,若待检测签名与正确签名不同,则表示用户生成的待检测签名是正确的。在这种情况下,终端可以直接向用户反馈此检测结果,以提示用户其生成的待检测签名是正确的。

步骤204,通过比对待检测签名和错误签名,确定待检测签名的错误原因。

在生成错误签名之后,终端可以比对该待检测签名与错误签名。由于错误签名是根据元信息和参考错误原因生成的,如待检测签名与错误签名相同,则表示该待检测签名错误的原因与生成错误签名的参考错误原因相同,从而可以确定待检测签名的错误原因。

综上所述,本申请实施例提供的技术方案,通过在待检测签名与正确签名不同的情况下,根据待检测签名的元信息和参考错误原因,生成错误签名,基于该错误签名确定待检测签名的错误原因。相比于相关技术中,本申请实施例提供的技术方案,终端可以自动检测用户生成的电子签名是否正确,并在电子签名错误的情况下,自动检测出错误原因,提高了电子签名的错误检测的效率,提升了用户使用云服务的体验,降低了用户使用云服务的门槛。

请参考图3,其示出了本申请另一个实施例提供的电子签名的错误检测方法的流程图。在本实施例中,主要以该方法应用于图1所示实施环境的终端中来举例说明。该方法可以包括如下几个步骤:

步骤301,获取云服务请求的请求信息。

用户在请求使用云服务器时,向服务器发送云服务请求(也可以称为http签名请求),该云服务请求用于请求使用云服务。云服务器在接收到该云服务请求之后,会对用户进行身份验证,即对用户提供的电子签名进行验证。

上述请求信息中包括待检测签名和待检测签名的元信息,以便云服务器在接收到该云服务请求之后进行电子签名的验证。

步骤302,从请求信息中解析得到待检测签名和元信息。

可选地,终端可以根据标准http协议解析该请求信息,以获取待检测签名和待检测签名的元信息。

步骤303,根据元信息生成正确签名。

在获取到待检测签名的元信息之后,可以生成正确签名。

可选地,结合参考图4,上述根据元信息生成正确签名,可以包括以下几个步骤:

(1)获取密钥标识(secretid)和密钥(secretkey)。

终端在获取到上述http签名请求之后,可以根据标准http协议解析该http签名请求,从而得到密钥标识和密钥。上述密钥标识和密钥可以是有数字和字母组成的字符串。

例如,secretid="akidc9ylmrbcfk4c8sbmxq8i65xxxxxxxxxx";

secretkey="luse4npk1d4tx5shyxv6tzxxxxxxxxxx"

(2)生成签名有效时间(keytime)。

获取当前时间对应的unix时间戳starttimestamp,该unix时间戳是从utc(协调世界时,或gmt格林威治时间)1970年1月1日0时0分0秒(北京时间1970年1月1日8时0分0秒)起至现在的总秒数。根据上述时间戳和期望的签名有效时长算出签名过期时间对应的unix时间戳endtimestamp。拼接得到签名有效时间,格式为starttimestamp;endtimestamp。例如,签名有效时间可以表示为1557902800;1557910000。

可选地,上述签名有效时间还可以由用户自行输入,对应地,终端可以获取用户输入的签名有效时间。

(3)确定请求方法。

终端可以从上述http签名请求中确定请求方法。

例如,假设http签名请求包括:“get/exampleobject(%e8%85%be%e8%ae%af%e4%ba%91)?response-content-type=application%2foctet-stream&response-cache-control=max-age%3d600http/1.1

date:thu,16may201906:55:53gmt

host:examplebucket-1250000000.cos.ap-beijing.myqcloud.com

……”;

可以得知,请求方法为get。

(4)获取uri。

终端可以从上述http签名请求中获取uri。

例如,假设http签名请求包括:“get/exampleobject(%e8%85%be%e8%ae%af%e4%ba%91)?response-content-type=application%2foctet-stream&response-cache-control=max-age%3d600http/1.1

date:thu,16may201906:55:53gmt

host:examplebucket-1250000000.cos.ap-beijing.myqcloud.com

……”;

可以得知,uri=response-cache-control;response-content-type。

(5)获取请求参数(httpparameters)和请求头部(httpheaders)。

上述请求参数与请求头部是指http签名请求的请求参数和请求头部。

例如,假设http签名请求包括:“get/exampleobject(%e8%85%be%e8%ae%af%e4%ba%91)?response-content-type=application%2foctet-stream&response-cache-control=max-age%3d600http/1.1

date:thu,16may201906:55:53gmt

host:examplebucket-1250000000.cos.ap-beijing.myqcloud.com

……”;

可以得知,httpparameters=response-cache-control=max-age%3d600&response-content-type=application%2foctet-stream;

httpheaders=date=thu%2c%2016%20may%202019%2006%3a55%3a53%20gmt&host=examplebucket-1250000000.cos.ap-beijing.myqcloud.com。

(6)生成签名密钥(signkey)。

签名密钥是根据密钥和签名有效时间生成的。

示例性地,使用hmac-sha1以密钥作为密钥,以签名有效时间为消息,计算消息摘要(哈希值),得到签名密钥。

(7)生成请求字符串(httpstring)。

根据请求方法、uri、请求参数和请求头部以特定的方式组合生成请求字符串。

(8)生成签名原文字符串(stringtosign)。

根据签名有效时间和请求字符串生成签名原文字符串。

示例性地,使用hmac-sha1以签名有效时间作为密钥,以请求字符串为信消息,计算消息摘要,得到签名原文字符串。可以表示为:stringtosign=sha1\nkeytime\nsha1(httpstring)\n。

例如,签名有效时间为:1510109254;1510109314;请求字符串为:35601c3365a361b62b980fda754318c29862d39c,则签名原文字符串stringtosign=sha1\n1510109254;1510109314\n35601c3365a361b62b980fda754318c29862d39c\n。

(9)生成电子签名。

使用hmac-sha1以签名密钥作为密钥,以签名原文字符串为消息,计算消息摘要,生成电子签名。可以表示为:signature=hmac-sha1(signkey,stringtosign)。

例如,签名密钥为:a4501294d3a835f8dab6caf5c19837dd19eef357;签名原文字符串为ha1\n1510109254;1510109314\n35601c3365a361b62b980fda754318c29862d39c\n;则电子签名signature=hmac-sha1(a4501294d3a835f8dab6caf5c19837dd19eef357,ha1\n1510109254;1510109314\n35601c3365a361b62b980fda754318c29862d39c\n)=2c53900d3fe8d2e875db8a6af5fe7303ee1567a8。

步骤304,若待检测签名与正确签名不同,则生成至少一个错误原因链。

在生成正确签名之后,终端可以将待检测签名与正确签名进行对比,若待检测签名与正确签名不同,则表示用户生成的待检测签名是错误的。在这种情况下,终端可以生成至少一个错误原因链。其中,每个错误原因链中包括至少一个参考错误原因。

上述参考错误原因是根据用户经常反馈的一些常见错误原因整理得到的。

示例性的,参考错误原因可以是请求方法为大写;也可以是请求参数未按照字典进行排序;还可以是请求参数中包括下划线;还可以是请求头部为大写等等。

由于用户在生成电子签名的过程中,可能或出现不止一处错误,也就是说,一个电子签名的错误原因可能包括多个,即错误原因链。可选地,当参考错误原因的数量为n个时,错误原因链的数量为2n-1个,n为正整数。

示例性地,一个错误原因链可以包括请求方法为大写和请求参数未按照字典进行排序;另一个错误原因链可以包括请求参数未按照字典进行排序、请求参数中包括下划线以及请求头部为大写。

在实际中,可以不断采集用户反馈的常见错误原因,以扩充参考错误原因,进一步可以提升检测的准确性。

步骤305,根据元信息和至少一个错误原因链,生成至少一个错误签名。

在获取到上述至少一个错误原因链之后,根据该至少一个错误原因链以及元信息,可以生成至少一个错误签名。

可选地,当错误原因链的数量为2n-1时,上述根据元信息和至少一个错误原因链,生成至少一个所述错误签名,可以包括:根据元信息和2n-1个错误原因链,生成2n-1个错误签名。

步骤306,比对各个错误签名中是否存在与待检测签名相同的目标错误签名。

在生成至少一个错误签名之后,终端可以比对各个错误签名中是否存在与待检测签名相同的目标错误签名

步骤307,若存在目标错误签名,则将生成目标错误签名的错误原因链中包括的参考错误原因,确定为待检测签名的错误原因。

比对各个错误签名与待检测签名之后,如果存在与待检测签名相同的目标错误签名,即可以确定用户在生成上述待检测签名的过程中,存在与生成目标错误签名的错误原因链中包括的参考错误原因,从而,可以将生成目标错误签名的错误原因链中包括的参考错误原因,确定为待检测签名的错误原因。

另外,在比对各个错误签名与待检测签名之后,如果不存在与待检测签名相同的目标错误签名,则表示检测错误原因失败。在这种情况下,终端可以直接向用户反馈检测错误原因失败,并提示用户按照文档去排查错误原因。

示例性地,如图5所示,其示例性示出了一种确定待检测签名的错误原因的流程图。终端可以采集用户经常反馈的一些常见错误原因,整理得到n个参考错误原因,如参考错误原因1、参考错误原因2、参考错误原因3,一直到参考错误原因n。基于上述n个参考错误原因,可以生成2n-1错误原因链;并根据元信息与2n-1错误原因链,生成2n-1个错误签名。之后,可以比对各个错误签名中是否存在与待检测签名相同的目标错误签名,若存在目标错误签名,则将生成目标错误签名的错误原因链中包括的参考错误原因,确定为待检测签名的错误原因;若不存在目标错误签名,则表示检测错误原因失败。

综上所述,本申请实施例提供的技术方案,在待检测签名与正确签名不同是,可以根据元信息和至少一个错误原因链,生成至少一个错误签名,并在比对各个错误签名与待检测签名之后,存在与待检测签名相同的目标错误签名,则可以将生成目标错误签名的错误原因链中包括的参考错误原因,确定为待检测签名的错误原因。本申请实施例提供的技术方案,可以智能的检测出用户的电子签名发生错误的详细的错误原因,提高了电子签名的错误检测的效率,提升用户使用云服务的体验,降低了用户使用云服务的门槛。

另外,本申请实施例提供的技术方案,用户不需要请求技术人员进行分析检测,降低了人力成本。

下面,从产品侧来介绍本申请提供的技术方案的有益效果。

请参考图6,其示出了本申请另一个实施例提供的电子签名的错误检测方法的流程图。在本实施例中,主要以该方法应用于图1所示实施环境的终端中来举例说明。该方法可以包括如下几个步骤:

步骤601,显示电子签名的错误检测页面。

在用户需要进行电子签名检测时,可以在终端中显示上述错误检测页面。该错误检测页面用于供用户输入待检测签名进行电子签名检测。

可选地,如图7所示,上述错误检测页面70中包括请求信息输入栏71,该请求信息输入栏71用于供用户输入待检测电子签名711以及待检测签名的元信息712。关于待检测签名的元信息已在上文进行了介绍,此处不再赘述。

可选地,上述检测页面70中还包括密钥输入栏72,该密钥输入栏72用于供用户输入电子签名的密钥。关于密钥已在上述进行了详细介绍,此处不再赘述。

步骤602,获取在错误检测页面中输入的待检测签名和待检测签名的元信息。

用户在检测页面中输入待检测签名和待检测签名的元信息,对应地,终端可以获取在检测页面中输入的待检测签名和待检测签名的元信息。

步骤603,在接收到检测指令之后,显示待检测签名的检测结果。

在获取到上述待检测签名之后,终端可以对该待检测签名进行检测。终端在接收到检测指令之后,可以显示待检测签名的检测结果。上述检测指令用于触发对待检测签名进行检测。

可选地,如图7所示,上述检测页面70中可以包括检测控件73,用户可以点击该检测控件73,以触发上述检测指令。此外,用户还可以通过物理按键、手势、语音等触发上述检测指令。本申请实施例对此不作限定。

步骤604,当检测结果为签名有误时,显示待检测签名的错误原因。

若待检测签名有误,则终端可以显示待检测签名的错误原因。

示例性地,如图7所示,待检测签名的错误原因可以包括method应转换为小写;headerlist未转换为小写;headerlist未按照字典排序。

另外,若待检测签名正确,则终端可以显示签名正确提示信息,以提示用户待检测签名正确。

示例性地,如图7所示,终端可以显示签名正确提示信息,如“检测成功,您的签名正确”,以提示用户待检测签名正确。

此外,若检测失败,则终端可以显示检测失败的提示信息,以提示用户检测错误原因失败,并提示用户按照文档去排查错误原因。

示例性地,如图7所示,终端可以显示检测失败的提示信息,如“检测失败,未能发现签名错误原因”,以提示用户检测错误原因失败。

综上所述,本申请实施例提供的技术方案,终端通过在检测页面中输入的待检测签名,并在接收到检测指令之后,当检测结果为签名有误时,显示待检测签名的错误原因。相比于相关技术中,需要用户自行与电子签名工具计算的中间变量进行比对,检查电子签名错误的原因。本申请实施例提供的技术方案,在检测结果为签名有误时,直接显示待检测签名的错误原因,提高了检测结果的精确度。

下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。

请参考图8,其示出了本申请一个实施例提供的电子签名的错误检测装置的框图。该装置具有实现上述方法示例的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是上文介绍的终端,也可以设置在终端上。该装置800可以包括:检测信息获取模块810、正确签名生成模块820、错误签名生成模块830和错误原因确定模块840。

检测信息获取模块810,用于获取待检测签名和所述待检测签名的元信息,所述元信息是指生成所述待检测签名所用到的信息。

正确签名生成模块820,用于根据所述元信息生成正确签名。

错误签名生成模块830,用于当所述待检测签名与所述正确签名不同时,根据所述元信息和参考错误原因,生成错误签名。

错误原因确定模块840,用于通过比对所述待检测签名和所述错误签名,确定所述待检测签名的错误原因。

综上所述,本申请实施例提供的技术方案,通过在待检测签名与正确签名不同的情况下,根据待检测签名的元信息和参考错误原因,生成错误签名,基于该错误签名确定待检测签名的错误原因。相比于相关技术中,本申请实施例提供的技术方案,终端可以自动检测用户生成的电子签名是否正确,并在电子签名错误的情况下,自动检测出错误原因,提高了电子签名的错误检测的效率,提升了用户使用云服务的体验,降低了用户使用云服务的门槛。

在一些可能的设计中,如图9所示,所述错误签名生成模块830,包括:原因链生成单元831和错误签名生成单元832。

原因链生成单元831,用于生成至少一个错误原因链,每个所述错误原因链中包括至少一个所述参考错误原因。

错误签名生成单元832,用于根据所述元信息和所述至少一个错误原因链,生成至少一个所述错误签名。

在一些可能的设计中,所述参考错误原因的数量为n个,所述错误原因链的数量为2n-1个,所述n为正整数;

所述错误签名生成单元832,用于根据所述元信息和2n-1个所述错误原因链,生成2n-1个所述错误签名。

在一些可能的设计中,所述错误原因确定模块840,用于:比对各个所述错误签名中是否存在与所述待检测签名相同的目标错误签名;当存在所述目标错误签名时,将生成所述目标错误签名的错误原因链中包括的参考错误原因,确定为所述待检测签名的错误原因。

在一些可能的设计中,所述检测信息获取模块810,用于:获取云服务请求的请求信息;从所述请求信息中解析得到所述待检测签名和所述元信息。

请参考图10,其示出了本申请一个实施例提供的电子签名的错误检测装置的框图。该装置具有实现上述方法示例的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是上文介绍的终端,也可以设置在终端上。该装置1000可以包括:页面显示模块1010、签名获取模块1020、结果显示模块1030和原因显示模块1040。

页面显示模块1010,用于显示电子签名的错误检测页面。

签名获取模块1020,用于获取在所述错误检测页面中输入的待检测签名和所述待检测签名的元信息,所述元信息是指生成所述待检测签名所用到的信息。

结果显示模块1030,用于在接收到检测指令之后,显示所述待检测签名的检测结果。

原因显示模块1040,用于当所述检测结果为签名有误时,显示所述待检测签名的错误原因。

综上所述,本申请实施例提供的技术方案,终端通过在检测页面中输入的待检测签名,并在接收到检测指令之后,当检测结果为签名有误时,显示待检测签名的错误原因。相比于相关技术中,需要用户自行与电子签名工具计算的中间变量进行比对,检查电子签名错误的原因。本申请实施例提供的技术方案,在检测结果为签名有误时,直接显示待检测签名的错误原因,提高了检测结果的精确度。

需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

请参考图11,其示出了本申请一个实施例提供的终端的结构框图。通常,终端1100包括有:处理器1101和存储器1102。

处理器1101可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1101可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(fieldprogrammablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1101也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1101可以在集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1101还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。

存储器1102可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1102还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1102中的非暂态的计算机可读存储介质用于存储至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、至少一段程序、代码集或指令集用于被处理器1101所执行以实现本申请中方法实施例提供的电子签名的错误检测方法。

在一些实施例中,终端1100还可选包括有:外围设备接口1103和至少一个外围设备。处理器1101、存储器1102和外围设备接口1103之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1103相连。具体地,外围设备可以包括:通信接口1104、显示屏1105、音频电路1106、摄像头组件1107、定位组件1108和电源1109中的至少一种。

本领域技术人员可以理解,图11中示出的结构并不构成对终端1100的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

请参考图12,其示出了本申请一个实施例提供的服务器的结构示意图。具体来讲:

所述服务器1200包括cpu(centralprocessingunit,中央处理器)1201、包括ram(randomaccessmemory,随机存取存储器)1202和rom(readonlymemory,只读存储器)1203的系统存储器1204,以及连接系统存储器1204和中央处理单元1201的系统总线1205。所述服务器1200还包括帮助计算机内的各个器件之间传输信息的基本i/o(input/output输入/输出)系统1206,和用于存储操作系统1213、应用程序1214和其他程序模块1212的大容量存储设备1207。

所述基本输入/输出系统1206包括有用于显示信息的显示器1208和用于用户输入信息的诸如鼠标、键盘之类的输入设备1209。其中所述显示器1208和输入设备1209都通过连接到系统总线1205的输入输出控制器1210连接到中央处理单元1201。所述基本输入/输出系统1206还可以包括输入输出控制器1210以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器1210还提供输出到显示屏、打印机或其他类型的输出设备。

所述大容量存储设备1207通过连接到系统总线1205的大容量存储控制器(未示出)连接到中央处理单元1201。所述大容量存储设备1207及其相关联的计算机可读介质为服务器1200提供非易失性存储。也就是说,所述大容量存储设备1207可以包括诸如硬盘或者cd-rom(compactdiscread-onlymemory,只读光盘)驱动器之类的计算机可读介质(未示出)。

不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括ram、rom、eprom(erasableprogrammablereadonlymemory,可擦除可编程只读存储器)、闪存或其他固态存储其技术,cd-rom、dvd或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1204和大容量存储设备1207可以统称为存储器。

根据本申请的各种实施例,所述服务器1200还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器1200可以通过连接在所述系统总线1205上的网络接口单元1211连接到网络1212,或者说,也可以使用网络接口单元1211来连接到其他类型的网络或远程计算机系统(未示出)。

所述存储器还包括至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集存储于存储器中,且经配置以由一个或者一个以上处理器执行,以实现上述电子签名的错误检测方法。

在示例性实施例中,还提供了一种计算机设备。该计算机设备可以是终端或服务器。所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述电子签名的错误检测方法。

在示例性实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集在被处理器执行时实现上述电子签名的错误检测方法。

在示例性实施例中,还提供了一种计算机程序产品,当该计算机程序产品被处理器执行时,其用于实现上述电子签名的错误检测方法。

应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

以上所述仅为本申请的示例性实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1