iOS 使用 RSA 加密, 只需要公鑰

2021-07-03 18:55:25 字數 581 閱讀 6227

在 ios 上, 加密被和安全性進行了強繫結, 所以, 你不能只做加密(至少公開文件不告訴你如何只做加密). 但事實上, 很多時候我們加密, 並不是要求 100% 的安全, 只是希望能得到加密本身所帶來的安全, 既不考慮資料重放, 也不考慮第三者攻擊, 也不考慮身份偽裝. 我們僅僅是需要 - 加密, rsa 非對稱加密. 物理上的和系統上的安全我們會想盡全部辦法來解決, 不需要加密模組來管.

但是, 蘋果不公開允許這樣做, 所以 ios 上的 cocoa api 就沒有簡單的這樣的加密函式:

ret = rsa_encrypt(src_data, public_key);
例如, 蘋果的seckeyencrypt()函式需要 .der 證書, 而公鑰只是證書的一部分. 所以, 如果你只有公鑰, 你是不能直接使用這個函式的. 幸運的是, ios 可以使用自己產生的公鑰, 所以, 你要做的是把你的公鑰偽裝成是 ios 產生的.

這篇文章, 介紹了如何偽裝公鑰. 偽裝完後, 你就可以直接使用seckeyencrypt()函式來進行 rsa 公鑰加密了.

完整的**我放在 github 上了.

**

iOS下的RSA加密方法

第一步,製作自簽名的證書 1.最簡單快捷的方法,開啟terminal,使用openssl mac os x自帶 生成私鑰和自簽名的x509證書。openssl req x509 out public key.der outform der new newkey rsa 1024 keyout pri...

RSA加密解密的使用!

根據公司的要求需要對一些資料保密,所以與公司做後台的開發人員進行對接測試,特此記錄 在進行加密解密之前我也是網上進行了大量的資料查閱,感覺比較詳細的在此列出,以做參考 由於我這裡與該方法實現有所出入,所以自己另外寫了個方法 我這邊的需求是這樣的 服務端建立公鑰 客戶端 用服務端提供的公鑰對使用者名稱...

iOS介面的RSA加密演算法

在ios中使用rsa加密解密,需要用到.der和.p12字尾格式的檔案,其中.der格式的檔案存放的是公鑰 public key 用於加密,p12格式的檔案存放的是私鑰 private key 用於解密.首先需要先生成這些檔案,然後再將檔案匯入工程使用。其實不用這兩個證書也可以,這兩個證書只是用來存...