[英]How did people transverse through the LinkedIn password file so fast?
我已經獲得了該文件,它是258 MB(解壓縮)已經有網站能夠在文件發布之日的下午2:00之前確認列表中是否有哈希密碼。 我昨晚獲得了它,並編寫了一個簡短的C ++程序來逐行讀取文件並將其插入MySQL
ifstream fin ("c:/xampp/htdocs/combo_not.txt");
string myStr;
while(getline(fin, myStr))
{
mysql_query(conn, ("INSERT INTO passwords(password) VALUES('" + myStr + "')").c_str());
}
我意識到這個問題可能被貶低(甚至關閉)但這是一個真正的問題,我想要一個答案。 如何在很短的時間內橫向傳播文件? 您無法在記事本中打開該文件並按CTR F
並搜索該方式,因為該程序將耗盡內存。 到目前為止,我的表只有不到100萬條記錄,而c ++控制台程序現在已經運行了大約12個小時或更長時間。
你使用索引..二進制搜索和散列非常非常快。
<?php
echo sha1("password")
?>
打開命令promt並鍵入以下命令:
sort hacked.txt /o sorted_data.txt
文件排序后,然后在中鍵入此命令
findstr "string" sorted_data.txt
如果您的密碼在列表中,它將在終端中打印出來。 如果你的密碼不在列表中,那么嘗試用“0”字符替換前五(5)令人驚訝的是,我的密碼在列表中
MySQL默認啟用自動提交 。 這意味着您正在為每一行啟動並提交一個包含磁盤寫入和刷新的事務。
使用以下命令設置自動提交:
mysql_autocommit(conn, 0);
在循環之前,然后調用:
mysql_commit(conn);
循環之后。
他們可能沒有嘗試將密碼插入數據庫,或者沒有嘗試使用散列密碼本身的聚簇索引將密碼插入數據庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.