iOS常用加密算法介绍和代码实践

2020-01-15 18:28:00丽君

这里将结果以16进制字符串形式保存,也可以进行base64等其它处理。

2.2 安全散列算法SHA
SHA按结果的位数分为256、484、512三种基本方式,根据对结果的要求而选择即可。通过CC_SHA256_DIGEST_LENGTH等枚举类型进行设置。 


- (NSString *)sha256HexDigest
{
  const char *cstr = [self cStringUsingEncoding:NSUTF8StringEncoding];
  NSData *data = [NSData dataWithBytes:cstr length:self.length];
  
  uint8_t digest[CC_SHA256_DIGEST_LENGTH];
  
  CC_SHA256(data.bytes, (unsigned int)data.length, digest);
  
  NSMutableString* output = [NSMutableString stringWithCapacity:CC_SHA256_DIGEST_LENGTH * 2];
  
  for(int i = 0; i < CC_SHA256_DIGEST_LENGTH; i++)
    [output appendFormat:@"%02x", digest[i]];
  
  return output;
}

3 未完待续,后期介绍RSA非对称密码的使用。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持ASPKU。


注:相关教程知识阅读请移步到IOS开发频道。