收藏 分享(赏)

基于全同态mac的消息认证算法设计.doc

上传人:无敌 文档编号:151519 上传时间:2018-03-22 格式:DOC 页数:14 大小:791.50KB
下载 相关 举报
基于全同态mac的消息认证算法设计.doc_第1页
第1页 / 共14页
基于全同态mac的消息认证算法设计.doc_第2页
第2页 / 共14页
基于全同态mac的消息认证算法设计.doc_第3页
第3页 / 共14页
基于全同态mac的消息认证算法设计.doc_第4页
第4页 / 共14页
基于全同态mac的消息认证算法设计.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、基于全同态 MAC 的消息认证算法设计 潘钊 张跃军 丁代鲁 宁波大学电路与系统研究所 摘 要: 针对通信信道中数据传输的安全性和认证问题, 通过对全同态加密和消息认证码 (Message Authentication Code, MAC) 算法的研究, 提出一种基于全同态MAC 的消息认证算法设计方案。该方案首先在接收端对消息进行全同态加密, 结合 MD5 算法对加密后的数据进行扰乱处理, 将处理后的数据在信道中传输。然后, 在接收端检测消息在传输信道中是否被篡改, 再对数据执行全同态解密, 进而确保消息传输的可靠性。最后, 在 SMIC 65 nm 工艺下完成硬件设计, DC综合后电路面积

2、为 21 911m 2, 在 1.2 V 电压下最高工作频率可达到 204 MHz, 功耗为 5.73 m W。关键词: 全同态加密; MAC 算法; 消息认证; 信息安全; 作者简介:潘钊 (1993-) , 男, 硕士研究生, 主要研究方向:全同态算法优化及其 VLSI 实现。作者简介:张跃军 (1982-) , 通信作者, 男, 博士, 副教授, 主要研究方向:集成电路抗老化设计、高信息密度集成电路理论和设计、安全芯片理论和设计, E-mail:。作者简介:丁代鲁 (1991-) , 男, 硕士研究生, 主要研究方向:集成电路老化预测与检测。收稿日期:2017-05-02基金:国家自然科

3、学基金 (61404076) Message authentication algorithm based on fully homomorphism MAC methodPan Zhao Zhang Yuejun Ding Dailu Institute of Circuits and Systems , Ningbo University; Abstract: There are many problems of security and authentication in communication channel with data transmission. After studyi

4、ng the fully homomorphism encryption and message authentication code ( MAC) algorithm, this paper presents a scheme of message authenti-cation algorithm based on fully homomorphism MAC method. In this scheme, the input messages are encrypted with fully homomor-phism method at the transmitting termin

5、al, and the encrypted data are transmitted in communication channel after discomposing by MD5 algorithm. Then, it is confirmed whether the data are tampered during transmission channel at the receiving terminal. If the data are not tampered, it will be decrypted with fully homomorphism method. This

6、method helps to ensure the reliability of message transmission. Finally, the proposed algorithm is designed using SMIC 65 nm process. DC synthesis shows that the area is 21 911 m 2, the maximum operating frequency is 204 MHz, and the power consumption is 5. 73 m W at 1. 2 V.Keyword: fully homomorphi

7、sm encryption; MAC algorithm; message authentication; information security; Received: 2017-05-020 引言随着电子技术和互联网技术的迅速崛起, 特别是云计算商业化平台的出现, 不安全信道中消息认证变得越来越重要。在消息认证过程中, 通常采用构造消息认证码 (Message Authentication Code, MAC) 的方式实现1。该方法可有效地检测在传输过程中数据是否存在被篡改, 目前已被广泛应用在数字签名、文件校验、流密钥产生等方面2。针对 MAC 算法的安全性、效率和能耗等问题, 许多学者

