EncryptionTools.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. //
  2. // EncryptionTools.h
  3. //
  4. #import <Foundation/Foundation.h>
  5. #import <CommonCrypto/CommonCrypto.h>
  6. /**
  7. *
  8. * 提示:
  9. * 1> 加密过程是先加密,再base64编码
  10. * 2> 解密过程是先base64解码,再解密
  11. */
  12. @interface EncryptionTools : NSObject
  13. + (instancetype)sharedEncryptionTools;
  14. /**
  15. @constant kCCAlgorithmAES 高级加密标准,128位(默认)
  16. @constant kCCAlgorithmDES 数据加密标准
  17. */
  18. @property (nonatomic, assign) uint32_t algorithm;
  19. /**
  20. * 加密字符串并返回base64编码字符串
  21. *
  22. * @param string 要加密的字符串
  23. * @param keyString 加密密钥
  24. * @param iv 初始化向量(8个字节)
  25. *
  26. * @return 返回加密后的base64编码字符串
  27. */
  28. - (NSString *)encryptString:(NSString *)string keyString:(NSString *)keyString iv:(NSData *)iv;
  29. /**
  30. * 解密字符串
  31. *
  32. * @param string 加密并base64编码后的字符串
  33. * @param keyString 解密密钥
  34. * @param iv 初始化向量(8个字节)
  35. *
  36. * @return 返回解密后的字符串
  37. */
  38. - (NSString *)decryptString:(NSString *)string keyString:(NSString *)keyString iv:(NSData *)iv;
  39. + (NSString *)getStringFromGBKStr:(NSString *)gbkStr;
  40. @end