我正在通过HTTP连接下载XML文件,现在我需要在我的FTP和befaore下载中加密XML我将在任何其他使用之前检查XML签名(或解密)。我有我的应用程序签名(976个字母和数字的组合),我不知道,我可以使用我的签名字符串来验证我的XML吗?或私人/公钥解决方案?但是如何创建密钥以及如何将它们存储在APK中?
由于
答案 0 :(得分:0)
最好的方法是使用非对称密钥对(RSA是最常见的),您在FTP站点上签署数据,在Android设备上保留私钥,呃,私钥和公钥。您可以使用另一个密钥对进行加密/解密。您可以使用您的签名字符串作为Android设备上的私人解密密钥的密码。确保您的应用程序不容易受到填充oracle攻击(加密,然后在解密失败时签名或不通知对方)。
请注意,实现您自己的XML签名/验证或XML加密/解密版本可能非常困难(并且充满了至少与使用XML安全相关的库匹配的陷阱)。我建议尝试将XML包装在CMS容器中。
对于其他用户,指向您的后续问题的链接: Android - verify the signature of XML
答案 1 :(得分:0)