RSAObjC.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. //
  2. // RSAObjC.h
  3. //
  4. // Created by PacteraLF on 16/10/17.
  5. // Copyright © 2016年 PacteraLF. All rights reserved.
  6. // RSA 加密封装类
  7. #import <Foundation/Foundation.h>
  8. @interface RSAObjC : NSObject
  9. /**
  10. * -------RSA 字符串公钥加密-------
  11. @param plaintext 明文,待加密的字符串
  12. @param pubKey 公钥字符串
  13. @return 密文,加密后的字符串
  14. */
  15. + (NSString *)encrypt:(NSString *)plaintext PublicKey:(NSString *)pubKey;
  16. /**
  17. * -------RSA 公钥文件加密-------
  18. @param plaintext 明文,待加密的字符串
  19. @param path 公钥文件路径,p12或pem格式
  20. @return 密文,加密后的字符串
  21. */
  22. + (NSString *)encrypt:(NSString *)plaintext KeyFilePath:(NSString *)path;
  23. /**
  24. * -------RSA 私钥字符串解密-------
  25. @param ciphertext 密文,需要解密的字符串
  26. @param privKey 私钥字符串
  27. @return 明文,解密后的字符串
  28. */
  29. + (NSString *)decrypt:(NSString *)ciphertext PrivateKey:(NSString *)privKey;
  30. /**
  31. * -------RSA 私钥文件解密-------
  32. @param ciphertext 密文,需要解密的字符串
  33. @param path 私钥文件路径,p12或pem格式(pem私钥需为pcks8格式)
  34. @param pwd 私钥文件的密码
  35. @return 明文,解密后的字符串
  36. */
  37. + (NSString *)decrypt:(NSString *)ciphertext KeyFilePath:(NSString *)path FilePwd:(NSString *)pwd;
  38. @end