關(guān)于加密解密

1.base64:
1>嚴(yán)格的說 base64 并不算是加密,只是一種編碼的算法, base64 無論是加密還是解密,都是直接操作二進(jìn)制數(shù)據(jù),系統(tǒng)中提供了關(guān)于 base64的加密解密的方法,都是以 base64 開頭
2>base64可以將任意的二進(jìn)制數(shù)據(jù)(例如圖片/視頻/文件等的二進(jìn)制數(shù)據(jù))編碼成字符串,在網(wǎng)絡(luò)上傳輸,
3>base64編碼后的數(shù)據(jù)由a-z,A-Z,/ + =這些符號表示
4>base64編碼之后數(shù)據(jù)會變大

2.加密的要素:算法和秘鑰,算法一般是公開的,需要做的是保護(hù)秘鑰的安全
1>對稱加密算法:
加密解密用的都是相同的秘鑰,
速度快,適合對大數(shù)據(jù)加密(例如視頻)
典型的算法: DES 3DES AES

2>非對稱加密算法:
算法公開,可逆的加密算法
用公鑰加密,用私鑰解密, (也可以用私鑰加密,用公鑰解密)
速度慢,適合對小數(shù)據(jù)加密,但是更加安全
典型的算法: RSA

3>普遍的加密方法:
原始數(shù)據(jù)用對稱加密,在使用 非對稱加密 將 對稱加密的密鑰 進(jìn)行加密,然后在從網(wǎng)絡(luò)上傳輸

4>散列算法:
散列算法經(jīng)常用來給密碼進(jìn)行加密,(防止后臺工作人員竊密)
不可逆加密: MD5 / SHA1 / SHA256 / SHA512

5>MD5 加密后是32字節(jié)
MD5雖然是不可逆的算法,(但是可以暴力破解,解決的辦法是加鹽)
MD5加鹽:原密碼+一個(gè)復(fù)雜的字符串,然后在進(jìn)行 MD5運(yùn)算(復(fù)雜程度還不夠)
HMAC:原密碼+一個(gè)字符串,進(jìn)行 MD5運(yùn)算,將運(yùn)算的結(jié)果+原密碼在進(jìn)行 MD5加密,(從網(wǎng)絡(luò)截取數(shù)據(jù),并不破解,直接發(fā)送給服務(wù)器,也可以達(dá)到解密的效果,解決辦法+時(shí)間標(biāo)識)
MD5加時(shí)間戳:
將一個(gè)字符串,進(jìn)行 MD5加密計(jì)算,得到一個(gè) MD5值
把原密碼和之前生成的 MD5值,再進(jìn)行 HMAC加密
從服務(wù)器獲取當(dāng)前時(shí)間到分鐘的字符串
將第二部步產(chǎn)生的HMAC 值+時(shí)間 和第一步產(chǎn)生的 MD5值進(jìn)行HMAC加密

6>鑰匙串
將密碼保存到本地,不能保存原文,需要進(jìn)行加密處理,以防沙盒文件漏,通過系統(tǒng)提供的鑰匙串功能,可以在本地保存密碼,系統(tǒng)使用 AES 的方式對密碼進(jìn)行加密
使用SSKeychain 框架進(jìn)行鑰匙串操作

7>ECB 和 CBC 只是加密方式并不是加密算法,傳統(tǒng)的 AES 和 DES 都支持這兩種方式
ECB: 電子密碼本 將要加密的數(shù)據(jù)分塊,分別加密,數(shù)據(jù)塊的加密過程相互獨(dú)立,互不影響.例如,相同的數(shù)據(jù)塊加密結(jié)果是相同的
CBC: 密碼鏈條 將要加密的數(shù)據(jù)分塊,分別加密,后加密的數(shù)據(jù)塊依賴于前面的加密結(jié)果.例如,相同的數(shù)據(jù)塊加密結(jié)果是不同的

8>DES/3DES/AES
DES:數(shù)據(jù)加密標(biāo)準(zhǔn)(用的很少因?yàn)閺?qiáng)度不夠)
3DES:使用3個(gè)密鑰,對相同的數(shù)據(jù)執(zhí)行3次加密,強(qiáng)度增強(qiáng)(維護(hù)密鑰比較麻煩)
AES:高級加密標(biāo)準(zhǔn)(目前美國國家安全局,蘋果鑰匙串使用的都是 AES)

9>RSA
非對稱加密
算法強(qiáng)度復(fù)雜,加密依賴于算法與密鑰
加密解密速度慢

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 這篇文章主要講述在Mobile BI(移動商務(wù)智能)開發(fā)過程中,在網(wǎng)絡(luò)通信、數(shù)據(jù)存儲、登錄驗(yàn)證這幾個(gè)方面涉及的加密...
    雨_樹閱讀 3,040評論 0 6
  • 本文主要介紹移動端的加解密算法的分類、其優(yōu)缺點(diǎn)特性及應(yīng)用,幫助讀者由淺入深地了解和選擇加解密算法。文中會包含算法的...
    蘋果粉閱讀 11,679評論 5 29
  • 首先羅列一些知識點(diǎn): 1.加密算法通常分為對稱性加密算法和非對稱性加密算法:對于對稱性加密算法,信息接收雙方都需事...
    JonesCxy閱讀 1,578評論 2 4
  • 1.數(shù)據(jù)安全 01 攻城利器:Charles(公司中一般都使用該工具來抓包,并做網(wǎng)絡(luò)測試) 注意:Charles在...
    Lucky丶晴閱讀 1,611評論 0 9
  • 1、裝修怎么弄?。勘诩堬L(fēng)格選啥樣的??? 裝修風(fēng)格應(yīng)該偏居家舒適的感覺。用主題房會更吸引人。例如:hello Kit...
    夜貓子x景閱讀 266評論 0 1

友情鏈接更多精彩內(nèi)容