您好,登錄后才能下訂單哦!
這篇文章給大家介紹用于密碼破譯的深層學習方法PassGAN該如何理解,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
這些規則定義了轉換規則,比如單詞的連接(例如:password123456)和leet speaking(比如:”password”變成”p4s5w0rd”)。盡管這些規則在當前的數據集中表現良好,創造一個為新的數據集優化的新規則是一項費力的任務,要完成這項文物需要具備特定的專業知識。
在這篇文章中,我們設計如何用基于機器學習理論的密碼生成方法替代人工產生的密碼規則。這一成就的結果就是PassGAN,一種利用生成對抗網絡(GANs)來增強密碼破譯的新方法。PassGAN通過在泄露密碼列表中訓練GAN來實現密碼破譯。因為GAN的輸出與訓練集密切相關,通過PassGAN生成的密碼很可能會匹配到那些還沒有泄露密碼。PassGAN的出現表明基于規則的密碼生成工具產生了實質性的改進,因為它是通過密碼數據而不是利用手動分析,自動推斷密碼分布信息。因此,PassGAN能夠毫不費力的利用新的密碼泄露生成一個更豐富的密碼分布。
我們的實驗表明,這種方式非常有前途。當我們在兩個大的密碼數據集中評估PassGAN時,我們平均超過John the Ripper的SpyderLab規則兩倍,而且我們和HashCat的best64和gen2規則競爭——我們的結果在HashCat規則的兩倍以內。更重要的是,當我們把PassGAN的輸出和HashCat的輸出結合起來時,我們大約比單獨使用HashCat多匹配18%~24%的密碼。這是非常引人注目的,因為它表明PassGAN能夠產生相當數量的密碼,遠超過了當前的工具。
1 .介紹
密碼是最受歡迎的認證方式,主要是因為它很容易的實施,不需要其他的硬件或軟件,用戶和開發者都對密碼非常熟悉。不幸的是,多個密碼數據庫泄露表明用戶傾向于選擇容易猜到的密碼,主要由常見字符串和常見字符串的變種組成(比如:password,1234546,iloveyou)。
密碼破譯工具為識別弱密碼提供了有價值的工具,特別是當它們以散列形式存儲時。密碼破譯軟件針對每一個密碼的哈希值做測試,密碼破譯軟件的有效性取決于快速測試大量密碼的能力。取代嘗試所有可能的字符組合,密碼破譯工具采用了新的方法,即使用字典中的單詞和之前泄露的密碼作為候選人密碼。很多殿堂級的密碼破譯工具,例如:John the Ripper和HashCat,通過定義密碼轉換的試探方法,進一步理解這種方法。這種方法包含多種單詞組合(比如:iloveyou123456),混合字母(比如:iLoVeyOu),和leet peak(比如:il0v3you).這些探索法,結合Markov模型,允許John the Ripper和HashCat產生大量新的具有極高可能性的密碼。
盡管這個探索法在實踐中極有可能成功,他們是點對點并且基于用戶如何選擇密碼的直覺,而不是從大型密碼數據庫的連貫性和原則性分析出來。之后,發展和測試新的探索法是一個耗時的任務.為了解決這一短板,在這篇文章中我們提出PassGAN,一個新的生成密碼評估的方式,基于深度學習和生成對抗性網絡(GANs)。GANs是最近介紹的機器學習工具,被設計用來執行高維空間的密度估計。一個GANs是由兩個深度神經網絡組成:一個生成的深度神經網絡(G)和一個判別式深度神經網絡(D)。D的設計目的是區分由G生成的“真實樣本”和“偽樣本”。這兩個深度神經網絡通過多次迭代,互相影響。在每一次迭代,把來自G的偽樣本為D,D的輸出會提供給G,G把D的輸出作為反饋生成與實際樣本越來越接近的偽樣本。經過做夠數量的重復,G的輸出成為了GAN的輸出。PassGAN促使這一技術成為新的密碼猜測。我們的核心觀點是使用泄露的密碼列表(真實樣本)訓練D。因此,每一次迭代,PassGAN的輸出(偽樣本)變得接近原始泄露中的密碼的分布,而且因此更加匹配真正的用戶的密碼。據我們所知,這個工作是第一次為這個目的使用GANs。
PassGAN表示原則性強的和扎根理論呈現這一代密碼猜測。我們探索不同的神經網絡配置,參數和培訓程序,為了確定適當的平衡在學習和過擬合之間,和報告我們的結果。特別是,我們的貢獻遵循:(1)我們表明GANs能夠生成高質量的密碼猜測。在我們的實驗中,我們能夠匹配5,919,936個密碼當中的2774269個(46.86%)從RockYou數據集中一個由真實用戶密碼組成的測試集,以及LinkedIn數據集當中43,354,871個密碼當中的4,996,980個(11.53%)。更進一步,具有壓倒性優勢的數量的由PassGAN生成的密碼不匹配我們的測試集仍然“看起來像”人類生成的密碼;(2)我們發現我們的技術能夠跟蛋湯記得密碼生成規則競爭。即使這些規則都是真悶針對在我們的評估中使用的數據集,PassGAN的輸出的質量可以和這些殿堂級的密碼規則媲美(在hashCat情況下),或者比那些殿堂級的密碼規則更好(在John the Ripper的情況下);(3)我們的結果同樣也表明PassGAN能夠用來補充密碼生成規則。在我們的實驗中,我們成功地使用PassGAN生成不由密碼規則生成的密碼匹配。當我們吧PassGAN的產出和HashCat的產出結合在一起,和HashCat相比,我們能夠額外匹配18%到24% 獨特代碼;(4)與密碼生成規則相比,PassGAN能夠生成幾乎無限大的密碼猜想。我們的實驗表明,新的密碼猜想的數量隨著GAN生成的密碼的總數量穩固增長。這是非常重要的,因為當前用規則生成的密碼的數量,最終取決于實例化這些規則的密碼數據集的規模。
我們認為這個工作是實現自動化生成高質量密碼猜測的第一步。當我們用足夠大的密碼數據集訓練,或者當我們把一個足夠復雜的神經網體系結構實例化時,我們的結果構成GANs能夠超越基于規則的密碼猜測的證據。此外,PassGAN實現這一結果,當要求沒有用戶成就通常與密碼猜測規則
我們認為這個工作是有重要意義的,具有重要性的,而且及時的。之所以說有重要意義,是因為盡管有無數的選擇,我們幾乎看不到密碼將會很快被取代的可能性。之所以說具有重要性,是因為建立密碼破譯的限制能夠有助于使基于密碼的系統更安全。至于及時性,則是因為近期的密碼泄露包含數億密碼,為攻擊者破壞系統提供一個強大的數據源,而且系統管理員也會重新評估密碼策略。
關于用于密碼破譯的深層學習方法PassGAN該如何理解就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。