数据认证的方法和设备的制造方法_3

文档序号:9829946阅读:来源:国知局
述的处理。
[0085] [表1]
[0086]
[0087]表1包括在基于陷门哈希函数的认证中产生和验证针对第一数据段的签名信息的 方法的算法的示例。
[0088]可在发送器与接收器之间共享将要在DSA领域中使用的参数<p,q,g,H,G>。在该示 例中4表示1024比特的质数化1";[1116),9表示160比特的质数,9 4-1,8表示阶对应于9的2口* 的元素,Η和G表示哈希函数。此外,Zp*表示范围从1至p-1的整数集的类型。
[0089] 在<x,X>中,X表示发送器的长期私钥,并可对应于例如Zp*的元素。X表示长期公 钥,并可对应于例如属于Zp*的gx。私钥可仅对于发送器是已知的,公钥可被接收器共享。 [0090] 在〈yQ,Y〇>中,y〇表示发送器的长期私密陷门哈希秘钥,Y〇表示公开哈希秘钥。陷门 哈希秘钥可对于发送器是已知的,公开哈希秘钥可对接收器公开。
[0091] [表 2]
[0092]
[0093] 表2包括在基于陷门哈希函数的认证中产生和验证针对第一数据段之后的数据段 的签名信息的方法的算法的示例。
[0094] 表1和表2与应用了基于实际DSA的电子签名算法的图4中示出的处理对应。
[0095]在表1中,采用DL-Schnorr签名方案来安全地传送基本陷门哈希值。
[0096]在该示例中,在表1的左侧的签名信息验证的操作2中计算的THYQ(mQ,n))可对应于 基本陷门哈希值,可通过右侧的操作3验证基本陷门哈希值的有效性。
[0097] 在表2的左侧的签名信息产生的操作2中,可基于安全私密陷门哈希秘钥yQ和公开 信息rQ计算使针对数据段nu的陷门哈希值能够与基本陷门哈希值相等的哈希冲突诱发值 ri。因此,可通过执行若干乘法来快速比较签名信息。
[0098] 在表2的右侧的签名信息验证的操作2中,可基于nu和η计算针对数据段nu的陷门 哈希值nu。在这种情况下,可使用求幂。
[0099] 在操作3中,通过将在操作2中计算的陷门哈希值与基本陷门哈希值进行比较,可 验证数据段nu的有效性。
[0100] 图5示出可由接收器执行的验证针对数据段的签名信息的方法的示例。
[0101] 参照图5,示出接收器可验证从发送器接收的针对数据段的签名信息的顺序。
[0102] 在操作510中,响应于从发送器接收到数据段,接收器计算针对数据段(例如,数据 段nu)的哈希值Η(πη),并搜索AHT以验证哈希值Η(πη)是否被存储在AHT中。
[0103] 在操作510中验证哈希值H(nu)被存储在ΑΗΤ中的情况下,接收器可完成针对数据 段nu的验证处理。在该示例中,可由1H表示计算量,Η可表示用于执行单个哈希函数或算法 的计算成本(computational cost)。
[0104] 相反,在操作510中验证哈希值H(nu)没有被存储在AHT中的情况下,则在操作520 中,接收器重建MHT的根哈希值或子树的根哈希值,并搜索AHT以验证相应哈希值(例如,根 哈希值或子树的根哈希值)是否被存储在AHT中。
[0105] 在操作520中验证根哈希值或子树的根哈希值被存储在AHT中的情况下,接收器可 完成针对数据段nu的验证处理。在这种情况下,可由(log 2(k) + l)H来表示计算成本 (computational cost)。在该示例中,k表示包括在相同MHT中的数据包或数据段的数量。
[0106] 相反,在操作520中验证相应哈希值(例如,根哈希值或子树的根哈希值)没有被存 储在AHT中的情况下,则在操作530中,接收器执行针对陷门哈希值的验证。在这种情况下, 可由2.06X+(log2(k)+2)H表示计算成本。在该示例中,X表示具有1024比特的底和160比特 的指数的Schnorr求幂的计算量。
[0107]在操作530中成功执行针对陷门哈希值的验证的情况下,在操作540,接收器更新 在验证期间计算的针对相关哈希值的AHT。
[0108] 相反,在操作530中针对陷门哈希值的验证失败的情况下,在操作550中,接收器丢 弃相关哈希值。
[0109] 接收器可通过搜索存储在AHT中的哈希值并执行比较,来执行针对单个数据段的 陷门验证,并可执行针对剩余的k-Ι个数据段的验证。
[0110] 根据示例,针对包括在相同MHT中的数据段,通过将包括在AHT中的哈希值与MHT的 哈希值进行比较,而不验证陷门哈希值,可减少为了验证陷门哈希值执行的计算量。
[0111] 在下文中,将参照图6和图7详细描述由接收器验证签名信息的方法。
[0112] 图6示出可由接收器执行的验证针对数据段的签名信息的方法的示例。
[0113] 参照图6,在操作610中,接收器接收从发送器发送的针对预定数量的数据段的签 名信息。
[0114] 在操作620中,接收器使用在操作610中接收的签名信息中包括的目击信息构建 MHT。目击信息可包括陷门哈希值和MHT的哈希值。
[0115] 为了验证签名信息的有效性,接收器可使用与第一数据段一起发送的目击信息来 构建MHT,并可使用MHT的根哈希值来确定陷门哈希值的有效性。
[0116] 接收器可将包括在签名信息中的MHT的根哈希值和MHT的哈希值中的至少一个存 储在AHT中。根据示例,响应于验证针对数据段的签名信息的有效性,相关哈希值可被存储 在AHT中以稍后用于快速验证。
[0117]接收器可使用在操作620中构建的根哈希值来验证陷门哈希值。在操作630中,接 收器通过验证陷门哈希值来验证签名信息的有效性。将参照图7详细描述由接收器验证签 名信息的有效性的方法。
[0118] 图7示出在参照图6描述的方法中验证签名信息的有效性的方法的示例。
[0119] 图7示出通过图6的方法配置AHT并使用配置的AHT验证签名信息的有效性的方法 的示例。
[0120] 参照图7,在操作710中,接收器从针对第一数据段之后接收的数据段的签名信息 获得MHT的哈希值和MHT的根哈希值中的至少一个。
[0121] 在操作720中,接收器搜索AHT以验证在操作710中获得的MHT的哈希值和MHT的根 哈希值中的至少一个是否被存储在AHT中。在该示例中,MHT的哈希值可包括MHT的同级节点 和子树的哈希值中的至少一个。
[0122] 在操作730中,接收器验证在操作710中获得的MHT的哈希值和MHT的根哈希值中的 至少一个是否被存储在AHT中。
[0123] 响应于在操作730中验证MHT的哈希值和MHT的根哈希值中的至少一个被存储在 AHT中,在操作740中,接收器确定随后接收的数据段的签名信息有效。因此,签名信息的有 效性被验证。
[0124] 相反,响应于在操作730中验证MHT的哈希值和MHT的根哈希值中的至少一个没有 被存储在AHT中,接收器通过验证针对数据段的陷门哈希值和MHT的根哈希值来确定陷门哈 希值的有效性。如果验证陷门哈希值有效,则在操作750中接收器将相关哈希值存储在ΑΗΤ 中。例如,接收器可存储ΜΗΤ的哈希值或ΜΗΤ的根哈希值。
[0125] 图8示出使用产生和验证签名信息的方法发送四个数据段的示例。
[0126] 参照图8,示出将ΜΗΤ的概念应用于使用陷门哈希函数来产生和验证针对四个数据 段的签名信息的示例。
[0127] 在通过构建针对四个数据段的ΜΗΤ来产生签名信息的操作中,ΜΗΤ的根哈希值可用 于计算陷门哈希值,在对签名信息的验证中,可通过使用包括在目击信息中的ΜΗΤ的哈希路 径和从发送器接收的数据段重建ΜΗΤ来计算根哈希值。
[0128] 接收器可使用用于验证签名信息的计算的ΜΗΤ的根哈希值来验证接收的数据段的 有效性。在该示例中,响应于在验证处理期间确定签名信息有效,数据段、与数据段一起接 收的哈希值和计算的根哈希值可被确定为有效。作为响应,接收器可将相应哈希值记录在 ΑΗΤ 中。
[0129] 接收器可通过经由确定数据段的哈希值是否存在于ΑΗΤ中验证签名信息的有效 性,而不是通过执行针对陷门哈希值的签名信息的验证,来验证包括在相同ΜΗΤ中的数据段 的有效性。
[0130] 例如,发送器可将四个数据段nu、m2、m3和m4发送到接收器。发送器可将针对每个相 应数据段的签名信息与相应数据段一起发送。
[0131] 发送器可构建针对四个数据段nu、m2、m3和π?4的MHT
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1