8、已经对此开展深入的研究。刘云璐等3提出一种消息认证协议优化算法, 解决信息在树状传感器网络中的上层节点处拥堵和被丢弃的问题。王利村等4提出一种采用固定帧长的 EPONMAC 算法, 使以太网交换机的速率得以提升。卢艳宏等5提出用于无线传感器网络数据传输的混合型消息认证算法, 解决了能量损耗问题。但是, 上述所提的方法均采用原始数据进行传输, 存在消息被泄露的威胁。近年出现的全同态加密技术, 它允许对密文执行特定的操作后将其输出进行解密, 解密所得的结果与对明文进行相同操作的结果相等。全同态加密不但能够提高数据处理效率、确保数据安全传输, 而且可以有效避免将原始数据委托给第三方操作的安全问题。但

9、是怎样构造密码体制使其具有全同态性质是学术界面临的难题之一。2009 年 9 月, GENTRY C 等6在 ACM 计算理论年会上对“全同态加密”的可行性从数学上进行了论证, 并给出具体实现方案, 即在不解密的条件下对密文数据进行运算与对明文进行相同运算后加密的结果相同。DIJK M 等7提出一种整数型全同态加密的优化方案, 极大地简化电路的硬件结构。鉴此, 本文针对数据传输的安全问题, 提出一种基于全同态 MAC 的消息认证算法, 在 SMIC 65 nm 工艺下完成硬件电路设计。实验结果表明, 该结构不仅具有良好的黑盒性, 还能够检验传输数据是否完整。1 全同态算法和 MAC 算法1.1

10、 全同态算法在密码系统中, 设 m 为明文, c 为密文, Enc 为加密操作, Dec 为解密操作, 则有 c=Enc (m) , m=Dec (c) 。在全同态算法中, 设 f 为任意操作, 则全同态过程可表示为 Dec (f (Enc (m) ) ) =f (m) 或 f (Enc (m) ) =Enc (f (m) ) 。全同态算法主要包括密钥的生成、加密和解密 3 个阶段, 具体如下所示:(1) 密钥的生成。随机产生一个密钥 p, 且 p 为素数。(2) 全同态加密。对任意的明文 m 加密可得密文 c=m+2r+pq。其中 p 为正的奇数, q 为较大的正整数 (比 p 要大, 是否

11、是奇数没有要求) , r 为加密时由$random 函数产生的较小整数 (没有正负要求) , m 为明文 (m0, 1) 。全同态加密完成对 1 位二进制数的加密, 所得结果是 N 位整数。(3) 全同态解密。对任意的密文解密可得 m= (c mod p) mod2。mod p 表示以 p为基数进行的模运算, 可等效为以下运算:c mod p=c-c/pp, 其中c/p为 c 除以 p 的商取整。1.2 MAC 算法MAC 算法作为一种可携带密钥的 hash 函数, 通常用来检验所传输消息的完整性。常用的 hash 函数有 MD5、SHA-2 和 SHA-3 等, 本文将采用 MD5 算法。M

12、D5 算法8可将任意长度的消息或文本进行相关运算, 使其压缩成 128 位固定长度的摘要, 具体如下所示:(1) 补位。任意长度消息的低位用一个 1 和若干个 0 进行补位, 在结果后面添加消息的最初长度 (用 64 位二进制数表示) , 使消息长度刚好成为 512 的整数倍。(2) 初始化缓冲器。A 1, A2, A3, A4是 4 个 32 位寄存器, 也称作链接变量的整数参数, 并对其设置初始数据。(3) 非线性轮运算。声明四个中间变量 a1, a2, a3, a4, 对其进行赋值:a 1=A1, a2=A2, a3=A3, a4=A4。接着执行 4 轮主循环, 每一轮完成 16 次运算

13、, 每轮用到一个非线性函数;每次操作需要对 a1, a2, a3和 a4中的 3 个变量完成一次非线性运算, 并更新对应的变量数据。四轮非线性函数分别如下所示:(4) 数据输出。当 64 步运算完成之后, 将 a1, a2, a3, a4分别与初始的值分别进行相加, 然后对下一组 512 位数据进行运算, 最后得到的结果为 4 个 32 位数据级联构成的 128 位输出, 即 32 位 16 进制的 MD5 码。2 全同态 MAC 消息认证的 VLSI 实现消息认证是指对要传输的消息或者和消息相关的信息执行一系列操作后再进行认证, 目的是为了防止消息在传输和存储过程中存在恶意篡改或错误修改,

