我为我们的系统开发了一个 API,因此它可以被 Android 应用程序使用。 Android 应用程序由团队的另一名成员开发。 由于服务器使用 SSL,Android 应用程序无法在没有证书的情况下连接。
我应该提一下,这是一个自签名证书。
这种情况下的做法是什么?
向 Android 程序员提供证书,以便他将其嵌入到应用程序中?
(这是否意味着它会被破解和盗窃?)
我可以从哪里开始研究这个主题?
提前致谢,
害羞。
最佳答案
这是一个链接,供您检查是否回答了一个非常相似的问题。
How can I use different certificates on specific connections?
简单的答案是:将证书提供给另一个人没有错,这样他们就可以在打开安全连接时将其包含在“受信任”实体列表中。
任何时候客户端通过 SSL 或 TLS 连接到服务器时,客户端必须查看服务器的证书以决定它是否信任它(基于签名者)。 p>
就破解而言,任何证书都容易受到攻击,但您增加了证书的长度(例如 2048 位或 4096 位)以使破解花费的时间太长以至于尝试都不再有益。
您不想做的是将您的私钥提供给 Android 开发人员。流程一般是:
- 私钥唯一标识您的系统,绝不能共享
- 私钥用于创建证书签名请求(CSR)
- CSR 被发送到受信任的证书颁发机构 (CA)(在自签名的情况下,您自己担任此角色)
- CA 根据您的私钥/CSR 发回受信任的签名证书
关于android - 可以与 Android 应用共享我的服务器证书吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28551547/