JS加密混淆后安全吗(用js加密的内容能破解吗安全吗)

2023-03-13 15:38:33 密码用途 思思

严格不能叫加密只是混淆替换了所有的变量名。脚本语言混淆只是可读性变差了。但是高手会用chrome或者ff的console去调试你的JS所以,安全是相对来说的。。。

这种js加密方式是什么,能解密吗?

一堆 " _0x"开头的,应该都是十六进制字符代码,应该是hex加密了,可以搜索下HTML/Oct/Hex Decoder 有个工具可以解密

如何前台JS进行加密,后台java进行解密?

很不幸,就以我的知识范围,纯粹的JS无法做到百分百的安全。理由如下:

现在的浏览器端可以直接看到你的JS代码,JS代码都是明文的。尽管你可以压缩,混淆,但是也是加大hack的难度,无法彻底对浏览器不可见。既然你的代码都被看见了,那么Hash,加密都是扯淡了。

对内容加密可以使用HTTPS,这点不假。但是这仅仅能够抵抗抓包工具,但是通过浏览器的开发工具,仍然能够看到你的请求内容,格式。那么就可以按照你的格式伪造请求。我们就可以通过伪造请求修改某社交网站的用户设置。

结论:纯粹JS看起来无法满足你的需求,但是可以使用object标签,自己开发控件进行数据加密,这点事可以的。但是这就超出了JS的范围。并且Object的这个话题太大,我没办法给你展开,你自己研究下吧

在浏览器端,安全控件跟 JS 加密的密码有何区别?

在浏览器端,安全控件跟 JS 加密的密码我认为还是有很大区别的。但我觉得安全控件,它自身的安全性和自我保护能力都比JS强多了。

(一)对安全控件的认识:

1.由于安全控件的保护,客户的帐号及密码还是相对安全的。安全控件实质是一种小程序。由各网站依据需要自行编写,当该网站的注册会员登录该网站时,安全控件发挥作用,然后通过对关键数据进行SSL加密,防止账号密码被木马程序或病毒窃取,可以有效防止木马截取键盘记录。安全控件工作时,从客户的登录一直到注销,实时做到对网站及客户终端数据流的监控。安全控件是很多网银使用前必须安装的小程序。安全控件安装可以减少账户的不必要丢失和操作方面的失误。

所以网站,大多都会使用安全控件对客户的帐号密码等信息加以保护,对优化网络环境起着至关重要的作用。

2.在选择控件方面需注意事项:

一、确定所用的网站或是平台是否必须使用此控件;

二、检查控件的发行商;

三、安装控件时最好让一些杀毒或是一些保护电脑安全的软件处于开启状态,发现异常马上处理;

四、安全控件最好是从官方网站下载。

(二)对常用的 JS 加密(RSA)的认识:

1. JS 加密(RSA)步骤:

服务端生成公钥私钥,下发公钥给客户端 客户端使用公钥(还有盐)对密码加密 把加密后的密码发送到服务端,服务端使用私钥解密拿到密码 对于攻击者来说,只要能够拿到 HTTP 明文,就可以在公钥下发时进行公钥或者加密方式的替换,拿到密码后解密,再使用服务器公钥加密密码明文,返回给服务端。

2.加密注意事项:

通常情况下,在提交注册表单时,最好对密码之类的敏感字段进行加密,保证内容的安全。

(三)两者区别:

1.如果从安全角度上来看,js加密也好,安全控件也好,都是可被逆向破解的,其两者的唯一区别,可能就是破解安全会更复杂麻烦点,但是因为每个客户端它的安全控件程序都是一样的,所以在算法上是可以通过分析破解得到的。

2.如果考虑到安装时被攻击的情况,控件是要相对安全些,因为你不用每次都要传输安装控件,而js代码在传输过程中是存在被更改的的可能性的。

总之,从安全角度,js也好,控件也好,都是可以被逆向分析的,控件要相对安全些,因为你不需要每次传输安装控件,但是js代码在传输过程中存在被篡改的可能性。因为每个客户端控件程序是一样的,所以其实算法也是可以分析得到的如果考虑到中间人攻击的情况,安全控件比较安全。