Security ❀ Web系統中的加密措施

Web系統中的加密措施

標準的加密方法是對用戶提交的參數進行加密後再傳輸,避免參數在傳輸過程中被劫持,導致用戶數據丟失,當數據傳輸到Web服務器時,將參數解密後處理,這個過程中存在兩種情況:

(1)不需要服務器知道明文的內容
這種情況常用於用戶隱藏信息,如用戶密碼。Web系統在存儲用戶密碼時不會直接存儲明文密碼,而是預先設定加密算法,將用戶的隱藏信息加密後存儲在數據庫中,這樣可在系統運維過程中避免管理人員直接觀察並獲取用戶的密碼信息,這種情況下,經常用MD5/SHA-1來實現加密;
嚴格來說,MD5/SHA-1是一種信息摘要算法,可以將任意長度的明文內容轉換爲長度固定的密文,並且轉換過程不可逆,相同的內容每次執行算法得到的密文完全相同,Web系統存儲的內容就是經過MD5/SHA-1轉換的密文,Web系統將用戶密文與數據庫中的密文進行對比即可,直接使用MD5/SHA-1並不安全,有大量彩虹表(存儲明文與密文的表)存在,可以間接實現密碼破解的效果,因此Web系統常用SALT方式提升破解難度,過於簡單的SALT也存在安全隱患;
此外,MD5/SHA-1還存在碰撞問題,不同明文利用MD5/SHA-1計算之後得到的密文可能相同;

(2)需要服務器知道明文的內容
除了用戶的個人隱私信息之外,客戶端發起的請求中還包含大量需要服務器處理的內容,如訂單信息、留言等;由於HTTP協議在傳輸過程爲明文傳輸,就會導致信息泄露問題出現;
使用HTTPS即可解決上述問題,但是HTTPS並不是完全免費的服務;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章