CN105593872B - 数据认证的方法和设备 - Google Patents

数据认证的方法和设备 Download PDF

Info

Publication number
CN105593872B
CN105593872B CN201480036937.2A CN201480036937A CN105593872B CN 105593872 B CN105593872 B CN 105593872B CN 201480036937 A CN201480036937 A CN 201480036937A CN 105593872 B CN105593872 B CN 105593872B
Authority
CN
China
Prior art keywords
hash
cryptographic hash
data segment
signing messages
tree
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.)
Active
Application number
CN201480036937.2A
Other languages
English (en)
Other versions
CN105593872A (zh
Inventor
徐锡冲
金恩儿
金泰弘
张明郁
玄尚杬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN105593872A publication Critical patent/CN105593872A/zh
Application granted granted Critical
Publication of CN105593872B publication Critical patent/CN105593872B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3252Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes

Abstract

提供产生和验证用于数据认证的签名信息的设备和方法。一种验证签名信息的方法可包括:从发送器接收针对预定数量的数据段的签名信息;基于签名信息构建哈希树;通过使用构建的哈希树的根哈希值验证陷门哈希值,来验证签名信息的有效性。

Description

数据认证的方法和设备
技术领域
以下描述涉及一种产生和验证用于数据认证的签名信息的方法和设备。
背景技术
为了确保内容在内容中心网络(CCN)环境、内容分发网络(CDN)环境和/或对等(P2P)网络环境内的安全分发,期望验证正被分发的内容的认证和完整性。电子签名可用于验证内容的认证和完整性。可使用签名人的私钥来产生电子签名,并可使用签名人的公钥来验证电子签名。然而,由于电子签名的产生和验证依赖于数学算法,因此会给发送器和接收器带来很大的计算负担。
发明内容
提供本发明内容以按照简化的形式来介绍对构思的选择,将在下面的具体实施方式中对所述构思进行进一步描述。本发明内容不意图标识所要求保护的主题的关键特征或必要特征,也不意图用作帮助确定所要求保护的主题的范围。
在一个总体方面中,一种产生签名信息的方法包括:构建针对预定数量的数据段的哈希树;将哈希树的根哈希值与针对数据段的陷门哈希值关联;将哈希树的哈希值和陷门哈希值与数据段关联,并将哈希树的哈希值和陷门哈希值发送到接收器。
哈希树可以是默克尔哈希树(MHT)。
哈希树的哈希值可被包括在目击信息中,在重建哈希树中接收器可使用哈希树的发送的哈希值。
在构建的哈希树中,哈希树的哈希值可包括哈希树的不与所述数据段直接关联的至少一个哈希值。
数据段的数量k可具有与2的幂对应的值,包括在哈希树中的哈希值的数可对应于log2k。
本方法的总体方面还可包括:将数据段进行缓存。
在另一总体方面中,一种验证签名信息的方法包括:从发送器接收针对预定数量的数据段的签名信息;基于签名信息构建哈希树;通过使用构建的哈希树的根哈希值验证陷门哈希值,来验证签名信息的有效性。
构建哈希树的步骤可包括:使用包括在签名信息中的目击信息构建默克尔哈希树(MHT)。
本方法的总体方面还可包括:将包括在签名信息中的哈希树的根哈希值和哈希树的哈希值中的至少一个存储在认证哈希表(AHT)中。
验证签名信息的步骤可包括:从随后接收的数据段的签名信息获得哈希树的哈希值和哈希树的根哈希值中的至少一个;搜索AHT以验证哈希树的获得的哈希值和哈希树的获得的根哈希值中的至少一个是否被存储在AHT中;响应于哈希树的获得的哈希值和哈希树的获得的根哈希值中的至少一个被存储在AHT中,确定随后接收的数据段的签名信息有效。
本发明的总体方面还可包括:响应于哈希树的获得的哈希值和哈希树的获得的根哈希值都没有被存储在AHT中,将哈希树的哈希值和哈希树的根哈希值中的至少一个存储在AHT中。
目击信息可包括MHT的哈希值。
在另一总体方面中,一种非暂时性计算机可读介质可包括用于指示计算机执行上述方法的程序。
在另一总体方面中,一种数据段发送器包括:哈希树构建器,被配置为构建针对预定数量的数据段的哈希树;陷门运算单元,被配置为将哈希树的根哈希值与针对数据段的陷门哈希值关联;签名信息产生器,被配置为将哈希树的哈希值和陷门哈希值与数据段关联,并将哈希树的哈希值和陷门哈希值发送到接收器。
哈希树可以是默克尔哈希树(MHT)。
哈希树的哈希值可由接收器用于重建哈希树,哈希值可被包括在目击信息中。
在构建的哈希树中,哈希树的哈希值包括哈希树的不与所述数据段直接关联的至少一个哈希值。
在另一总体方面中,一种数据段接收器可包括:数据接收单元,被配置为接收针对预定数量的数据段的签名信息;树构造器,被配置为基于签名信息构建哈希树;签名信息验证器,被配置为通过使用构建的哈希树的根哈希值验证陷门哈希值,来验证签名信息的有效性。
树构建器可被配置为:使用包括在签名信息中的目击信息构建默克尔哈希树(MHT)。
签名信息验证器可包括:认证哈希表(AHT),被配置为记录包括在签名信息中的哈希树的根哈希值和哈希树的哈希值中的至少一个。
签名信息验证器还可被配置为:从随后接收的数据段的签名信息获得哈希树的哈希值和哈希树的根哈希值中的至少一个;搜索AHT以验证哈希树的获得的哈希值和哈希树的获得的根哈希值中的至少一个是否被存储在AHT中;响应于哈希树的获得的哈希值和哈希树的获得的根哈希值中的至少一个被存储在AHT中,确定随后接收的数据段的签名信息有效。
目击信息可包括MHT的哈希值。
在另一总体方面中,一种用于数据认证的设备包括:数据接收单元,被配置为接收针对预定数量的数据段的签名信息,签名信息包括用于构建与数据段关联的哈希树的信息;签名信息验证器,包括存储在存储器中的认证哈希表(AHT),其中,签名信息验证器被配置为:获得与签名信息关联的哈希值或根哈希值,并搜索AHT以验证获得的哈希值或获得的根哈希值是否被存储在AHT中。
签名信息验证器可被配置为:响应于获得的哈希值或获得的根哈希值被存储在AHT中,确定数据段的签名信息有效,响应于获得的哈希值和获得的根哈希值都没有被存储在AHT中,将获得的哈希值或获得的根哈希值存储在AHT中。
所述设备的总体方面可以是用户终端或网络装置。
从以下具体实施方式、附图和权利要求书,其它特征和方面将是清楚的。
附图说明
图1是示出根据传统技术的基于默克尔哈希树(MHT)产生签名信息的方法的示例的示图。
图2是示出根据本公开的验证基于MHT产生的签名信息的有效性的方法的示例的示图。
图3是示出由数据段发送器产生针对数据段的签名信息的方法的示例的流程图。
图4是示出基于陷门哈希函数执行认证的一般方法的示例的示图。
图5是示出由接收器验证针对数据段的签名信息的处理的示例的示图。
图6是示出由接收器验证针对数据段的签名信息的方法的示例的流程图。
图7是示出在图6的方法中验证签名信息的有效性的方法的示例的流程图。
图8是示出使用产生和验证签名信息的方法发送四个数据段的示例的示图。
图9是示出使用产生和验证签名信息的方法发送八个数据段的示例的示图。
图10是示出数据段发送器的示例的框图。
图11是示出数据段接收器的示例的框图。
贯穿附图和详细描述,除非另外描述,否则相同的附图标号将被理解为表示相同的元件、特征和结构。为了清楚、说明和方便,附图可不按比例,并且可夸大附图中的元件的相对大小、比例和描绘。
具体实施方式
提供以下详细描述以帮助读者获得对这里描述的方法、设备和/或系统的全面理解。因此,可向本领域的普通技术人员提出这里描述的方法、设备和/或系统的各种改变、修改和等同物。描述的处理步骤和/或操作的进程是示例;然而,如本领域所知的那样,除了必须按特定顺序发生的步骤和/或操作之外,处理步骤和/或操作的顺序不限于这里所阐明的顺序并可被改变。此外,为了更加清晰和简明,可省略公知功能和结构的描述。
这里描述的特征可以以不同的形式被实现,而不应被解释为限于这里描述的示例。相反,提供这里描述的示例,以使得本公开将是全面的和完整的,并将向本领域普通技术人员传达本公开的全部范围。
在下文中,术语“发送器”和术语“接收器”还可分别被称为“发送节点”和“接收节点”。发送器和接收器可包括例如客户装置(诸如用户终端)和网络装置(诸如接入点和路由器)。用户终端包括例如智能电话、智能电视(TV)、个人计算机(PC)、膝上型计算机等。
在下文中,术语“数据段”或“包”可表示在数据发送器和数据接收器之间传输的格式化的数据的块。“数据段”可被解释为与包括流数据的多个项目的“数据块”或“数据段”相同,或可被解释为包括“数据段”。
在下文中,在描述产生针对数据段的签名信息的方法的示例之前,将描述基于默克尔哈希树(Merkle hash tree,MHT)产生签名信息的方法和验证基于MHT产生的签名信息的有效性的方法。
图1示出基于MHT产生签名信息的方法的示例。
MHT技术是可用于减少由用于数据认证的签名信息的产生和验证引起的计算负担的签名分摊(signature amortization)方法的示例。MHT技术的示出的示例涉及通过产生针对预定数量的数据段的签名信息,而不通过产生针对所有数据段的每个数据段的签名信息,来分配因签名信息的产生引起的计算负担。
参照图1,示出计算针对N个数据段的二进制哈希树和计算针对所述二进制哈希树的根的签名信息的示例。在该示例中,N是具有与2的幂相等的值的预定数字。在图1中,h表示哈希运算(hash operation),H表示哈希值,S表示签名信息。此外,‖表示串联运算符(concatenation operator)。
被发送到接收器的数据段可包括针对根哈希值的签名信息以及树中的用于计算根哈希值的同级节点(sibling node)或子树的哈希值。
例如,参照图1,针对数据段S0的包包括数据段S0并包括表示S1的哈希值的H1,表示H2和H3的哈希值的H23,表示H45和H67的哈希值的H4567,和表示针对根哈希值的签名信息的签名(H01234567)。
在该MHT技术中,由于被发送到接收器的每个包包括用于认证包自身的所有信息,因此包不受在传送期间包丢失或包传输顺序改变的负面影响。
使用这种MHT技术执行验证的顺序可如下。
接收器可通过针对关于数据有效载荷的签名信息执行签名验证操作来提取根哈希值。接收器可基于哈希值(例如,H1、H23和H4567)和接收的数据段(例如,数据段S0)直接计算MHT的根哈希值。当直接计算的根哈希值与通过签名信息的验证提取的根哈希值相同时,接收器可确定相应的包是有效的。
图2示出验证基于MHT产生的签名信息的有效性的方法的示例。
在图2中,隐式认证方案在验证中使用MHT技术。
响应于通过验证处理确定包括数据段S0的包有效,还可确定出用于验证的哈希值(例如,H1、H23和H4567)有效。作为响应,认证的哈希值可被存储在认证哈希表(AHT)中。
随后,响应于接收到包括数据段S1的包,接收器可在AHT中搜索与数据段S1对应的哈希值H1
在与数据段S1对应的哈希值H1存在于AHT中的情况下,接收器可跳过验证处理并验证h(S1)与H1是否相等以验证数据段S1是否有效。
相比于针对每个包执行签名信息操作的方法(例如,每包签名方法),基于MHT产生和验证签名信息的方法可减少签名信息的产生和验证被执行的次数。然而,利用该方法,用于产生签名信息的运算量(operation load)保持相同。因此,发送器处的运算量会相对较大。
此外,由于可基于二进制树执行MHT技术,因此在选择构成块的数据段的数量方面,MHT技术可能灵活性较小。例如,构成块的数据段的数量可增加到2、4、8、16、32、64……2k。因此,验证性能与将要被缓存的数据段的数量之间存在折衷。此外,在数据段的数量不对应于2的幂的情况下,由于MHT技术基于二进制树,因此传输率和计算负担方面的效率可减小。
图3是示出由数据段发送器产生针对数据段的签名信息的方法的示例的流程图。
参照图3,在操作310中,数据段发送器(在下文中被称为“发送器”)构建针对预定数量的数据段的MHT。数据段的预定数量可以是k,值k可对应于2的幂。此外,可包括MHT的log2k哈希值。数据段可被缓存到发送器。
数据包可具有数据块的格式,并可包括多个数据段。
例如,在操作310中,发送器可被配置为构建针对k个数据块的MHT。发送器可对数据段进行缓存。
在操作330中,发送器将在操作310中构建的MHT的根哈希值与针对数据段的陷门(trapdoor)哈希值关联。例如,表述“将MHT的根哈希值与针对数据段的陷门哈希值关联”可被解释为指示基于MHT的根哈希值计算或处理针对数据段的陷门哈希值。将参照图8描述由发送器将MHT的根哈希值与针对数据段的陷门哈希值关联的方法。
在操作350,发送器将MHT的根哈希值和陷门哈希值与数据段关联,并将MHT的哈希值和陷门哈希值发送到接收器。表述“将MHT的根哈希值和陷门哈希值与数据段关联,并将MHT的哈希值和陷门哈希值发送到接收器”可被解释为指示用于验证数据段的有效性的陷门哈希值和MHT的哈希值与相应数据段一起被发送。
MHT的哈希值(例如,目击信息(witness information,证人信息))可包括由接收器用来重建MHT的信息。在操作310中构建的MHT中,目击信息可包括MHT的不与数据段直接关联的至少一个哈希值。MHT的不与数据段直接关联的至少一个哈希值可包括同级节点和子树的MHT的哈希值中的至少一个。
根据一个示例,通过将陷门哈希函数的概念与MHT组合,可提供使发送器端和接收器端的计算负担最小化并且对包丢失和传输误差具有鲁棒性的数据认证方法。
对于数据认证,发送器可构建针对将被发送的数据段的MHT,并将MHT的根哈希值与陷门哈希函数关联,以产生针对数据段的签名信息。
发送器可将用于重建MHT的根哈希值的信息发送到接收器,接收器可使用陷门哈希函数或AHT选择性地验证针对数据段的签名信息的有效性。
图4示出基于陷门哈希函数执行认证的方法的示例。
在产生用于数据认证的签名信息的处理期间,可应用陷门哈希函数来减少计算负担。根据产生签名信息的方法,可执行单个求幂(single exponentiation),例如,(M)Y modN,N:1024比特,Y:160比特。然而,在基于陷门哈希函数产生签名信息的方法中,可执行较少数量的乘法。
根据一个示例,基于陷门哈希函数产生和验证签名信息的方法可采用数字签名算法(DSA)。
参照图4,示出基于陷门哈希函数的认证方法。
发送器410计算针对第一数据段m0的陷门哈希值,并将可确保基本陷门哈希值的有效性的签名信息t发送到接收器430。接收器430基于从发送器410接收的数据段m0、针对数据段m0的陷门哈希值和公钥值r0计算基本陷门哈希值。
通过验证签名信息t,接收器430确定计算的基本陷门哈希值的有效性。计算的基本陷门哈希值可稍后用于验证关于接连传送的数据段的有效性。
接收器可通过将从发送器410接收的包所计算的陷门哈希值与基本陷门哈希值进行比较来验证关于接连传送的数据段的有效性。
发送器410基于关于与基本陷门哈希值相等的针对数据段mi的陷门哈希值的安全私密陷门哈希秘钥y0的信息计算签名信息ri,例如,哈希冲突诱发值(hash collision-inducing value)。当发送器410传送数据段mi和哈希冲突诱发值ri时,接收器430计算针对数据段mi和哈希冲突诱发值ri的陷门哈希值,并将计算的陷门哈希值与基本陷门哈希值进行比较以验证数据段mi的有效性。
可如下安排前述处理。
发送器410计算和发送<m0,t,r0>。响应于接收到<m0,t,r0>,接收器430可基于接收的<m0,t,r0>,计算和存储可被用作用于确定稍后将被传送的包或数据段的有效性的参考的基本陷门哈希值。
发送器410可基于关于针对稍后将被传送的数据段的安全私密陷门哈希秘钥y0的信息,计算和传送针对与基本陷门哈希值相等的相应数据段mi的陷门哈希值的签名信息ri,例如,哈希冲突诱发值。
接收器430可基于从发送器410传送的<mi,ri>和公开哈希秘钥Y0,计算陷门哈希值,并将计算的陷门哈希值与存储的基本陷门哈希值进行比较以评估从发送器410接收的数据段的有效性。
如表1和表2所示,可使用基于数字签名算法(DSA)的电子签名算法来表示如上所述的处理。
[表1]
表1包括在基于陷门哈希函数的认证中产生和验证针对第一数据段的签名信息的方法的算法的示例。
可在发送器与接收器之间共享将要在DSA领域中使用的参数<p,q,g,H,G>。在该示例中,p表示1024比特的质数(prime),q表示160比特的质数,q|p-1,g表示阶对应于q的Zp*的元素,H和G表示哈希函数。此外,Zp*表示范围从1至p-1的整数集的类型。
在<x,X>中,x表示发送器的长期私钥,并可对应于例如Zp*的元素。X表示长期公钥,并可对应于例如属于Zp*的gx。私钥可仅对于发送器是已知的,公钥可被接收器共享。
在<y0,Y0>中,y0表示发送器的长期私密陷门哈希秘钥,Y0表示公开哈希秘钥。陷门哈希秘钥可对于发送器是已知的,公开哈希秘钥可对接收器公开。
[表2]
表2包括在基于陷门哈希函数的认证中产生和验证针对第一数据段之后的数据段的签名信息的方法的算法的示例。
表1和表2与应用了基于实际DSA的电子签名算法的图4中示出的处理对应。
在表1中,采用DL-Schnorr签名方案来安全地传送基本陷门哈希值。
在该示例中,在表1的左侧的签名信息验证的操作2中计算的THY0(m0,r0)可对应于基本陷门哈希值,可通过右侧的操作3验证基本陷门哈希值的有效性。
在表2的左侧的签名信息产生的操作2中,可基于安全私密陷门哈希秘钥y0和公开信息r0计算使针对数据段mi的陷门哈希值能够与基本陷门哈希值相等的哈希冲突诱发值ri。因此,可通过执行若干乘法来快速比较签名信息。
在表2的右侧的签名信息验证的操作2中,可基于mi和ri计算针对数据段mi的陷门哈希值mi。在这种情况下,可使用求幂。
在操作3中,通过将在操作2中计算的陷门哈希值与基本陷门哈希值进行比较,可验证数据段mi的有效性。
图5示出可由接收器执行的验证针对数据段的签名信息的方法的示例。
参照图5,示出接收器可验证从发送器接收的针对数据段的签名信息的顺序。
在操作510中,响应于从发送器接收到数据段,接收器计算针对数据段(例如,数据段mi)的哈希值H(mi),并搜索AHT以验证哈希值H(mi)是否被存储在AHT中。
在操作510中验证哈希值H(mi)被存储在AHT中的情况下,接收器可完成针对数据段mi的验证处理。在该示例中,可由1H表示计算量,H可表示用于执行单个哈希函数或算法的计算成本(computational cost)。
相反,在操作510中验证哈希值H(mi)没有被存储在AHT中的情况下,则在操作520中,接收器重建MHT的根哈希值或子树的根哈希值,并搜索AHT以验证相应哈希值(例如,根哈希值或子树的根哈希值)是否被存储在AHT中。
在操作520中验证根哈希值或子树的根哈希值被存储在AHT中的情况下,接收器可完成针对数据段mi的验证处理。在这种情况下,可由(log2(k)+1)H来表示计算成本(computational cost)。在该示例中,k表示包括在相同MHT中的数据包或数据段的数量。
相反,在操作520中验证相应哈希值(例如,根哈希值或子树的根哈希值)没有被存储在AHT中的情况下,则在操作530中,接收器执行针对陷门哈希值的验证。在这种情况下,可由2.06X+(log2(k)+2)H表示计算成本。在该示例中,X表示具有1024比特的底和160比特的指数的Schnorr求幂的计算量。
在操作530中成功执行针对陷门哈希值的验证的情况下,在操作540,接收器更新在验证期间计算的针对相关哈希值的AHT。
相反,在操作530中针对陷门哈希值的验证失败的情况下,在操作550中,接收器丢弃相关哈希值。
接收器可通过搜索存储在AHT中的哈希值并执行比较,来执行针对单个数据段的陷门验证,并可执行针对剩余的k-1个数据段的验证。
根据示例,针对包括在相同MHT中的数据段,通过将包括在AHT中的哈希值与MHT的哈希值进行比较,而不验证陷门哈希值,可减少为了验证陷门哈希值执行的计算量。
在下文中,将参照图6和图7详细描述由接收器验证签名信息的方法。
图6示出可由接收器执行的验证针对数据段的签名信息的方法的示例。
参照图6,在操作610中,接收器接收从发送器发送的针对预定数量的数据段的签名信息。
在操作620中,接收器使用在操作610中接收的签名信息中包括的目击信息构建MHT。目击信息可包括陷门哈希值和MHT的哈希值。
为了验证签名信息的有效性,接收器可使用与第一数据段一起发送的目击信息来构建MHT,并可使用MHT的根哈希值来确定陷门哈希值的有效性。
接收器可将包括在签名信息中的MHT的根哈希值和MHT的哈希值中的至少一个存储在AHT中。根据示例,响应于验证针对数据段的签名信息的有效性,相关哈希值可被存储在AHT中以稍后用于快速验证。
接收器可使用在操作620中构建的根哈希值来验证陷门哈希值。在操作630中,接收器通过验证陷门哈希值来验证签名信息的有效性。将参照图7详细描述由接收器验证签名信息的有效性的方法。
图7示出在参照图6描述的方法中验证签名信息的有效性的方法的示例。
图7示出通过图6的方法配置AHT并使用配置的AHT验证签名信息的有效性的方法的示例。
参照图7,在操作710中,接收器从针对第一数据段之后接收的数据段的签名信息获得MHT的哈希值和MHT的根哈希值中的至少一个。
在操作720中,接收器搜索AHT以验证在操作710中获得的MHT的哈希值和MHT的根哈希值中的至少一个是否被存储在AHT中。在该示例中,MHT的哈希值可包括MHT的同级节点和子树的哈希值中的至少一个。
在操作730中,接收器验证在操作710中获得的MHT的哈希值和MHT的根哈希值中的至少一个是否被存储在AHT中。
响应于在操作730中验证MHT的哈希值和MHT的根哈希值中的至少一个被存储在AHT中,在操作740中,接收器确定随后接收的数据段的签名信息有效。因此,签名信息的有效性被验证。
相反,响应于在操作730中验证MHT的哈希值和MHT的根哈希值中的至少一个没有被存储在AHT中,接收器通过验证针对数据段的陷门哈希值和MHT的根哈希值来确定陷门哈希值的有效性。如果验证陷门哈希值有效,则在操作750中接收器将相关哈希值存储在AHT中。例如,接收器可存储MHT的哈希值或MHT的根哈希值。
图8示出使用产生和验证签名信息的方法发送四个数据段的示例。
参照图8,示出将MHT的概念应用于使用陷门哈希函数来产生和验证针对四个数据段的签名信息的示例。
在通过构建针对四个数据段的MHT来产生签名信息的操作中,MHT的根哈希值可用于计算陷门哈希值,在对签名信息的验证中,可通过使用包括在目击信息中的MHT的哈希路径和从发送器接收的数据段重建MHT来计算根哈希值。
接收器可使用用于验证签名信息的计算的MHT的根哈希值来验证接收的数据段的有效性。在该示例中,响应于在验证处理期间确定签名信息有效,数据段、与数据段一起接收的哈希值和计算的根哈希值可被确定为有效。作为响应,接收器可将相应哈希值记录在AHT中。
接收器可通过经由确定数据段的哈希值是否存在于AHT中验证签名信息的有效性,而不是通过执行针对陷门哈希值的签名信息的验证,来验证包括在相同MHT中的数据段的有效性。
例如,发送器可将四个数据段m1、m2、m3和m4发送到接收器。发送器可将针对每个相应数据段的签名信息与相应数据段一起发送。
发送器可构建针对四个数据段m1、m2、m3和m4的MHT,并通过使用MHT的根哈希值执行针对数据段m1、m2、m3和m4的陷门哈希运算,来计算陷门哈希值。MHT的根哈希值可被反映在陷门哈希值中。
在该示例中,可通过等式1来计算使针对数据段mi的陷门哈希值能够与基本陷门哈希值相等的哈希冲突诱发值ri
[等式1]
其中,
在等式1中,y0表示长期私密陷门哈希秘钥,r0表示公开哈希秘钥值。Y0表示公开哈希秘钥。
发送器的长期私密陷门哈希秘钥对于发送器是已知的,公开哈希秘钥可对接收器公开。
在等式1中,q表示160比特的质数,H表示哈希函数。
发送器可将数据段mi、MHT的哈希值h2和h34以及哈希冲突诱发值r1发送到接收器。MHT的哈希值h2和h34可用于由接收相应信息的接收器重建MHT。MHT的哈希值h2和h34可与MHT中的不与数据段m1直接关联的同级节点或子树的哈希值中的至少一个对应。
根据上述示例,可通过将多个数据段关联来产生签名信息,其中,隐式认证可被应用于签名信息的验证。
发送器可将数据段m1和针对数据段m1的签名信息(h2,h34,r1)发送到接收器。
发送器可以以(m2,h1,h34,r2)、(m3,h4,h12,r3)和(m4,h3,h12,r4)的形式将每个数据段和相应数据段的每条签名信息发送到接收器。
可如下描述与上述发送器的操作对应的接收器的操作。
接收签名信息(m1,h2,h34,r1)的接收器可使用包括在签名信息中的目击信息计算MHT的根哈希值。目击信息可包括MHT的哈希值。接收器可基于接收的数据段和包括在目击信息中的哈希值来计算MHT的根哈希值,并使用计算的根哈希值来重建MHT。在这种情况下,由接收器重建的MHT可被表示为如图8的下部所示出的那样。
接收器可验证当前陷门哈希值与基本陷门哈希值是否相等。在该示例中,接收器可执行针对由等式2表示的值的验证。
[等式2]
在等式2中,表示基本陷门哈希值,表示由接收器重建的m1的陷门哈希值。
在等式2中,g表示其阶与q相应的Zp*的元素,r1表示哈希冲突诱发值,表示H(m0||Y0),表示H(m1||h1,2,3,4||Y0)。
此外,y0表示长期私密陷门哈希秘钥,r0表示公开哈希秘钥值。Y0表示公开哈希秘钥。此外,y1表示由发送器产生的短暂陷门哈希秘钥,表示具有底为与短暂陷门哈希秘钥相应的短暂哈希秘钥Y1以及指数为r1的求幂的结果,还可由表示。
响应于通过等式2完成的针对哈希值h2、h34和h1234的验证,接收器可将哈希值h2、h34和h1234存储在AHT中。
从发送器接收签名信息(m2,h1,h34,r2)的接收器可从AHT搜索针对H(m2)的值,并将接收的签名信息与找到的值进行比较。
接收器可接收签名信息(m3,h4,h12,r3),并从AHT搜索针对H(m3)的值。当在AHT中不存在针对H(m3)的值时,接收器可例如使用H(H(m3)||h4)或H(H(h12||H(m3)||h4))计算根哈希值以验证签名信息的有效性。被验证有效性的h4和h12可被存储在AHT中。
接收签名信息(m4,h3,h12,r4)的接收器可从AHT搜索针对H(m4)的值。当相应值存在时,可验证接收的签名信息的有效性。
根据示例,当将被发送的段的数量与“2”的幂(例如,2、4、8、16……2k)对应时,通过应用MHT的概念,将被发送的认证信息的量可从O(k)×哈希的大小减小到O(log2(k)×哈希的大小。
根据实施例,为了将隐式认证应用于签名信息的验证,数据段之间的关联可被产生以发送哈希值。因此,将被额外发送的数据的量可随着数据段的数量增加而增加。根据实施例,可通过依概率选择并发送相关数据段的哈希值的一部分,而非发送相关数据段的所有哈希值,可减少将被发送的信息的量。
图9示出通过使用产生和验证签名信息的方法发送八个数据段的示例。
参照图9,MHT可被应用于使用陷门哈希函数产生和验证针对八个段的签名信息。
当发送器产生针对八个数据段m1、m2、m3、m4、m5、m6、m7和m8的签名信息时,如图9中所示,MHT可被构建。
发送器可构建针对八个数据段m1、m2、m3、m4、m5、m6、m7和m8的MHT,并可通过将MHT的根哈希值应用于针对所述数据段的陷门哈希运算来获得陷门哈希值。
例如,发送器可将针对数据段m1的签名信息发送到接收器。
发送器可将数据段m1和MHT的哈希值(诸如,MHT的同级节点或子树的哈希值h2、h34和h5678以及哈希冲突诱发值r1)发送到接收器。在该示例中,MHT的哈希值h2、h34和h5678可被接收器用于重建MHT。
根据上述示例,可通过将多个数据段关联来产生签名信息,借此,隐式认证可被应用于签名信息的验证。
发送器可以以(m1,h2,h34,h5678,r1)的形式将数据段m1和针对数据段m1的签名信息发送到接收器。
发送器可以以(m2,h1,h34,h5678,r2)、(m3,h4,h12,h5678,r3)、(m4,h3,h12,h5678,r4)、(m5,h6,h78,h1234,r5)、(m6,h5,h78,h1234,r6)、(m7,h8,h56,h1234,r7)和(m8,h7,h56,h1234,r4)的形式将数据段和针对每个相应数据段的签名信息发送到接收器。
如下描述与上述发送器的操作对应的接收器的操作。
如参照图8所描述的那样,接收包括数据段m1和针对数据段m1的签名信息的(m1,h2,h34,h5678,r1)的接收器可基于包括在签名信息中的目击信息计算MHT的根哈希值。接收器可基于陷门哈希值计算MHT的根哈希值,并使用计算的根哈希值来重建MHT。
接收器可使用等式2表示的方案执行针对哈希陷门值的验证。
当确定完成针对数据段m1的签名信息的验证时,可完成针对哈希值h2、h34和h5678的验证。接收器可将验证的哈希值h2、h34和h5678存储在AHT中。
从发送器接收签名信息(m2,h1,h34,h5678,r2)的接收器可从AHT搜索针对H(m2)的值,并将接收的签名信息与找到的值进行比较。如参照图8所描述的那样,接收器可接收针对每个数据段的签名信息,并可使用从AHT搜索与数据段对应的哈希值的方案来验证接收的签名信息的有效性。
图10示出数据段发送器1000的示例。
参照图10,数据段发送器1000包括MHT构建器1010、陷门运算单元(trapdooroperation unit,陷门操作单元)1030和签名信息产生器1050。
MHT构建器1010可构建针对预定数量的数据段的MHT。每一数据段将被发送的信息可包括MHT的哈希信息和单个陷门哈希值中的至少一个。例如,在MHT的大小对应于四(4)的示例中,两(2)条哈希信息和单个陷门哈希值可被包括在MHT中。
陷门运算单元1030可将由MHT构建器1010构建的MHT的根哈希值与针对数据段的哈希冲突诱发值关联。
签名信息产生器1050可将MHT的哈希值和哈希冲突诱发值与数据段关联,并可将MHT的哈希值和哈希冲突诱发值发送到接收器。MHT的哈希值可包括将被接收器用于重建MHT的信息。MHT的哈希值可包括构建的MHT中的不与数据段直接关联的同级节点或子树的MHT的至少一个哈希值。
图11示出数据段接收器1100的示例。
参照图11,数据段接收器1100包括数据接收单元1110、树创建器1130和签名信息验证器1150。
数据接收单元1110可接收由发送器发送的针对预定数量的数据段的签名信息。
树构建器1130可使用在由数据接收单元1110接收的签名信息中包括的目击信息构建MHT。
树构建器1130可使用包括在签名信息中的目击信息计算MHT的根哈希值。目击信息可包括MHT的哈希值,以使数据段接收器1100可使用接收的数据段的哈希值重建MHT。
签名信息验证器1150可通过使用由树构建器1130构建的MHT的根哈希值验证陷门哈希值来验证签名信息的有效性。签名信息验证器1150可包括被配置为存储包括在签名信息中的MHT的根哈希值和MHT的哈希值中的至少一个的AHT 1155。
签名信息验证器1150可从在第一数据段之后接收的数据段的签名信息获得MHT的哈希值和MHT的根哈希值中的至少一个。签名信息验证器1150可搜索AHT 1155以验证MHT的获得的哈希值和MHT的获得的根哈希值中的至少一个是否被存储在AHT 1155中。
在MHT的获得的哈希值和MHT的获得的根哈希值中的至少一个被存储在AHT 1155中的情况下,签名信息验证器1150可确定随后接收的数据段的签名信息有效。基于确定签名信息有效,签名信息验证器1150可使用包括在签名信息中的MHT的哈希值(诸如目击信息)来重建MHT。
在该示例中,认证在内容中心网络(CCN)环境、内容分发网络(CDN)环境和/或点对点(P2P)网络环境中传送的内容所需的发送器和接收器的计算量可减少,并且数据可经由预期出现大的数据损失的通道被安全发送。
通过减少发送端的计算负担,可增加将由单个服务器提供服务的客户端的数量。此外,通过减少由签名信息的产生引起的计算负担,内容可被安全且快速地产生和分发。
上述方法的示例可被记录在包括程序指令的非暂时性计算机可读介质中,以实现由计算机实现的各种操作。所述介质还可包括单独的程序指令、数据文件、数据结构等或包括程序指令、数据文件、数据结构等的组合。非暂时性计算机可读介质的示例包括:磁介质(诸如硬盘、软盘和磁带);光学介质(诸如CD ROM盘和DVD);磁光介质(诸如光盘);和专门配置为存储和执行程序指令的硬件装置(诸如只读存储器(ROM)、随机存取存储器(RAM)、闪存等)。程序指令的示例包括诸如由编译器产生的机器代码和包含可由计算机使用解释器执行的高级代码的文件两者。上述硬件装置可被构建为用作一个或更多个软件模块,以执行上述实施例的操作,反之亦然。
尽管本公开包括特定示例,但是本领域的普通技术人员将清楚的是,在不脱离权利要求及其等同物的精神和范围的情况下,可在这些示例中在形式和细节上做出各种改变。这里描述的示例将仅被考虑为描述性意义而不是为了限制的目的。对每个示例中的特征或方面的描述将被考虑为可用于其它示例中的相似特征或方面。如果以不同的顺序执行描述的技术,和/或如果以不同的方式组合和/或用其它组件或它们的等同物来替代或补充在描述的系统、架构、装置或电路中的组件,则可得到适当的结果。因此,本公开的范围不是由具体实施方式限定,而是由权利要求及其等同物限定,权利要求及其等同物的范围内的所有改变将被解释为包括在本公开中。

Claims (22)

1.一种产生签名信息的方法,所述方法包括:
在发送器中:
构建针对预定数量的数据段的哈希树;
将哈希树的根哈希值与针对数据段的陷门哈希值关联;
将哈希树的哈希值和针对数据段的陷门哈希值与数据段关联以产生签名信息,并将哈希树的哈希值和陷门哈希值发送到接收器,
其中,将哈希树的根哈希值与针对数据段的陷门哈希值关联的步骤包括基于哈希树的根哈希值计算针对数据段的陷门哈希值。
2.如权利要求1所述的方法,其中,哈希树的哈希值被包括在目击信息中,在哈希树的重建中接收器使用哈希树的发送的哈希值。
3.如权利要求1所述的方法,其中,在构建的哈希树中,哈希树的哈希值包括哈希树的不与数据段直接关联的至少一个哈希值。
4.如权利要求1所述的方法,其中:
数据段的数量k具有与2的整数幂对应的值,
包括在哈希树中的哈希值的数对应于log2k。
5.如权利要求1所述的方法,还包括:
将数据段进行缓存。
6.一种验证签名信息的方法,所述方法包括:
从发送器接收针对预定数量的数据段的签名信息;
基于签名信息构建哈希树;
通过使用构建的哈希树的根哈希值验证包括在签名信息中的陷门哈希值,来验证签名信息的有效性,
其中,基于哈希树的根哈希值计算针对预定数量的数据段的陷门哈希值。
7.如权利要求6所述的方法,其中,构建哈希树的步骤包括:使用包括在签名信息中的目击信息构建默克尔哈希树MHT。
8.如权利要求6所述的方法,还包括:
将包括在签名信息中的哈希树的根哈希值和哈希树的哈希值中的至少一个存储在认证哈希表AHT中。
9.如权利要求8所述的方法,其中,验证签名信息的步骤包括:
从随后接收的数据段的签名信息获得哈希树的哈希值和哈希树的根哈希值中的至少一个;
搜索AHT以验证哈希树的获得的哈希值和哈希树的获得的根哈希值中的至少一个是否被存储在AHT中;
响应于哈希树的获得的哈希值和哈希树的获得的根哈希值中的至少一个被存储在AHT中,确定随后接收的数据段的签名信息有效。
10.如权利要求9所述的方法,还包括:
响应于哈希树的获得的哈希值和哈希树的获得的根哈希值都没有被存储在AHT中,将哈希树的哈希值和哈希树的根哈希值中的至少一个存储在AHT中。
11.如权利要求7所述的方法,其中,目击信息包括MHT的哈希值。
12.一种非暂时性计算机可读介质,包括用于指示计算机执行权利要求6所述的方法的程序。
13.一种数据段发送器,包括:
哈希树构建器,被配置为构建针对预定数量的数据段的哈希树;
陷门运算单元,被配置为将哈希树的根哈希值与针对数据段的陷门哈希值关联;
签名信息产生器,被配置为将哈希树的哈希值和针对数据段的陷门哈希值与数据段关联以产生签名信息,并将哈希树的哈希值和陷门哈希值发送到接收器,
其中,陷门运算单元被配置为基于哈希树的根哈希值计算针对数据段的陷门哈希值,以将哈希树的根哈希值与针对数据段的陷门哈希值关联。
14.如权利要求13所述的数据段发送器,其中,哈希树的哈希值由接收器用于重建哈希树,哈希值被包括在目击信息中。
15.如权利要求13所述的数据段发送器,其中,在构建的哈希树中,哈希树的哈希值包括哈希树的不与数据段直接关联的至少一个哈希值。
16.一种数据段接收器,包括:
数据接收单元,被配置为接收针对预定数量的数据段的签名信息;
树构造器,被配置为基于签名信息构建哈希树;
签名信息验证器,被配置为通过使用构建的哈希树的根哈希值验证包括在签名信息中的陷门哈希值,来验证签名信息的有效性,
其中,基于哈希树的根哈希值计算针对预定数量的数据段的陷门哈希值。
17.如权利要求16所述的数据段接收器,其中,树构建器被配置为:使用包括在签名信息中的目击信息构建默克尔哈希树MHT。
18.如权利要求16所述的数据段接收器,其中,签名信息验证器包括:
认证哈希表AHT,被配置为记录包括在签名信息中的哈希树的根哈希值和哈希树的哈希值中的至少一个。
19.如权利要求16所述的数据段接收器,其中,签名信息验证器被配置为:
从随后接收的数据段的签名信息获得哈希树的哈希值和哈希树的根哈希值中的至少一个;
搜索AHT以验证哈希树的获得的哈希值和哈希树的获得的根哈希值中的至少一个是否被存储在AHT中;
响应于哈希树的获得的哈希值和哈希树的获得的根哈希值中的至少一个被存储在AHT中,确定随后接收的数据段的签名信息有效。
20.如权利要求17所述的数据段接收器,其中,目击信息包括MHT的哈希值。
21.一种用于数据认证的设备,包括:
数据接收单元,被配置为接收针对预定数量的数据段的签名信息,签名信息包括用于构建与数据段关联的哈希树的信息和针对数据段的陷门哈希值;
签名信息验证器,包括存储在存储器中的认证哈希表AHT,
其中,签名信息验证器被配置为:获得与签名信息关联的哈希值或根哈希值,并搜索AHT以验证获得的哈希值或获得的根哈希值是否被存储在AHT中,
其中,签名信息验证器还被配置为:响应于获得的哈希值或获得的根哈希值均没有被存储在AHT中,使用针对数据段的陷门哈希值以及与签名信息关联的哈希值或根哈希值确定陷门哈希值的有效性,并将被确定为有效的与签名信息关联的哈希值或根哈希值存储在AHT中。
22.如权利要求21所述的设备,其中,签名信息验证器被配置为:
响应于获得的哈希值或获得的根哈希值被存储在AHT中,确定数据段的签名信息有效。
CN201480036937.2A 2013-07-01 2014-06-26 数据认证的方法和设备 Active CN105593872B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR20130076637 2013-07-01
KR10-2013-0076637 2013-07-01
KR10-2013-0159806 2013-12-20
KR1020130159806A KR102238681B1 (ko) 2013-07-01 2013-12-20 데이터 인증을 위한 서명 정보 생성 및 검증 방법과 이를 위한 시스템
PCT/KR2014/005680 WO2015002406A1 (en) 2013-07-01 2014-06-26 Method and apparatus of data authentication

Publications (2)

Publication Number Publication Date
CN105593872A CN105593872A (zh) 2016-05-18
CN105593872B true CN105593872B (zh) 2019-06-25

Family

ID=52476300

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480036937.2A Active CN105593872B (zh) 2013-07-01 2014-06-26 数据认证的方法和设备

Country Status (5)

Country Link
US (1) US9473307B2 (zh)
EP (1) EP3017395B1 (zh)
KR (1) KR102238681B1 (zh)
CN (1) CN105593872B (zh)
WO (1) WO2015002406A1 (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104750784B (zh) * 2015-03-06 2018-03-02 西安交通大学 一种基于Merkle树结构的空间查询完整性验证方法
KR101687480B1 (ko) * 2015-03-30 2016-12-16 광운대학교 산학협력단 에너지 관리 시스템을 위한 보안 서버 및 그 제어 방법
KR101772554B1 (ko) 2016-02-02 2017-08-30 주식회사 코인플러그 파일에 대한 노터리 서비스를 제공하고 상기 노터리 서비스를 사용하여 기록된 파일에 대한 검증을 수행하는 방법 및 서버
WO2017164968A1 (en) * 2016-03-23 2017-09-28 Dci Marketing, Inc. Dba Dci - Artform Low product indicator for self facing merchandiser and related methods
US9785369B1 (en) 2016-05-23 2017-10-10 Accenture Global Solutions Limited Multiple-link blockchain
US10552138B2 (en) * 2016-06-12 2020-02-04 Intel Corporation Technologies for secure software update using bundles and merkle signatures
US10841097B2 (en) * 2016-07-08 2020-11-17 Mastercard International Incorporated Method and system for verification of identity attribute information
KR101841566B1 (ko) * 2016-10-11 2018-05-04 주식회사 코인플러그 블록체인 내의 블록별로 발란스 데이터베이스를 관리하여 전자 바우처를 발행, 사용, 환불, 정산 및 파기하는 방법과 이를 이용한 서버
KR101924138B1 (ko) * 2016-11-23 2018-11-30 부산대학교 산학협력단 트리 기반 다중 사물인터넷 디바이스의 동시 인증을 위한 시스템 및 방법
CN106815530B (zh) * 2016-12-26 2020-04-24 北京爱接力科技发展有限公司 数据存证方法、数据校验方法及装置
US10296248B2 (en) 2017-09-01 2019-05-21 Accenture Global Solutions Limited Turn-control rewritable blockchain
CN111357240B (zh) 2017-11-16 2023-11-03 埃森哲环球解决方案有限公司 密码系统、用于密码系统的方法和介质
CN110460588B (zh) * 2018-05-31 2022-11-22 腾讯科技(深圳)有限公司 实现信息验证的方法、装置、计算机系统和存储介质
KR102000627B1 (ko) * 2019-01-04 2019-07-16 (주)공간인소프트 데이터 갱신 방법 및 그 장치
US11201746B2 (en) 2019-08-01 2021-12-14 Accenture Global Solutions Limited Blockchain access control system
CN111614470A (zh) * 2020-05-27 2020-09-01 贵州大学 基于改进Merkle-Tree认证方法的可验证多关键字搜索方法
US11455391B2 (en) 2020-10-28 2022-09-27 International Business Machines Corporation Data leakage and misuse detection
CN113055431B (zh) * 2021-01-13 2022-08-09 湖南天河国云科技有限公司 一种基于区块链的工业大数据文件高效上链方法及装置
CN113282798B (zh) * 2021-05-07 2022-03-25 广州中国科学院计算机网络信息中心 一种基于梅克尔树的标识资源版本验证方法及系统
CN113393241A (zh) * 2021-06-18 2021-09-14 中国工商银行股份有限公司 一种区块链账本数据的编辑方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1272683C (zh) * 2003-09-19 2006-08-30 株式会社Ntt都科摩 结构化文档签名装置、自适应装置和检验装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4200259B2 (ja) 2000-11-02 2008-12-24 学校法人金沢工業大学 公開鍵生成装置、暗号化装置および復号装置
US7533270B2 (en) 2002-04-15 2009-05-12 Ntt Docomo, Inc. Signature schemes using bilinear mappings
US7130467B1 (en) 2003-03-19 2006-10-31 Microsoft Corporation Real time data matching
US7620606B2 (en) 2003-09-10 2009-11-17 Ntt Docomo, Inc. Method and apparatus for secure and small credits for verifiable service provider metering
US7315866B2 (en) 2003-10-02 2008-01-01 Agency For Science, Technology And Research Method for incremental authentication of documents
JP4390570B2 (ja) * 2004-01-21 2009-12-24 株式会社エヌ・ティ・ティ・ドコモ 多段署名検証システム、電子署名付与装置、データ追加装置及び電子署名検証装置
US20050281404A1 (en) * 2004-06-17 2005-12-22 Matsushita Electric Industrial Co., Ltd. Scalable streaming media authentication
WO2006050605A1 (en) 2004-11-11 2006-05-18 Certicom Corp. New trapdoor one-way function on elliptic curves and their applications to shorter signatures and asymmetric encryption
US8019988B2 (en) * 2005-08-22 2011-09-13 The State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of The University Of Oregon Security protocols for hybrid peer-to-peer file sharing networks
US8245038B2 (en) 2008-03-26 2012-08-14 Palo Alto Research Center Incorporated Method and apparatus for verifying integrity of redacted documents
EP2279580B1 (en) * 2008-04-14 2019-09-18 Philips Intellectual Property & Standards GmbH A method for distributing encryption means
WO2010024931A1 (en) * 2008-08-29 2010-03-04 Brown University Cryptographic accumulators for authenticated hash tables
KR20170010095A (ko) * 2010-03-05 2017-01-25 인터디지탈 패튼 홀딩스, 인크 장치에 대한 보안을 제공하는 방법 및 장치
US8572385B2 (en) 2010-07-29 2013-10-29 Brown University System and method for optimal verification of operations on dynamic sets
US9509506B2 (en) * 2011-09-30 2016-11-29 Los Alamos National Security, Llc Quantum key management
US8799662B2 (en) * 2012-07-27 2014-08-05 Adobe Systems Incorporated Method and apparatus for validating the integrity of installer files prior to installation
US9043927B2 (en) * 2012-09-27 2015-05-26 Neo Mechanic Limited Method and apparatus for authenticating location-based services without compromising location privacy

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1272683C (zh) * 2003-09-19 2006-08-30 株式会社Ntt都科摩 结构化文档签名装置、自适应装置和检验装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A Certified Digital Signature;Ralph C.Merkle等;《http://www.merkle.com/papers/Certified1979.pdf》;19791214;第1-61页
Improvement on a Trapdoor Hash Function;Fuw-Yi Yang;《International Journal of Network Security》;20090731;第9卷(第1期);第17-21页

Also Published As

Publication number Publication date
US20150006899A1 (en) 2015-01-01
EP3017395A4 (en) 2017-03-01
US9473307B2 (en) 2016-10-18
CN105593872A (zh) 2016-05-18
EP3017395A1 (en) 2016-05-11
EP3017395B1 (en) 2021-05-12
KR20150003654A (ko) 2015-01-09
WO2015002406A1 (en) 2015-01-08
KR102238681B1 (ko) 2021-04-12

Similar Documents

Publication Publication Date Title
CN105593872B (zh) 数据认证的方法和设备
CN108965258B (zh) 一种基于全同态加密的云环境数据完整性验证方法
Li et al. Privacy preserving cloud data auditing with efficient key update
Chen et al. BL-MLE: Block-level message-locked encryption for secure large file deduplication
JP6959994B2 (ja) データ重複排除のためのアプリケーションによる暗号化鍵の生成
CN106254374B (zh) 一种具备去重功能的云数据公开审计方法
Shacham et al. Compact proofs of retrievability
Wang et al. Panda: Public auditing for shared data with efficient user revocation in the cloud
Boyd et al. Fast and secure updatable encryption
Chen et al. Data dynamics for remote data possession checking in cloud storage
US9621519B2 (en) System and method for key exchange based on authentication information
Xie et al. Robust anonymous two-factor authentication scheme for roaming service in global mobility network
CN105721156B (zh) 对数据进行编码和数字签名的方法和相关设备
Li et al. An efficient proof of retrievability with public auditing in cloud computing
JP5099003B2 (ja) グループ署名システムおよび情報処理方法
US10873631B2 (en) Method for storing data in a cloud and network for carrying out the method
CN103986732A (zh) 抵御密钥泄露的云存储数据审计方法
CN108123934A (zh) 一种面向移动端的数据完整性校验方法
Bellare et al. Deterring certificate subversion: efficient double-authentication-preventing signatures
KR20210063378A (ko) 공통 비밀을 공유하는 컴퓨터 구현 시스템 및 방법
US20150023498A1 (en) Byzantine fault tolerance and threshold coin tossing
US9292671B1 (en) Multi-server authentication using personalized proactivization
WO2022116175A1 (zh) 数字签名的生成方法、装置和服务器
CN116170144A (zh) 智能电网匿名认证方法、电子设备及存储介质
JP5651611B2 (ja) 鍵交換装置、鍵交換システム、鍵交換方法、プログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant