
Untitled
By: a guest on
May 15th, 2012 | syntax:
None | size: 0.62 KB | hits: 16 | expires: Never
Objective-C SHA2 hash not working correctly with non-ASCII
-(NSString*) sha512:(NSString*)input
{
const char *cstr = [input cStringUsingEncoding:NSUTF8StringEncoding];
NSData *data = [NSData dataWithBytes:cstr length:input.length];
uint8_t digest[CC_SHA512_DIGEST_LENGTH];
CC_SHA512(data.bytes, data.length, digest);
NSMutableString* output = [NSMutableString stringWithCapacity:CC_SHA512_DIGEST_LENGTH * 2];
for (int i = 0; i < CC_SHA512_DIGEST_LENGTH; i++) {
[output appendFormat:@"%02x", digest[i]];
}
return output;
}
NSData *data = [input dataUsingEncoding:NSUTF8StringEncoding];