Удалить пробелы в выводе SHA256
Может кто-нибудь решить мою проблему, связанную с SHA256 в iOS?
#import <CommonCrypto/CommonDigest.h>
NSData *dataIn = [@"XXXXX" dataUsingEncoding:NSASCIIStringEncoding];
NSMutableData *macOut = [NSMutableData dataWithLength:CC_SHA256_DIGEST_LENGTH];
CC_SHA256(dataIn.bytes, dataIn.length, macOut.mutableBytes);
NSLog(@"dataIn: %@", dataIn);
NSLog(@"macOut: %@", macOut);
Я получаю вывод, как это:
2014-10-14 10:46:43.602 sha256[480:70b] dataIn: <416e616e 64>
2014-10-14 10:46:43.604 sha256[480:70b] macOut: <e9fb6a39 4db5ffd6 dba9b31a c7d9a90d 56f90767 afaf1e14 d6dcaa37 db180932>
что мне действительно нужно, мне нужно удалить пространство в macOut. то есть как это
2 ответа
Решение
Добавьте это ниже вашего кода:
NSString *macOutString = [NSString stringWithFormat:@"%@", macOut];
NSString *encryptedString = [macOutString stringByReplacingOccurrencesOfString:@" " withString:@""];
NSLog(@"macOut: %@", encryptedString);
Вы также можете проверить шифрование с - http://www.xorbin.com/tools/sha256-hash-calculator
Создайте NSData, категорию NSString, используйте этот код по адресу https://github.com/mdznr/iOS-Passcode/blob/master/Passcode/NSString%2Bsha256.m