ios CCRandomGenerateBytes 生成定长随机字符串

我们有时在项目中会遇到需要生成随机字符串的需求,现在说明其中的一种方法(利用苹果自带的库);

  • 一在工程内导入头文件
  • 二函数的使用

一、在工程内导入头文件

//这是导入了所有加密库的头文件
#import 
//如果只是使用random函数,那么只要做如下导入即可
#import 

二、函数的使用

//利用CCRandomGenerateBytes实现随机字符串的生成
- (NSString *)randomString:(NSInteger)length {
    length = length/2;
    unsigned char digest[length];
    CCRNGStatus status = CCRandomGenerateBytes(digest, length);
    NSString *s = nil;
    if (status == kCCSuccess) {
        s = [self stringFrom:digest length:length];
    } else {
        s = self;
    }
    NSLog(@"randomLength---:%@",s);
    return s;
}
//将bytes转为字符串
- (NSString *)stringFrom:(unsigned char *)digest length:(NSInteger)leng {
    NSMutableString *string = [NSMutableString string];
    for (int i = 0; i < leng; i++) {
        [string appendFormat:@"%02x",digest[i]];
    }
    NSLog(@"final stringFrom:%@",string);
    return string;
}

你可能感兴趣的:(密码安全)