BBASMCrypto.h
1.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
//
// BBASMCrypto.h
// BBAMNP
//
// Created by baidu on 2019/5/7.
// Copyright © 2019 Baidu. All rights reserved.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@interface BBASMCrypto : NSObject
/**
* @brief 获得数据加盐后的md5签名
*
* @param data 原始数据
* @param cuid cuid
* * @return MD5值
*/
+ (NSString *)getSignatureOfData:(NSData *)data cuid:(NSString *)cuid;
/**
* @brief AES数据加密
*
* @param data 加密前的原始数据
* @return 加密后的NSData数据
*/
+ (NSString *)AESEncodeData:(NSData *)data;
/**
* @brief AES数据加密
*
* @param string 加密前的原始数据
* @return 加密后字符串
*/
+ (NSString *)AESEncodeString:(NSString *)string;
/// @brief ai能力的数据进行AES数据加密
/// @param apiKey NSString类型,小&程&序的apikey
/// @param cuid NSString类型,设备标识别
/// @param stringMap NSDictionary类型,加密的key数据
/// @param rasignTimestamp NSString类型,加密的iv数据
/// @return NSData 返回AES加密数据
+ (NSString *)AESEncryptedApiKey:(NSString *)apiKey
cuid:(NSString *)cuid
stringMap:(NSDictionary *)stringMap
rasignTimestamp:(NSString *)rasignTimestamp;
/**
* @brief 手百加密算法
*
* @param data 二进制数据流
* @return 返回加密后的数据
*/
+ (NSData *)encryptZipData:(NSData *)data;
/**
* @brief 手百解密算法
*
* @param data 二进制数据流
* @return 返回解密后的数据
*/
+ (NSData *)decryptZipData:(NSData *)data;
@end
NS_ASSUME_NONNULL_END