首先,很不推荐你使用get方式发送密码,最好是使用post.

原因是,你通过一个连接把用户名和密码发送到后台,即便密码不是明文,别人获取不到密码明文,但是,只要你这个连接成功登陆过,别人就可以拿这个连接到处登陆.密码明文加密完全形同虚设.



如果非想使用get方式发送,我可以给你个思路,就是表单附带发送令牌,这个令牌是表单内的隐藏域,后台里对每一个时刻都不同的字符串做单向加密然后保存SESSION会话,一般使用md5方式,然后表单页面隐藏域写出该SESSION的值.发送表单的时候,附带令牌一起发送,(在url形式中就是多了一个参数),后台验证令牌是否是保存过的SESSION值,如果是,执行登陆,如果不是,就报错.

不管令牌是不是正确的,你都需要在每次生成页面时重新更新一次令牌并输出,这样才能保证唯一性.

然后你可以使用js版的md5把密码处理成加密字符串.

这样可以躲过部分不熟悉html的,但是如果他懂html,只需查看html的令牌,然后自己去组成url,那么照样还是不行.

所以,这种形式仍是不可取的,正宗的方式就是post发送用户名和密码,或是ajax的get方式发送.

js对文字进行编码涉及3个函数:escape,encodeURI,encodeURIComponent,相应3个解码函数:,decodeURI,decodeURIComponent



1.传递参数时需要使用encodeURIComponent,这样组合的url才不会被#等特殊字符截断。



例如:



2.进行url跳转时可以整体使用encodeURI



例如:Location.href=encodeURI("http://cang.baidu.com/do/s?word=百度&ct=21");



3. js使用数据时可以使用escape



例如:搜藏中history纪录。



4.escape对0-255以外的unicode值进行编码时输出%u****格式,其它情况下escape,encodeURI,encodeURIComponent编码结果相同。

url加密,一般只对参数加密的更多相关文章

  1. 常见三种加密(MD5、非对称加密,对称加密)

    转载. https://blog.csdn.net/SSY_1992/article/details/79094556 任何应用的开发中安全都是重中之重,在信息交互异常活跃的现在,信息加密技术显得尤为 ...

  2. 利用MVC的过滤器实现url的参数加密和解密

    最近在与一个IOS应用做接口对接,之前一直都没有遇到什么很大的问题,但是有一天发现可以通过软件解析app的url,然后直接通过url的拼接修改接口数据,这一下使得数据的安全性和准确性都降低了,于是就想 ...

  3. 如何写出安全的API接口(参数加密+超时处理+私钥验证+Https)- 续(附demo)

    上篇文章说到接口安全的设计思路,如果没有看到上篇博客,建议看完再来看这个. 通过园友们的讨论,以及我自己查了些资料,然后对接口安全做一个相对完善的总结,承诺给大家写个demo,今天一并放出. 对于安全 ...

  4. 学习加密(四)spring boot 使用RSA+AES混合加密,前后端传递参数加解密

      学习加密(四)spring boot 使用RSA+AES混合加密,前后端传递参数加解密 技术标签: RSA  AES  RSA AES  混合加密  整合   前言:   为了提高安全性采用了RS ...

  5. jmeter 请求发送加密参数(加密接口测试一)

    最近在做http加密接口,请求头的uid参数及body的请求json参数都经过加密再发送请求,加密方式为:ase256.所以,jmeter发送请求前也需要对uid及json参数进行加密.我这里是让开发 ...

  6. Java常用的加密解密类(对称加密类)

    Java常用的加密解密类 原文转载至:http://blog.csdn.net/wyc_cs/article/details/8793198 原创 2013年04月12日 14:33:35 1704 ...

  7. IOS中把字符串加密/IOS中怎么样MD5加密/IOS中NSString分类的实现

    看完过后,你会学到: 1学习IOS开发中的分类实现, 2以及类方法的书写, 3以及字符串的MD5加密/解密. ---------------------------wolfhous---------- ...

  8. PHP中使用OpenSSL生成RSA公钥私钥及进行加密解密示例(非对称加密)

    php服务端与客户端交互.提供开放api时,通常需要对敏感的部分api数据传输进行数据加密,这时候rsa非对称加密就能派上用处了,下面通过一个例子来说明如何用php来实现数据的加密解密 先了解一下关于 ...

  9. c#加密,java解密(3DES加密)

    c#代码 using System; using System.Security; using System.Security.Cryptography; using System.IO; using ...

随机推荐

  1. Paho -物联网 MQTT C Cient的实现和详解

    概述   在文章Paho - MQTT C Cient的实现中,我介绍了如何使用Paho开源项目创建MQTTClient_pulish客户端.但只是简单的介绍了使用方法,而且客户端的结果与之前介绍的并 ...

  2. [编织消息框架][JAVA核心技术]动态代理应用7-IRpcSend实现

    根据设计生成两个接口,IRpcSend send方法返回数据要求包装成QResult对象 public interface IRpcSend { public <T> QResult< ...

  3. [js高手之路] 我的开源javascript框架gdom - 选择器用法

    gdom框架是我开发的一款dom和字符串处理框架,目前版本是1.0.0. 使用方法跟jquery是差不多的, 会用jquery就会用gdom,目前 1.0.0版本的选择器完全支持CSS3选择器.没有做 ...

  4. AspNet Core 核心 通过依赖注入(注入服务)

    说起依赖注入 相信大家已经很熟悉了,这里我在简要的描述一遍, 什么是依赖注入: 我们从字面意义上来解释一下:依赖代表着两个或者多个对象之间存在某些特定的联系:举一个不是很恰当的例子 比如说一度夫妻组成 ...

  5. <The Art of Readable Code> 笔记二 (下)

    第1章  封装信息到名字 (Packing information into names) 4  附加额外信息 1)  encode value type 对于某些变量,附加额外的信息可以让人更好的理 ...

  6. MySQL两阶段提交

    参数介绍 innodb_flush_log_at_trx_commit 0: 每隔1s,系统后台线程刷log buffer,也就是把redo日志刷盘,这里会调用fsync,所以可能丢失最后1s的事务. ...

  7. 【读书笔记】【深入理解ES6】#3-函数

    函数形参的默认值 ES6中的默认参数值 function makeRequest(url, timeout = 2000, callback = function() {}) { } 可以为任意参数指 ...

  8. 从Unity中的Attribute到AOP(四)

    本篇我们将逐一讲解Unity中经常使用的Attribute(Unity对应的文档版本为2018.1b). 首先是Serializable,SerializeField以及NonSerialized,H ...

  9. 大话命令之--ss

    大话命令之-ss ss是Socket Statistics的缩写.顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容. 优势: (1)显示更多更详细的有关TCP和 ...

  10. 【Java学习笔记之七】java函数的语法规则总结

    函数的概述 发现不断进行加法运算,为了提高代码的复用性,就把该功能独立封装成一段独立的小程序,当下次需要执行加法运算的时候,就可以直接调用这个段小程序即可,那么这种封装形形式的具体表现形式则称作函数. ...