在當今的互聯網時代,信息安全問題常常發生,如何保證信息的安全成爲開發者不得不面對的問題。html
信息安全的CIA原則,大體闡述了實踐信息安全的幾個基本原則:算法
保密性(Confidentiality):確保信息在存儲、使用、傳輸過程當中不會泄漏給非受權用戶或實體。安全
完整性(Integrity):確保信息在存儲、使用、傳輸過程當中不會被非受權用戶篡改,同時還要防止受權用戶對系統及信息進行不恰當的篡改,保持信息內、外部表示的一致性。服務器
可用性(Availability):確保受權用戶或實體對信息及資源的正常使用不會被異常拒絕,容許其可靠而及時地訪問信息及資源。網絡
在Web時代,信息安全一般須要考慮以下幾個方面:ide
中間人攻擊
等)越權攻擊
,SQL注入
,DDos攻擊
等)當訪問一個具備權限的接口的時候,服務器須要驗證訪問者的身份,而如何鑑定訪問者的身份呢? 一般的狀況下,咱們會使用密碼,指紋,證書,驗證碼,TOKEN 等手段來驗證一個用戶的真實身份。在這個背後,隱藏着一個問題:爲何密碼,指紋,TOKEN,能夠驗證訪問者的身份?爲了回答這個問題,咱們能夠發現一個共性,**就是這些信息(密碼,指紋,TOKEN)只有訪問者知道,他人不知道,因此回答正確,就能驗證訪問者的身份。這樣子就能夠驗證訪問者的身份了。**固然若是被第三人知道了,那麼就GG 思密達了。加密
關於TOKEN,就不得不說移動端的崛起,在2008年以前,基本上提供的服務都是基於Web的,經過SESSION + COOKIE來完成,然而到了後來,移動端開始崛起。開發者遇到這COOKIE很差用,跨服務器訪問資源等等問題。爲了解決這個問題,出現了OAuth2.0的標準,經過這個標準,基本上能夠解決移動端身份驗證的問題。這裏簡述一下一般移動端TOKEN使用的場景:設計
而TOKEN具體是什麼?一般狀況下,它對移動端來講就是一段隨機數字。固然,對於服務器,能夠經過對稱加密的算法在TOKEN上作一些特別的設計,如加入用戶名之類的。code
HTTPS 能夠算是現今信息安全的基石之一了,採用SSL進行傳輸數據。以下是HTTPS 的基本過程圖解:htm
大體的階段爲:
而且驗證域名是否一致
)HTTPS協議能防禦大部分的網絡攻擊,在構建Web站點的時候,建議對關鍵資源進行HTTPS協議傳輸。