我正在创建一个移动应用程序(包括Android和iPhone)并计划要求客户端SSL认证。为此,我的应用程序已将其客户端证书文件放入其中。在Android端,这是包含私钥的密钥存储区。密钥存储区和密钥都有密码。使用客户端SSL身份验证时,如何/在哪里存储密钥库密码?
我的问题:我应该如何将密码存储到密钥存储区和密钥?
应用程序代码需要这些才能在与服务器建立SSL连接时打开密钥存储区,因此它们需要可供应用程序访问。
它们应该作为应用程序源代码中的模糊字符串存储吗?还是有一些更普遍接受(阅读:更好)的方式做到这一点,我没有看到?
Wha我问的是如何存储密码。选项1。我意识到从应用程序中获取密码永远不可能,即使它是由代码生成的。我问的是,“在应用程序中混淆密码的'最佳'方法是什么?”鉴于我不能让它变得不可能,是否有办法让它变得“最困难”? – jph 2012-04-24 17:10:27
好吧,把它放在你的应用程序代码中,然后通过一个非常好的混淆过程/工具来运行它(你的整个客户端应用程序)可能是你可以在这里做的“最好的”事情。 – jeffsix 2012-04-24 17:11:58