1 網路請求的安全方案 1.1 https請求,最好有安全交互平臺。 1.2 對重要的參數請求進行加密(推薦AES,ERSA加密)。 1.3 伺服器返回數據時,對重要數據進行加密。 1.4 不要把密鑰寫到代碼里。可以先通過非對稱加密的介面獲取密鑰,然後再在後面的介面通信中用這個密鑰進行加密。 1.5 ...
1 網路請求的安全方案
1.1 https請求,最好有安全交互平臺。
1.2 對重要的參數請求進行加密(推薦AES,ERSA加密)。
1.3 伺服器返回數據時,對重要數據進行加密。
1.4 不要把密鑰寫到代碼里。可以先通過非對稱加密的介面獲取密鑰,然後再在後面的介面通信中用這個密鑰進行加密。
1.5 密鑰要定期更換,
如果密鑰是寫在代碼里的,就等APP升級新的版本的時候,新版本的APP和其他對應的介面版本都修改為新密鑰。
如果密鑰是從介面通過非對稱加密獲取的,直接修改服務端。
2 客戶端安全方案
2.1 不要在plist文件、項目中的靜態文件中存儲關鍵信息,如果存儲,進行加密。
2.2 NSUserDefaults,sqlite存儲文件進行數據加密。對程式中出現的URL進行編碼加密,防止URL被靜態分析。
2.3 代碼混淆。比如用巨集來簡單混淆。方法名和方法體進行混淆。
2.4 在release環境下,NSLog不要列印日誌,在swift中列印用print。
2.5 在代碼中,方法名不要有key、password、getIPAddress等字眼。
2.6 登錄失敗時不要提示明確判斷用戶名錯誤或密碼錯誤。
2.7 登錄時採用兩種或兩種以上組合的鑒別技術(如:數字證書體系、硬體令牌、生物特征、一次性動態口令等)實現用戶身份鑒別。
2.8 使用加密軟鍵盤,鍵盤隨機,隱私數據輸入的時候,進行全部屏蔽。
2.9 隱私數據顯示的時候,不要明文顯示,部分或全部屏蔽。(黑客拿到用戶姓名、手機號後,進行詐騙)。
3.0 使用防截屏功能。