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