买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】签名验证的方法、设备和系统_深圳市汇顶科技股份有限公司_201780000335.5 

申请/专利权人:深圳市汇顶科技股份有限公司

申请日:2017-04-25

公开(公告)日:2020-07-24

公开(公告)号:CN107223322B

主分类号:H04L9/32(20060101)

分类号:H04L9/32(20060101)

优先权:

专利状态码:有效-授权

法律状态:2020.07.24#授权;2017.11.03#实质审查的生效;2017.09.29#公开

摘要:本申请实施例提供了签名验证的方法、设备和系统,包括:发送端根据私钥和数字签名算法确定需要发送的消息的签名;主机根据公钥和该数字签名算法对该消息和该签名进行验证,当公钥和私钥对应时,主机根据预置密钥确定该消息的校验码,其中,确定该校验码所使用的算法的复杂度低于该数字签名算法的复杂度,主机和发送端具有数字签名的能力;接收端根据该校验码对该消息进行校验,并获取该消息,接收端为嵌入式系统。本申请实施例中,即主机代替接收端执行数字签名算法,从而使得接收端不需要使用复杂度高的数字签名算法对数据进行验证,因而本申请实施例能够保证低硬件成本的接收端接收的数据的真实性和完整性。

主权项:1.一种签名验证的方法,其特征在于,包括:接收发送端发送的消息和所述消息的签名,所述消息的签名是所述发送端根据私钥和数字签名算法确定的;根据公钥和所述数字签名算法对所述消息和所述签名进行验证;当所述公钥和所述私钥对应时,根据预置密钥确定所述消息的校验码,其中,确定所述校验码所使用的算法的复杂度低于所述数字签名算法的复杂度;将所述消息和所述校验码发送给接收端,使得所述接收端根据所述校验码对所述消息进行校验,其中,所述接收端为嵌入式系统。

