加密 - 发送 - 保存 - 在iOS中接收文件

Red*_*Mak 12 encryption ios icloud imessage-extension

我有一个发送文件的iMessage应用程序.使用CloudKit将数据保存在iCloud服务器中.一切都很好.

现在我想添加一个新的安全级别.我想在将数据发送到iCloud之前对其进行加密.

问题是使用公钥/私钥对是不可能的:

  • 在iMessage中,扩展程序无法识别用户.
  • 在会话参与者之间不能打开实时会话来交换密钥.

以下所有选项都不足以使数据安全:

  • 在应用程序中使用硬编码的密钥加密.
  • 生成随机密钥,使用随机密钥加密数据并将其与iCloud服务器中的数据一起保存,以便可以与文件一起下载以对其进行解密.

iCloud可能是安全的,但用户的数据可能是个人/敏感的,所以我想添加一个新的安全层+这对我来说是一个有趣的练习.

任何人都可以帮助找到正确的加密方法吗?

And*_*ent 0

您可以在自定义 MSMessage 的 url 中发送密钥以及 CloudKit 地址。url 密钥和地址可以以 base-64 格式编码为数据 url,因此只有您的应用程序知道如何解码。

这样至少有人需要知道如何在获取加密密钥之前解码您的标准网址。