iOS openssl庫導入與RSA加密與簽名

背景:RSA加密,是一種非對稱形式的加密方法。因為是支付公司,決定做自己的SDK,然后寫示例代碼,因此會將加密和加簽都寫進去方便集成者閱讀。找了好天找的腦殼疼。。。不過好在最后找到了。分享出來,以免大家難以尋找。。。

至于怎么生成密鑰大家就自己百度一下吧。。。方法到處都能找到,我這里就不多說了。主要講一下openssl的引入。

rsa加密和簽名的代碼我就放在這里了。需要自取,也可以點個??喲~。也是我找了好久問了好多人才找到的。(對了,還有一個簽名方法在是支付寶的sdk,可以自行去支付寶開放平臺下載,不過它的驗簽方法要輸入的參數有支付寶后臺的返回信息,所以沒法單獨拿來使用,簽名完成也沒法驗簽所以我就沒用那個,有需要的也可以自己研究研究。)

RSA加密:https://github.com/XingXiaoWu/RSA-demo

RSA簽名:https://github.com/XingXiaoWu/RSA-

不會引入openssl的童鞋繼續往下看吧

1.首先,自己生產一對秘鑰。然后將openssl導入庫。

ps:openssl這個庫哪都有,自己生成也行,我后面給的rsa加密中也有,支付寶sdk里也有。


這個時候運行是會報錯的


解決辦法如下:

1.如圖搜索

這里給大家解釋一下這個要添加的地方怎么寫

首先添加$(SRCROOT)

我們可以看見,包含rsa的openssl文件夾是4文件夾下的openssl

所以路徑構成是:$(SRCROOT)/項目名稱1(TestDemo)/包含的文件夾2(WXRSASignopen)/包含的文件夾3(openssl)/包含的文件夾4(include)

同理,填寫你的項目的包含的路徑。

運行一下,成功就不必看下面的了,不成功就繼續往下看。

如果你使用的是支付寶sdk中的openssl文件和Untils工具類的話,可能其中的rsa.h或其他文件還會報錯,這個時候可以打開報錯的文件向其中添加#import<Foundation/Foundation.h>即可,如果你嫌一個個添加太麻煩,可以做如下操作創建一個pch文件。

1.創建一個pch文件


2.在創建的pch文件中寫上#import<Foundation/Foundation.h>

3.復制這個$(TARGET_NAME)

4.接著

運行一下,一般就成功了。這樣就完成了openssl庫的導入。

libcrypto.a和libssl.a這兩個.a文件別忘了導入!!!

libcrypto.a和libssl.a這兩個.a文件別忘了導入!!!

libcrypto.a和libssl.a這兩個.a文件別忘了導入!!!

歐克,有問題的話在下方留言吧~~

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

推薦閱讀更多精彩內容

  • 嘟噥嘟噥:最近接到一個任務:在客戶端動態生成RSA密鑰對,然后向服務器發送這個密鑰對中的公鑰字符串,由服務器進行公...
    TimmyR閱讀 8,064評論 19 21
  • iOS支付 iOS支付分為兩類,第三方支付和應用內支付(內購)。 第三方支付包括:支付寶支付、微信支付、銀聯支付、...
    請輸入賬號名閱讀 6,253評論 3 22
  • iOS支付 iOS支付分為兩類,第三方支付和應用內支付(內購)。 第三方支付包括:支付寶支付、微信支付、銀聯支付、...
    帥不過oneS閱讀 2,913評論 2 8
  • 落葉隨風飄向遠方 只給秋天一抹光暈 呼吸著秋風蕭蕭 放眼遠山紅葉漫山 追聽鳥雀歌聲悠揚 潮起潮落晨光微涼 繆滄海微...
    焦志歡閱讀 467評論 1 2
  • 曾經無數次的以為 我們永遠不會分開 可是到后來才發現 天下沒有不散的宴席 如此熟悉又陌生的家庭 是否注定了蒼白的命...
    忠杰_7ec9閱讀 205評論 0 0