php js混淆加密工具,求混淆js加密算法解密
下面是完整的解密代码和调用方式:
注:可以试下在 9xbuddy 网站下的 chrome 控制台运行。
// 填入响应数据的url字段
let res_formats_url = '65326f655953386f68336f645166616852434f754b2f4c323747706f387937354f4f72667a7a497a4e2b5a7a33754d63664b71616a56497a414c38754943716450695a705a75326f6e4f476f696e633165533977736d595a67534a626157347050436169697139324633626d2f537177506671736c754c357931486c4a324a6e6a7147706e3273737475476a51537170704732664a4b366e7568476e662b596763715a685561366e566561666c79706e6c364e313453386d667a647261432b7447486133437670344d7a4a6f70717334714b2b6e'
// 填入响应数据的token字段
let res_token = 'n6rWoqmgkmRu3cSrlJmrlNOpy6+msMueoseSamOVgl59lpXP0qvT1Z9xgnuk2sihVbLDmVCEhYa8V5WSlmeXkWqPg3al1c6bh5qUsc2rk5dqbZBlbIaLgH25r4JcVZ7Pz5yEqZyZzaFfhqadp9TPm19tYpSUZZebb22QY2yZg4iWy8OomWRnmZtll5hoZpJm'
let url = main(res_formats_url, res_token)
console.log(url)
// 入口函数
function main(t, n) { // t 为响应结果的 url, n 为响应结果的 token
if (!t || !n)
return null;
var o = document.head.innerHTML
, s = /\/build\/bundle-([^"]+?).css/g.exec(o);
if (!s)
return "";
var i = s[1]
, c = hex2bin(t).split("").reverse().join("")
, l = n + document.location.hostname.length + i;
return decrypt(c, l)
}
// 十六进制转二进制
function hex2bin(e) {
var t, n = [], r = 0;
for (t = (e += "").length; r < t; r += 2) {
var a = parseInt(e.substr(r, 1), 16)
, o = parseInt(e.substr(r + 1, 1), 16);
if (isNaN(a) || isNaN(o))
return !1;
n.push(a << 4 | o)
}
return String.fromCharCode.apply(String, n)
}
// 数据解密
function decrypt(e, t) {
var n = "";
e = decode64(e);
for (var r = 0; r < e.length; r++) {
var a = e.substr(r, 1)
, o = t.substr(r % t.length - 1, 1);
a = Math.floor(ord(a) - ord(o)),
n += a = String.fromCharCode(a)
}
return n
}
// base64解码
function decode64(e) {
if (e = e.replace(/\s/g, ""),
/^[a-z0-9\+\/\s]+\={0,2}$/i.test(e) && !(e.length % 4 > 0)) {
var t = 0
, n = void 0
, r = void 0
, a = [];
for (e = e.replace(/=/g, ""); t < e.length;) {
switch (n = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".indexOf(e.charAt(t)),
t % 4) {
case 1:
a.push(String.fromCharCode(r << 2 | n >> 4));
break;
case 2:
a.push(String.fromCharCode((15 & r) << 4 | n >> 2));
break;
case 3:
a.push(String.fromCharCode((3 & r) << 6 | n))
}
r = n,
t++
}
return a.join("")
}
}
function ord(e) {
var t = "" + e
, n = t.charCodeAt(0);
if (n >= 55296 && n <= 56319) {
var r = n;
return 1 === t.length ? n : 1024 * (r - 55296) + (t.charCodeAt(1) - 56320) + 65536
}
return n
}
php js混淆加密工具,求混淆js加密算法解密相关推荐
- android js 代码混淆工具,好用的JS(Javascript)混淆加密工具-HDS JSObfuscator 2.14版
好用的JS(Javascript)混淆加密工具-HDS JSObfuscator 2.14版 书法字体2017.06.23css压缩 分享一款好用的JS混淆加密工具:HDS JSObfuscator ...
- js压缩混淆加密工具,解密工具
js压缩混淆加密有什么不同 压缩 compress: 去掉空格,换行,注释等,格式紧凑,节约存储空间. 混淆 obfuscate/garble:替换变量名或方法名,让js不容易看懂.也做到了压缩的效果 ...
- python爬虫处理js混淆加密_Python爬虫—破解JS加密的Cookie
專 欄 ❈Jerry,Python中文社区专栏作者. blog:https://my.oschina.net/jhao104/blog github:https://github.com/jhao10 ...
- 5款全球知名的JavaScript混淆加密工具
现在市场上有很多好用的JavaScript混淆加密工具,其中一些比较流行且受欢迎的工具包括: 1.UglifyJS(罗马尼亚):UglifyJS是一个非常流行的 JavaScript工具库,它可以压缩 ...
- js混淆加密,通过混淆Js代码让别人(很难)还原,js代码加密
使用js的混淆加密,其目的是为了保护我们的前端代码逻辑,对应一些搞技术吃饭的公司来说,为了防止被竞争对手抓取或使用自己的代码,就会考虑如何加密,或者混淆js来达到代码保护. 1.为什么需要js混淆 在 ...
- js混淆加密,通过混淆Js代码让别人(很难)无法还原
1.为什么需要js混淆 在web系统发展早期,js在web系统中承担的职责并不多,只是简单的提交表单,js文件非常简单,也不需要任何的保护. 随着js文件体积的增大,为了缩小js体积,加快http传输 ...
- js混淆还原工具_js混淆解密 还原混淆方法
方法一: 利用IE开发人员工具(IE8开始已经自带,IE7以前需要下载安装IE Developer Toolbar)进行反混淆. 方法二: 混淆后的测试代码: eval(function(p,a,c, ...
- js des加密 java_Java实现与JS相同的Des加解密算法完整实例
本文实例讲述了Java实现与JS相同的Des加解密算法.分享给大家供大家参考,具体如下: 这里演示java与js实现相同的des加解密算法,不多说,不废话,直接上代码 一.java实现 package ...
- js混淆还原工具_[原创JS混淆downloader代码还原
好久没发贴了,来水一贴吧. 1.样本代码function UP(m) { var nUX = "charA"; var luz = "t"; var c = n ...
最新文章
- YOLOv2和YOLOv3效果对比
- Jmeter实现压力测试(多并发测试)
- 有关链表的小技巧,我都给你总结好了
- C#LeetCode刷题-记忆化
- ios 绘制线框_iOS开发 给View添加指定位置的边框线
- javaweb使用 window.location.href 传中文参数 乱码问题
- IDEA 导入项目 导入不进去
- centos7安装teamview
- C4D新建立方体对象不显示?
- 介绍一种AI的抠图方法
- linux sticky,session_sticky命令
- 22牛客多校5 - Don‘t Starve(DP,依靠边更新端点)
- android oreo 老机型,三年的老机型,一加手机1也有安卓8.0了!
- HDU 4125 Moles 树状数组 + KMP
- 基于51单片机智能手机锂电池充电器设计
- 微透镜阵列的高级模拟
- 罗素:自由主义的十诫
- Flutter安卓系统把状态栏设置为透明色
- 物流通知:您的快递即刻送达!
- 利用Arcgis计算景观破碎度
热门文章
- C++中运算符重载需要遵循的规则
- 项目需求|3D结构光扫面(项目经费50万)
- 一个应用在多视图光度立体视觉MVPS的NeRF方法
- 实战|C++在vscode上的调试配置
- 超融合服务器品牌型号,蓝盾发布云平台!强势加入云计算IT行列
- React onClick 传递参数
- uniapp 的使用
- 在数据库创建表的时候,时间设置为什么类型,会随着每次提交的时间发生变化
- MPB:林科院袁志林组-​原生质体法制备根系腐生型共生菌(伞菌目)单核化菌丝...
- 用户稿件 | 好家伙,到底谁在用TBtools?