dailiboy 2018-10-24 06:15 采纳率: 12.5%
浏览 1648
已采纳

织梦CMS登录时用户名及密码加密与解密

甲方要求登录名与密码不能明码传输,需要进行加密传输。HTTPS不考虑。
请问织梦CMS怎样进行更改能够处理后台登录时,用户名与密码加密传输。

  • 写回答

3条回答 默认 最新

  • dailiboy 2018-10-25 13:56
    关注

    下面是通过公钥加密。在客户端进行。

     $(function(){
        $('.login-btn').click(function(){
            var encrypt = new JSEncrypt();
            encrypt.setPublicKey("MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDJn0Rxsay9tUuWga7qlkCJv+QayR0sj1dJdKBo7YK4NEHJ6sVsc6H3tnynh62cPtCKOfVm24V/BCFcR3mpA2/tQW5JpUqK+vPhRbMSSc+VT+X3UyMLD7nQRKU+FvtGDXi1iBs4iaYIgsfRE/YkqcSk8KerXv8VJ7xqFdh+db12XwIDAQAB");
            var data = encrypt.encrypt($("#userName").val());
            $("#userName").val(data);
            //alert(data);
            //var userstr = $('#userName').val();
            $('#formid').submit();
        })
    })
    

    下面是在服务前端进行解密

     $encrypted = '123';
    
    $pi_key="MIICxjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIJoj7Saah2vUCAggAMBQGCCqGSIb3DQMHBAij1y6O0VtQDQSCAoBs7qL7zLk7nLMPkxQcv1o9mjXq2bcW2JR8o44yu93YelOlEbJGirnjE8RwKhMQaX+r/lFnC+lFwvWvUOlMIUtkTwft+nAwYHQToV9VBixmmdmVhDfo7/WYGFneVJgyuFrwHEsV8dG4Cq4zTHqWIYLdsPMFWxOeDNkjqbTmfNV8a7SDrbXfnD9OHCXQXEP5iuAmyimZK16pGq+wiYJVV+AevtSG6r9F2nrP+AeGqzIe2CZDixc5eHNtWhB/u8krN3z/6AUBZdXSh5m6FycvMgUAcY/uBuXNxmF60PkRV4DSOl40E7TBd6PiRhEIu2OewaxH7zW8p+5tRYpYVAh0wAq351OK+p0U0Fc0lgGdenDLSUjNL5Uajb+ov1/p8Ab5QMCQ9eG6TtubX/pDBDwf2hQVfpizjM4JCi2BQCibwBjJM1K7aJClBzg2+enSaNEw4v21aOjvrpQzGlYxaCXvbA6JHBKyz8bNNXOlfBOTe3Hn+KvYd2CZhodg/4FxT6PZUw97E17hETeJp4LKL9jq6ijiUsplCrI70d2qacmvEN1P8rl7WahwjfTie1CGg1gRPWIlQalJUryr7AdbLoqXBNYZMsSp81SGfDA0S++u07Zxnpp7sKC3Wdv4qyFA4ZmzpSA3kOtH2N/C3h0N36x87UhzU4JaSr7AkelmfixRGbDQMhOa9qCjaRRD3REB0EIwB1z+fqrWOVFXx4NuWGHhm5xsxnw+ANjg53aSZFb+RWXC6R9PdWrp9pss6cvPMxJMjoowEp8/Qy8bASvKSv267Z5nzP/rflbQlo3HY3pQ8XNUF3nPkRfZ7+pmXkaoHTXULW3g2n4xRHulHGk1wj2A3rfs";
    
    openssl_private_decrypt($userid, $encrypted, $pi_key);
    

    通过openssl_private_decrypt方法后,$userid和 $encrypted的值都没有发生改变。
    我是直接在后台用openssl_private_decrypt这个方法,也不清楚这个方法是否还需要其他类库的支持。

    前台是javascript 后台是PHP

    之前的回答都提供了解决方法,但是因为我技术不足,并没有很好的实现。所以我最终采用了HASH的方法,往用户名和密码处插入随机编码,后台剔除插入的随机编码。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 jupyter notebook
  • ¥30 informer时间序列预测
  • ¥20 SSR引物多态性分析
  • ¥15 大漠插件在Win11易语言注册调用和免注册灵异事件,VS上注册调用完全没问题
  • ¥15 Addressable缓存机制做热更新的问题
  • ¥15 微信开发者工具vant组件
  • ¥15 iPhone iCloud云盘资料删除,MAC丢失50多G桌面资料
  • ¥20 希望各位学长可以给我答疑
  • ¥20 Linux实现: 客户端(cli01)通过TCP(或UDP)连接到聊天服务器(serv)进行聊天。
  • ¥15 (标签-matlab|关键词-m3)