2012.2.25 參加了tup第20期 網際網路安全:
洩密門事件給網際網路安全敲響警鐘,使得原來的使用者資訊加密方式受到很大威脅。原來的加密方式是相同的明文經過md5雜湊加密後的密文相同,當某站點受到拖庫攻擊後,黑客統計出使用頻率最高的前n個密文(這個比例可以達到很高),反向推算出明文,那麼這些使用者的資訊相當於已經洩露。
現在流行的做法是加鹽。在使用者的密碼中加入其他成分,例如使用者的id、註冊時間、註冊郵件等使用者自有且不變的資訊,然後再md5加密,這樣即使使用者的明文密碼相同,在資料庫中儲存的密文也各不相同。
這種做法防止的是前面提到的統計攻擊,但是預防不了針對單個使用者密碼明文的暴力破解,或者單個使用者的密碼洩露。
有些站點會均衡使用者的密碼分布,例如我想要註冊密碼123456,站點通過後台查詢後提示這個密碼已經超過1%的人在用,讓換其他密碼。這種做法是為使用者好,但是潛在的風險是如果這個均衡表洩露,就相當於很大一部分使用者資訊的洩露。
童志明老師提到的一點很好,有些問題不是演算法的問題,而是如何合理使用的問題,那些標準演算法是經過嚴格的數學推導和科學驗證,與其研究特定演算法不如改進使用策略,改善使用者的使用習慣。
使用者密碼加鹽加密
加鹽加密是一種對系統登入口令的加密方式,它實現的方式是將每乙個口令同乙個叫做 鹽 salt 的n位隨機數相關聯。無論何時只要口令改變,隨機數就改變。隨機數以未加密的方式存放在口令檔案中,這樣每個人都可以讀。不再只儲存加密過的口令,而是先將口令和隨機數連線起來然後一同加密。加密後的結果放假口令檔案中。...
密碼加鹽處理
salting password 對密碼進行一些混淆增加破解的難度 一般對密碼都不會是明文儲存,而是對密碼進行md5處理,增強反向解密難度。但這樣還是能可以找出破綻。如果使用者可以檢視資料庫,那麼他可以觀察到自己的密碼和別人的密碼加密後的結果都是一樣,那麼,就會知道別人用的和自己就是同乙個密碼。對於...
給你的密碼加鹽
最開始接觸web開發時,對於使用者表的密碼基本是明文儲存,如 username password zp1996 123456 zpy 123456789這種方式可以說很不安全,一旦資料庫洩漏,那麼所以得使用者資訊就會被洩漏。之前,國內普遍採用這種方式,造成了很多的事故,如csdn600萬使用者資訊洩...