iOS 加密方案

常見的加密算法介紹

DES:對稱加密灾常,加密和解密用同一個秘鑰舌仍。

AES:對稱加密,加密和解密用同一個秘鑰,是下一代的加密算法標(biāo)準(zhǔn)泰偿,比DES速度快熄守,安全級別高。它可以使用128甜奄、192和256位密鑰柠横。AES使用幾種不同的方法來執(zhí)行排列和置換運算,根據(jù)它的這種加密算法我們可以自己隨意生成AES密鑰课兄,比如隨機(jī)的16位數(shù)字字符串就可以作為128位秘鑰牍氛。

RSA: 非對稱加密,用公鑰加密烟阐,私鑰解密搬俊。借助于openssl命令行生成RSA密鑰對紊扬。

四種國秘算法:sm1:為對稱加密。其加密強(qiáng)度與AES相當(dāng)唉擂。sm2:非對稱加密餐屎,由于該算法基于ECC,故其簽名速度與秘鑰生成速度都快于RSA玩祟,很多銀行都喜歡用這種加密算法腹缩。sm3:對稱加密,安全級別空扎。 sm3:一種簽名算法類似md5藏鹊。sm4:對稱加密算法,類似AES转锈。

加密方案介紹

1. 通訊加密

方案:非對稱加密+對稱加密盘寡,例如RSA+AES、sm2+sm4撮慨。

每次通信客戶端隨機(jī)生成AES秘鑰竿痰,用AES秘鑰加密報文,用RSA共鑰加密AES秘鑰砌溺。將加密后的報文y以及一些必要信息包在頭部發(fā)送到服務(wù)器影涉。后臺首先用RSA秘鑰解密得到AES秘鑰,再用AES秘鑰解密報文抚吠。

雖然RSA加密算法的安全性很高常潮,但是RSA加解密的速度非常慢而且RSA不能加密過長的報文,這就限制了單獨使用RSA加密傳輸?shù)膱笪目ΑES算法的安全性不及RSA但是對加密報文的長度是沒有限制的而且加解密運算速度很快喊式。

示例代碼:

NSMutableString *AESKey = [[NSMutableString alloc] init];

for (int i = 0; i < 16; i ++)

{

[AESKey appendFormat:@"%d", arc4random() % 10];

}

NSData *AESKeyData = [AESKey dataUsingEncoding:NSUTF8StringEncoding];

data = [data dataByAES128Operation:FMFAESEncrypt withMode:FMFAESCBC key:AESKeyData iv:[@"1269571569321021" dataUsingEncoding:NSUTF8StringEncoding]];

NSData *secureKey = nil;

RSAKey *RSAPublicKey = [RSAKey getFromBundle:@""];

secureKey = [AESKeyData dataByRSAEncodingWithPublicKey:RSAPublicKey];

? ?a.以上代碼不可以直接使用,需要配合openssl的加密算法萧朝。

? ?b.對以上通訊算法可以參入md5摘要算法岔留,服務(wù)器可以直接驗證報文被篡改。

2.鍵盤加密

為了防止用戶的密碼在鍵盤輸入時被竊取检柬,一般是用戶輸入的密碼加密之后上傳到服務(wù)器献联。但是這種情況下用戶的密碼也可能被別人在傳輸過程中的路由器截取。為了解決這個問題何址,用戶輸入的密文采取一次一秘的方案里逆。

