Зашифровать - отправить - сохранить - получить файлы в iOS - PullRequest
0 голосов
/ 16 октября 2018

У меня есть приложение iMessage, которое отправляет файлы.Данные сохраняются на серверах iCloud с использованием CloudKit.Все работает хорошо.

Теперь я хочу добавить новый уровень безопасности.Я хочу зашифровать данные перед отправкой в ​​iCloud.

Проблема в том, что использование пар открытого и закрытого ключей невозможно:

  • В iMessage расширение не может идентифицировать пользователей.
  • Невозможно открыть сеанс в реальном времени между участниками разговора для обмена ключами.

Ни один из приведенных ниже вариантов не является достаточно надежным для обеспечения безопасности данных:

  • Используйте ключ шифрования, жестко закодированный в приложении.
  • Создайте случайный ключ, зашифруйте его и сохраните вместе с данными на серверах iCloud, чтобы его можно было загрузить вместе с файлом для расшифровки.

iCloud может быть безопасным, но данные пользователей могут быть личными / конфиденциальными, поэтому я хочу добавить новый уровень безопасности + это забавное занятие для меня.

Может ли кто-нибудь помочь найтиправильный метод шифрования?

1 Ответ

0 голосов
/ 28 января 2019

Вы можете отправить ключ в URL пользовательского MSMessage вместе с адресом CloudKit.Ключ и адрес URL могут быть закодированы в формате base-64 как url данных , поэтому только ваше приложение знает, как декодировать.

Таким образом, по крайней мере, кто-то должен знать, как декодировать ваши стандартные URL-адреса, прежде чем получить ключ шифрования.

...