全同态消息认证方法、装置及系统制造方法及图纸

技术编号:12875390 阅读:110 留言:0更新日期:2016-02-17 12:00
本发明专利技术实施例提供一种全同态消息认证方法、装置及系统,包括:获取消息认证密钥,消息认证密钥包括公钥、第一字符串和第二字符串,第一字符串为长度为n的0和1的字符串,且第一字符串中字符为1的个数为2n/3;第二字符串为长度为n的0和1的字符串,且在第二字符串中,与第一字符串中的为1的字符对应的位置上的字符包括n/3个0,并根据消息认证密钥生成待计算的数据中每个比特对应的认证指纹,向服务器发送计算请求,并接收服务器返回的待计算的数据的计算结果以及计算结果对应的认证指纹,并根据接收到的计算结果对应的认证指纹对计算结果进行正确性认证,有效降低验证过程中的计算量,提高对服务器的计算结果的验证效率。

【技术实现步骤摘要】

本专利技术实施例涉及计算机信息
,尤其涉及一种全同态消息认证方法、装 置及系统。
技术介绍
全同态加密算法包括一个产生公钥、私钥和计算钥的算法,一个加密算法,一个解 密算法和一个密文计算函数,该全同态加密算法主要用于分布式计算的计算结果的认证, 即全同态消息认证技术。目前,全同态消息认证技术的具体实现方式为:终端获取消息认证密钥,该消息认 证密钥包括根据上述全同态加密算法获取的公钥、私钥和计算钥,还包括:第一字符串和第 二字符串,该第一字符串为随机产生的集合{1,2,…,n-1,n}的长度为n/2的子集,该第 二字符串为一个长度为n的0和1组成的随机字符串,其中,n为大于或等于2的整数。终 端根据该消息认证密钥上述全同态加密算法中的加密算法生成待计算的数据中每个比特 的认证指纹,并将该待计算的数据、该认证指纹、该消息认证密钥W及前述全同态加密算法 一起发送给服务器。服务器根据预先配置的用于计算待计算数据的计算函数计算该待计算 的数据,获取计算结果;通过预先配置的哈希函数族计算该计算结果的认证指纹的第一分 量,并对该消息认证密钥中的第一字符串的每个字符,根据该计算结果、待计算的数据中每 个比特的认证指纹和上述计算钥,通过上述全同态加密算法中的密文计算函数进行计算, 获取该计算结果的认证指纹的第二分量,最终获取完整的该计算结果的认证指纹,并将该 计算结果和该计算结果的认证指纹返回给终端。终端首先根据预先配置的哈希函数族重新 计算该计算结果的认证指纹的第一分量,W确认该重新计算的该计算结果的认证指纹的第 一分量与服务器返回的认证指纹的第一分量相同;再进行进一步认证,针对待计算数据的 第j个比特,终端第一字符串中的第i个字符,根据预先配置的伪随机函数生成伪随机串 rand(i,j);并将0和该rand(i,j)输入上述加密算法获取0在伪随机串rand(i,j)下的 加密密文;并根据该加密密文、预先配置的用于计算待计算数据的计算函数和上述计算钥, 通过全同态加密算法中的密文计算函数进行计算,获取该计算结果的认证指纹的第i个第 二分量,根据上述方法进行n/2此次计算,获取该计算结果的认证指纹的全部第二分量,然 后比较服务器发送来的该计算结果的认证指纹的第二分量与终端获取的该计算结果的认 证指纹的第二分量是否相同。若服务器发送来的该计算结果的认证指纹与终端重新计算的 该计算结果的认证指纹相同,则确定该计算结果正确。针对待计算数据的每一个比特,都按 照上述方法进行计算结果的验证。 但是,由于消息认证密钥中的第一字符串是由长度为n/2的{1,2,…,n-1,n}的 子集组成的,因此,在计算待计算数据的每个比特的认证指纹时,计算复杂,且在终端认证 服务器返回的计算结果时,需要重新计算计算结果,并需要对待计算数据的每个比特进行 n/2次计算,才能获取计算结果对应的认证指纹的第二分量,W与第二认证指纹的第二分量 进行对比认证,使得计算量较大,验证效率低。
技术实现思路
本专利技术实施例提供一种全同态消息认证方法、装置及系统,有效降低验证过程中 的计算量,提高对服务器的计算结果的验证效率。 本专利技术第一方面提供一种全同态消息认证算法,所述方法应用于终端,包括: 获取消息认证密钥,所述消息认证密钥包括公钥、第一字符串和第二字符串,所述 第一字符串为长度为n的0和1的字符串,且所述第一字符串中字符为1的个数为化/3 ; 所述第二字符串为长度为n的0和1的字符串,且在所述第二字符串中,与所述第一字符串 中的为1的字符对应的位置上的字符包括n/3个0,其中,n为大于或等于2的整数; 根据第一输入字符、所述公钥和伪随机串生成待计算的数据中的第i个比特对应 的n个密文中的一个,确定所述n个密文为所述第i个比特对应的认证指纹的第二分量,其 中,若所述第一字符串中的第j个字符为0,则所述第一输入字符为所述第i个比特,或者, 若所述第一字符串中的第j个字符为1并且所述第二个字符串中的第j个字符为0,则所述 第一输入字符为0,或者,若所述第一字符串中的第j个字符为1并且所述第二个字符串中 的第j个字符为1,则所述第一输入字符为1 ;所述第i个比特对应的认证指纹还包括第一 分量;其中,i为整数,大于或等于1,且小于或等于所述待计算的数据的总比特数t,t大于 或等于1 ;j为整数,大于或等于1,且小于或等于n; 向服务器发送计算请求,所述计算请求包括:所述待计算的数据,所述待计算的数 据中的每个比特对应的所述认证指纹、预先配置的全同态加密算法、W及所述消息认证密 钥; 接收所述服务器返回的所述待计算的数据的计算结果W及所述计算结果对应的 认证指纹,并根据接收到的所述计算结果对应的认证指纹对所述计算结果进行正确性认 证。 结合第一方面,在第一方面的第一种可能的实施方式中,所述所述第i个比特对 应的认证指纹由W下步骤生成,包括: 根据预先配置的伪随机函数和所述待计算的数据中的第i个比特的标签生成所 述第i个比特对应的认证指纹的第一分量; 根据所述伪随机函数生成与所述待计算的数据中的第i个比特对应的n个伪随机 串; 根据所述第一字符串、所述第二字符串和所述n个伪随机串生成所述第i个比特 对应的n个密文作为所述第i个比特对应的认证指纹的第二分量,其中,若所述第一字符串 中的第j个字符为0,则将所述第i个比特、所述公钥和所述第j个伪随机串输入预先配置 的加密算法生成一个密文;若所述第一字符串中的第j个字符为1并且所述第二个字符串 中的第j个字符为0,则将0、所述公钥和所述第j个伪随机串输入所述预先配置的加密算 法生成一个密文;若所述第一字符串中的第j个字符为1并且所述第二个字符串中的第j 个字符为1,则将1、所述公钥和所述第j个伪随机串输入所述预先配置的加密算法生成一 个密文。 结合第一方面或第一方面的第一种可能的实施方式,在第一方面的第二种可能的 实施方式中,根据接收到的所述计算结果对应的认证指纹对所述计算结果进行正确性认 证,包括: 获取重新计算的所述计算结果对应的认证指纹的第一分量; 比较所述接收到的所述计算结果对应的认证指纹的第一分量与所述重新计算的 所述计算结果对应的认证指纹的第一分量是否相等; 若所述接收到的所述计算结果对应的认证指纹的第一分量与所述重新计算的所 述计算结果对应的认证指纹的第一分量相等,则继续对所述计算结果进行正确性认证;若 二者不相等,则确定所述计算结果不正确。 结合第一方面的第二种可能的实施方式,在第一方面的第H种可能的实施方式 中,所述获取重新计算的所述计算结果对应的认证指纹的第一分量,包括: 根据所述待计算的数据的t个比特对应的t个所述认证指纹的第一分量,采用用 于计算所述待计算的数据的计算函数,获取重新计算的所述计算结果对应的认证指纹的第 一分量; 其中,所述用于计算待计算的数据的计算函数为哈希树,所述哈希树包括;t个输 入,1个输出,且所述哈希树中的各个节点均为预先配置的安全哈希函数。 结合第一方面的第二种可能的实施方式,在第一方面的第四种可能的实施方式 中,所述获取重新计算所述计算结果对应的认证指纹的第一分量,包括: 将所述待计算数据的t个比特对应的t个所述认证指纹的第一分量发送给第H方 设备本文档来自技高网
...

