短信和电子邮件安全

时间:2012-03-26 18:22:56

标签: java security email sms

在我的java Web应用程序中,当管理员添加用户时,我的系统会生成一个长度为12的随机字母数字字符串激活密钥。

此密钥分为两部分,每部分长度为6.激活密钥的一部分通过用户手机短信发送,第二部分通过电子邮件发送到用户的电子邮件ID。

有人告诉我,短信和电子邮件很容易被黑客攻击,所以如果你通过短信和电子邮件发送激活密钥,黑客就可以轻松找回它。

  • 我该怎么做才能解决这个问题?

  • 短信和电子邮件是否安全?

  • 我可以使用任何第三方安全性吗?

  • 其他网站如何发送电子邮件和短信?

目前,我的系统使用Way2SMS-API发送短信,并使用Gmail发送电子邮件。

3 个答案:

答案 0 :(得分:3)

电子邮件很容易(相对)破解,因为邮件是普通的,可以通过许多未知的服务器进行路由。

短信更难,但并非不可能。

然而,短信和电子邮件的组合以及到期时间(即必须在24小时内完成登录)应该被认为足够安全,用于大多数目的。

答案 1 :(得分:2)

解决此问题的一种简单方法是要求在Web应用程序中的原始HttpSession仍处于活动状态时输入安全令牌。因此,即使黑客拦截了您的消息,他也无法使用它,因为会话由用户拥有(例如,生成的令牌存储在会话属性中,因此您可以在用户在Web UI上输入时对它们进行比较)。然后拦截这个的唯一方法是使用“中间人攻击”,但可以通过使用https来击败。

另一种方法是向用户显示密钥的一部分,因此他必须将其与他将在电子邮件中收到的部分一起重新输入。因此,即使黑客窃取了该电子邮件,他也无法知道在生成电子邮件时向用户显示的内容。

答案 2 :(得分:1)

好吧,您可以使用Md5并通过短信发送一半,然后通过电子邮件发送一半,然后根据记录的密码的哈希值检查它,如果正确,则允许他们注册,否则,不要让他们注册。但是,这假设只有两个(电子邮件/ SMS)中的一个被黑客入侵。否则,如果他们同时获得它将失败目的。

@Eugine这是一个好主意大声笑我没想到那一个。 ^。^