[mysql]MD5加密 VS. sha1加密
一般建立會員資料的時候,密碼都會使用加密來隱藏密碼,這樣做可以避免哪天資料庫被駭客入侵,這樣大批會員權益會受損的危險,但是加密方式這麼多,到底哪一種加密方式比較好?就以往我的經驗來看,會員部分加密有使用MD5或Sha1加密,到底哪一種加密方式比較安全呢?
而到底什麼是MD5加密呢?
MD5的全名是Message-Digest Algorithm 5Message-Digest Algorithm 5(資訊-摘要演算法 5),是基於MD2、MD3和MD4,,在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rivest開發出來的。是一種不可逆的加密算法,目前還沒有實際可以反逆推回的公式,但已有網站提供暴力破解MD5的資料查詢。
那什麼又是SHA1加密呢?
SHA1其實是SHA家族中的其中一員,SHA的全名是Secure Hash Algorithm(安全雜湊演算法) ,是由美國國家安全域(NSA)所設計,並由美國國家標準與技術研究院(NIST)發佈;是美國政府標準。而SHA1是基於MD5發展而來,SHA1比MD5多32位密文,所以更安全,但由於長度較長,所以使用SHA1的運算時間會比MD5還長一些。
最後簡單整理一下:
明碼 = 不加密,安全度為0
md5 = 比較安全,但是容易破解
sha1 = 比md5安全
sha256 = 比sha1安全
sha 512 = 比sha 256安全