JavaScript混淆——逆向思维的艺术

news/2024/11/9 2:48:01/

在本文中我们将介绍三种常见的JavaScript混淆技术。

1.混合名称

通过将函数名称和变量名混合使用,我们可以使代码更难读。下面是一个使用名称混合的JavaScript函数。

function c(a){var b=[2,4,8,a],d=b[0]+b[1]+b[2]+b[3],e=d+"="+a;return e}

混合名称技术通过使用无关的名称来使代码看起来更复杂。

2.重写代码

重写代码是一种将代码转换为其他代码的方式,以使其更难以理解和阅读。下面是一个JavaScript函数的伪代码版本,使用混淆和重写技术,来避免用户或黑客理解代码的意图。

function d(a){for(var b=[2,4,8,a],d=b[0],e=1;e<b.length;e++)d+=b[e],d*=b[e];var c=d+a;return c}

混淆代码使它尽可能地难以理解。上述代码,没有任何实际的功能,但是由于语法上的诡异,因此在代码分析时我们不能太相信正在思考的是什么。

  1. 添加空格和格式化代码

将大量的空格、制表符和换行符添加到代码中,可以增加代码的复杂度。下面是一个使用大量的空格格式化的JavaScript函数。

function e(a) {var b = [ 2, 4, 8, a ], d = b [ 0 ] + b [ 1 ] + b [ 2 ] + b [ 3 ], e = d + "=" + a; return e; }

如您所见,代码中的空格使内容更难以理解,并有助于保护其隐私。

在实际应用中,可以将多种混淆技术混合使用,以实现更高的安全性。

3.在线使用

直接在JS加密 做专业的加密工具随时随地的加密混淆代码,或者在线解简单的js代码。

jsjiami.com

如果您对文章内容有不同看法,或者疑问,欢迎到评论区留言,或者私信我都可以。

也可以到上方网站,底部有我联系方式详谈。


http://www.ppmy.cn/news/31131.html

相关文章

java性能分析-堆内存最佳实践-堆分析

堆内存最佳实践 优化垃圾回收器标志参数很重要但是采用更好的编程实践获得更大的性能提升 1.谨慎的创建对象并尽快的丢弃&#xff0c;是更好的内存是提高gc更好的方法 2.频繁创建某种类型的对象会导致整体的性能变差 对象复用设计 线程局部变量 每个线程中创建一个局部变量…

MySQL索引优化

5 索引优化 5.1 索引单表优化案例 建表&#xff1a; CREATE TABLE IF NOT EXISTS article(id INT(10) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,author_id INT(10) UNSIGNED NOT NULL,category_id INT(10) UNSIGNED NOT NULL,views INT(10) UNSIGNED NOT NULL,comment…

DEJA_VU3D - Cesium功能集 之 102-简单曲线箭头(标绘+编辑)

前言 编写这个专栏主要目的是对工作之中基于Cesium实现过的功能进行整合,有自己琢磨实现的,也有参考其他大神后整理实现的,初步算了算现在有差不多实现小140个左右的功能,后续也会不断的追加,所以暂时打算一周2-3更的样子来更新本专栏(每篇博文都会奉上完整demo的源代码,…

C++ 手写一个高性能json生成与解析器

文章目录 前言一、了解json格式二、统一数据类型:TJson三、解析json数据四、输出json数据五、实现便利的修改与访问六、性能优化七、源码下载与解析前言 由于C++标准库中并不存在解析json数据库,但json格式又非常的常见 如今绝大部分网络数据传输都采用的json数据传输格式,…

Linux操作系统安装——服务控制

个人简介&#xff1a;云计算网络运维专业人员&#xff0c;了解运维知识&#xff0c;掌握TCP/IP协议&#xff0c;每天分享网络运维知识与技能。座右铭&#xff1a;海不辞水&#xff0c;故能成其大&#xff1b;山不辞石&#xff0c;故能成其高。个人主页&#xff1a;小李会科技的…

STM32移植FreeRTOS操作系统

一、FreeRTOS源码下载&#xff08;1&#xff09;移植钱得准备前菜对吧&#xff0c;我们先来去官网瞄一瞄网址&#xff1a;https://freertos.org/zh-cn-cmn-s/ 第一步&#xff1a;点击下载FreeRTOS第二步&#xff1a;选择版本下载&#xff08;我选择稳定版本&#xff09;注&…

Java进阶(下篇2)

Java进阶&#xff08;下篇2&#xff09;一、IO流01.File类的使用1.1、File类的实例化1.2、File类的常用方法11.3、File类的常用方法21.4、课后练习02、IO流原理及流的分类2.1、IO流原理2.2、流的分类2.3、IO 流体系03、节点流(或文件流)3.1、FileReader读入数据的基本操作3.2、…

ESLint、Prettier插件的安装与使用

在统一代码风格这一块&#xff0c;通常大家都会用到ESLint。虽然 ESLint 本身具备自动格式化代码的功能&#xff0c;但ESLint 的主要优势在于代码的风格检查并给出提示&#xff0c;而在代码格式化这一块 Prettier 做的更加专业&#xff0c;因此在实际项目开发中我们经常将 ESLi…