【问题标题】:How to encrypt data and pass it using ajax call?如何加密数据并使用ajax调用传递它?
【发布时间】:2015-06-02 19:46:54
【问题描述】:

我正在使用 express js。我有一个模式表单,其中包含用户名和密码字段。我正在使用 ajax 调用发布表单数据。一切正常,但唯一的问题是我输入的用户名和密码在帖子标题中可见,所以在 jquery 中有什么方法可以在提交之前加密表单数据..

这是我的代码

 $("#login").click(function(){
     var d=$("#form-1").serialize();
    // console.log("serialize data=",d);
    $.ajax({
        method : 'POST',
        url  :'/login',
        data :d ,
        success:function(response){
            console.log("response=",response.message);
            if (response.message=='success'){
                $("#msg").hide();
                 $('#myModal').modal('toggle');
                console.log('in if 83');
                }
            else
                {
                console.log("in else");
                $("#msg").text("invalid username or password");
                $("#msg").show();
                }

        }
    });   

  });

【问题讨论】:

  • HTTPS..!!为什么要担心手动处理密码学?
  • 你有什么需要 https 无法处理的吗?
  • @ user1354678 :所以我必须在我的 ajax 调用中添加任何额外的属性或什么?...我应该如何手动处理密码学?
  • @PritamKale 您需要在您的服务器上启用 HTTPS 并为此购买 SSL 证书。

标签: jquery express


【解决方案1】:

您应该考虑使用HTTPS protocol,然后它会自动加密。

对于测试或如果您知道风险+利弊,您可以使用自签名 SSL 证书:How to create a self-signed certificate with openssl?

对于生产,您应该使用有效的 SSL 证书,您要么必须购买它,要么使用那些免费提供商中的一个。

【讨论】:

  • 在我的例子中我应该如何实现HTTPS协议...我需要做什么?
  • 您需要将有效或自签名证书添加到您的网络服务器,启用 https 连接并用于您的 ajax 调用 https 连接。具体答案会非常复杂,但您可以在 stackoverflow 或互联网上的其他网站上找到所需的一切。
【解决方案2】:

当您传输不希望任何第三方嗅探的数据时,通常建议使用 SSL(安全套接层)。数据在传输前会被浏览器加密,只能由您的服务器解密 - 使用公钥/私钥机制。

【讨论】:

    猜你喜欢
    • 2013-08-09
    • 2020-08-17
    • 1970-01-01
    • 1970-01-01
    • 2015-02-23
    • 1970-01-01
    • 2019-01-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多