美文网首页
ASSCL排序后sha1加密方式

ASSCL排序后sha1加密方式

作者: 高乔人 | 来源:发表于2017-05-01 10:50 被阅读48次

NSString * timeC = [NSString stringWithFormat:@"%ld",time(NULL)];

NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys:@"4886659db1dfc63a05583503aff1ce9454d01bfc",@"key",timeC,@"time",@"ios",@"facility",nil];

NSArray *allKeyArray = [dict allKeys];

NSArray *afterSortKeyArray = [allKeyArray sortedArrayUsingComparator:^NSComparisonResult(id  _Nonnull obj1, id  _Nonnull obj2) {

return NSOrderedDescending;

}];

//通过排列的key值获取value

NSMutableArray *valueArray = [NSMutableArray array];

for (NSString *sortsing in afterSortKeyArray) {

NSString *valueString = [dict objectForKey:sortsing];

[valueArray addObject:valueString];

}

NSMutableArray *signArray = [NSMutableArray array];

for (int i = 0 ; i < afterSortKeyArray.count; i++) {

NSString * keyValue = [NSString stringWithFormat:@"%@=%@",afterSortKeyArray[i],valueArray[i]];

[signArray addObject:keyValue];

}

NSString *str = @"";

for (NSString *temp  in signArray) {

str = [str stringByAppendingString:[NSString stringWithFormat:@"%@&",temp]];

}

NSString *shalStr = [str substringToIndex:str.length - 1];

NSLog(@"shlstr = %@",shalStr);

//    shalStr = [shalStr sha1String];

shalStr = [self getSha1String:shalStr];

NSLog(@"sign = %@", shalStr);

//sha1加密

//sha1加密方式

+ (NSString *)getSha1String:(NSString *)srcString{

const char *cstr = [srcString cStringUsingEncoding:NSUTF8StringEncoding];

NSData *data = [NSData dataWithBytes:cstr length:srcString.length];

uint8_t digest[CC_SHA1_DIGEST_LENGTH];

CC_SHA1(data.bytes, data.length, digest);

NSMutableString* result = [NSMutableString stringWithCapacity:CC_SHA1_DIGEST_LENGTH * 2];

for(int i = 0; i < CC_SHA1_DIGEST_LENGTH; i++) {

[result appendFormat:@"%02x", digest[i]];

}

return result;

}

相关文章

  • ASSCL排序后sha1加密方式

    NSString * timeC = [NSString stringWithFormat:@"%ld",time...

  • PHP的几种加密算法

    前言 PHP加密方式分为单项散列加密,对称加密,非对称加密这几类。像常用的MD5、hash、crypt、sha1这...

  • iOS SHA1 和 Base64 url_safe 加密

    iOS SHA1 和 Base64 url_safe 加密 网上查找的资料SHA1加密后大部分获取的是字符串,如果...

  • 签名加密

    sha1加密

  • 密码加密流程

    密码加密: 1.在前端先加密一次 登录密码:123456(普通字符串) 经过加密后:sha1("123456")=...

  • 2018-03-22

    sha1加密(中文加密之后的错误问题)

  • SHA1/md5 length Extension Attack

    使用SHA1 or MD5 加密 = sha1(key | message) = hash HashPump is...

  • python的加密几种加密方式

    如果使用md5加密,则密码包含32个字符 如果使用sha1加密,则密码包含40个字符,这里使用这种方式 md5加密...

  • hashlib加密

    如果使用md5加密,则密码包含32个字符如果使用sha1加密,则密码包含40个字符,这里使用这种方式 md5加密方...

  • node中使用md5加密密码

    我们把密码存到数据库的时候一般要加密,加密的方式主要有md5和sha1,那么怎么加密呢?这就用到了utility这...

网友评论

      本文标题:ASSCL排序后sha1加密方式

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