14、认证内容主要包含消息是否被篡改或延迟、消息是否来自真正的发送者等。图 1为消息认证系统的结构框图。图 1 消息认证系统的结构框图 下载原图2.1 全同态 MAC 的消息认证算法全同态 MAC 的消息认证算法通过对消息进行全同态加密操作, 再采用 MD5 算法对加密后的数据进行扰乱处理, 不但避免在通信信道中传输原始数据的安全问题, 而且能够检测消息有没有被篡改, 进而确保消息传输的可靠性。本文结合全同态算法和 MD5 算法, 提出一种全同态 MAC 的消息认证算法, 该算法的具体实现方案如下:步骤 1:将算法中输入的二进制数据进行全同态加密处理得到密文。步骤 2:通过步骤 1 处理后, 将数据

15、经过 MAC 算法, 使其生成 MAC1值, 将 MAC1值及密文在信道中传输。步骤 3:接收方收到 MAC1值和密文后, 运用相同的 MAC 算法对密文进行运算, 生成 MAC2值, 对比 MAC1值和 MAC2值, 若一致, 则用全同态解密算法对密文解密, 恢复原始数据;若不一致, 则接收方重新发送。全同态 MAC 算法流程图, 如图 2 所示。整个过程消息一直以密文进行传输, 保证了原始消息安全性, 只有当接收方确认消息来源和完整性后才进行密文的解密。全同态 MAC 算法的伪代码, 如图 3 所示。其中, fhe 表示全同态加密模块, fhd 表示全同态解密模块, top 表示全同态 M

16、AC 算法模块。图 2 全同态 MAC 算法的流程图 下载原图图 3 全同态 MAC 算法的伪代码 下载原图2.2 全同态 MAC 的消息认证算法硬件结构全同态 MAC 的消息认证算法的具体结构如图 4 所示。该算法首先执行全同态加密运算, 将所得的结果经过数据控制模块用 1 和 0 进行补位, 并以信息长度为512 位进行分组。每个分组又被分成 16 个 32 位子集, 每个子集用 Mj (j 为 0到 15) 表示, 以新变量和子集作为输入进行四轮主循环, 每一轮循环需要完成16 次迭代运算, 其中每轮运算选择一个不重复的非线性函数。第一轮选择 F (a2, a3, a4) , 则功能函数

17、 (a 1, a2, a3, a4, Mj, g, ti) 可表示为 FF (a1, a2, a3, a4, Mj, g, ti) , 代表含义为 a1=a2+ (a1+ (F (a2, a3, a4) +Mj+ti) g) , 其中g 表示循环左移 g 位。每进行一次迭代, 根据功能函数更新 a1, a2, a3和 a4中的一个, 通过 16 次迭代后, 得到更新后 a1, a2, a3和 a4的数值。然后, 将更新后的数值应用于第二轮循环, 以此类推, 完成四轮循环;其次, 将此时的a1, a2, a3和 a4的数值分别与原来的 A1, A2, A3, A4相加;最后, 对下一分组数据进行

18、相同操作, 当所有分组都完成运算后, 将新的 A1, A2, A3, A4按顺序级联成 128 位数据输出。图 4 全同态 MAC 算法硬件结构图 下载原图3 实验结果与分析采用 SMIC 65 nm CMOS 工艺, 实现基于全同态 MAC 的消息认证算法硬件电路。实验环境包括 Intel Xeon (R) Dual-Core CPU 2.0 GHz、6 G RAM 服务器, 涉及的工具软件包括:NCverilog 仿真软件和 DC 综合工具。表 1 为 p=11, q=121时, 输入数据经过全同态加密模块的输出数据。表 2 为 p=11, q=121 时, 输入数据经过全同态 MAC 算法的输出数据。表 1 全同态加密模块的输入/输出数据 下载原表 表 2 全同态 MAC 算法输入/输出数据 下载原表

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 期刊/会议论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报