Шифрование AES не работает должным образом на iOS 13,4 - PullRequest
0 голосов
/ 28 марта 2020

My iOS приложение создает ключ с использованием шифрования AES и отправляет его со всеми API, и оно дешифруется на стороне сервера, теперь после обновления OS 13.4 ключ, созданный с устройства (не симулятора) неправильно и сервер выдает следующую ошибку: «Заполнение недопустимо и не может быть удалено.»

Оно отлично работает на устройствах ниже 13.4 версии ОС, мы используем CommonCrypto для шифрования ключа с нашей стороны, ниже приведены подробности:

  let ivData = "passpharse".data(using:String.Encoding.utf8)!
  let cryptLength  = size_t(data.count + kCCBlockSizeAES128)
  var cryptData = Data(count:cryptLength
  let keyLength = size_t(kCCKeySizeAES128)
  let options   = CCOptions(kCCOptionPKCS7Padding)
  var numBytesEncrypted :size_t = 0

Удивительно, что ключ генерируется правильно для некоторых вызовов API хотя для генерации ключей используется тот же метод.

Пользователи с iOS - ОС ниже 13.4 не сталкиваются с какими-либо проблемами , если кто-то сталкивался с таким же Ситуация, пожалуйста, руководство.

заранее спасибо.

...