全文数据:签名验证的方法、设备和系统技术领域[0001]本申请涉及通信领域,并且更具体的,涉及通信领域中的签名验证的方法、设备和系统。背景技术[0002]数字签名技术在安全领域的应用非常广泛,其可以使得接收方有效验证数据的真实性和不可抵赖性。数字签名算法例如可以为RSA公钥密码学算法、椭圆曲线密码学Ellipticcurvecryptography,ECC算法等。并且,因为哈希Hash函数能够保证输入数据的完整性,通常数字签名技术结合Hash函数可以保证数据的完整性、真实性和不可抵赖性。[0003]数字签名算法通常是大数运算,非常消耗CPU运行时间。嵌入式系统为了降低成本,无法采用高性能的处理硬件,不具备执行数字签名的能力。在需要可靠、安全性保障的嵌入式系统中,为了保护数据的真实性和完整性,需要使用数字签名和验证等相关的安全措施,但这必然需要增加额外的成本。发明内容[0004]本申请实施例提供了一种签名验证的方法、设备和系统,能够保证低硬件成本的接收端接收的数据的真实性和完整性。[0005]第一方面,提供了一种签名验证的方法,该方法包括:[0006]主机接收发送端发送的消息和该消息的签名,其中,该消息的签名是该发送端根据私钥和数字签名算法确定的;[0007]主机根据公钥和该数字签名算法对该消息和该签名进行验证;[0008]当该公钥和该私钥对应时,该主机根据预置密钥确定该消息的校验码,其中,确定该校验码所使用的算法的复杂度低于该数字签名算法的复杂度;[0009]主机将该消息和该校验码发送给接收端,使得该接收端根据该校验码对该消息进行校验,其中,该接收端为嵌入式系统。[0010]本申请实施例中,主机根据对发送端向接收端发送的数据进行数字签名验证,即主机代替接收端执行数字签名算法,从而使得接收端不需要使用复杂度高的数字签名算法对数据进行验证,因而本申请实施例能够保证低硬件成本的接收端接收的数据的真实性和完整性。[0011]该在一些可能实现的方式中,所述方法由具有数字签名的能力的主机执行,且所述发送端也具有数字签名的能力。[0012]该在一些可能实现的方式中,该方法还包括:主机接收该接收端发送的该公钥;主机接收该接收端发送的该公钥的校验码,其中,该校验码是该接收端根据该预置密钥确定的,主机根据该预置密钥对该公钥和该公钥的校验码进行验证。[0013]本申请中,接收端将公钥发送给主机,使得主机可以根据接收端提供的公钥对将要转发给接收端的数据进行数字验证,提高验证的可靠性。[0014]在接收端将公钥发送给主机的同时,接收端可以将该公钥的校验码发送给主机,使得主机能够对接收到的公钥进行验证,进一步提高数据传输的安全性。[0015]在一些可能实现的方式中,主机接收该接收端发送的该公钥之前,向该接收端发送请求消息,该请求消息用于请求该接收端发送该公钥。[0016]在一些可能实现的方式中,该请求消息还用于请求该接收端发送该公钥的校验码。[0017]在一些可能实现的方式中,其特征在于,该数字签名算法为RSA公钥密码学算法,该校验码为基于Hash函数的消息认证码HMAC。[0018]在一些可能实现的方式中,该嵌入式系统为生物识别嵌入式系统。[0019]第二方面,提供了一种签名验证的方法。该方法包括:[0020]发送端根据私钥和数字签名算法确定需要发送的消息的签名,并将该消息和该签名发送给该主机;[0021]主机根据公钥和该数字签名算法对该消息和该签名进行验证,当该公钥和该私钥对应时,该主机根据预置密钥确定该消息的校验码,其中,确定该校验码所使用的算法的复杂度低于该数字签名算法的复杂度;[0022]主机将该消息和该校验码发送给该接收端;[0023]接收端根据该校验码对该消息进行校验,并获取该消息。[0024]本申请实施例中,主机根据对发送端向接收端发送的数据进行数字签名验证,gp主机代替接收端执行数字签名算法,从而使得接收端不需要使用复杂度高的数字签名算法对数据进行验证,因而本申请实施例能够保证低硬件成本的接收端接收的数据的真实性和完整性。[0025]在一些可能的实现方式中,该方法由签名验证系统执行,该系统包括发送端、主机和接收端,该主机和该发送端具有数字签名的能力,该接收端为嵌入式系统。[0026]在一些可能的实现方式中,该方法还包括:该接收端向该主机发送该公钥,该接收端根据该预置密钥确定该公钥的校验码,并向该主机发送该公钥的校验码;该主机根据该预置密钥对该公钥和该公钥的校验码进行验证。[0027]本申请中,接收端将公钥发送给主机,使得主机可以根据接收端提供的公钥对将要转发给接收端的数据进行数字验证,提高验证的可靠性。在接收端将公钥发送给主机的同时,接收端可以将该公钥的校验码发送给主机,使得主机能够对接收到的公钥进行验证,进一步提高数据传输的安全性。[0028]在一些可能的实现方式中,该接收端向该主机发送该公钥之前,还包括:[0029]该主机向该接收端发送请求消息,该请求消息用于请求该接收端发送该公钥。[0030]在一些可能的实现方式中,该请求消息还用于请求该接收端发送该公钥的校验码。[0031]在一些可能的实现方式中,该数字签名算法为RSA公钥密码学算法,该校验码为基于Hash函数的消息认证码HMAC。[0032]在=些可能的实现方式中,该嵌入式系统为生物识别嵌入式系统。[0033]第三方面,提供了一种签名验证的设备,用于执行上述第一方面或第一方面的任意可能的实现方式中的方法,具体的,该设备包括用于执行上述第一方面或第一方面任意可能的实现方式中的方法的模块。[0034]第四方面,提供了一种签名验证的设备,该设备包括:存储器、处理器和收发器。其中,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,该执行使得该处理器执行第一方面或第一方面的任意可能的实现方式中的方法。[0035]第五方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。附图说明[0036]图1是通过数字签名技术进行数据传输的示意性流程图。[0037]图2是本申请实施例的一种签名验证的系统的架构图。[0038]图3是本申请实施例的另一种签名验证的系统的架构图。[0039]图4是本申请实施例的一种签名验证的方法的示意性流程图。[0040]图5是本申请实施例的一种签名验证的设备的示意性框图。[0041]图6是本申请实施例的另一种签名验证的设备的示意性框图。具体实施方式[0042]图1示出了通过数字签名技术进行数据传输的示意性流程图。图1中的传输数据的方法中使用的数字签名算法为RSA公钥密码学算法。该方法中,发送端10和接收端11都具有数字签名的能力,包括:[0043]S110,发送端10获取将要传输的数据M的签名SigM。[0044]S120,发送端10向接收端11发送该数据M和签名SigM。[0045]S130,接收端11验证该签名SigM和数据M。[0046]具体的,以Alice和Bob分别使用发送端和接收端进行身份认证为例进行说明。当Alice需要向Bob发送数据M时,使用自身的私钥(SK对数据M进行签名,得到SigM。其中,数据M为明文数据。应注意,Alice的私钥只有Alice本人拥有,而Alice的公钥所有人都可以可靠获取到。并且根据RSA公钥密码学算法的理论,只有Alice的公钥数据,难以获得对应的RSA私钥,所以Bob可以根据签名SigM确定数据M是Alice发出的,并且,因为只有Alice本人用于自己的私钥,A1ice无法抵赖曾经发送过数据M的事实。[0047]图2示出了本申请一个实施例的系统架构图。在该系统包括发送端10、主机30和接收端2〇三个实体,主机30和发送10端具有数字签名的能力,接收端20可以为嵌入式系统,该接收端20可以不具备数字签名的能力。其中,发送端10和主机30之间通过明文信道传输数据,主机30和接收端20之间也可以通过明文信道传输数据。[0048]其中,主机3〇中包括验证模块301,该验证模块301用于校验发送端10发送的数据的真实性和完整性,并且使用基于Hash函数的消息认证码(Hash-basedMessageAuthenticationCode,HMAC替换签名数据。具体的,验证模块301对经过RSA公钥密码学算法进行签名过的数据和签名进行验证,同时计算数据的HMAC。该验证模块301可以运行在可信执行环境(TrustedExecutionEnvironment,TEE;中。[0049]本申请实施例中,接收端2〇可以为低成本、低性能的嵌入式系统,并且该嵌入式系统同时对安全性的要求比较高,例如为生物识别认证系统。应注意,验证数据的HMAC的运算过程并不是大数运算,其对硬件性能的要求也低于使用数字签名技术对硬件性能的要求。因此,接收端20仅需要执行HMAC运算过程,而不需要执行数字签名运算过程。[0050]图3示出了本申请另一个具体的实施例的整体架构图。在图3中,发送端10具体可以是FactoryTool10。接收端2〇具体可以包括微控制单元MicrocontrollerUnit,MCU201,接收端20中还可以包括传感器。主机30具体可以是WindowsPC。其中,WindowsPC30中可以包括验证模块VerifyModule301和守护进程daemon302,并且VerifyModule301运行在TEE例如InterSGXSoftwareGuardExtensions中,daemon302运行在普通的软件执行环境RichExecutionEnvironment,REE中。本申请中,MCU201的运算速度可以较慢,例如MCU201仅可以处理简单的逻辑运算,并且MCU201中存储软件代码的空间有限。[0051]在图3所不的架构中,daemon302是FactoryTool10、VerifyModule301和MCU201进行数据传输的桥梁。具体的,FactoryTool10和daemon302之间可以通过网络信道传输数据,daemon302和MCU201之间可以通过串行外设接口(SerialPeripheralInterface,SPI或通用串行总线(UniversalSerialBus,USB传输数据,daemon301和VerifyModu1e302之间可以通过ECALLOCALL传输数据。[0052]本申请中的主机30例如WindowsPC和接收端20例如MCU201在生产的过程中可以设置预置密钥PSK,并且在接收端设备中可以预置发送端例如FactoryToollO所使用的私钥SK对应的公钥PK。[0053]图4示出了本申请一个实施例的签名验证的方法的示意性流程图。该方法可以由图2或图3的架构中的各个实体执行。应理解,图4示出了签名验证的方法的步骤或操作,但这些步骤或操作仅是示例,本申请实施例还可以执行其他操作或者图4中的各个操作的变形。此外,图4中的各个步骤可以按照与图4呈现的不同的顺序来执行,并且有可能并非要执行图4中的全部操作。图2、图3或图4中相同的附图标记表示相同或相似的含义,为了简洁,此处不再赘述。图4所示的方法包括:[0054]S210,发送端10获取将要传输的数据的签名。[0055]具体地,该发送端可以为图3中所示的FactoryToollO,该将要传输的数据可以为消息M,消息M可以是命令或者其他信息。发送端10可以根据数字签名算法和该发送端中的预置的私钥对消息M进行签名,得到消息M的签名sigM。该数字签名算法例如可以为RSA公钥密码学算法或者ECC密码学算法。本申请实施例中,FactoryToollO和VerifyModule301可以采用2048bits长度密钥的RSA签名和验证签名算法。[0056]S220,发送端10向主机30发送该数据和签名。[0057]具体地,?8〇1:^71'〇〇110可以向?]机中的16111〇11302发送消息11及其签名31邑“。[0058]S230,主机30向接收端20发送请求消息。具体地,daemon302可以通过SPI或USB向MCU201发送该请求消息。该请求消息用于请求接收端20中向主机30发送公钥PK。该公钥可以是预先配置在接收端20中。可选地,该请求消息还用于请求接收端20发送该公钥PK的校验码。[0059]应注意,本申请实施例中,S230可以在S220之后执行,也可以在S220之前执行,或者也可以不执行S230的步骤本申请实施例对此并不限定。[0060]S240,接收端20向主机30发送公钥和该公钥的校验码。[0061]具体地,接收端20可以根据其与主机30共享的预置密钥PSK计算公钥PK的校验码,确定该校验码的算法的复杂度低于上述数字签名算法,该校验码例如可以为基于Hash函数的消息认证码HMAC,则该公钥PK的校验码为HMACpk。具体地,MCU201可以通过SPI将公钥PK和校验码HMACpk发送给daemon302。[0062]本申请实施例中,哈希Hash算法可以使用安全哈希函数(SecurityHash八1§〇1^1±111,8脱-256,¥6;^€71;[011116301和1;[0]使用基于3拟-256的_:算法。1^:算法是基于Hash的消息认证码MessageAuthenticationCode,MAC,HMAC算法在一定程度上可以共享Hash函数的代码。因此,当接收端20采用HMAC算法而不是RSA或ECC密码学算法对数据的合法性验证时,可以减小接收端20的软件的大小。[0063]本申请实施例中,Hash算法也可使用SHA-1等其他Hash算法,VerifyModule301和MCU201之间的HMAC算法可以采用基于SHA-1等HASH函数的其他MAC算法。[0064]S250,主机30使用与接收端20共享的PSK验证公钥PK和校验码HMACpk。经过S250的验证,主机30可以确定公钥PK的合法性。[0065]具体地,daemon302可以将接收到的公钥PK和校验码HMACpk发送至VerifyModule301,由VerifyModule301在TEE环境中对公钥PK的合法性进行验证。[0066]S260,主机30使用验证合法的公钥PK验证消息M及其签名sigM。具体的,由VerifyModule301在TEE环境中对消息M及其sigM的合法性进行验证。[0067]可以理解,现有技术中是由接收端根据预置的公钥PK验证M的签名sigM,此时接收端对硬件的要求比较高,例如,接收端需要有较快的处理能力,并且能够存储较大的代码,硬件成本较高。本申请实施例中,对M和sigM的验证由主机30执行,此时,对接收端20的硬件性能的要求较低,例如接收端20可以为具有较低的运行速度和较小的存储空间等低成本的嵌入式系统。[0068]S270,主机30使用预置密钥PSK计算验证合法的消息M的校验码HMACm。可选地,S27〇可以由VerifyModule301在TEE环境计算消息M的校验码HMACm。[0069]具体地,主机30根据与接收端20共享的预置密钥PSK确定消息M的校验码HMACm。当该校验码为基于Hash函数的消息认证码HMAC,则该消息M的校验码可以表示为HMACm。[0070]S280,主机30向接收端20发送消息M和校验码HMACm。[0071]具体地,VerifyModule301可以将消息M和校验码HMACm发送至daemon302,再由daemon3〇2将消息M和校验码HMACm发送至MCU201。[0072]S290,接收端30利用共享的HMACmPSK验证消息M和校验码HMACm。具体地,可以由MCU201对消息M和校验码HMACm的合法性进行验证。[0073]本申请实施例中,主机30根据对发送端10向接收端20发送的数据进行数字签名验证,即主机30代替接收端20执行数字签名算法,从而使得接收端20不需要使用复杂度高的数字签名算法对数据进行验证,因而本申请实施例能够保证低硬件成本的接收端20接收的数据的真实性和完整性。[0074]图5示出了本申请实施例的签名验证的设备500,该设备500该具有数字签名的能力,该设备500包括:[0075]接收单元510,用于接收发送端发送的消息和该消息的签名,其中,该发送端也具有数字签名的能力,该消息的签名是该发送端根据私钥和数字签名算法确定的;L〇〇76」验证单元520,用于根据公钥和数字签名算法对该消息和该签名进行验证。当该公钥和该私钥对应时,该验证单元520还用于根据预置密钥确定该消息的校验码,其中,确定该校验码所使用的算法的复杂度低于该数字签名算法的复杂度;[0077]发送单元530,用于将该消息和该校验码发送给接收端,使得该接收端根据该校验码对该消息进行校验,其中,接收端为嵌入式系统。[0078]本申请实施例中,主机根据对发送端向接收端发送的数据进行数字签名验证,即主机代替接收端执行数字签名算法,从而使得接收端不需要使用复杂度高的数字签名算法对数据进行验证,因而本申请实施例能够保证低硬件成本的接收端接收的数据的真实性和完整性。[0079]在一些可能的实现方式中,该接收单元510还用于主机接收该接收端发送的该公钥。[0080]在一些可能的实现方式中,该接收单元510还用于接收该接收端发送的公钥的校验码,其中,该校验码是该接收端根据该预置密钥确定的。[0081]验证单元520还用于根据预置密钥对公钥和该公钥的校验码进行验证。[0082]在一些可能的实现方式中,该发送单元530还用于向该接收端发送请求消息,该请求消息用于请求该接收端发送该公钥。[0083]在一些可能的实现方式中,该请求消息还用于请求接收端发送该公钥的校验码。[0084]在一些可能的实现方式中,该数字签名算法为RSA公钥密码学算法,该校验码为基于Hash函数的消息认证码HMAC。[0085]在一些可能的实现方式中,该嵌入式系统为生物识别嵌入式系统。[0086]应注意,本发明实施例中,验证单元520可以由处理器实现,接收单元510和发送单元530可以由收发器实现。如图6所示,设备600可以包括处理器610、存储器620和收发器630。其中,存储器620可以用于存储处理器610执行的代码等。[0087]在实现过程中,上述方法的各步骤可以通过处理器610中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器620,处理器610读取存储器620中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。[0088]图5所示的设备500或图6所示的设备600能够实现前述图4所示的方法实施例对应的各个过程,具体的,该设备500或设备600可以参见上述图4中的描述,为避免重复,这里不再赘述。[0089]本发明实施例还提供一种签名验证的系统,该系统包括上述设备500或设备6〇0、上述发送端设备和上述接收端设备。[0090]应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。[0091]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能宄竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。[0092]f属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。[0093]在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。[0094]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。[0095]另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。[0096]所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备可以是个人计算机,服务器,或者网络设备等执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器Read-OnlyMemory,R0M、随机存取存储器RandomAccessMemory,RAM、磁碟或者光盘等各种可以存储程序代码的介质。[0097]以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以该权利要求的保护范围为准。

权利要求:1.一种签名验证的方法,其特征在于,包括:接收发送端发送的消息和所述消息的签名,所述消息的签名是所述发送端根据私钥和数字签名算法确定的;根据公钥和所述数字签名算法对所述消息和所述签名进行验证;当所述公钥和所述私钥对应时,根据预置密钥确定所述消息的校验码,其中,确定所述校验码所使用的算法的复杂度低于所述数字签名算法的复杂度;将所述消息和所述校验码发送给接收端,使得所述接收端根据所述校验码对所述消息进行校验,其中,所述接收端为嵌入式系统。2.根据权利要求1所述的方法,其特征在于,所述方法由具有数字签名的能力的主机执行,且所述发送端也具有数字签名的能力。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:接收所述接收端发送的所述公钥;接收所述接收端发送的所述公钥的校验码,其中,所述校验码是所述接收端根据所述预置密钥确定的;根据所述预置密钥对所述公钥和所述公钥的校验码进行验证。4.根据权利要求3所述的方法,其特征在于,还包括:在接收所述接收端发送的所述公钥之前,向所述接收端发送请求消息,所述请求消息用于请求所述接收端发送所述公钥。5.根据权利要求4所述的方法,其特征在于,所述请求消息还用于请求所述接收端发送所述公钥的校验码。6.根据权利要求1-5任一项所述的方法,其特征在于,所述数字签名算法为RSA公钥密码学算法,所述校验码为基于哈希Hash函数的消息认证码HMAC。7.根据权利要求1-6任一项所述的方法,其特征在于,所述嵌入式系统为生物识别嵌入式系统。8.—种签名验证的方法,其特征在于,包括:发送端根据私钥和数字签名算法确定需要发送的消息的签名,并将所述消息和所述签名发送给主机;所述主机根据公钥和所述数字签名算法对所述消息和所述签名进行验证,并在所述公钥和所述私钥对应时,根据预置密钥确定所述消息的校验码,其中,确定所述校验码所使用的算法的复杂度低于所述数字签名算法的复杂度;所述主机将所述消息和所述校验码发送给接收端;所述接收端根据所述校验码对所述消息进行校验,并获取所述消息。9.根据权利要求8所述的方法,其特征在于,所述方法由签名验证系统执行,所述签名验证系统包括所述发送端、所述主机和所述接收端,所述主机和所述发送端具有数字签名的能力,所述接收端为嵌入式系统。10.根据权利要求8或9所述的方法,其特征在于,所述方法还包括:所述接收端向所述主机发送所述公钥;所述接收端根据所述预置密钥确定所述公钥的校验码,并向所述主机发送所述公钥的校验码;所述主机根据所述预置密钥对所述公钥和所述公钥的校验码进行验证。11.根据权利要求10所述的方法,其特征在于,还包括:在所述接收端向所述主机发送所述公钥之前,所述主机向所述接收端发送请求消息,所述请求消息用于请求所述接收端发送所述公钥。12.根据权利要求11所述的方法,其特征在于,所述请求消息还用于请求所述接收端发送所述公钥的校验码。13.根据权利要求8-12任一项所述的方法,其特征在于,所述数字签名算法为RSA公钥密码学算法,所述校验码为基于哈希Hash函数的消息认证码HMAC。14.根据权利要求8-13任一项所述的方法,其特征在于,所述嵌入式系统为生物识别嵌入式系统。15.—种签名验证的设备,其特征在于,所述设备具有数字签名的能力,所述设备包括:接收单元,用于接收发送端发送的消息和所述消息的签名,所述消息的签名是所述发送端根据私钥和数字签名算法确定的;验证单元,用于根据公钥和所述数字签名算法对所述消息和所述签名进行验证,并在所述公钥和所述私钥对应时,根据预置密钥确定所述消息的校验码,其中,确定所述校验码所使用的算法的复杂度低于所述数字签名算法的复杂度;发送单元,用于将所述消息和所述校验码发送给接收端,使得所述接收端根据所述校验码对所述消息进行校验,其中,所述接收端为嵌入式系统。16.根据权利要求15所述的设备,其特征在于,所述接收单元还用于接收所述接收端发送的所述公钥,并接收所述接收端发送的所述公钥的校验码,其中,所述校验码是所述接收端根据所述预置密钥确定的;所述验证单元还用于根据所述预置密钥对所述公钥和所述公钥的校验码进行验证。17.根据权利要求16所述的设备,其特征在于,所述发送单元还用于向所述接收端发送请求消息,所述请求消息用于请求所述接收端发送所述公钥。18.根据权利要求17所述的设备,其特征在于,所述请求消息还用于请求所述接收端发送所述公钥的校验码。19.根据权利要求15-18任一项所述的设备,其特征在于,所述数字签名算法为RSA公钥密码学算法,所述校验码为基于哈希Hash函数的消息认证码HMAC。20.根据权利要求15-19任一项所述的设备,其特征在于,所述嵌入式系统为生物识别嵌入式系统。21.—种签名验证的系统,其特征在于,包括发送端、主机和接收端,所述主机和所述发送端具有数字签名的能力,所述接收端为嵌入式系统;所述发送端用于根据私钥和数字签名算法确定需要发送的消息的签名,并将所述消息和所述签名发送给所述主机;所述主机用于根据公钥和所述数字签名算法对所述消息和所述签名进行验证,并在所述公钥和所述私钥对应时,根据预置密钥确定所述消息的校验码,并且将所述消息和所述校验码发送给所述接收端,其中,确定所述校验码所使用的算法的复杂度低于所述数字签名算法的复杂度;所述接收端用于根据所述校验码对所述消息进行校验,并获取所述消息。22.根据权利要求21所述的系统,其特征在于,所述接收端还用于向所述主机发送所述公钥,根据所述预置密钥确定所述公钥的校验码,并向所述主机发送所述公钥的校验码;所述主机还用于根据所述预置密钥对所述公钥和所述公钥的校验码进行验证。23.根据权利要求22所述的系统,其特征在于,所述主机还用于向所述接收端发送请求消息,所述请求消息用于请求所述接收端发送所述公钥。24.根据权利要求23所述的系统,其特征在于,所述请求消息还用于请求所述接收端发送所述公钥的校验码。25.根据权利要求21_24任一项所述的系统,其特征在于,所述数字签名算法为RSA公钥密码学算法,所述校验码为基于哈希Hash函数的消息认证码HMAC。26.根据权利要求21-25任一项所述的系统,其特征在于,所述嵌入式系统为生物识别嵌入式系统。

百度查询: 深圳市汇顶科技股份有限公司 签名验证的方法、设备和系统

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。