最近公布一個非常豐富的開源庫,如果你需要相冊、錄制、錄音等操作,那么這個也許對你有一定的幫助:
http://www.reibang.com/p/8a0accffd0e1
照常例打出我搜到的相關(guān)文章
http://blog.csdn.net/ouyang_peng/article/details/50983574
https://www.zhihu.com/question/20874499
在講接口加密之前伐坏,先了解AES與RSA的區(qū)別。
(具體算法咱們就不討論了握联,如果一定要討論:https://www.cnblogs.com/awsqsh/articles/4349114.html)
AES:對稱加密桦沉。加密速度快,相比RSA的安全性就沒那么高金闽。
RSA:非對稱加密纯露。算法的密鑰很長,具有較好的安全性代芜,但加密的計算量很大埠褪,加密速度較慢限制了其應用范圍。
1.AES與RSA
對稱加密AES:
如圖所說钞速,服務器(男方)和客戶端(女方)都彼此知道該鑰匙是0101000101,他們通過彼此的鑰匙來進行加密解密嫡秕。
非對稱加密RSA:
如果上面對稱加密AES的一個鑰匙被偷走的話渴语,那么就很容易破解了。
那么非對稱加密就是很好的解決了這個方法昆咽。
上面的圖片可以首先看到鑰匙已經(jīng)不再是一個了驾凶,而是公鑰跟私鑰一起組合的鑰匙,公鑰是可以公開出來的掷酗。首先加密是通過服務器(男方)加密的调违,然后客戶端(女方)通過該公鑰和自己客戶端私下的私鑰進行解密。
也許你們會認為rsa不就多了個公鑰私鑰的區(qū)別么泻轰,其一來說單純一個鑰匙同時在服務端和客戶端容易泄漏出去技肩,其二來說用公鑰和明文推導密文很容易,但根據(jù)公鑰浮声、明文和密文推導私鑰極其難
2.AES與RSA如何配合加密
從上面比較得知亩鬼,由于RSA加解密速度慢殖告,不適合大量數(shù)據(jù)文件加密。AES加密速度很快雳锋。
這樣在傳送機密信息的雙方
1:使用AES對傳輸數(shù)據(jù)加密
2:使用RSA不對稱密碼體制來傳送AES的密鑰
這樣就可以綜合發(fā)揮AES和RSA的優(yōu)點同時避免它們?nèi)秉c來實現(xiàn)一種新的數(shù)據(jù)加密方案。加解密實現(xiàn)流程如圖(同樣是網(wǎng)上找的)羡洁。
那么流程我們明白了玷过,開始深入了解代碼。假設(shè)一個場景筑煮,app客戶端向服務端傳輸一個數(shù)據(jù)
這個流程我分開5個步驟辛蚊,讓我們一個個步驟講:
第一步解析:handleRSA
%……&¥%……&¥#……%#@……留待后面編輯。