RSA加密轉16進制

知識補充:

? ? ? ?RSA算法是一種非對稱加密算法,常被用于加密數據傳輸.

RSA基本原理:

? ? ? ?RSA使用"秘匙對"對數據進行加密解密.在加密解密數據前,需要先生成公鑰(public key)和私鑰(private key).

? ? ? ? 公鑰(public key): 用于加密數據. 用于公開, 一般存放在數據提供方, 例如iOS客戶端.

? ? ? ? ?私鑰(private key): 用于解密數據. 必須保密, 私鑰泄露會造成安全問題.

? ? ? ? ?iOS中的Security.framework提供了對RSA算法的支持.這種方式需要對密匙對進行處理, 根據public key生成證書, 通過private key生成p12格式的密匙.除了Secruty.framework, 也可以將openssl庫編譯到iOS工程中, 這可以提供更靈活的使用方式.本文使用Security.framework的方式處理RSA.

步驟:

? ? ? ? ?下面說一下生成公鑰私鑰的步驟。打開終端,按照以下輸入即可(注意:在Mac上我一直沒找到生成公鑰私鑰的路徑,所以讓android在windows上幫我生成了一遍,他直接就可以導出來),iOS這邊需要der文件和p12文件。步驟如下

生成私鑰文件

$ openssl genrsa -out private.pem 1024

openssl:是一個自由的軟件組織,專注做加密和解密的框架。

genrsa:指定了生成了算法使用RSA

-out:后面的參數表示生成的key的輸入文件

1024:表示的是生成key的長度,單位字節(bits)

創建證書請求

$ openssl req -new -key private.pem -out rsacert.csr

可以拿著這個文件去數字證書頒發機構(即CA)申請一個數字證書。CA會給你一個新的文件cacert.pem,那才是你的數字證書。(要收費的)

生成證書并簽名,有效期10年

$ openssl x509 -req -days 3650 -in rsacert.csr -signkey private.pem -out rsacert.crt

509是一種非常通用的證書格式。

將用上面生成的密鑰privkey.pem和rsacert.csr證書請求文件生成一個數字證書rsacert.crt。這個就是公鑰

轉換格式 將 PEM 格式文件 轉換成 DER 格式

$ openssl x509 -outform der -in rsacert.crt -out rsacert.der

在 iOS開發中,公鑰是不能使用base64編碼的,上面的命令是將公鑰的base64編碼字符串轉換成二進制數據

導出 P12 文件

在iOS使用私鑰不能直接使用,需要導出一個p12文件。下面命令就是將私鑰文件導出為p12文件。

$ openssl pkcs12 -export -out p.p12 -inkey private.pem -in rsacert.crt

以上步驟就生成了公鑰私鑰。代碼如下:

controller里面的代碼:


獲取公鑰:

獲取私鑰:

加密:

解密:

yi?

??

以上這種方法適用于公鑰加密,私鑰解密,假如用私鑰加密,公鑰解密,這種方案就不行了,就不能用Secruty.framework了,就得用openssl庫了,具體openssl庫怎么用,還沒有研究,嘿嘿,以后再說吧。

總結:

? ? ? ? ?這種加密傳輸方式會被用在網銀類或者金融類App中.金融類app都會采用全站https方案,采用這種加密方式,也是為了保險。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • /**ios常見的幾種加密方法: 普通的加密方法是講密碼進行加密后保存到用戶偏好設置( [NSUserDefaul...
    彬至睢陽閱讀 3,018評論 0 7
  • 一、緣起 幾個月前就在濟南俱樂部群里看到小伙伴們在熱烈的討論分身術訓練營,考慮到手頭還有很多事沒有完成,心...
    小米8227閱讀 241評論 2 1
  • 時間過的真快,轉眼就三十了,真是一事無成! 人什么都不怕,不怕失敗,不怕挫折,不怕困難,但是怕老,怕死,怕荒廢。 ...
    一只羊1237閱讀 223評論 0 0
  • 好困,不過還是得寫完今天的總結。 今天沒有聽音頻。論文寫了4000+。也是完成了早上的期待吧。不過未來幾天每天最少...
    Sanity娜娜閱讀 239評論 0 0
  • 祝你幸福,和你所愛之人 珍重 附贈初中喜歡的詩經一句, 桃之夭夭,灼灼其華。之子于歸, 宜其室家 http://m...
    HitNoah閱讀 158評論 0 0