我想知道如何不对字符串进行硬编码,例如某些软件或远程连接软件中的 IP。
我听说有一位网络安全专家在他的软件中发现了一个黑客的 IP,并以此跟踪了他。
那么,我怎样才能避免将我的 IP 硬编码到软件中,如果我硬编码它,人们如何找到我的 IP?
有几种方法可以隐藏硬编码的字符串。最简单的方法之一是将这些位与另一个字符串或重复的常数进行异或。因此,您可以有两个硬编码的短数组,当它们一起进行异或运算时,会产生您想要隐藏的字符串。
您可以执行以下任何操作:1) 从文件中读取字符串,2) 从数据库中读取字符串,3) 将字符串作为命令行参数传递
一种选择是使用非对称加密,您可以使用它从服务器请求私有字符串(请参阅 SSL/TLS)。如果您想在本地执行此操作,您应该写入/读取文件(操作系统应该通过用户访问来处理授权)
如果你想隐藏它,加密它,你会在 github 上看到很多,人们不小心将他们的 aws 密钥发布到 github,因为他们没有将它用作“秘密”。始终加密重要数据,切勿使用像 ip 这样的硬编码值,因为这很容易更改,某种 dns 解析器可以帮助您保持正常运行。在这种特定情况下,您提到使用 DNS 指向代理将有助于屏蔽端点 IP。