首页 > 其他分享 >JS加密/解密之常见的JS代码加密

JS加密/解密之常见的JS代码加密

时间:2024-01-08 21:34:14浏览次数:35  
标签:function 混淆 加密 代码 解密 0x4e6823 JS

JS加密/解密之常见的JS代码加密_自定义

JS混淆加密是一种将JS代码转换为更难理解和阅读的格式的技术,目的是为了保护JS代码的版权和安全,防止被恶意修改或盗用。JS混淆加密通常包括以下几种方法:

  • 变量重命名:将变量名替换为随机的字母或符号,使得代码的逻辑难以跟踪。
  • 字符串加密:将字符串转换为十六进制或Unicode编码,或者使用自定义的算法进行加密,使得代码的含义难以识别。
  • 死代码注入:在代码中插入一些无用的语句或函数,增加代码的复杂度和体积,干扰代码的分析。
  • 控制流程转换:将代码的结构和顺序进行改变,使用一些复杂的算法或逻辑来代替原本的控制流程,使得代码的执行过程难以预测。
  • 代码转换:将代码转换为一些特殊的语法或格式,例如eval,JSF1uck,AAEncode等,使得代码的表达方式难以理解。

JS混淆加密的主要目的是为了保护JS代码的版权和安全,防止被恶意修改或盗用。由于JS代码是运行在客户端的,任何人都可以通过浏览器的开发者工具查看和下载JS代码,这就给了一些不法分子利用JS代码的机会。例如:

  • 盗取JS代码:一些人可能会直接复制或下载JS代码,然后用于自己的网站或项目,侵犯了原作者的版权和利益。
  • 修改JS代码:一些人可能会对JS代码进行修改,添加一些恶意的功能或广告,破坏了原网站的功能和用户体验。
  • 分析JS代码:一些人可能会对JS代码进行分析,寻找其中的漏洞或敏感信息,对原网站造成安全威胁或攻1击。

为了防止这些情况的发生,JS混淆加密可以提高JS代码的保护级别,使得JS代码更难被查看,下载,修改,分析,从而保护JS代码的版权和安全。

JS混淆加密可以通过一些在线工具或软件来进行,例如在线Javascript混淆加密在线JS反混淆解密还原工具等。这些工具通常提供了一些预定义的混淆模式和参数,也可以自定义一些混淆的细节。使用这些工具的步骤一般如下:

  • 将JS代码粘贴到工具的输入框中,或者选择JS文件进行上传。
  • 选择混淆模式和参数,或者输入自定义的参数,调整混淆的程度和效果。
  • 点击混淆或加密按钮,等待工具对JS代码进行混淆加密处理。
  • 将混淆加密后的JS代码复制到工具的输出框中,或者下载

下面是一个简单的JS代码的例子:

function hello(name) {
  console.log("Hello, " + name + "!");
}

hello("world");

使用在线Javascript混淆加密工具,选择高级混淆模式,得到以下混淆加密后的JS代码:

var _0x5a46=['log'];(function(_0x4e6823,_0x5a469a){var _0x56ae3b=function(_0x1d68f6){while(--_0x1d68f6){_0x4e6823'push');}};_0x56ae3b(++_0x5a469a);}(_0x5a46,0x1b3));var _0x56ae=function(_0x4e6823,_0x5a469a){_0x4e6823=_0x4e6823-0x0;var _0x56ae3b=_0x5a46[_0x4e6823];return _0x56ae3b;};function hello(_0x2e8b35){console_0x56ae('0x0');}hello('world');

标签:function,混淆,加密,代码,解密,0x4e6823,JS
From: https://blog.51cto.com/u_15785573/9150834

相关文章

  • N32G如何加密烧录
    国民技术的MCUN32G030的Flash具有加密功能,并且有L0、L1、L2三种读保护功能,能有效的保护Flash中的程序不会被盗用。当N32G030的Flash配置为L1保护,需要通过国民技术提供的JLinkNsUnlockTool软件进行解除保护才能重新烧写程序。为了加密烧录N32G,您可以按照以下步骤操作:准备所需的文件......
  • 如何在 Python 中安装 json 模块
    Python是一种功能强大的编程语言,自带了许多标准库,其中json模块是用于处理JSON数据的模块。在Python中安装json模块非常简单,因为它是标准库的一部分,不需要额外的安装步骤。JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式,易于阅读和编写,并且易于机器解析和生成。Python的......
  • Three.js 纹理贴图的实现
    在线工具推荐:3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.jsAI自动纹理开发包 - YOLO虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎纹理贴图简介当我们创建一个网格时,比如我们不起眼的立方体,我们传入两个组件:几......
  • 简单的js加密练习(js逆向)
    Spiderbuf-Python爬虫练习场直接开发者工具检查,然后查找加载这个的文件位置。没有载荷但是有个加密的链接,这是我们得想一下,这个加密绝对是可解的加密,不然服务器怎们知道是什么请求呢,所以我们先使用解密工具验证。直接找到,看来是base64加密,但是后谜案还有一串字符,我们可以猜测一下这......
  • js逆向获取小说数据
    本文仅用于技术交流,不得以危害或者是侵犯他人利益为目的使用文中介绍的代码模块,若有侵权请练习作者更改。网站链接:aHR0cHM6Ly93d3cuc2h1cWkuY29tLw==分析加密开始的时候直接进入小说正文,打开抓包工具,直接进行检索。我们会发现这是一个ajax请求发送。我们查看请求参数,只有这个看起......
  • 某省资源交易中心 (js逆向)
    该文章只是用于逆向学习,不得以商用或者是破坏他人利益的目的进行使用。如有侵权请联系作者。网站链接:bse64aHR0cHM6Ly9nZ3p5ZncuZnVqaWFuLmdvdi5jbi9idXNpbmVzcy9saXN0Lw==分析环节进入网站进行翻页请求时我们会发现改请求时ajax请求。这里,我们可以直接看一下请求参数和返回结果,以......
  • 猿人学12 13 简单的js逆向
    解题过程通过网络抓包工具找到请求页 观察参数,我们会发现中间有一个m是被加密过的由于请求是ajax请求直接进行xhr断点找到m被加密的位置我们发现他的加密是使用btoa函数将页数和yuanrenxue结合加密的。而这个函数在js中是一个内置函数,是通过编码的方式进行加密,所以只需要在js文件......
  • 逆向微博热搜时光机(js逆向)
    直接分析,我们需要先查询一下网络请求的方式,通过使用反页请求,我们可以知道这个时光机的本质上是通过ajax请求进行的数据传输,所以这里我们可以减少查询的范围,可以直接调试查找XHR类型的数据传输内容,这里我推荐大家使用翻页后的数据查询,主要是为了鉴定一下该参数的携带加密位置(timeid......
  • 猿人学第一题 js混淆 双重加密(详解)
    当我们点击分页的时候可以确定这个请求过程是ajax请求,所以直接使用抓包工具找到储存信息的请求。找到这个请求之后,我们明显发现?后面的参数m是一个加密过的由于这个请求属于ajax请求,现在我们可以直接使用xhr断点调试找到位置打上断电之后直接分页请求。进入调试直接在右边堆栈中开......
  • GaussDB(for MySQL)新特性TDE发布:支持透明数据加密
    本文分享自华为云社区《GaussDB(forMySQL)新特性TDE发布:支持透明数据加密》,作者:GaussDB数据库。技术背景为了保护数据的安全,我们可能通过防火墙、身份认证、安全权限控制、网络及端口访问控制、传输加密等多种方式对程序运行过程中的各个环节进行安全防控,但这些并不能保证数据静......