當然如果破譯壹個有8位而且有可能擁有大小寫字母、數字、以及符號的密碼用普通的家用電腦可能會用掉幾個月甚至更多的時間去計算,其組合方法可能有幾千萬億種組合。這樣長的時間顯然是不能接受的。其解決辦法就是運用字典,所謂"字典"就是給密碼鎖定某個範圍,比如英文單詞以及生日的數字組合等,所有的英文單詞不過10萬個左右這樣可以大大縮小密碼範圍,很大程度上縮短了破譯時間。
在壹些領域,為了提高密碼的破譯效率而專門為其制造的超級計算機也不在少數,例如IBM為美國軍方制造的"颶風"就是很有代表性的壹個。
用窮舉法解題時,就是按照某種方式列舉問題答案的過程。針對問題的數據類型而言,常用的列舉方法壹有如下三種:
(1)順序列舉 是指答案範圍內的各種情況很容易與自然數對應甚至就是自然數,可以按自然數的變化順序去列舉。
(2)排列列舉 有時答案的數據形式是壹組數的排列,列舉出所有答案所在範圍內的排列,為排列列舉。
(3)組合列舉 當答案的數據形式為壹些元素的組合時,往往需要用組合列舉。組合是無序的。
現今稍具嚴密度的密碼驗證機制都會設下試誤的可容許次數以應對使用密碼窮舉法的破解者。當試誤次數達到可容許次數時,密碼驗證系統會自動拒絕繼續驗證,有的甚至還會自動啟動入侵警報機制。