我正在构建一个接收登录凭据(username
和password
)的应用程序。我想在将数据发送到服务器之前加密。如果有人能够对Swift中最常用的密码加密方法或最佳实践提供一些见解,我将非常感激。
答案 0 :(得分:1)
如果您确实需要加密Swift中的凭据,可以使用https://github.com/krzyzanowskim/CryptoSwift
但最好通过https将它们发送到服务器 - 这样,它们将为您加密/解密。
答案 1 :(得分:0)
您可以使用Keychain Wrapper存储应用的用户名和密码。 你可以从这里下载包装器:https://github.com/jrendel/SwiftKeychainWrapper
他们有关于如何在自述文件中使用它的说明
答案 2 :(得分:0)
==>我们的Objective-C代码(使用NSString类)可以直接转换为Swift(使用String扩展)。
extension String {
func sha1() -> String {
let data = self.dataUsingEncoding(NSUTF8StringEncoding)!
var digest = [UInt8](count:Int(CC_SHA1_DIGEST_LENGTH), repeatedValue: 0)
CC_SHA1(data.bytes, CC_LONG(data.length), &digest)
let output = NSMutableString(capacity: Int(CC_SHA1_DIGEST_LENGTH))
for byte in digest {
output.appendFormat("%02x", byte)
}
return output as String
}}println("Hello World".sha1())