我很困惑。我在我的应用程序中使用此方法,当我传入两个不同的字符串时,它可以返回相同的结果。
但是当我将这个方法复制到另一个应用程序时,我的结果是正常的 - 我找回两个完全不同的字符串结果。
+(NSString *) returnMD5HashOfString:(NSString*)aString
{
// Create byte array of unsigned chars
unsigned char md5Buffer[CC_MD5_DIGEST_LENGTH];
// Create 16 byte MD5 hash value, store in buffer
CC_MD5(aString, aString.length, md5Buffer);
// Convert MD5 value in the buffer to NSString of hex values
NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];
for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)
[output appendFormat:@"%02x",md5Buffer[i]];
return output;
}
答案 0 :(得分:1)
CC_MD5不期望一个字符串,它需要一个字符指针。