首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过HTTP协议发送加密的“电子邮件”和“密码”值时,我必须使用什么加密过程?

通过HTTP协议发送加密的“电子邮件”和“密码”值时,我必须使用什么加密过程?
EN

Stack Overflow用户
提问于 2011-02-28 01:11:52
回答 2查看 2.5K关注 0票数 2

我使用Rails 3,我想通过HTTP协议发送'email‘和’密码‘值(我知道,我不应该,但我需要)。我需要将用户凭据从我的客户机应用程序发送到我的服务应用程序*。

我可以使用一个公开的私有RSA密钥来完成这个任务,但是,如果是这样的话,我不能通过HTTP将公钥发送给接收者,否则黑客可以窃取密钥并解密内容。另一方面,HMAC加密(如果我理解的话)只用于验证数据的完整性和消息的真实性。

我听说过AES.对我的目的有好处吗?如果是这样的话,我在哪里可以找到关于如何使用Rails的教程?I“只是”需要在客户端加密用户凭据,并在服务器端对其进行解密。

如果我写错了什么,请告诉我。

如果你建议其他方法,请告诉我!

更新I

*客户端是一个web应用程序(一个网站,例如‘www.site1.com’),服务器是另一个web应用程序(例如,另一个站点web 'www.site2.com)。

更新II

使用RSA加密..。

客户端服务步骤:

  1. 客户端生成公共私钥巴黎
  2. 我(一个真实的人)将公钥从客户端手工粘贴到服务。
  3. 客户端向服务发送消息,包括加密的用户凭据(客户端不向HTTP请求追加公钥)
  4. 服务使用公钥(只有服务才知道)解密用户凭据并继续登录用户。

现在,如果我发送公钥而不是执行步骤2,那么客户端必须在步骤3中通过HTTP协议发送公钥,黑客可以

  1. 截取消息
  2. 拿走公用钥匙
  3. 解密用户凭据并窃取

因此,如果我将公钥发送到服务,是否应该使用RSA加密来加密用户凭据(这些是重要的私有信息)?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-02-28 01:28:59

我可以使用一个公开的私有RSA密钥来完成这个任务,但是,如果是这样的话,我不能通过HTTP将公钥发送给接收者,否则黑客可以窃取密钥并解密内容。

1)通过HTTP将公钥发送给收件人。

2)客户端对数据进行加密。

3)黑客不能用公钥对内容进行解密。

4)在您的服务器中,使用私钥做解密内容。

示例:用Ruby (on Rails)加密敏感数据

“在非对称密钥加密方案中,任何人都可以使用公钥加密消息,但只有配对私钥的持有者才能解密。”

编辑

背景

  • 公钥用于并仅用于加密数据。
  • 私钥用于并仅用于解密数据。

如果黑客拦截了公钥,她唯一能做的就是加密数据。

甚至HTTPS也是这样工作的。

只有服务器才能知道私钥。

Obs2:无论如何,尝试启用HTTPS。这会让你的生活轻松得多。

票数 1
EN

Stack Overflow用户

发布于 2011-02-28 01:15:26

带有TLS/SSL的HTTPS。

http://en.wikipedia.org/wiki/Https

这是一个已解决的问题。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5137310

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档