通过环顾四周和一般的互联网,我找到了Bouncy Castle.我想使用Bouncy Castle(或其他一些免费提供的实用程序)在Java中生成一个SHA-256 Hash of String.看看他们的文档,我似乎找不到任何我想做的好例子.这里有人可以帮帮我吗?
所以阅读这篇文章:如何在Android中计算字符串的SHA-256哈希值?
和文档:http://developer.android.com/reference/java/security/MessageDigest.html
我很好奇; 哪些手机支持SHA-256?在文档中,关于'NoSuchAlgorithmException'的一行让我觉得有些手机不支持所有算法.在我为一个应用程序实现这个并期望它在所有手机上工作之前我想知道如果有人知道这个...?
我觉得奇怪的是MessageDigest类没有一些常量来选择你想要使用的算法.
我试图根据sha256使哈希成为密码值.我已经搜索了这个,但没有关于swift 2的信息.这个解决方案对我没用
func sha256(data:String) -> String {
let data = self.dataUsingEncoding(NSUTF8StringEncoding)!
var digest = [UInt8](count:Int(CC_SHA256_DIGEST_LENGTH), repeatedValue: 0)
CC_SHA256(data.bytes, CC_LONG(data.length), &digest)
let hexBytes = digest.map { String(format: "%02hhx", $0) }
return hexBytes.joinWithSeparator("")
}
Run Code Online (Sandbox Code Playgroud)
它给出错误:使用未解析的标识符CC_SHA256_DIGEST_LENGTH
sha256 ×2
android ×1
bouncycastle ×1
commoncrypto ×1
digest ×1
hash ×1
java ×1
jce ×1
sha ×1
swift2 ×1