当前位置:首页 » 密码管理 » js的加密

js的加密

发布时间: 2022-01-09 19:39:03

‘壹’ 用JS方法加密URL

首先,很不推荐你使用get方式发送密码,最好是使用post.
原因是,你通过一个连接把用户名和密码发送到后台,即便密码不是明文,别人获取不到密码明文,但是,只要你这个连接成功登陆过,别人就可以拿这个连接到处登陆.密码明文加密完全角同虚设.

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

不管令牌是不是正确的,你都需要在每次生成页面时重新更新一次令牌并输出,这样才能保证唯一性.
然后你可以使用js版的md5把密码处理成加密字符串.
这样可以躲过部分不熟悉html的,但是如果他懂html,只需查看html的令牌,然后自己去组成url,那么照样还是不行.
所以,这种形式仍是不可取的,正宗的方式就是post发送用户名和密码,或是ajax的get方式发送.

‘贰’ 如何将js加密

简单的说: javascript是一种客户端语言,即是在用户的浏览器中被执行的,由于权限不被服务器控制,所以不可能加密.
多说一点: 虽然js不能加密,但是如果你不太想被别人太容易拿去使用,你可以使用一些工具对javascript的代码进行压缩和代码混淆. 这种工具你搜一下就是一大堆的.

‘叁’ 怎么隐藏JS中的加密代码,怎么让别人看不出你的JS加过密

首先JS是客户端(浏览器)运行的语言,和css html一样是明文可见的,js目前只能做到使用eval混淆,网络搜索“JS压缩”第一个应用就可以做到混淆和反混淆。另外还有一种方式,针对某些编译编程,在此就说编译器吧,比如google的,其实只是一个优化器。这样优化出来的代码阅读性很差,代码冗余量很低,性能也是相对来说比较好的。

但是强调一点,js是明文可见的,只能混淆,让阅读新降到最低,如果和密码一样加密传输的,浏览器获得的是密文的话,就无法执行,直接报错啦!

‘肆’ 如何对JS代码加密

JS加密其实就是对字符进行编码,也不是一定要用工具有两个函数的document.write(escape("你好,这是测试!")+"<br>");
document.write(unescape("%u4F60%u597D%uFF0C%u8FD9%u662F%u6D4B%u8BD5%uFF01"));

‘伍’ 如何加密js

可以搜索js加密工具。
一般js是不用加密,只需要混淆压缩就可以了。
真正可以加密的就是需要使用网上提供的php的加密方法。

‘陆’ 求助前端JS都是用什么加密的

写过 js混淆器,谈一些浅显的个人看法。

个人认为,js的不可读化处理分为三个方面:压缩(compression)、混淆(obfuscation) 和加密(encryption)。 (不可读化处理,这是我自己发明的术语,一切会增加代码不可读性的代码转换, 都可以这么叫,“增加代码不可读性”可能是代码转换的结果或者目的).

1. 压缩

这一操作的目的,是让最终代码传输量 (不代表代码量, 也不代表文件体积)尽可能小。压缩js的工具,常见的有:YUI Compressor、UglifyJS、Google Closure Compiler 等。

通常在代码压缩的过程中,只改变代码的语法,代码的语义和控制流不会有太大改变。

常见做法是把局部变量缩短化,把一些运算进行等价替换等。代码压缩对于代码保护有一些帮助,但由于语义和控制流基本没变,起不了太大作用。

在压缩层面上,代码不可读只是一种附带伤害,不是最终目的。

2. 混淆

这一操作的目的,是让代码尽可能地不可读,主要用作代码保护。

让代码不可读,增加分析的难度,这是唯一目的。混淆过后文件体积变大一倍也没关系,代码量变多也没关系,运算慢50% 也没关系。

常见的做法有:分离常量、打乱控制流、增加无义代码、检查运行环境如果不对就罢工,等等。

在混淆层面上,代码不可读是最终目的。

值得一提的是,Google Closure Compiler 的 Advance Level Compression 会压缩类和对象的成员,其压缩结果很难分析,也可以认为是一种混淆,但兼容性不太好。

广告时间:我写的 js混淆器,中文名叫 “看起来很厉害的 JS 编译器”, 英文名叫做 The Impressive JS.Segment.Compiler , 看起来很厉害的 JS 编译器 。

3. 加密

说实话我很难对加密做一个定义,因为加密在Web界有太多歧义了。

有加密就有解密,意味着加密操作可逆,密文可以明文化。

就这样看来,在Web界,可以称之为加密的东西包括:HTTPS传输、JavaScript实现对称加密或者不对称加密等等。

这样看来,不可逆的代码压缩和混淆就不能列入加密这个范畴了。

