背景:RSA加密浑侥,是一種非對稱形式的加密方法姊舵。因為是支付公司,決定做自己的SDK寓落,然后寫示例代碼括丁,因此會將加密和加簽都寫進(jìn)去方便集成者閱讀。找了好天找的腦殼疼伶选。史飞。尖昏。不過好在最后找到了。分享出來祸憋,以免大家難以尋找会宪。。蚯窥。
至于怎么生成密鑰大家就自己百度一下吧。塞帐。拦赠。方法到處都能找到,我這里就不多說了葵姥。主要講一下openssl的引入荷鼠。
rsa加密和簽名的代碼我就放在這里了。需要自取榔幸,也可以點個??喲~允乐。也是我找了好久問了好多人才找到的。(對了削咆,還有一個簽名方法在是支付寶的sdk牍疏,可以自行去支付寶開放平臺下載,不過它的驗簽方法要輸入的參數(shù)有支付寶后臺的返回信息拨齐,所以沒法單獨拿來使用鳞陨,簽名完成也沒法驗簽所以我就沒用那個,有需要的也可以自己研究研究瞻惋。)
RSA加密:https://github.com/XingXiaoWu/RSA-demo
RSA簽名:https://github.com/XingXiaoWu/RSA-
不會引入openssl的童鞋繼續(xù)往下看吧
1.首先厦滤,自己生產(chǎn)一對秘鑰。然后將openssl導(dǎo)入庫歼狼。
ps:openssl這個庫哪都有掏导,自己生成也行,我后面給的rsa加密中也有羽峰,支付寶sdk里也有趟咆。
這個時候運(yùn)行是會報錯的
解決辦法如下:
1.如圖搜索
這里給大家解釋一下這個要添加的地方怎么寫
首先添加$(SRCROOT)
我們可以看見,包含rsa的openssl文件夾是4文件夾下的openssl
所以路徑構(gòu)成是:$(SRCROOT)/項目名稱1(TestDemo)/包含的文件夾2(WXRSASignopen)/包含的文件夾3(openssl)/包含的文件夾4(include)
同理限寞,填寫你的項目的包含的路徑忍啸。
運(yùn)行一下,成功就不必看下面的了履植,不成功就繼續(xù)往下看计雌。
如果你使用的是支付寶sdk中的openssl文件和Untils工具類的話,可能其中的rsa.h或其他文件還會報錯玫霎,這個時候可以打開報錯的文件向其中添加#import<Foundation/Foundation.h>即可凿滤,如果你嫌一個個添加太麻煩妈橄,可以做如下操作創(chuàng)建一個pch文件。
1.創(chuàng)建一個pch文件
2.在創(chuàng)建的pch文件中寫上#import<Foundation/Foundation.h>
3.復(fù)制這個$(TARGET_NAME)
4.接著
運(yùn)行一下翁脆,一般就成功了眷蚓。這樣就完成了openssl庫的導(dǎo)入。
libcrypto.a和libssl.a這兩個.a文件別忘了導(dǎo)入7捶I橙取!
libcrypto.a和libssl.a這兩個.a文件別忘了導(dǎo)入0崭住8菝场!
libcrypto.a和libssl.a這兩個.a文件別忘了導(dǎo)入7憬>舸ā!
歐克息楔,有問題的話在下方留言吧~~