当前位置:主页 > 科技论文 > 软件论文 >

基于ARMv8的高吞吐率口令破解关键技术研究

发布时间:2022-01-04 22:41
  在互联网高速发展的今天,口令作为身份认证最主要的手段之一,其安全性引起了国内外学者的广泛关注。通过对真实口令数据集的分析和挖掘,用户口令的特征、分布和重用程度被逐渐地发现和了解。以此为基础的口令生成模型,极大地提升了口令破解的成功率。为了进一步提高破解效率,本文对口令破解中的加密和匹配阶段进行深入研究,并基于ARMv8架构提出了高吞吐率的实现方案。在加密阶段,口令散列的每一轮逻辑运算具有很强的数据依赖,不能有效地利用NEON指令集实现数据级并行。本文根据口令破解需要加密大量明文的特性,提出了一种能够直接映射到SIMD架构的批量加密实现方案。此外,为了进一步提高流水线利用率,在进行指令编排调优的基础上,本文提出了一种高吞吐率的多批量加密实现。与OpenSSL中的最优实现对比,本文提出的批量MD5加密吞吐率提高了2.35倍,批量SHA-1加密吞吐率提高了41.3%。密文匹配阶段使用布隆过滤器作为粗过滤,将密文集合中大部分绝对不正确的密文筛除后,再使用线性查找方式进行精确比对。在这种实现方式中,随着待破解口令的增加,布隆过滤器会逐渐增大,使其访存性能急剧下降。为此,本文基于软件管理的缓冲区,... 

【文章来源】:华南理工大学广东省 211工程院校 985工程院校 教育部直属院校

【文章页数】:68 页

【学位级别】:硕士

【部分图文】:

基于ARMv8的高吞吐率口令破解关键技术研究


ARM架构图

向量加法,标量,向量寄存器,操作数


图 2-2 标量与向量加法供 31 个 64 比特通用寄存器外,还提供了 32 个。向量寄存器可以用于处理标量浮点指令操作数作数。这些寄存器能够存储 4 个 32 比特的单精可以同时处理 4 个操作数,从而实现数据级的图 2-3 NEON 向量寄存器RMv8 中提供的 32 个 128 比特的向量寄存器的比特宽的向量寄存器,只是前者用于 AArch64

向量寄存器


图 2-2 标量与向量加法ARMv8 除了提供 31 个 64 比特通用寄存器外,还提供了 32 个 128 比特宽的向量寄存器,如图 2-3 所示。向量寄存器可以用于处理标量浮点指令操作数,和所有用于 NEON操作的标量与向量操作数。这些寄存器能够存储 4 个 32 比特的单精度浮点数,在 NEON指令执行的过程中,可以同时处理 4 个操作数,从而实现数据级的并行。图 2-3 NEON 向量寄存器图 2-3 展示了 ARMv8 中提供的 32 个 128 比特的向量寄存器的命名方式。其中 Vn和 Qn 都表示 128 比特宽的向量寄存器,只是前者用于 AArch64 执行状态,后者用于AArch32 执行状态;Dn 表示 64 比特宽的向量寄存器;依次类推。2.1.2 独占访问指令在 ARMv8 中,线程同步机制,如互斥锁、信号量等,是通过独占访问指令实现的。在 AArch32 执行状态下

【参考文献】:
期刊论文
[1]口令安全研究进展[J]. 王平,汪定,黄欣沂.  计算机研究与发展. 2016(10)
[2]基于真实数据挖掘的口令脆弱性评估及恢复[J]. 刘功申,邱卫东,孟魁,李建华.  计算机学报. 2016(03)
[3]密码学上的Hash函数研究现状及进展[J]. 马陵勇,张姗姗.  网络安全技术与应用. 2007(11)



本文编号:3569189

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3569189.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户ed7b7***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com