2011-08-16 43 views
1

我在我的应用程序中有一些敏感数据,我想保护(电子邮件密码)。我一直在阅读关于AES的内容,但您必须使用密码来加密和解密数据。如果用户得到我的代码,他会得到密码,能够解密并获得我的电子邮件密码,这就是我想要避免的。所以我有一些问题:如何加密iphone应用程序

1.我应该使用什么技术?

2.如果我加密整个应用程序(不仅是密码字符串),苹果公司将能够解密它,当我提交我的应用程序给他们。

3.它在用户安装应用程序时是如何工作的,电子邮件密码是否仍然被加密?

在此先感谢!

+2

你为什么要这些敏感数据插入到你的应用程序? –

+0

因为我从应用程序发送电子邮件。 – madcoderz

回答

1

凡是您的应用程序在设备上可解密被攻击者作为被解密好。此外,您的应用程序中无需包含电子邮件(我假设这意味着SMTP帐户密码)。只需使用Web服务。

在您的应用程序,创建请求的URL是这样的:

NSString *requestURLString = [NSString stringWithFormat:@"https://example.com/registration-api/register.php?name=%@&email=%@", [name stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding], [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 

您的Web服务可能是这个样子:

<?php 
    $message = "Name: $_GET[name]\n\n$_GET[message]"; 
    mail('[email protected]', 'New User Registration', wordwrap($message, 70)); 
?> 
+0

好的。我以前从未使用过网络服务,我假设我将我的smtp帐户密码和用户名放在网络上,然后当电子邮件将被发送时,我称之为将电子邮件的主题和消息传递给它。那样我的密码就不会再出现在应用程序中了吗?你能指出我正确的方向来完成这个吗?谢谢 – madcoderz

+0

我可能正在寻找的是一款适用于iPhone的ProGuard。 – madcoderz

+0

我不知道任何现成的Web服务完成此任务。但它基本上只是一个简单的脚本,放在您的Web服务器的某个地方,然后从您的应用程序请求它。该脚本可以用PHP编写,并使用“mail()”(取决于您的设置)或直接连接到SMTP。 – gcbrueckmann

相关问题