簡體   English   中英

刪除SHA256輸出中的空格

[英]Remove spaces in SHA256 output

誰能解決我與iOS中的SHA256相關的問題?

#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中刪除空間。 即像這樣

將此添加到您的代碼下面:

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使用此代碼

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM