繁体   English   中英

验证文件-安全问题

[英]Verifying file - security issue

我有一个称为A.txt的文件,该文件在Java应用程序中使用。 该文件与应用程序一起提供,我希望有一种方法(在应用程序内)验证它确实是我的文件,而不是伪造的文件。

我有两个想法,但都容易受到一些攻击:

  1. 我将应用程序中的签名,A.txt和公钥作为纯文本发布,但是如果攻击者仅对自己的文件签名,替换签名,A.txt和公钥,则验证将通过。

  2. 我将公共密钥硬编码到Java应用程序中-除了反编译之外,如果我将A.txt发送给个人A,将B.txt发送给个人B,并且他们交换了txt,那么它们都将成功验证,而我宁愿让A验证仅成功A.txt。

在没有任何可能受到攻击的情况下,我该怎么办? 或者我该如何实施自己的方法以确保其安全?

将加密密钥隐藏在代码中可能非常危险。 Reinard对可以加密和解密文件的Web服务有一个好主意。

另一个选择是将注册表项隐藏在注册表中或隐藏目录中的某个位置。 您也可以尝试构建自己的算法来构建解密密钥。

但是反编译呢? 这一直是大多数开发人员的主要痛苦。 您如何正确隐藏代码中的秘密? 您可以尝试使用可能会减慢反编译过程的应用程序打包程序或加扰程序。 您还可以使用像ProGaurd这样的Java混淆器,使您的代码更难以反向工程。

我真的希望这会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM