我实验的是一个埋点工具( umami ) 的脚本,只有不到两百行,逻辑比较简单,但效果是真的有,太长了就不贴对话记录了,也没有复杂的 prompt ,就是 "帮我把这段代码转成有正确命名的代码 xxxxxxx", 用的 claude-3.7-sonnet 。
1
Rickkkkkkk 2 天前
还真是
|
![]() |
2
lbw 2 天前
js 混淆的意义难道不是降低传输体积吗?本身混淆过程就没有加密的流程
|
![]() |
4
kkk9 2 天前 ![]() 那就朝 wasm 发展咯,全部封装进去,跟安卓 dex 加壳一样
|
![]() |
6
Shatyuka 2 天前
应该 WebAssembly ,还能 OLLVM
|
7
paopjian 2 天前 ![]() deepseek v3 的时候就用他们来帮我反压缩 js 代码了, 比豆包好用多了, 那会的思考还是英文
|
![]() |
8
Torpedo 2 天前
混淆主要是为了压缩。隐藏逻辑单纯混淆意义不大
|
9
antipro 2 天前 via Android
会不会有一天连汇编也能反推回去
|
![]() |
11
lp4298707 2 天前
啊哈,你给我提供了一个更方便逆向小程序的思路
|
12
kneo 2 天前 via Android
你也知道只有几百行。
|
14
yyf1234 2 天前 via iPhone
你这种混淆顶多叫 uglyjs ,你让 ai 还原 ast 试试
|
![]() |
15
shakukansp 2 天前
@zizhu ? 不是有最大输入限制?
|
![]() |
16
Zenyet 2 天前
还真是+1 ,挺好的,看到混淆的头晕
|
17
zizhu OP @shakukansp
@kneo 我用 vue 源码( https://unpkg.com/[email protected]/dist/vue.global.prod.js )试了下,生成到八百行的时候确实就卡住了,可能是到了上限。 但这个问题吧,说不定有大佬能用更好的配置,那就不是问题了 |
![]() |
18
ychost 2 天前
现在甚至把网页截图给它,都能噼里啪啦画出来了,自己在改吧改吧差不多就能用了
|
![]() |
19
opengps 2 天前
js 作为前端暴露的代码,本来加密只是增加难度,ai 辅助加速可视代码完全是正常现象
|
![]() |
20
wyntalgeer 2 天前
感谢前端同学们造轮子的劲头,继续努力!
|
21
Gress 2 天前
一个几 2.5M 的混淆 js 文件怎么让 AI 反混淆?
|
![]() |
23
killadm 2 天前 via Android
@antipro 实际上 ida 反汇编出来的关键代码扔给 ai ,ai 就可以按你要求的需要输出,做个注册机出来。
感觉大模型上下文足够大的时候完全可以扔给他整个反编译项目,让他重新写一个。 |
24
Blanke 2 天前
那叫混淆?试试还原 ollvm vmp 的 js 代码?爬虫圈一直都有很多人尝试这块,复杂点的现阶段 ai 没啥用
|
![]() |
25
w5HRW8wDw5H6cS9Z 2 天前
不到 200 行,直接[js 美化]( https://beautifier.io/)后再扔给 AI ,差不多就能猜出来了吧。
|
26
gentlemanChen 2 天前 via Android
用英语单词其实更好解释
1. Minimize 减少体积,大家认为的混淆,其实是计算机不需要可读性,把变量名什么的缩短,去空格等操作 2. Compress 压缩也是减少体积,但是可以基于上面再减少体积,比如 我们经常看到 gzip 后多少体积这样 |
![]() |
27
erikk0 2 天前 via iPhone
主要还是为了压缩体积,要加密的话起码得分配一个公钥
|
![]() |
30
ShadowPower 2 天前
我一年前就用 GPT4 ,将汇编和 IDA Pro 反编译的 C++,还原出直接可用的源码,效果已经超出我的预料了
|
![]() |
31
kenberkeley 1 天前 via iPhone
用上 Closure Complier 会好很多。
|
![]() |
32
wolffcat 1 天前 via Android
最多是辅助,不可能取代人,你搞一个 webpack 还原试试
|
![]() |
34
lawyi 1 天前
很好的想法
|
36
roycestevie6761 6 小时 37 分钟前
这不是 javascript code formatter 吗,跟混淆有什么关系。。。。
|