首页

文章

请问这种JS代码怎么加密

发布网友 发布时间:2022-03-08 17:06

我来回答

1个回答

热心网友 时间:2022-03-08 18:36

这不算加密,只不过一眼看不出来罢了。其实就是JavaScript字符串转义。

原理很简单,比如字符 ’w‘

它的 charCode 是 119 十六进制表示为 0x77 

然后利用 JavaScript 字符串转义前缀 \x,表达出编码过的 ASCII 字符来:

\x + charCode的十六进制表示(两位)

所以字符串 '\x77' 就是字符串 'w'

也就是说 

'\x77' === 'w'

这个的返回值是 true,二者完全等效!

这是对于 ascii 代码表示形式,charCode 大于 255 的怎么处理?就要用到 \u 前缀了

\u + charCode的十六进制表示(

比如汉字 '学' 的 charCode 是 23398 (0x5b66) 

书写时只要把 0x 替换为 \u:

\u5b66

这样就可以了。

'\u5b66' === '学'

那么为什么要这么麻烦呢?直接输入字符不就好了吗?要知道,有些字符是不能打印或不能被输入的(比如功能/控制字符“退格”等),如果要在字符串中包含这些字符,只能依靠字符串转义了!

回头看楼主给的代码:

"\x64\x6f\x63\x75\x6d\x65\x6e\x74"

这个是什么?

F12开浏览器开发者工具,切到控制台(或者你有 node.js),在控制台输入这一串。

你看到输出什么了吗?

"document"

继续

"\x77\x72\x69\x74\x65\x6c\x6e"

这个输入后,控制台返回

"writeln"

剩下括号内的也是一样的啦。结果是一个指向特定地址的 <a> 标签。

所以翻译过来就是

window['document']['writeln']('<a href="...">标签</a>')

看懂了?

好,既然楼主说要怎么加密的。我就写了个 JS 脚本,只要调用这个方法,你就得到“加密”后的字符串信息了:

function encrypt(str) {
  var result = '', charCode

  for(var i = 0, length = str.length; i < length; i++) {
    charCode = str.charCodeAt(i)
    if(charCode < 0x10) {
      result += '\\x0' + charCode.toString(16)
    } else if(charCode < 0x100) {
      result += '\\x' + charCode.toString(16)
    } else if(charCode < 0x1000) {
      result += '\\u0' + charCode.toString(16)
    }else {
      result += '\\u' + charCode.toString(16)
    }
  }
  return result
}

在控制台执行

encrpty('楼主给的那一串')

返回

"\x3c\x61\x20\x68\x72\x65\x66\x3d\x22\x68\x74\x74\x70\x3a\x2f\x2f\x77\x77\x77\x2e\x63\x63\x79\x6d\x6b\x2e\x63\x6f\x6d\x2f\x22\x20\x74\x61\x72\x67\x65\x74\x3d\x22\x5f\x62\x6c\x61\x6e\x6b\x22\x20\x73\x74\x79\x6c\x65\x3d\x22\x63\x6f\x6c\x6f\x72\x3a\x23\x46\x46\x30\x30\x30\x30\x3b\x22\x3e\x3c\x62\x3e\x43\x43\u6e90\u7801\u8bba\u575b\x3c\x2f\x62\x3e\x3c\x2f\x61\x3e"

楼主只要把括号中的那一串替换为上面输入的内容就好了。

手机导航地图语音怎么下载 如何分别真金和仿金首饰 怎样区分真金和仿金首饰呢 小学生新年晚会主持人的串词!!(不要太多)急 大大后天就需要了!!!_百度... 周年晚会策划公司 奥格瑞玛传送门大厅在哪 奥格瑞玛传送门大厅怎么走 锻炼颈椎的几个动作 水多久能结冰 冰能在多长时间内形成 请问水低于0度会结冰吗? 如何防止脱发严重 嘴唇上有黑印用蜜蜡和棉线去除了胡须 软柿子的热量 孕妇可以吃软柿子吗不是西红柿 脆柿子和软柿子的区别 脆柿子好还是软柿子好 软柿子可以多吃吗 “鱼悬洁白振清风”的出处是哪里 用大自然的声音评课好吗? 妇产科博士找超声科工作容易吗 怎能把微信6.2.0版本换回6.1.2版 微信群6.2.4怎么增加人数上限 微信6.2.2如何备份手机通讯录 电脑桌面图标不能放大? 有什么好用的识图软件 识图认人哪个软件最好 手机识图软件什么软件能识别图片位置 小米手机自动锁屏时间怎么修改 小米手机屏幕锁定时间设置教程 能举起100斤算大力吗 中医美容专业是什么 中医美容证有什么用 单声道音频什么意思(开启单声道音频有什么好处) 单声道音频是什么,有什么用处? 户口还未迁移到婆家 娘家户口怎么就没了呢 我结婚没有迁户口,现在娘家也没有怎么办 没领证生的孩子一般会判给谁 没领证生的孩子会判给谁 信用卡卡种有哪些 找一首古风歌曲 男声 低配电脑装w10还是w7流畅 电脑配置低装win7还是win10好 低配电脑适合装WIN7系统还是WIN10系统? ...500s-15isk这个联想笔记本的内存条尺寸是什么型号的有没有知道的... 越快越好.怎样减肥.而且胸部不缩水 请问徐闻县海安长途汽车客运站客服是多少? 过了平台期还会瘦吗 悦耳的意思悦耳的解释 重庆师范大学应用心理学专业的权威性如何? 打印机laserjetm1136mfp怎样设置无线打印 经典电影赏析之1:《精武英雄》 爆米花用的什么玉米 糯玉米哪个好 有机糯玉米的营养价值如何? 四大直辖市换帅原因 !!!js文件被加密了 ,怎样解密 怎么让js代码在浏览器中加密运行? js 如何加密 如何对JS代码加密 我想让你们给我看下,这个文件是怎么加密JS程序: 如何给JS脚本加密 js文件的加密与调用 请问怎么加密JS文件地址?我知道不能真正加密,只是想伪装一下地址,ASCII转16进制后地址还是太明显, JS文件在发布站点后需要加密 怎么加密 问下 想这样的js文件 是用什么加密的啊 JS文件怎么加密?我有现成的文件要加密!谢谢 如何隐藏或加密js文件或代码,浏览器客户端不可以看到 谁知道.js文件名是怎么加密的? 如何加密 javascript文件 怎么加密js代码? 如何加密js? 什么拖鞋穿久了不会臭? 拖鞋有股臭味怎么去除 为什么拖鞋穿久了会有一股屎臭味 拖鞋穿久了有股臭味.怎么去除 如何将js加密 想做java工程师要学习哪些东西呢,谢谢 恒源祥的纯羊毛衫怎么洗呢? 恒源祥羊毛被怎么清洗 关于洗羊毛衫的问题。买了恒源祥的那种专洗羊毛衣的,可是洗完后有羊毛味而且也发硬 恒源祥羊毛围巾怎么洗 恒源祥衬衣怎样洗 恒源祥的毛衣怎么样? 正品恒源祥羊绒衫洗后缩水吗 买了恒源祥毛衣起球,是质量问题吗, 请问恒源祥的羊毛被能不能水洗。 恒源祥雕绒怎么洗 恒源祥羊毛衫怎么识真假和质量好坏? 怎样辨别恒源祥羊毛衫的真假 请问,沛纳海手表带变黄,要怎么清洗的干净呢? 沛纳海维修中心在哪? 沛纳海手表保修表针怎么办? 怎么给电脑桌面文件加锁 怎么查手机卡流量使用情况? 怎么查手机卡流量
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com