gpt4 book ai didi

iOS 安全 : Web server and File system

转载 作者:行者123 更新时间:2023-11-29 12:19:08 25 4
gpt4 key购买 nike

我看过苹果开发者关于安全的视频,他们提到使用 ssl https 证书和钥匙串(keychain)来处理安全问题。

我的 iOS 应用程序将允许访问敏感的付费文件。所以黑客不应该访问这些文件。我将在应用程序购买中使用,以便用户可以购买这些文件。

1) 我的第一个问题是:我应该在苹果服务器上托管我的文件(托管内容),苹果与客户端的通信是否足够安全,或者我应该使用证书和 SSL 身份验证实现我自己的服务器代码。

2) 我想知道或想知道如何在我的台式机上使用私钥加密文件,然后将其上传到我的服务器上。当我的 iOS 应用程序要求时,传递公钥和加密文件并将公钥保存在钥匙串(keychain)中以供进一步使用。我想要这个功能,以便将文件保存在磁盘上,而没有任何人可以通过越狱或其他黑客手段访问它。

3) 应该使用什么作为公钥和私钥以及使用什么类型的加密。目前我发现 AES 看起来不错,但有更好的方法吗?证书本身能否用于加密数据或传递 key ?

4) 联系哪个证书颁发机构以获得最安全的证书。

提前致谢...

编辑:实现的主要目的是下载 pdf,应用程序外部的用户不应访问该 pdf。

1) 我决定使用来自 CA 和 https 的根证书来传输内容,以避免 MINM。

2) 在应用端,我将生成公私钥对。

3) 将私钥保存在钥匙串(keychain)中。

4) 将公钥发送到服务器。

5) 服务器将使用 MAIN-AES-Key 加密 pdf。

6) MAIN-AES-Key 将使用应用发送的公钥进行加密。

7) Encrypted-pdf 和 Encrypted-MAIN-AES-Key 将被发送到应用。

8) 加密的 pdf 将使用安全写入选项保存到磁盘,以防万一。

9) Encrypted-MAIN-AES-Key 将保存在钥匙串(keychain)中。

10) 解密pdf:应用程序生成的私钥将用于解密加密的MAIN-AES-Key,MAIN-AES-KEY将用于解密pdf。

11) 最终将信任 Apple-KeyChain 以确保私钥安全。

最佳答案

解决方案不必要地复杂。越复杂,由于潜在的错误/疏忽越多,安全性就越差。

  1. 使用带有 CA 签名证书的 https
  2. 为避免 MITM 在应用端固定证书
  3. 无需进一步加密通过 https 发送的数据
  4. 加密设备上的文件并保存:
    • 从随机字节创建加密
    • 将 key 保存在钥匙串(keychain)中
    • 从随机字节创建一个 iv
    • 将iv添加到加密缓冲区的开头
    • 使用AES、CBC模式和PKS7填充将数据加密到iv之后的缓冲区
    • 将数据保存到应用程序文件区域的文件中,可能在 Documents 或 Library 目录下
  5. 解密设备上的文件并使用:
    • 从钥匙串(keychain)中获取 key
    • 读取加密后的数据文件
    • 从数据的开头获取iv
    • 解密刚刚经过 iv 的数据
  6. 不要忽略服务器
    • 使用双因素身份验证。
    • 用盐适本地散列任何密码
    • 使用良好的用户身份验证

对于应用程序数据加密,考虑使用 RNCryptor而不是自己编写加密部分。

关于iOS 安全 : Web server and File system,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31162353/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com