
LG
objective-c#import <CommonCrypto/CommonHMAC.h>// 需要加密的字符串NSString *message = @"Hello World";// 密钥NSString *key = @"secret_key";// 将密钥转换为C字符串const char *cKey = [key cStringUsingEncoding:NSUTF8StringEncoding];// 将需要加密的字符串转换为C字符串const char *cMessage = [message cStringUsingEncoding:NSUTF8StringEncoding];// 使用HMAC-SHA1算法加密数据unsigned char digest[CC_SHA1_DIGEST_LENGTH];CCHmac(kCCHmacALGSHA1, cKey, strlen(cKey), cMessage, strlen(cMessage), digest);// 将加密后的数据转换为NSData对象NSData *encryptedData = [NSData dataWithBytes:digest length:CC_SHA1_DIGEST_LENGTH];// 将加密后的数据转换为十六进制字符串NSMutableString *encryptedString = [NSMutableString stringWithCapacity:CC_SHA1_DIGEST_LENGTH * 2];for (int i = 0; i < CC_SHA1_DIGEST_LENGTH; i++) {</p> [encryptedString appendFormat:@"%02x", digest[i]];}// 输出加密后的字符串NSLog(@"加密后的字符串:%@", encryptedString);上述代码中,我们首先定义了需要加密的字符串和密钥。然后,我们将密钥和需要加密的字符串转换为C字符串,并使用CommonCrypto库中的CCHmac函数来进行HMAC-SHA1加密。加密后的数据以NSData的形式存储,然后我们将其转换为十六进制字符串并输出到控制台。Copyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号