Pbkdf2withhmacsha256 Swift 6 и AndroidIOS

Программируем под IOS
Ответить
Anonymous
 Pbkdf2withhmacsha256 Swift 6 и Android

Сообщение Anonymous »

В настоящее время применяя алгоритм PBKDF, результаты для Android и iOS различны.
Я подтвердил, что значения пароля и соли, которые являются значениями, перед применением алгоритма, одинаковы как для Hexstring, так и для Bytearray. /> В настоящее время я подозреваю, что значения изменяются значениями, которые разбиты при изменении с Bytearray -> String -> формат Chararray в Android. Тем не менее, я не знаю, как поместить те же значения в функцию и увидеть результаты. Кто -нибудь столкнулся с той же проблемой? {< /p>
let passwordHashData = sha256(string: password)
let saltHashData = sha256(string: salt)
var derivedKey = [UInt8](repeating: 0, count: digestLength)

let result = passwordHashData.withUnsafeBytes { passwordPointer in
saltHashData.withUnsafeBytes { saltPointer in
CCKeyDerivationPBKDF(
CCPBKDFAlgorithm(kCCPBKDF2),
passwordPointer.baseAddress,
passwordHashData.count,
saltPointer.baseAddress,
saltHashData.count,
CCPseudoRandomAlgorithm(kCCPRFHmacAlgSHA256),
UInt32(iterationCount),
&derivedKey,
digestLength
)
}
}
< /code>
#android
pbekeyspec (char [] пароль, byte [] salt, int iteator -count, int keylength) < /p>
В Swift я попытался изменить Bytearray -> string -> chararray и затем вставка значения. Кроме того, когда я выполнил ту же логику, используя библиотеку CryptoSwift, произошло такое же явление.

Подробнее здесь: https://stackoverflow.com/questions/794 ... nd-android
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»