密碼學(xué)

開發(fā)中總會遇到許多關(guān)于密碼加密的問題,現(xiàn)在簡單總結(jié)一下

1、RSA加密

計算機剛開始的加密方式是對稱加密卓鹿,也就是加密纤壁、解密使用了同樣的規(guī)則(簡稱“密鑰”)。

  • 甲方使用密鑰對數(shù)據(jù)加密
  • 乙方使用同一種密鑰對甲方加密后的數(shù)據(jù)進行解密

也就是說這里面密鑰的傳遞成為數(shù)據(jù)解密的關(guān)鍵攻走,但又容易被截取,所以后來就出來了RSA加密:
使用兩把不同的密鑰對數(shù)據(jù)進行加密、解密箫攀,同樣能達到以上加密方式的效果,卻又減少了密文被破解的可能性幼衰。這里兩把密鑰分別稱為:公鑰和私鑰靴跛。

  • 乙方生成公鑰和私鑰,這里公鑰是公開的渡嚣,任何人可以獲取梢睛,而私鑰是私密的
  • 甲方通過公鑰加密后的數(shù)據(jù)傳遞給乙方
  • 乙方拿到數(shù)據(jù)后肥印,通過私鑰進行解密

這樣一種對數(shù)據(jù)進行加密、解密的方式就是非對稱加密绝葡,用三位數(shù)學(xué)家的名字頭表示深碱,分別為R、S藏畅、A敷硅,所有非對稱加密又被成為RSA加密。

2愉阎、哈希(散列)函數(shù)

一般來說竞膳,我們現(xiàn)在用得最多的就是這種方式的加密:MD5、SHA1诫硕、SHA256等

  • MD5:就是一個信息摘要

MD5的實現(xiàn)原理:

  • 對數(shù)據(jù)進行補位以被512整除得448坦辟,這里補位是指即使元數(shù)據(jù)能被整除,也需要進行補位章办,所以補位的范圍為[1, 512]锉走,這時,補位后的數(shù)據(jù)再加上64位就能被512整除藕届;
  • 再把原數(shù)據(jù)補位到能被64位整除挪蹭,并添加到上一步結(jié)果的后面,這時數(shù)據(jù)如果大于2^64就將高位符64位之后的刪除休偶,只保留低位數(shù)據(jù)并且進行小端排序(低位在前)梁厉,現(xiàn)在數(shù)據(jù)就可以表示為[S0, S1, S2, ..., Sm?2, Sm?1],其中 m 為 16 的倍數(shù)踏兜。
  • 初始化4字節(jié)緩存區(qū)以計算出MD5的值词顾,在 MD5 算法中有四個 32 位(bit) 16 進制的整數(shù)的寄存器,稱為鏈接變量碱妆,低字節(jié)在前肉盹。
  • 我們分別對上述4個32位的整數(shù)按照自定義的非線性輔助函數(shù)進行循環(huán),在總長度/16次大循環(huán)后得到4個32位的整數(shù)疹尾,按照低位到高位的拼接就得到了MD5后的數(shù)值上忍,整個過程是不可逆的。

MD5現(xiàn)在在http://www.cmd5.com/很容易就能得到加密后的結(jié)果纳本,同理也能反推明文窍蓝。這時我們的處理辦法一般是加鹽、HMAC

  • 加鹽:在明文的前面繁成、中間吓笙、后面加上定長的字符串再MD5后得到的密文,但這時鹽又容易被泄漏朴艰,還是不太安全观蓄,于是就出現(xiàn)了HMAC混移。
  • HMAC:在服務(wù)器上由隨機函數(shù)隨機得到鹽,連服務(wù)器都不知道侮穿,由客戶端獲得之后拼接在明文的后面歌径,再MD5后的密文。

這里HMAC有一個應(yīng)用就是設(shè)備鎖亲茅,當(dāng)應(yīng)用第一次登錄時回铛,會將鹽保存在本地,這時如果在另外一臺機子上登錄賬號克锣,而又被鎖住茵肃,就不能從服務(wù)器上得到鹽,從而無法登錄袭祟。

3验残、AES加密

這是一種高級加密方式,美國聯(lián)邦政府巾乳、iOS系統(tǒng)就是通過這種方式加密的您没,比如說鑰匙串。這是一個對稱胆绊、塊加密方式氨鹏。塊就是密碼長度過長可以通過分割,然后再對分割后的小塊進行加密压状,這里密鑰長度和數(shù)據(jù)的分組長度是相互獨立的仆抵。

  • 秘鑰變幻
  • 明文加密
    每次加密所用到的秘鑰是經(jīng)過計算之后得到的擴展秘鑰,而非AES原始輸入秘鑰种冬,這樣就保證密鑰即使被盜也不擔(dān)心密文被破解镣丑。

