91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

iOS網絡開發(4)網絡數據加密

發布時間:2020-06-27 19:39:41 來源:網絡 閱讀:467 作者:ymanmeng123 欄目:移動開發
  • 數據存儲原則

任何應用不能在本地直接存儲與安全相關的用戶信息

任何應用不能向服務器傳輸與安全相關的而用戶信息


常用的加密算法:

     MD5:不可逆的算法,用一段數據每次加密后都是一樣的

     SHA-1:美國國家安全局設計并使用



  • MD5算法的實現

需要包含頭文件<CommonCrypto/CommonDigest.h>

步驟:

    1)將待加密OC字符串轉化為C語言字符串

    2)使用CC_MD5()函數將待加密C語言字符串加密,獲得加密后的數據

    3)將加密后的數據,轉化為OC字符串

    注意:加密后的數據,每一個字節的值以2位16進制表示的字符串形式作為結果


通常將字符串加密的方法封裝在NSString的分類中,如:

@implementation NSString (MD5Coding)

- (NSSting*) MD5 {
    const char * cStr = self.UTF8String;
    unsigned char digest[CC_MD5_DIGEST_LENGTH];
    
    CC_MD5(cStr, strlen(cStr), digest);
    
    NSMutableString * result = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH*2];
    for ( int i=0; i< CC_MD5_DIGEST_LENGTH; i++ ) {
        [result appendFormat:@"%02x", digest[i]];
    }
    return result;
}

@end


  • SHA-1算法加密

使用SHA-1算法加密的步驟和MD5基本類似,使用CC_SHA1()函數代替CC_MD5()函數

     

@implementation NSString (SHA1Coding)

- (NSSting*) SHA1 {
    const char * cStr = self.UTF8String;
    NSData * data = [NSData dataWithBytes:cStr length:self.length];
    unsigned char digest[CC_SHA1_DIGEST_LENGTH];
    
    CC_SHA1(data.bytes, data.length, digest);
    
    NSMutableString * result = [NSMutableString stringWithCapacity:CC_SHA1_DIGEST_LENGTH*2];
    for ( int i=0; i< CC_SHA1_DIGEST_LENGTH; i++ ) {
        [result appendFormat:@"%02x", digest[i]];
    }
    return result;
}

@end


  • MD5的應用

這兩種算法中,MD5應用最為廣泛

1)本地存儲數據時,如密碼等私密信息存儲在偏好設置中,存儲MD5加密后的

2)緩存文件(如圖片)存儲在緩存文件下,將對應的URL進行MD5加密后作為名字

...



向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

潞西市| 依安县| 罗城| 南澳县| 库尔勒市| 天津市| 邳州市| 淮滨县| 永州市| 彰武县| 正定县| 吴旗县| 连城县| 手游| 叙永县| 阳原县| 黄梅县| 安新县| 宁都县| 黔西县| 秦皇岛市| 焦作市| 陆河县| 呼图壁县| 土默特右旗| 木里| 青龙| 托克逊县| 五家渠市| 泾源县| 台北县| 桑日县| 新龙县| 巫山县| 青田县| 阳泉市| 自贡市| 常州市| 赫章县| 周口市| 谢通门县|