gpt4 book ai didi

objective-c - 在 Objective-C 中生成 SHA256 哈希

转载 作者:太空狗 更新时间:2023-10-30 03:23:06 33 4
gpt4 key购买 nike

所以我需要在 Objective-C 中生成一个 Sha256 密码,但我一辈子都不知道该怎么做!有什么简单的东西我只是想念吗?

我已经尝试实现以下方法(它是为 iPhone 编写的,但我认为它可能会像某些 Objective-C 代码那样跨平台工作)

-(NSString*)sha256HashFor:(NSString*)input
{
const char* str = [input UTF8String];
unsigned char result[CC_SHA256_DIGEST_LENGTH];
CC_SHA256(str, strlen(str), result);

NSMutableString *ret = [NSMutableString stringWithCapacity:CC_SHA256_DIGEST_LENGTH*2];
for(int i = 0; i<CC_SHA256_DIGEST_LENGTH; i++)
{
[ret appendFormat:@"%02x",result[i]];
}
return ret;
}

但这只是吐出有关 CC_SHA256_DIGEST_LENGTH 是未声明的标识符的错误。

最佳答案

您需要包含适当的头文件:

#include <CommonCrypto/CommonDigest.h>

根据Cryptographic Services documentation这应该在 iOS 和 OS X 上都可用。

In OS X v10.5 and later and iOS 5.0 and later, Common Crypto provides low-level C support for encryption and decryption. Common Crypto is not as straightforward as Security Transforms, but provides a wider range of features, including additional hashing schemes, cipher modes, and so on.

关于objective-c - 在 Objective-C 中生成 SHA256 哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16866001/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com