非要找一个可以称之为加密,又经常被人误解为压缩和混淆的东西,Dean Edwards 的 Dean Packer/Unpacker 可以拿来做个例子。

比如我们把 var num=1;alert(num);

输入 Dean Packer,pack 一下,得到这么一串东西,是不是看着非常像被压缩和混淆过的代码?

把上面那串意义不明物拿来 unpack 一下,得到了原文。

实际上 Dean Packer 只是对源码进行了一个字符串变换,没有深入到代码语法层面,你可以拿 "Hello world, 你好师姐" 来试试。

用Online JavaScript beautifier 能轻松把这串东西还原为 “Hello world, 你好师姐”。

可以看出,代码加密意味着:将代码明文进行可逆的变换(加密),生成密文;将密文进行逆变换(解密),可以还原明文;最终运行环境运行的是解密代码。

结语

实际上大家对压缩、混淆、加密这三个概念还是挺不清晰的,我在这里说一些个人见解,希望有帮助。

在现实项目中,我是多种手段结合的:

对于不需要做代码保护的项目,比如个人博客,做代码压缩,加快载入速度,这就够了。
对于需要做一些代码保护,防止抄袭的项目,可以在源码中加入一些开发者的信息和防护代码,然后混淆和压缩。很不幸的是,我这方面总是做得不太好,防君子防不了小人啊哈哈。
对于需要严格加密的项目,可以用 混淆、压缩、加密、签名检查 等多种手段,这我就不清楚了,等大婶来补充。

‘柒’ 关于JS加密,这个是什么加密方式如何进行加密和解密

7种加密方式:http://www.codesky.net/article/200911/165731.html

‘捌’ 如何在前端调用js对密码进行加密

加密和解密原则上都应该在后台完成才合乎常理,如果在前端加密,就好比在众目睽睽之下化妆易容,然后声称自己是另一个人一样,没意义啊。
如果一定要在前端加密,可以这样:
<input type="submit" name="submit" value="注册" onclick="var pwd=document.getElementsByName('password')[0];pwd.value=md5(pwd.value);"/>

‘玖’ js有几种加密方式

首先,MD5不是加密算法,是签名算法,哎,到底是有多少国人被毒害了呀。

另外,只要是可以由软件实现的加密算法,js都能使用,只是有效率问题,
一般的
非对称算法,使用的资源都很庞大,所以js很少有。
而对称的加密算法……,由于js是对用户可见的,所以……就和没加密一样。

这也就是为什么真正的高安全网站都不会选择用js做加密,而是选择用https 协议这样的手段。

再次重申,MD5不是加密算法,所以不再上述范围内

‘拾’ js如何加密加密完之后如何使用

使用内置的三个函数就行,分别是escape(),encodeURI(),以及encodeURIComponent()。
escape() 方法:
采用ISO Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是%20。
不会被此方法编码的字符: @ * / +
encodeURI() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。
不会被此方法编码的字符:! @ # $& * ( ) = : / ; ? + '
encodeURIComponent() 方法:
把URI字符串采用UTF-8编码格式转化成escape格式的字符串。与encodeURI()相比,这个方法将对更多的字符进行编码,比如 / 等字符。所以如果字符串里面包含了URI的几个部分的话,不能用这个方法来进行编码,否则 / 字符被编码之后URL将显示错误。
不会被此方法编码的字符:! * ( ) '
因此,对于中文字符串来说,如果不希望把字符串编码格式转化成UTF-8格式的(比如原页面和目标页面的charset是一致的时候),只需要使用
escape。如果你的页面是GB2312或者其他的编码,而接受参数的页面是UTF-8编码的,就要采用encodeURI或者
encodeURIComponent。
另外,encodeURI/encodeURIComponent是在javascript1.5之后引进的,escape则在javascript1.0版本就有。

热点内容
字体目录在哪个文件夹 发布:2024-11-15 06:20:28 浏览:181
php种子怎么打开 发布:2024-11-15 06:07:01 浏览:346
密码箱的密码忘记了如何开锁 发布:2024-11-15 06:04:41 浏览:955
安卓软件和苹果系统哪个好 发布:2024-11-15 05:48:32 浏览:284
pythonwhileelse 发布:2024-11-15 05:39:10 浏览:672
java文件流上传文件 发布:2024-11-15 05:24:02 浏览:147
linux安装so 发布:2024-11-15 05:22:29 浏览:582
九游版冒险王2适合安卓哪个版本 发布:2024-11-15 05:12:33 浏览:600
iphonexsmax怎么连接服务器 发布:2024-11-15 05:11:46 浏览:776
长江存储校招 发布:2024-11-15 05:11:01 浏览:967