基于ARMv8的高吞吐率口令破解關鍵技術研究
發(fā)布時間:2022-01-04 22:41
在互聯(lián)網高速發(fā)展的今天,口令作為身份認證最主要的手段之一,其安全性引起了國內外學者的廣泛關注。通過對真實口令數(shù)據集的分析和挖掘,用戶口令的特征、分布和重用程度被逐漸地發(fā)現(xiàn)和了解。以此為基礎的口令生成模型,極大地提升了口令破解的成功率。為了進一步提高破解效率,本文對口令破解中的加密和匹配階段進行深入研究,并基于ARMv8架構提出了高吞吐率的實現(xiàn)方案。在加密階段,口令散列的每一輪邏輯運算具有很強的數(shù)據依賴,不能有效地利用NEON指令集實現(xiàn)數(shù)據級并行。本文根據口令破解需要加密大量明文的特性,提出了一種能夠直接映射到SIMD架構的批量加密實現(xiàn)方案。此外,為了進一步提高流水線利用率,在進行指令編排調優(yōu)的基礎上,本文提出了一種高吞吐率的多批量加密實現(xiàn)。與OpenSSL中的最優(yōu)實現(xiàn)對比,本文提出的批量MD5加密吞吐率提高了2.35倍,批量SHA-1加密吞吐率提高了41.3%。密文匹配階段使用布隆過濾器作為粗過濾,將密文集合中大部分絕對不正確的密文篩除后,再使用線性查找方式進行精確比對。在這種實現(xiàn)方式中,隨著待破解口令的增加,布隆過濾器會逐漸增大,使其訪存性能急劇下降。為此,本文基于軟件管理的緩沖區(qū),...
【文章來源】:華南理工大學廣東省 211工程院校 985工程院校 教育部直屬院校
【文章頁數(shù)】:68 頁
【學位級別】:碩士
【部分圖文】:
ARM架構圖
圖 2-2 標量與向量加法供 31 個 64 比特通用寄存器外,還提供了 32 個。向量寄存器可以用于處理標量浮點指令操作數(shù)作數(shù)。這些寄存器能夠存儲 4 個 32 比特的單精可以同時處理 4 個操作數(shù),從而實現(xiàn)數(shù)據級的圖 2-3 NEON 向量寄存器RMv8 中提供的 32 個 128 比特的向量寄存器的比特寬的向量寄存器,只是前者用于 AArch64
圖 2-2 標量與向量加法ARMv8 除了提供 31 個 64 比特通用寄存器外,還提供了 32 個 128 比特寬的向量寄存器,如圖 2-3 所示。向量寄存器可以用于處理標量浮點指令操作數(shù),和所有用于 NEON操作的標量與向量操作數(shù)。這些寄存器能夠存儲 4 個 32 比特的單精度浮點數(shù),在 NEON指令執(zhí)行的過程中,可以同時處理 4 個操作數(shù),從而實現(xiàn)數(shù)據級的并行。圖 2-3 NEON 向量寄存器圖 2-3 展示了 ARMv8 中提供的 32 個 128 比特的向量寄存器的命名方式。其中 Vn和 Qn 都表示 128 比特寬的向量寄存器,只是前者用于 AArch64 執(zhí)行狀態(tài),后者用于AArch32 執(zhí)行狀態(tài);Dn 表示 64 比特寬的向量寄存器;依次類推。2.1.2 獨占訪問指令在 ARMv8 中,線程同步機制,如互斥鎖、信號量等,是通過獨占訪問指令實現(xiàn)的。在 AArch32 執(zhí)行狀態(tài)下
【參考文獻】:
期刊論文
[1]口令安全研究進展[J]. 王平,汪定,黃欣沂. 計算機研究與發(fā)展. 2016(10)
[2]基于真實數(shù)據挖掘的口令脆弱性評估及恢復[J]. 劉功申,邱衛(wèi)東,孟魁,李建華. 計算機學報. 2016(03)
[3]密碼學上的Hash函數(shù)研究現(xiàn)狀及進展[J]. 馬陵勇,張姍姍. 網絡安全技術與應用. 2007(11)
本文編號:3569189
【文章來源】:華南理工大學廣東省 211工程院校 985工程院校 教育部直屬院校
【文章頁數(shù)】:68 頁
【學位級別】:碩士
【部分圖文】:
ARM架構圖
圖 2-2 標量與向量加法供 31 個 64 比特通用寄存器外,還提供了 32 個。向量寄存器可以用于處理標量浮點指令操作數(shù)作數(shù)。這些寄存器能夠存儲 4 個 32 比特的單精可以同時處理 4 個操作數(shù),從而實現(xiàn)數(shù)據級的圖 2-3 NEON 向量寄存器RMv8 中提供的 32 個 128 比特的向量寄存器的比特寬的向量寄存器,只是前者用于 AArch64
圖 2-2 標量與向量加法ARMv8 除了提供 31 個 64 比特通用寄存器外,還提供了 32 個 128 比特寬的向量寄存器,如圖 2-3 所示。向量寄存器可以用于處理標量浮點指令操作數(shù),和所有用于 NEON操作的標量與向量操作數(shù)。這些寄存器能夠存儲 4 個 32 比特的單精度浮點數(shù),在 NEON指令執(zhí)行的過程中,可以同時處理 4 個操作數(shù),從而實現(xiàn)數(shù)據級的并行。圖 2-3 NEON 向量寄存器圖 2-3 展示了 ARMv8 中提供的 32 個 128 比特的向量寄存器的命名方式。其中 Vn和 Qn 都表示 128 比特寬的向量寄存器,只是前者用于 AArch64 執(zhí)行狀態(tài),后者用于AArch32 執(zhí)行狀態(tài);Dn 表示 64 比特寬的向量寄存器;依次類推。2.1.2 獨占訪問指令在 ARMv8 中,線程同步機制,如互斥鎖、信號量等,是通過獨占訪問指令實現(xiàn)的。在 AArch32 執(zhí)行狀態(tài)下
【參考文獻】:
期刊論文
[1]口令安全研究進展[J]. 王平,汪定,黃欣沂. 計算機研究與發(fā)展. 2016(10)
[2]基于真實數(shù)據挖掘的口令脆弱性評估及恢復[J]. 劉功申,邱衛(wèi)東,孟魁,李建華. 計算機學報. 2016(03)
[3]密碼學上的Hash函數(shù)研究現(xiàn)狀及進展[J]. 馬陵勇,張姍姍. 網絡安全技術與應用. 2007(11)
本文編號:3569189
本文鏈接:http://sikaile.net/kejilunwen/ruanjiangongchenglunwen/3569189.html
最近更新
教材專著