Rijndael шифрование между iOS и.NET

Я использую библиотеку StringEncryption.m в iOS для шифрования сообщений, а затем декодирую их в проекте.Net.

Для 99,9% сообщений процесс шифрования / дешифрования работает. Однако существует особое сообщение, которое отправляет приложение iOS, которое всегда приводит к ошибке "Заполнение неверно" в проекте.Net.

Сообщение о проблеме имеет длину 800 байт. Если я заставлю его быть 799 или 801 байт, шифрование / дешифрование работает.

Обе стороны используют CBC, а решение iOS использует заполнение PKCS7. Есть идеи?

1 ответ

Решение

Следовал указаниям Ramhounds и создал другое сообщение той же длины. Проблема связана с библиотекой шифрования на iOS.

Нашел ответ здесь: Шифрование 16 байтов UTF8 с помощью разрывов SecKeyWrapper (ccStatus == -4304)

Другие вопросы по тегам