0

我有一个 NSData 值,我使用以下代码找到该值的字节

Byte *byteData = (Byte*)malloc(24); //byte array
    int len=[result length];   //find the length
    memcpy(byteData, [result bytes], len); // copy the bytes values of "result" to bytes array

    NSString *MD5Key=[[NSString alloc]initWithFormat:@"%@",[result md5]]; // find md5 values
    NSLog(@"%@",MD5Key);
    NSString *finalKey=[MD5Key substringToIndex:8];

但我需要那个字节数组(byteData)的MD5值?我怎样才能做到这一点 ?

4

1 回答 1

0

我找到了这个方法,希望你能改变它来达到你的目标。

- (NSString *) md5_forString: (NSString*) sourceString
{
    const char *cStr = [sourceString UTF8String];
    unsigned char result[16];
    CC_MD5( cStr, (unsigned int) strlen(cStr), result);
    return [NSString stringWithFormat:
            @"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
            result[0], result[1], result[2], result[3], 
            result[4], result[5], result[6], result[7],
            result[8], result[9], result[10], result[11],
            result[12], result[13], result[14], result[15]
            ];      
}
于 2013-05-07T14:21:32.197 回答