10
A
回答
39
找到了答案:
#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;
}
相關問題
- 1. 如何計算SHA-256哈希大小
- 2. SHA-1在Haskell產生錯誤哈希
- 3. 在MySQL中存儲SHA-512哈希
- 4. SHA 2哈希和Java的問題
- 5. 可擴展哈希
- 6. 如何在Appcelerator中生成base64編碼的SHA-512哈希?
- 7. SHA-1哈希與字符串混合
- 8. 球衣可變哈希值到不可變哈希值
- 9. 如何在PHP中重現java MessageDigest SHA-256哈希值?
- 10. PHPUnit的Laravel哈希不可
- 11. C#SHA-2(512)Base64編碼哈希
- 12. 我們可以把哈希表放在哈希表裏面嗎?
- 13. Ansible可變優先哈希
- 14. 如何在哈希中存儲哈希哈希?
- 15. 如何從SHA-256哈希生成N個隨機數
- 16. 如何使用SHA哈希身份驗證構建chrony?
- 17. 使用哈希sha-512驗證數據庫中密碼的密碼sha-512
- 18. 在特定提交中獲取文件的SHA哈希
- 19. 是否可以將NetMTLMv2哈希轉換爲NTLM哈希?
- 20. 如何哈希
- 21. Rails哈希陣列哈希如何?
- 22. 存儲的SHA哈希作爲db.StringProperty()屬性
- 23. Casting可派生的哈希映射
- 24. 有幾個程序的Keccak/SHA-3有不同的哈希值?
- 25. 將Python中的SHA哈希計算轉換爲C#
- 26. Building NodeJS Lambda - 同源,不同的SHA哈希
- 27. 如何在可擴展哈希中創建空桶
- 28. 如何在java中實現可擴展哈希?
- 29. 如何從哈希的值的所有可能的組合
- 30. crypt(3)$ 6 $密碼哈希算法(基於SHA-512)在Java中?
這個問題有一個看起來不錯的答案:http://stackoverflow.com/問題/ 6228092 /我怎麼能計算一個sha-2-idealally-sha-256-or-sha-512-hash-in-ios – Bogatyr 2012-02-26 16:10:31
是的,但不知道如何使用鹽... – Addev 2012-02-26 17:00:47