【技术保护点】
一种全同态消息认证方法,其特征在于,所述方法应用于终端,包括:获取消息认证密钥,所述消息认证密钥包括公钥、第一字符串和第二字符串,所述第一字符串为长度为n的0和1的字符串,且所述第一字符串中字符为1的个数为2n/3;所述第二字符串为长度为n的0和1的字符串,且在所述第二字符串中,与所述第一字符串中的为1的字符对应的位置上的字符包括n/3个0,其中,n为大于或等于2的整数;根据第一输入字符、所述公钥和伪随机串生成待计算的数据中的第i个比特对应的n个密文中的一个,确定所述n个密文为所述第i个比特对应的认证指纹的第二分量,其中,若所述第一字符串中的第j个字符为0,则所述第一输入字符为所述第i个比特,或者,若所述第一字符串中的第j个字符为1并且所述第二个字符串中的第j个字符为0,则所述第一输入字符为0,或者,若所述第一字符串中的第j个字符为1并且所述第二个字符串中的第j个字符为1,则所述第一输入字符为1;所述第i个比特对应的认证指纹还包括第一分量;其中,i为整数,大于或等于1,且小于或等于所述待计算的数据的总比特数t,t大于或等于1;j为整数,大于或等于1,且小于或等于n;向服务器发送计算请求,所述计算请求包括:所述待计算的数据,所述待计算的数据中的每个比特对应的认证指纹、预先配置的全同态加密算法以及所述消息认证密钥;接收所述服务器返回的所述待计算的数据的计算结果以及所述计算结果对应的认证指纹;根据接收到的所述计算结果对应的认证指纹对所述计算结果进行正确性认证。...

【技术特征摘要】

【专利技术属性】
技术研发人员:陈文彬雷浩杨琴琴
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1