可编程密码处理器关键技术研究与实现

可编程密码处理器关键技术研究与实现

论文摘要

密码算法是保证信息的机密性、完整性以及可用性等安全要求的基本手段。性能和实现安全等方面的原因使得密码算法需要采用硬件方法实现。专用集成电路(ASIC)和细粒度可重构结构是硬件实现密码算法的两种传统方法。ASIC方法效率高,却无法满足应用环境中灵活实现密码算法的需求。细粒度可重构结构灵活性强,但其通用性带来了较高的设计代价。由于密码算法具有相对固定的处理模式,相关研究工作者分别以空间可编程和时间可编程为基础,面向密码处理领域提出了多种密码专用可重构结构和密码处理器,在一定程度上平衡了性能与灵活性的折衷。然而,已有的密码专用可重构结构普遍存在算法映射困难的问题,使其应用受到了限制;而目前的密码处理器虽然借助编译工具可方便的开发密码算法,但受限于传统体系结构,能够增加的定制功能单元的复杂度及其数量均有限,数据通路效率偏低。本文从时间可编程性出发,将传统体系结构的软硬件界面下移,使得软件看到处理器内部的数据传输以及互连网络,可支持复杂却高效的数据通路,更容易匹配密码处理模式,最终实现高效可编程密码处理器。主要工作及研究成果如下:1.提出了传输触发体系结构(TTA)指导下的专用指令集处理器(ASIP)自动生成方法。TTA中,软件所见为功能单元(FU)之间的数据传输,故硬件设计可以支持寄存器文件分割以及定制更多更复杂的FU,同时解决了指令集生成、可重定向编译等问题。提出了配置流驱动计算体系结构(CSDCA),将软硬件界面进一步下移,由编译器完成处理器内的传输路由,以支持高效却复杂的互连网络,采用段式总线互连技术,较好的解决了随着FU数量增加,数据传输延迟成为主频瓶颈和总线功耗冗余严重等问题。提出了通过双模式计算提高代码密度的方法:程序中的关键循环在CSDCA模式下执行以提高性能,其余部分则工作在RISC模式下以降低代码冗余。这些工作建立了支持高效数据通路的ASIP设计流程。2.提出并实现了一种高性能模幂处理器。提出以基数长度为处理字长的高基数Montgomery算法(RBHRMMM),结合并行模幂算法,将大数模幂运算拆分为原子操作矩阵序列,按照列共享原则设计列共享超流水处理阵列(CSSA)。CSSA作为特殊功能单元,基于上述ASIP设计流程,得到完整模幂运算处理器SEA-II,其电路等效门数为923k。基于SEA-II的1024位RSA解密速度达到6,353Kbps。3.提出并实现了一种可扩展双域公钥密码整体算法处理器。提出双域统一RBHRMMM算法,并以此为基础设计出行共享流水单元(RSSA),将RSSA耦合到已有ASIP设计流程,并增加大数寄存器,得到公钥整体算法处理器SPKP。SPKP具有如下特点:①通过软件工具,可快速开发出整体公钥密码系统;②RSSA具有良好的可扩展性;③流水单元实现矢量乘操作,并支持GF(p)和GF(2n)双域;④通过调整总线宽度和RSSA中流水单元数量,可满足不同性能/面积约束。4.提出并实现了一种高性能安全Hash处理器。提出新型Hash算法计算模块划分方法,即分为压缩模块和扩散模块,而且每个模块包括队列、混洗和累加等三个子模块。据此设计出可重构功能单元,耦合到已有ASIP设计流程中,得到安全Hash处理器PSHP。与细粒度可重构结构相比,其逻辑利用率高,配置速度和运算速度快,而且开发方便;与ASIC实现相比,可以在性能和面积开销较小的前提下,灵活的支持常用Hash算法。5.提出并实现了一种高性能分组密码算法处理器PSCP。提出分组密码处理器优化的两个原则:①增加置换单元和子密钥存储单元,将核心运算期间的访存次数减少为零;②对基本操作进行重新组合,均衡延迟分布。与ASIC实现相比,在CBC、OFB、CFB等分组相关的加密模式下,PSCP获得相似的性能,但更灵活。与密码专用可重构结构相比,PSCP开发方便,可以实现包括密钥扩散在内的完整算法,具有更好的安全性。以上研究工作首先建立了支持复杂数据通路的ASIP设计流程,然后针对具体种类的密码算法和实际应用环境需求,研究并实现了四种效率高、可用性强的可编程密码处理器。处理器采用的目标工艺均为0.18μm 1P6M CMOS工艺,其中模幂处理器已经实现应用。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 引言
  • 1.2 密码算法实现需求
  • 1.2.1 密码算法简介
  • 1.2.2 实现需求
  • 1.3 计算密集型应用的处理平台
  • 1.3.1 三种传统方法
  • 1.3.2 面向应用定制处理结构——效率与灵活性的折衷
  • 1.4 专用指令集处理器的发展和研究现状
  • 1.4.1 微结构模板
  • 1.4.2 软件开发方法
  • 1.4.3 设计空间搜索
  • 1.4.4 可编程密码处理器研究现状
  • 1.5 本文的研究内容及其主要贡献
  • 1.5.1 本文的研究内容
  • 1.5.2 本文的主要贡献
  • 1.6 论文结构
  • 第二章 传输触发体系结构指导下的ASIP 自动生成
  • 2.1 引言
  • 2.2 相关工作
  • 2.2.1 ASIP 设计
  • 2.2.2 传输触发体系结构
  • 2.2.3 应用TTA 到ASIP 设计中
  • 2.2.4 TTA 数据通路参数
  • 2.3 ASIP 自动生成
  • 2.3.1 总体设计流程
  • 2.3.2 应用程序特征分析
  • 2.3.3 初始微结构生成
  • 2.3.4 指令生成与调度
  • 2.3.5 代价估算
  • 2.3.6 优化过程
  • 2.3.7 硬件生成
  • 2.4 设计原型及结果
  • 2.5 本章小结
  • 第三章 配置流驱动计算及其指导下的片内互连网络设计
  • 3.1 引言
  • 3.2 配置流驱动计算体系结构
  • 3.2.1 配置流计算体系结构的软硬件折衷
  • 3.2.2 CSDCA 体系结构模板
  • 3.3 处理器内部的互连网络类型
  • 3.3.1 交叉开关
  • 3.3.2 多总线网络
  • 3.3.3 段式总线互连网络
  • 3.4 段式总线互连的ASIP 设计流程
  • 3.4.1 生成传输流
  • 3.4.2 宏模块布局优化
  • 3.4.3 段式总线互连
  • 3.4.4 路由与优化
  • 3.4.5 分段数:代价与收益的折衷
  • 3.5 实验结果
  • 3.5.1 功耗与延迟模型
  • 3.5.2 评估结果
  • 3.6 本章小结
  • 第四章 通过双模式计算提高CSDCA 代码密度
  • 4.1 引言
  • 4.2 基于字典的代码压缩方法在CSDCA 中的应用评估
  • 4.2.1 基于字典的代码压缩方法
  • 4.2.2 评估结果
  • 4.3 利用双模式计算提高代码密度
  • 4.3.1 概念
  • 4.3.2 例子
  • 4.4 双模式计算微结构模板
  • 4.5 工具链移植
  • 4.6 评估结果
  • 4.7 本章小结
  • 4.8 第二、三、四章联合小结
  • 第五章 高性能大数模幂处理器
  • 5.1 引言
  • 5.2 算法
  • 5.2.1 并行二进制模幂算法
  • 5.2.2 高基数Montgomery 模乘算法
  • 5.2.3 RBHRMMM 算法
  • 5.3 列共享超流水处理阵列
  • 5.3.1 并行性分析
  • 5.3.2 列共享流水处理阵列-CSSA
  • 5.4 组合逻辑计算阵列优化
  • 5.5 基于CSSA 的模幂乘算法设计
  • 5.6 实验结果
  • 5.6.1 基数长度k 与CSSA 复杂度的关系
  • 5.6.2 系统级优化评估及流片结果
  • 5.6.3 应用到RSA 算法
  • 5.6.4 与相关工作的比较
  • 5.7 本章小结
  • 第六章 可扩展双域公钥密码整体算法处理器
  • 6.1 引言
  • 6.2 公钥密码计算困难性分析
  • 6.2.1 基于IFP 和DLP 的公钥算法
  • 6.2.2 ECC 算法
  • 6.2.3 公钥密码计算困难性
  • 6.3 行共享可扩展双域流水处理阵列
  • 6.3.1 基于基数长度的双域统一高基数Montgomery 算法
  • 6.3.2 UniRBHRMMM 算法并行性分析
  • 6.3.3 可扩展双域行共享流水处理阵列
  • 6.4 基于RSSA 的模乘算法设计
  • 6.5 实验结果
  • 6.5.1 正确性验证
  • 6.5.2 大数寄存器参数ω
  • 6.5.3 RSSA 设计代价评估
  • 6.5.4 性能与RSSA 参数k, ρ的关系
  • 6.5.5 针对应用环境的参数配置
  • 6.5.6 与相关工作的比较
  • 6.6 本章小结
  • 第七章 高性能安全Hash 算法处理器
  • 7.1 引言
  • 7.2 安全Hash 算法特征分析
  • 7.2.1 策略
  • 7.2.2 具体Hash 算法分析
  • 7.3 Hash 算法专用可重构功能单元
  • 7.3.1 压缩模块单元
  • 7.3.2 扩散模块单元
  • 7.4 系统级设计
  • 7.4.1 基本的Hash 处理器
  • 7.4.2 算法映射
  • 7.4.3 优化
  • 7.5 实验结果
  • 7.5.1 正确性验证
  • 7.5.2 基于标准单元的实现
  • 7.5.3 与传统实现方法的比较
  • 7.6 本章小结
  • 第八章 高性能分组密码算法处理器
  • 8.1 引言
  • 8.2 分组密码算法特点
  • 8.3 优化技术
  • 8.4 系统级设计
  • 8.4.1 硬件设计
  • 8.4.2 算法映射
  • 8.5 实验结果
  • 8.5.1 正确性验证
  • 8.5.2 基于标准单元的实现
  • 8.5.3 与相关工作的比较
  • 8.6 本章小结
  • 第九章 结束语
  • 9.1 所做的工作
  • 9.2 进一步的研究方向
  • 致谢
  • 参考文献
  • 作者在学期间取得的学术成果
  • 发表的论文
  • 获得的专利
  • 攻读博士学位期间参加的主要研究工作
  • 相关论文文献

    • [1].垃圾处理器进入大渠道的困境[J]. 现代家电 2019(22)
    • [2].基于FPGA的32位多并行2DFFT处理器的设计[J]. 广西科技大学学报 2020(01)
    • [3].废弃食物处理器选购有讲究[J]. 质量与标准化 2020(Z1)
    • [4].报告:到2026年,嵌入式处理器市场将达到363.8亿美元[J]. 功能材料信息 2019(06)
    • [5].垃圾处理器营销渠道走向前台[J]. 现代家电 2019(17)
    • [6].创新推动垃圾处理器本土化进程[J]. 现代家电 2020(07)
    • [7].用标准推动行业健康发展 保障消费者良好体验[J]. 现代家电 2020(07)
    • [8].风头正劲的垃圾处理器市场[J]. 现代家电 2020(07)
    • [9].后疫情时代 垃圾处理器步入稳健发展[J]. 现代家电 2020(07)
    • [10].垃圾处理器的B端市场突破[J]. 现代家电 2020(07)
    • [11].利用平台优势 推动垃圾处理器快速增长[J]. 现代家电 2020(07)
    • [12].2020二季度手机处理器市场[J]. 中国科技信息 2020(20)
    • [13].安全处理器研究进展[J]. 信息安全学报 2018(01)
    • [14].骁龙821处理器等于骁龙820超频版[J]. 个人电脑 2017(01)
    • [15].走近国产处理器[J]. 个人电脑 2016(09)
    • [16].众核处理器核间通信的研究[J]. 价值工程 2015(17)
    • [17].面向高性能计算的众核处理器轻量级错误恢复技术研究[J]. 计算机研究与发展 2015(06)
    • [18].“愚公号”垃圾处理器[J]. 小星星(低年级版) 2020(Z2)
    • [19].《污气处理器》[J]. 课堂内外(小学低年级) 2019(05)
    • [20].龙芯总设计师:明年将推出全自主可控处理器“3B3000”[J]. 电脑迷 2015(08)
    • [21].高效低能耗 未来处理器发展方向[J]. 电脑迷 2008(10)
    • [22].电脑靠什么来节能(3) 处理器篇[J]. 电脑迷 2008(09)
    • [23].陌生的处理器 新本怎么选?[J]. 电脑爱好者 2009(03)
    • [24].无处不在 嵌入式处理器解析[J]. 电脑迷 2010(12)
    • [25].22nm来袭 Intel Ivy Bridge处理器前瞻[J]. 电脑迷 2011(16)
    • [26].揭秘骗术 盒装处理器选购谈[J]. 电脑爱好者 2013(16)
    • [27].有必要追求最新64位处理器吗[J]. 电脑爱好者 2014(21)
    • [28].尾数有变! 读懂手机处理器的后缀密码[J]. 电脑爱好者 2017(07)
    • [29].不再是处理器 浅析高通骁龙835移动平台[J]. 电脑爱好者 2017(09)
    • [30].重新定义中端 AMD Ryzen 5 1600处理器[J]. 电脑爱好者 2017(14)

    标签:;  ;  ;  ;  ;  ;  ;  ;  

    可编程密码处理器关键技术研究与实现
    下载Doc文档

    猜你喜欢