RainbowCrack是PhilippeOechslin更快的時間記憶權衡技術的一般實現。它用彩虹表破解哈希
RainbowCrack使用時間-內存權衡算法來破解哈希值。它不同于暴力哈希破解者。
一個強力哈希破解器生成所有可能的明文并在運行中計算相應的哈希值,然后將哈希值與要破解的哈希值進行比較。找到匹配后,找到明文。如果測試了所有可能的明文并且未找到匹配,則找不到明文。使用這種類型的散列破解,所有中間計算結果都將被丟棄。
時間記憶權衡哈希破解者需要預先計算階段,此時所選擇的哈希算法,字符集,明文長度內的所有明文/哈希對都被計算并且結果存儲在稱為彩虹表的文件中。進行這種計算是耗時的。但是一旦完成一次預計算,存儲在表中的哈希就會被破解,其性能比蠻力破解者好得多。
RSA不對稱的公私密鑰密碼系統的概念歸功于WhitfieldDiffie和MartinHellman,后者于1976年發表了這一概念。他們還引入了數字簽名并試圖應用數論。他們的公式使用了一個共同秘密密鑰,它是從一些數字的取冪創建的,以一個素數為模。然而,他們留下了實現單向函數的問題,可能是因為當時沒有很好地研究因子分解的困難。
麻省理工學院的RonRivest,AdiShamir和LeonardAdleman在一年的時間里做了幾次嘗試,創造了一個難以反轉的單向函數。作為計算機科學家,Rivest和Shamir提出了許多潛在的功能,而Adleman作為一名數學家,負責發現他們的弱點。他們嘗試了許多方法,包括“基于背包”和“置換多項式”。有一段時間,他們認為由于矛盾的要求,他們想要實現的目標是不可能的。1977年4月,他們在學生家里度過逾越節,喝了大量的Manischewitz午夜左右回到家中的葡萄酒。Rivest,無法入睡,躺在沙發上,帶著數學教科書,開始思考他們的單向功能。他花了剩下的時間將他的想法正式化,并且他在黎明時分準備了大部分論文。該算法現在稱為RSA-它們的姓氏的首字母與他們的論文的順序相同。
CliffordCocks是一位為英國情報機構政府通信總部(GCHQ)工作的英國數學家,于1973年在內部文件中描述了一個等效系統。然而,考慮到當時需要實施它的相對昂貴的計算機,RSA是被認為主要是好奇心,據公開所知,從未被部署過。然而,由于其絕密的分類,他的發現直到1997年才被揭示。
總結:rsa是非對稱算法,破解需要找到對應極大值素數,而這在目前計算機上是沒法完成的,特別是2048位以上,破解只能靠因式分解。彩虹表直接對應hash查找,只需要生成足夠的hash對應表就可以找到密碼,而密碼的可能性數量和密碼長度有關,在一個可控范圍內