10
Biorąc pod uwagę wiadomość i sól, w jaki sposób mogę ją zakodować, zwracając haszowany ciąg?Jak hash SHA w kakao/iOS
muszę odtworzyć funkcję PHP:
hash_hmac('sha256','message','salt');
Dzięki
Biorąc pod uwagę wiadomość i sól, w jaki sposób mogę ją zakodować, zwracając haszowany ciąg?Jak hash SHA w kakao/iOS
muszę odtworzyć funkcję PHP:
hash_hmac('sha256','message','salt');
Dzięki
znalazł odpowiedź:
#import <CommonCrypto/CommonHMAC.h>
-(NSString *) hashString :(NSString *) data withSalt: (NSString *) salt {
const char *cKey = [salt cStringUsingEncoding:NSUTF8StringEncoding];
const char *cData = [data cStringUsingEncoding:NSUTF8StringEncoding];
unsigned char cHMAC[CC_SHA256_DIGEST_LENGTH];
CCHmac(kCCHmacAlgSHA256, cKey, strlen(cKey), cData, strlen(cData), cHMAC);
NSString *hash;
NSMutableString* output = [NSMutableString stringWithCapacity:CC_SHA256_DIGEST_LENGTH * 2];
for(int i = 0; i < CC_SHA256_DIGEST_LENGTH; i++)
[output appendFormat:@"%02x", cHMAC[i]];
hash = output;
return hash;
}
To pytanie ma odpowiedź, że wygląda dobrze: http://stackoverflow.com/ pytania/6228092/how-can-i-compute-a-sha-2-idealnie-sha-256-or-sha-512-hash-in-ios – Bogatyr
Tak, ale nie wiem jak używać soli ... – Addev