http://rainman.me/47.html
http://blog.csdn.net/honlangwu/article/details/52621250

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市碌廓,隨后出現(xiàn)的幾起案子传轰,更是在濱河造成了極大的恐慌,老刑警劉巖谷婆,帶你破解...
    沈念sama閱讀 217,542評論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異辽聊,居然都是意外死亡纪挎,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,822評論 3 394
  • 文/潘曉璐 我一進店門跟匆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來异袄,“玉大人,你說我怎么就攤上這事玛臂】就桑” “怎么了封孙?”我有些...
    開封第一講書人閱讀 163,912評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長讽营。 經(jīng)常有香客問我虎忌,道長,這世上最難降的妖魔是什么橱鹏? 我笑而不...
    開封第一講書人閱讀 58,449評論 1 293
  • 正文 為了忘掉前任膜蠢,我火速辦了婚禮,結(jié)果婚禮上莉兰,老公的妹妹穿的比我還像新娘挑围。我一直安慰自己,他們只是感情好糖荒,可當(dāng)我...
    茶點故事閱讀 67,500評論 6 392
  • 文/花漫 我一把揭開白布杉辙。 她就那樣靜靜地躺著,像睡著了一般捶朵。 火紅的嫁衣襯著肌膚如雪奏瞬。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,370評論 1 302
  • 那天泉孩,我揣著相機與錄音硼端,去河邊找鬼。 笑死寓搬,一個胖子當(dāng)著我的面吹牛珍昨,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播句喷,決...
    沈念sama閱讀 40,193評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼镣典,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了唾琼?” 一聲冷哼從身側(cè)響起兄春,我...
    開封第一講書人閱讀 39,074評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎锡溯,沒想到半個月后赶舆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,505評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡祭饭,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,722評論 3 335
  • 正文 我和宋清朗相戀三年芜茵,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片倡蝙。...
    茶點故事閱讀 39,841評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡九串,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情猪钮,我是刑警寧澤品山,帶...
    沈念sama閱讀 35,569評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站烤低,受9級特大地震影響肘交,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜拂玻,卻給世界環(huán)境...
    茶點故事閱讀 41,168評論 3 328
  • 文/蒙蒙 一酸些、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧檐蚜,春花似錦魄懂、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,783評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至咳短,卻和暖如春填帽,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背咙好。 一陣腳步聲響...
    開封第一講書人閱讀 32,918評論 1 269
  • 我被黑心中介騙來泰國打工篡腌, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人勾效。 一個月前我還...
    沈念sama閱讀 47,962評論 2 370
  • 正文 我出身青樓嘹悼,卻偏偏與公主長得像,于是被迫代替她去往敵國和親层宫。 傳聞我的和親對象是個殘疾皇子杨伙,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,781評論 2 354

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

  • 〇、序言 貨幣由于其天然屬性決定了其與安全不可分割的聯(lián)系萌腿,從最早的金庫限匣、保險柜、鏢局到后來的ATM機毁菱、運鈔車米死;從存...
    怒馬2048閱讀 38,769評論 4 79
  • 地址、交易鼎俘、區(qū)塊哲身、網(wǎng)絡(luò)是區(qū)塊鏈數(shù)據(jù)里面最基本最重要的概念。地址用來標(biāo)示一筆交易的支出方和接收方贸伐。所有的交易最終需要...
    右象限閱讀 891評論 0 1
  • 密碼學(xué)概論 原則: 在網(wǎng)絡(luò)上不允許明文傳輸用戶隱私信息; 在本地不允許明文保存用戶隱私信息怔揩; base64 編碼 ...
    獨木舟的木閱讀 470評論 0 0
  • 1.密碼學(xué): RSA—公鑰加密捉邢,私鑰解密脯丝,私鑰加密,公鑰解密伏伐。因式分解宠进,大概50年。 哈希函數(shù)(散例函數(shù))——MD...
    aofeilin閱讀 544評論 0 0
  • 理論書籍是我們教學(xué)實踐的強有力的證據(jù)藐翎。 所以有時間看看理論知識也不錯材蹬。 我聽說半部論語治天下。真的如此嗎吝镣?我應(yīng)該把...
    我心我愿秀閱讀 981評論 0 1