javascript-obfuscator混淆
安装
npm install javascript-obfuscator -g
配置
重度混淆,性能低
性能下降50-100%
{ "compact": true, "controlFlowFlattening": true, "controlFlowFlatteningThreshold": 0.75, // 设置为0到1之间的值 "deadCodeInjection": true, "deadCodeInjectionThreshold": 0.4, // 设置为0到1之间的值 "debugProtection": true, "debugProtectionInterval": 1000, // 设置为一个正整数,表示毫秒数 "disableConsoleOutput": true, "identifierNamesGenerator": "hexadecimal", "log": false, "numbersToExpressions": true, "renameGlobals": false, "rotateStringArray": true, "selfDefending": true, "shuffleStringArray": true, "simplify": true, "splitStrings": true, "splitStringsChunkLength": 5, "stringArray": true, "stringArrayEncoding": ["rc4"], // 确保编码类型是有效的 "stringArrayIndexShift": true, "stringArrayWrappersCount": 5, "stringArrayWrappersChainedCalls": true, "stringArrayWrappersParametersMaxCount": 5, "stringArrayWrappersType": "function", "stringArrayThreshold": 0.75, // 设置为0到1之间的值 "transformObjectKeys": true, "unicodeEscapeSequence": false
}
中度压缩,最佳性能
性能下降30-35%
{ "compact": true, "controlFlowFlattening": true, "controlFlowFlatteningThreshold": 0.75, "deadCodeInjection": true, "deadCodeInjectionThreshold": 0.4, "debugProtection": false, "disableConsoleOutput": true, "identifierNamesGenerator": "hexadecimal", "log": false, "numbersToExpressions": true, "renameGlobals": false, "rotateStringArray": true, "selfDefending": true, "shuffleStringArray": true, "simplify": true, "splitStrings": true, "splitStringsChunkLength": 10, "stringArray": true, "stringArrayEncoding": ["base64"], "stringArrayIndexShift": true, "stringArrayWrappersCount": 2, "stringArrayWrappersChainedCalls": true, "stringArrayWrappersParametersMaxCount": 4, "stringArrayWrappersType": "function", "stringArrayThreshold": 0.75, "transformObjectKeys": true, "unicodeEscapeSequence": false
}
轻度压缩,高性能
性能略低于压缩之前
{ "compact": true, "controlFlowFlattening": false, "deadCodeInjection": false, "debugProtection": false, "disableConsoleOutput": true, "identifierNamesGenerator": "hexadecimal", "log": false, "numbersToExpressions": false, "renameGlobals": false, "rotateStringArray": true, "selfDefending": true, "shuffleStringArray": true, "simplify": true, "splitStrings": false, "stringArray": true, "stringArrayEncoding": [], // 你可以根据需要添加支持的编码算法,如 ["base64", "rc4"] "stringArrayIndexShift": true, "stringArrayWrappersCount": 1, "stringArrayWrappersChainedCalls": true, "stringArrayWrappersParametersMaxCount": 2, "stringArrayWrappersType": "variable", "stringArrayThreshold": 0.75, "unicodeEscapeSequence": false
}
默认值,高性能
{ "compact": true, "controlFlowFlattening": false, "deadCodeInjection": false, "debugProtection": false, "disableConsoleOutput": false, "identifierNamesGenerator": "hexadecimal", "log": false, "numbersToExpressions": false, "renameGlobals": false, "rotateStringArray": true, "selfDefending": false, "shuffleStringArray": true, "simplify": true, "splitStrings": false, "stringArray": true, "stringArrayEncoding": [], "stringArrayIndexShift": true, "stringArrayWrappersCount": 1, "stringArrayWrappersChainedCalls": true, "stringArrayWrappersParametersMaxCount": 2, "stringArrayWrappersType": "variable", "stringArrayThreshold": 0.75, "unicodeEscapeSequence": false
}
执行
混淆整个目录里的js
javascript-obfuscator ./js --output ./js/obfuscated --config obfuscator.json
混淆单个js
javascript-obfuscator index.af5ba3a0.js --output index.af5ba3a011111.js --config obfuscator.json
相关文章:
javascript-obfuscator混淆
安装 npm install javascript-obfuscator -g 配置 重度混淆,性能低 性能下降50-100% { "compact": true, "controlFlowFlattening": true, "controlFlowFlatteningThreshold": 0.75, // 设置为0到1之间的值 "deadCodeI…...
GitHub项目里的api
在一个GitHub项目中提到的"api"通常指的是该项目提供的应用程序编程接口(Application Programming Interface)。这意味着该项目包含了一套规则和工具,允许其他开发者通过代码调用该接口来与项目功能互动、获取数据或执行特定任务。…...
k8s可练习实验分享
实验环境介绍:单master节点+3node节点 环境已提前配置完毕,如果你环境还未做,请移步 k8s集群V1.27.3安装 在 k8s 上可以做许多实验来提升你的动手能力和理解。以下是一些常见且有用的实验项目: 1、部署一个简单的应用…...
浏览器支持http-flv协议
Google Chrome 浏览器和Microsoft Edge 浏览器原生并不支持 HTTP-FLV 协议。HTTP-FLV 主要与 Flash Player 相关,而 Flash Player 已经在 2020 年底停止支持,并且 Microsoft Edge 也逐步淘汰了对 Flash 的支持。 flv.js 利用 HTML5 和 Media Source Exte…...
一千题,No.0077(计算谱半径)
在数学中,矩阵的“谱半径”是指其特征值的模集合的上确界。换言之,对于给定的 n 个复数空间的特征值 { a1b1i,⋯,anbni },它们的模为实部与虚部的平方和的开方,而“谱半径”就是最大模。 现在给定一些复数空间的特征值&a…...
安卓/iOS/Linux系统影音边下边播P2P传输解决方案
在当今的数字时代,IPTV 影音行业正经历着快速的发展和变革,但影音行业的流量带宽成本一直很高,有没有什么办法既能保证现有的用户观看体验,又能很好降低流量带宽成本呢? P2P技术可能是一个很好的选择,它不仅仅可以提…...
STORM论文阅读笔记
这是篇NIPS2023的 world model 论文文章提出,WM的误差会在训练过程中积累从而影响policy的训练,向WM中加噪声可以改善这一点。其他的流程和IRIS差不多,差别在以下几点: image encoder,IRIS用的VQVAE, 本文用的是VAE&am…...
Web前端遇到的难题:挑战与突破之路
Web前端遇到的难题:挑战与突破之路 在快速发展的互联网时代,Web前端技术作为连接用户与应用程序的桥梁,扮演着举足轻重的角色。然而,在实际开发中,Web前端开发者往往会遇到诸多难题。本文将从四个方面、五个方面、六个…...
C#防止多次注册事件
事件声明和使用部分的代码,防止多次注册事件主要通过判断事件中类型的委托实例是否为空实现 public class ReRegisterEvent {public delegate void Mydelegate(string message);private Mydelegate? mydel;public event Mydelegate Myevent{add{if (mydel null){…...
【UML用户指南】-16-对高级结构建模-构件
目录 1、概念 2、构件与接口 3、可替换性 4、组织构件 5、端口 6、内部结构 6.1、部件 6.2、连接件 7、常用建模技术 7.1、对结构类建模 7.2、对API建模 构件是系统中逻辑的并且可替换的部分,它遵循并提供对一组接口的实现。好的构件用定义良好的接口来定…...
双Token方案实现Token自动续期(基于springboot+vue前后端分离项目)
文章目录 前言一、双Token方案介绍1. 令牌类型与功能2.双Token方案的优点3.实现流程 二、具体实现1.后端实现1.1 jwt工具类1.2 响应工具类1.3 实体类1.4 过滤器1.5 controller1.6 启动类 2、前端实现2.1 登录页面2.2 index页面2.3 请求拦截器和响应拦截器 效果展示 前言 更多j…...
别太小看“静态免杀“
0x01 简述 免杀总体来说可分为两种,静态免杀/动态免杀。往往来说,我们更注重于在内部代码层面实现一些免杀技巧,但在有些时候,动态免杀静态免杀以"打组合拳"的方式效果往往会更出人所料。 当我们的程序生成后…...
SQL server 内连接 左连接 右连接 全连接 语句
在SQL Server中,连接(JOIN)操作用于从两个或多个表中检索相关数据。内连接、左连接、右连接和全连接是最常用的几种连接类型。下面详细介绍每种连接的用法和区别: 1. 内连接 (INNER JOIN) 内连接只返回两个表中满足连接条件的匹…...
k8s中的pod域名解析失败定位案例
问题描述 我在k8s中启动了一个Host网络模式的pod,这个pod的域名解析失败了。 定位步骤 敲kubectl exec -it [pod_name] -- bash进入pod后台,查看/etc/resolv.conf,发现nameserver配的有问题。这里我预期的nameserver应该使用宿主机的&…...
jingxiang制作
文章目录 jingxiang制作为什么需要jingxiang制作如何进行jingxiang制作 快照方式制作jingxiang制作命令do cker commit 快照制作jingxiang创建临时工作目录编写一个实例代码启动一个容器替换国内软件源安装编译软件源代码拷贝到容器中编译运行提交为一个jingxiang测试是否可以正…...
【数据结构】线性表之《顺序表》超详细实现
顺序表 一.数据结构1.逻辑结构2.物理结构 二.顺序表的分类1.静态顺序表2.动态顺序表 三.顺序表的实现1.创建顺序表2.初始化顺序表3.判断是否扩容4.打印顺序表5.插入操作1.头插2.尾插3.按照下标插入 6.删除操作1.头删2.尾删3.按照下标删除 7.查找数据8.修改数据9.清空顺序表10.销…...
开源模型应用落地-音乐生成模型-suno/bark深度使用-AIGC应用探索(六)
一、前言 学习音乐生成模型具有极其重要的价值。通过对音乐生成模型的深入学习,我们能够探索到音乐创作的全新边界和可能性。它不仅可以开启一扇通往无限音乐创意的大门,让我们领略到科技与艺术完美融合所带来的震撼与惊喜,还能帮助我们在音乐领域实现前所未有的突破和创新。…...
为何选择Xinstall?告别邀请码,让App推广更便捷!
在互联网日益繁荣的今天,App的推广和运营成为了各大企业关注的重点。然而,传统的推广方式如邀请码限制,往往会给用户带来不便,同时也限制了App的快速增长。在这个背景下,Xinstall凭借其独特的功能和服务,成…...
JavaScript基础入门
目录 任务描述 相关知识 JavaScript语言简介 JavaScript注释 搭建JavaScript的运行环境 JavaScript输出 弹出对话框模式 控制台模式 页面输出模式 编程要求 任务描述 要了解一门编程语言,要从输出开始。 本关任务:采用相关知识中介绍的任意一…...
windows11子系统Ubuntu 22.04.4子安装图形化界面
1、windows11家庭版本设置 打开虚拟机安装许可 2、Microsoft Store下载安装ubuntu 我使用的是22.04.4 LTS版本 3、 打开ubuntu 命令窗口 1、打开win11的命令行,在下拉三角下标,打开,可以看到有Ubuntu 的选项,点击即可进入linux命…...
实测好用、真正免费(无水印/无强制付费) 的剪辑软件合集来啦
剪辑小白看过来!2026年实测好用、真正免费(无水印/无强制付费) 的剪辑软件合集来啦!????不管你是学生党、自媒体新人,还是电脑配置不高,这篇笔记帮你按设备(手机/电脑/网页) 精准…...
期末弯道超车:虎贲等考 AI 课程论文功能,让结课作业又快又规范
一到期末周,多门课程论文扎堆来袭,选题、框架、文献、内容、格式样样让人头疼。熬夜赶工、东拼西凑、格式混乱,不仅拿不到高分,还容易被老师退回重改。通用 AI 写出来的内容口语化、文献虚假、结构不完整,完全不符合学…...
无人机雷达与LiDAR协同监测土壤湿度技术解析
1. 无人机雷达与LiDAR协同监测土壤湿度的技术原理在精准农业领域,土壤湿度监测一直面临着植被遮挡带来的技术挑战。传统的地面传感器网络虽然精度较高,但存在部署成本高、维护困难等问题;而光学遥感又难以穿透茂密的作物冠层。无人机载雷达与…...
ARM GIC中断控制器虚拟化架构与优化实践
1. ARM GIC中断控制器虚拟化架构概述中断控制器是现代计算机系统中至关重要的组件,特别是在虚拟化环境中,高效的中断处理机制直接影响着虚拟机的性能和响应能力。ARM架构的通用中断控制器(GIC)从v3版本开始引入了完整的虚拟化支持,为虚拟机监…...
Ubuntu 20.04虚拟机重启后断网?别慌,用Netplan配置静态IP一劳永逸(附避坑指南)
Ubuntu 20.04虚拟机网络配置终极指南:Netplan静态IP与持久化方案 当你兴奋地启动Ubuntu 20.04虚拟机准备大展身手时,突然发现网络连接消失了——这不是个别现象。许多开发者在本地虚拟化环境或云平台中都遭遇过类似困扰。本文将彻底解决这个"幽灵断…...
ChatSVA:多智能体框架革新硬件验证中的SVA生成
1. ChatSVA:硬件验证领域的SVA生成革命在集成电路设计领域,功能验证已成为制约开发效率的最大瓶颈。据统计,现代芯片开发周期中超过50%的时间消耗在功能验证环节,而SystemVerilog断言(SVA)作为形式化验证和…...
大型机场U型机坪推出等待点运行优化【附案例】
✨ 长期致力于机场、U型机坪区、推出等待点、运行程序优化、启发式算法研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅如需沟通交流,点击《获取方式》 (1)单通道U型机坪推出等待点位优化…...
晶体功率测试原理与MAX9485音频时钟应用实践
1. 晶体功率测试的背景与意义在音频时钟系统设计中,晶体振荡器的功率控制是个容易被忽视却至关重要的参数。以我们常用的MAX9485音频时钟发生器为例,其核心的VCXO(压控晶体振荡器)模块直接决定了整个系统的时钟精度。记得2013年参…...
3步掌握League Akari:高效智能的英雄联盟本地自动化工具
3步掌握League Akari:高效智能的英雄联盟本地自动化工具 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit League Akari是一款基于英…...
【Linux 指南】文件系统系列(二):核心抽象层 —— 块 、分区 、inode 从原理到实操
上一篇我们吃透了磁盘的底层原理,搞懂了磁盘通过 CHS/LBA 寻址定位扇区,也知道扇区是磁盘硬件的最小读写单位(512 字节)。但随之而来的两个核心问题摆在眼前:一是逐个扇区读写磁盘效率极低,磁头的寻道和旋转…...
