2016-12-19 93 views
0

我已经制作了一个简单的邮件应用程序,它接收电子邮件凭据并使用它发送特定类型的电子邮件到选定的地址。问题是,我不得不直接在代码中输入凭证,所以任何使用dex2jar的人都可以获取源代码并获取用于转发的电子邮件,并轻松地使应用程序过时。加密/隐藏部分源代码

我想我不是唯一面临此问题的人,那么有什么方法可以使我的代码安全?

+0

相关:http://stackoverflow.com/questions/8611960/piracy-piracy-piracy-what-c​​an-i-do –

+0

我并不是特别在意盗版,因为我说这个应用程序本身很简单。我只想隐藏一行代码,也许有更简单的方法来做到这一点? – MilesWeirdo

+1

假设一个典型的计算机/操作系统,它固有地不能完成。为了JVM做些什么,它需要能够知道该怎么做。这意味着您需要以JVM可以读取的形式写出这些指令。除非你使用解密密钥进行自定义硬件的开发,否则JVM/OS/etc将不会有任何黑客无法访问的信息。这意味着没有办法从黑客中隐藏某些东西,但却可以将其用于JVM。 – yshavit

回答

1

不管你用什么技术来隐藏凭证,如果它在代码中,那么总是可以找到

而不是硬编码他们,你可能可以让用户指定他们,当他启动应用程序?如果无法避免这种情况,您可以使用远程服务来完成发送请求并转发请求。

+0

问题是,应用程序的整个逻辑是它只能接受输入并将其发送到电子邮件,使用我指定的转发电子邮件和收件人的电子邮件来接收这些电子邮件。 – MilesWeirdo

+0

唯一的解决方法是*避免*将这些细节存储在客户端即ie。在您分发的应用上。你可以有一个远程服务,将发送和转发您的请求到 –

+0

我在哪里可以读这个远程服务? – MilesWeirdo

0

你不能同时连接到一个电子邮件帐户,并保持这些用户不在所述电子邮件帐户。考虑使用托管服务器作为项目的一部分,从服务器级安全连接到电子邮件帐户并远程处理这些电子邮件。

+0

我该怎么做呢?任何教程可用? – MilesWeirdo

+0

就像这样,只需建立你想提交数据的方式 - https://www.asp.net/web-pages/overview/getting-started/11-adding-email-to-your-网站 – pizzaslice

+0

http://stackoverflow.com/questions/18326738/how-to-send-email-in-asp-net-c-sharp/*编辑:更好的资源堆栈链接 – pizzaslice