SHA1 算法

作者: L柠_檬 | 来源:发表于2016-10-09 11:39 被阅读229次

安全哈希算法(Secure Hash Algorithm)主要适用于数字签名标准 (Digital Signature Standard DSS)里面定义的数字签名算法(Digital Signature Algorithm DSA)。对于长度小于2^64位的消息,SHA1会产生一个160位的消息摘要。当接收到消息的时候,这个消息摘要可以用来验证数据的完整性。在传输的过程中,数据很可能会发生变化,那么这时候就会产生不同的消息摘要。 SHA1有如下特性:不可以从消息摘要中复原信息;两个不同的消息不会产生同样的消息摘要,(但会有1x10 ^ 48分之一的机率出现相同的消息摘要,一般使用时忽略)。

#import "AlgorithmManager.h"
#import <CommonCrypto/CommonCrypto.h>

@implementation AlgorithmManager

+ (NSString *)signWithSHA1:(NSString *)input{
    
    const char *cStr = [input UTF8String];
    unsigned char result[CC_SHA1_DIGEST_LENGTH];
    CC_SHA1(cStr, strlen(cStr), result);
    NSString *str_SHA1 = [NSString  stringWithFormat:
                   @"%02x%02x%02x%02x%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],
                   result[16], result[17], result[18], result[19]
                   ];
    
    return str_SHA1;
    
}

@end

举个栗子:123456
结果:7c4a8d09ca3762af61e59520943dc26494f8941b
对照网站:http://tool.oschina.net/encrypt?type=2

相关文章

  • javaweb使用sha1算法登录加密的整个过程

    sha1算法还是比较潮流的算法并且可以简单使用的算法,建议新手可以选用sha1算法。 百度百科对sha1算法的解...

  • 使用SHA-1算法 加密

    https://www.npmjs.com/package/sha1 sha1 用于使用SHA-1算法对消息进行哈...

  • byte数组转str

    顺便给出golang中的sha1算法调用

  • Crypto加密解密

    包含算法种类:MD5算法/sha1算法、base64加密和解密、Hmac、AES、Diffie-Hellman A...

  • sha1

    sha1是一种用哈希算法进行数据完整性检验的算法。sha1的主要作用就是用来检验数据的完整性。 1、引入头文件 2...

  • golang中crypto/sha1包

    sha1是安全哈希算法。 const BlockSize = 64功能说明:SHA1的数据块的字节长度位为64字节...

  • python加密

    python中hashlib提供了常见的摘要算法,如MD5,SHA1等等 什么是摘要算法呢?摘要算法又称哈希算法\...

  • 52. 摘要算法hashlib

    Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。 什么是摘要算法呢?摘要算法又称哈希算法...

  • hashlib模块-加密算法

    hashlib 模块提供了常见的摘要算法,如MD5,SHA1 摘要算法(又称哈希算法、散列算法):原理:它通过一个...

  • 2019-06-19 hashlib

    摘要算法简介 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等。什么是摘要算法呢?摘要算法...

网友评论

    本文标题:SHA1 算法

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