Кто-нибудь сталкивался с трудностями при получении результатов хеширования из swift для совпадения с тем же результатом ввода хеш-кода в PHP?
Вот мой быстрый код:
let longPassword = myTextField.text!+email
let pword: Array<UInt8> = Array(longPassword.utf8)
let keyString = self.runHashOnPassword(text: pword, salt: Array(salt.utf8))
func runHashOnPassword(text: Array<UInt8>, salt: Array<UInt8>) -> String {
do {
let key = try PKCS5.PBKDF2(password: text,salt: salt, iterations: 4096, variant: .sha256).calculate()
let jEncoder = JSONEncoder.init()
let byteString = try jEncoder.encode(key)
return byteString.base64EncodedString()
} catch {
return ""
}
}
А вот мой код PHP:
$longPassword = $pword . $email . $salt;
$newHash = hash('sha256',$longPassword,false);
Я пытался изменить логический флаг на true в хэш-функции PHP, но это не помогло. Есть идеи? Спасибо.