在每次密碼輸入鍵盤談起之前向后臺請求隨機(jī)因子,用戶密碼的加密和隨機(jī)因子以某種方式綁在一起用爪。這就保證了1.同樣的密碼用戶每次傳輸?shù)拿匚亩际遣灰粯拥脑海唤厝∫彩菦]有關(guān)系的。2.即使知道了客戶端的加密算法和解密秘鑰沒有后臺的隨機(jī)因子偎血,密碼也是不會被破解诸衔。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末盯漂,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子笨农,更是在濱河造成了極大的恐慌就缆,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,214評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件谒亦,死亡現(xiàn)場離奇詭異竭宰,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)诊霹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評論 2 382
  • 文/潘曉璐 我一進(jìn)店門羞延,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人脾还,你說我怎么就攤上這事∪肜ⅲ” “怎么了鄙漏?”我有些...
    開封第一講書人閱讀 152,543評論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長棺蛛。 經(jīng)常有香客問我怔蚌,道長,這世上最難降的妖魔是什么旁赊? 我笑而不...
    開封第一講書人閱讀 55,221評論 1 279
  • 正文 為了忘掉前任桦踊,我火速辦了婚禮,結(jié)果婚禮上终畅,老公的妹妹穿的比我還像新娘籍胯。我一直安慰自己,他們只是感情好离福,可當(dāng)我...
    茶點故事閱讀 64,224評論 5 371
  • 文/花漫 我一把揭開白布杖狼。 她就那樣靜靜地躺著,像睡著了一般妖爷。 火紅的嫁衣襯著肌膚如雪蝶涩。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,007評論 1 284
  • 那天絮识,我揣著相機(jī)與錄音绿聘,去河邊找鬼。 笑死次舌,一個胖子當(dāng)著我的面吹牛熄攘,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播垃它,決...
    沈念sama閱讀 38,313評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼鲜屏,長吁一口氣:“原來是場噩夢啊……” “哼烹看!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起洛史,我...
    開封第一講書人閱讀 36,956評論 0 259
  • 序言:老撾萬榮一對情侶失蹤惯殊,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后也殖,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體土思,經(jīng)...
    沈念sama閱讀 43,441評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,925評論 2 323
  • 正文 我和宋清朗相戀三年忆嗜,在試婚紗的時候發(fā)現(xiàn)自己被綠了己儒。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,018評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡捆毫,死狀恐怖闪湾,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情绩卤,我是刑警寧澤途样,帶...
    沈念sama閱讀 33,685評論 4 322
  • 正文 年R本政府宣布,位于F島的核電站濒憋,受9級特大地震影響何暇,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜凛驮,卻給世界環(huán)境...
    茶點故事閱讀 39,234評論 3 307
  • 文/蒙蒙 一裆站、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧黔夭,春花似錦宏胯、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至扣草,卻和暖如春了牛,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背辰妙。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評論 1 261
  • 我被黑心中介騙來泰國打工鹰祸, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人密浑。 一個月前我還...
    沈念sama閱讀 45,467評論 2 352
  • 正文 我出身青樓蛙婴,卻偏偏與公主長得像,于是被迫代替她去往敵國和親尔破。 傳聞我的和親對象是個殘疾皇子街图,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,762評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 本文將分兩個專題去理解HTTPS浇衬。 專題一:HTTPS為什么安全 1、http為什么不安全餐济? http協(xié)議屬于明文...
    kaitoulee閱讀 5,270評論 11 82
  • 本文主要介紹移動端的加解密算法的分類耘擂、其優(yōu)缺點特性及應(yīng)用,幫助讀者由淺入深地了解和選擇加解密算法絮姆。文中會包含算法的...
    蘋果粉閱讀 11,459評論 5 29
  • 目錄 準(zhǔn)備 分析2.1. 三次握手2.2. 創(chuàng)建 HTTP 代理(非必要)2.3. TLS/SSL 握手2.4. ...
    RunAlgorithm閱讀 37,881評論 12 117
  • 前言 在這個互聯(lián)網(wǎng)和移動互聯(lián)網(wǎng)高速發(fā)展的時代醉冤,數(shù)據(jù)安全成了企業(yè)的頭等大事。數(shù)據(jù)安全的范疇很大篙悯,包含:技術(shù)安全蚁阳、服務(wù)...
    淡淡藍(lán)調(diào)g閱讀 9,759評論 8 22
  • 這篇文章主要講述在Mobile BI(移動商務(wù)智能)開發(fā)過程中,在網(wǎng)絡(luò)通信鸽照、數(shù)據(jù)存儲螺捐、登錄驗證這幾個方面涉及的加密...
    雨_樹閱讀 2,334評論 0 6