iOS - 資料加密
作者:Mitchell
一、簡介
- 在iOS開發中應用最廣泛的資料加密方式就是 MD5 加密,由於其加密的不可逆性,經常用於使用者資料的加密。
- 什麼是MD5
- 全稱是 Message Digest Algorithm5 訊息摘要演算法第5版
- MD5特點
- 輸入兩個不同的明文不會得到相同的輸出值
- 根據輸出值,不能得到原始的明文,即其過程不可逆
- MD5應用
- 由於MD5有很好的安全性,
- MD5改進
- 現在MD5不再是絕對安全,對此,可以對MD5稍作改進,以增加解密的難度
- 加鹽:在明文的固定位置插入字串,然後再進行MD5
- 先加密,後亂序:先對明文進行MD5,然後對加密得到的MD5串的字元進行亂序
- 目的:即便攻破了資料庫,也無法拿到真正的密碼。
- 封裝:以下是對於 MD5 的封裝
- (NSString *)md5String
{
const char *string = self.UTF8String;
int length = (int)strlen(string);
unsigned char bytes[CC_MD5_DIGEST_LENGTH];
CC_MD5(string, length, bytes);
return [self stringFromBytes:bytes length:CC_MD5_DIGEST_LENGTH];
}
{
NSMutableString *mutableString = @"".mutableCopy;
for (int i = 0; i < length; i++)
[mutableString appendFormat:@"%02x", bytes[i]];
return [NSString stringWithString:mutableString];
}
二、企業中的應用
- 使用者登入密碼傳遞,發起請求,後臺返回隨機生成的字串,後臺與客戶端協商字串的插入位置,將拼接好的字串經過MD5加密(可能多次),再返回給後臺,後臺根據返回的資料和資料庫中的資料對比判斷資料是否正確。
相關文章
- iOS中使用RSA對資料進行加密解密iOS加密解密
- 資料加密加密
- iOS資料加密(Base64,雜湊函式,AES,RSA)iOS加密函式
- 資料庫加密資料庫加密
- oracle資料加密Oracle加密
- 透明資料加密加密
- iOS開發之AES+Base64資料混合加密與解密iOS加密解密
- Android資料加密之Aes加密Android加密
- Android資料加密之Rsa加密Android加密
- Android資料加密之Des加密Android加密
- iOS加密——概述iOS加密
- 資料加密(對稱加密和非對稱加密)加密
- 資料加密-國密SM2對資料進行加密加密
- 2.9.2 透明資料加密加密
- ORACLE資料加密(轉)Oracle加密
- JuiceFS 資料加密原理UI加密
- Oracle透明資料加密Oracle加密
- 資料加密方式:APM加密
- iOS 登入加密iOS加密
- iOS中加密、解密iOS加密解密
- 編碼、摘要和加密(三)——資料加密加密
- Android資料加密之MD5加密Android加密
- PostgreSQL 資料加密之 pgcryptoSQL加密GC
- Oracle Data Redaction資料加密Oracle加密
- Oracle TDE(透明資料加密)Oracle加密
- oracle 資料庫加加密。Oracle資料庫加密
- DES對稱資料加密加密
- 資料加密 第六篇:透明檔案加密加密
- iOS 開發加密做法iOS加密
- iOS 幾種加密方法iOS加密
- iOS MD5加密iOS加密
- Win7資料夾怎麼加密 win7資料夾加密技巧Win7加密
- iOS逆向資料iOS
- 利用otter對敏感資料加密加密
- Flutter 的加密和解密資料Flutter加密解密
- 怎麼給資料夾加密加密
- Mac如何給資料夾加密Mac加密
- 資料亂碼(之.net加密)加密