美文网首页
iOS使用GBK编码的hmacMD5算法

iOS使用GBK编码的hmacMD5算法

作者: 酱爆番茄 | 来源:发表于2018-03-06 09:54 被阅读7次
+ (NSString *)getHmacmd5:(NSString *)clearTextwithSecret:    (NSString *)secret
{
   CCHmacContext ctx;
  //使用GBK编码
  unsigned long encode =   CFStringConvertEncodingToNSStringEncoding(kCFStringEncodingGB_18030_2000);

  const char *key = [secret cStringUsingEncoding:encode];
  const char *str = [clearText cStringUsingEncoding:encode];
  unsigned char mac[CC_MD5_DIGEST_LENGTH];
  char hexmac[2 * CC_MD5_DIGEST_LENGTH + 1];
  char *p;
  CCHmacInit(&ctx, kCCHmacAlgMD5, key, strlen(key));
  CCHmacUpdate(&ctx, str, strlen(str));
  CCHmacFinal(&ctx, mac);
  p = hexmac;
  for (int i = 0; i < CC_MD5_DIGEST_LENGTH;i++) {
      snprintf(p,3,"%02x", mac[ i ]);
      p += 2;
  }
  return [NSString stringWithCString:hexmac encoding:encode];
}

相关文章

网友评论

      本文标题:iOS使用GBK编码的hmacMD5算法

      本文链接:https://www.haomeiwen.com/subject/pfchvxtx.html