前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >webpack打包安全吗,如何防止被逆向?

webpack打包安全吗,如何防止被逆向?

原创
作者头像
用户8703799
发布于 2024-10-11 09:20:55
发布于 2024-10-11 09:20:55
2020
举报
文章被收录于专栏:javascript技术javascript技术

不少开发者认为:webpack打包后的js代码,看起来很混乱,似乎源码得到了保护。

其实不然,因为webpack只是将多个文件合并到了一起,并没有多少保护代码的功能。

比如下面这个例子,该网站的js文件是经webpack打包编译后生成的:

只需将上述显示的文件下载,很简单便可以还原出原始工程文件和代码(如下图所示,vue、js、json等等):

轻松便得到了源码,js中的功能逻辑、实现方法,一目了然,连注释都在:

可见webpack打包,不能保护js代码,不具备安全防护效果。

在我们的项目开发过程中,为了避免上述问题。在发布前,很建议用专业的js加密工具,对js代码进行混淆加密,比如JShaman、JsJiami.online等。然后再发布。混淆加密后的js代码,即使泄露,也可避免被人轻松分析、避免重要信息泄露、避免被二次开发利用。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Webpack和JShaman相比有什么不同?
JShaman专门用于对JS代码混淆加密,目的是让JavaScript代码变的不可读、混淆功能逻辑、加密代码中的隐秘数据或字符,是用于代码保护的。
用户8703799
2023/10/13
4340
“JS加密”等于“JS混淆”?
1、当人们提起JS加密时,通常是指对JS代码进行混淆加密处理,而不是指JS加密算法(如xor加密算法、md5加密算法、base64加密算法,等等...)
用户8703799
2024/09/29
5370
WebPack插件实现:打包之后自动混淆加密JS文件
用户8703799
2024/05/29
5420
threejs中OrbitControls的用法
OrbitControls 是 Three.js 库中一个非常流行的相机控制组件,它允许用户通过鼠标(或触控设备)来旋转、缩放和平移场景中的相机,从而从不同的角度和距离观察场景。
用户8703799
2024/09/02
2180
对WebPack生成的2.7MB大JS文件进行混淆加密
JShaman是知名的JS代码保护平台。在线使用,一键混淆加密,无需注册、无需登录。可免费用,也有商业服务;有在线使用的SAAS平台网站,也有本地部署版。很方便、很强大,很专业。
用户8703799
2023/07/09
5450
如何修复三方库bug:marked.js 15.0.6 bug修复经过
在其最新的version 15.0.6版本(2025年1月8日使用),有处小bug:当在窄屏显示状态下,如手机端。代码会超出所在div,超出部分内容不可见。
用户8703799
2025/01/08
1970
如何用JS屏蔽html网页中的鼠标点击行为?
通过监听document的click事件,并在事件处理函数中调用event.preventDefault()和event.stopPropagation()来阻止事件的默认行为和冒泡。
用户8703799
2024/09/03
3030
threejs中,如何判断一个模型是否在另一个模型前方多少度?
要判断一个模型(我们称之为模型A)是否在另一个模型(模型B)的前方多少度,你需要计算两个模型之间的方向向量,并将这个方向向量与模型B的“前方”向量进行比较。模型B的“前方”向量通常是其局部坐标系的Z轴正方向向量,但经过世界变换后(包括旋转和平移),你需要先找到这个向量在世界坐标系中的表示。
用户8703799
2024/08/09
1790
如何让Threejs的canvas背景透明?
在Three.js中,要让Canvas的背景透明,只显示场景中的模型或物体,有两个关键点:
用户8703799
2024/09/19
1390
threejs中实现物体阴影
在Three.js中实现阴影需要几个步骤,包括设置渲染器、光源以及物体的材质等。以下是一个基本的实现阴影的步骤:
用户8703799
2024/08/20
950
Three.JS编程中如何切换gltf模型动画?
在Threejs编程中,处理GLTF模型动画的切换主要涉及对模型中的动画剪辑(AnimationClip)进行管理和播放控制。下面的代码,展示如何在Three.js中切换GLTF模型的动画。
用户8703799
2024/09/04
3280
如何对超大JS文件混淆加密?
在混淆加密JS代码时,要将代码转化成AST(抽象语法树),再对AST进行处理,混淆加密完成后,再重建为JS代码。而像3.4MB大小的文件,代码量可能达到几万行,甚至几十万行,可以想像:进行各种转码、逐行处理,是种什么样的工作量,即使是程序自动处理,也会非常耗时。因此,对这样量极的JS代码进行混淆加密,在线的JS加密工具,是不允许的,不接受这样大的文件,或需要高权限。
用户8703799
2023/07/20
6640
threejs中,如何实现粒子特效?
在threejs中,想要实现粒子特效,通常使用粒子系统(如THREE.Points)结合动画和物理效果(如使用THREE.Sprite或自定义的粒子形状)。
用户8703799
2024/08/21
2900
Webpack提示“the request of a dependency is an expression”解决办法
Webpack编译出错“Critical dependency: the request of a dependency is an expression”解决办法
用户8703799
2023/09/27
2.8K0
js代码混淆工具?
js混淆工具是一种能够将js代码转换成难以阅读和理解的代码的工具,通常用于保护js代码的安全性和版权,防止被恶意修改或盗用。js混淆工具可以通过以下方式实现代码的混淆:
用户8703799
2023/06/15
9540
我应该拿什么来拯救你,我的游戏?
前段时间,晓衡加入的一个小游戏个人开发者群突然,炸锅了!群里有两位伙伴开发的小游戏,一个破解上架头条,一个破解打成 Android 包。
张晓衡
2019/11/14
1.2K0
进阶| Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(上篇)
前端爱好者的知识盛宴 嗨 这里是IMWEB 一个想为更多的前端人 享知识  助发展 觅福利 有情怀有情调的公众号 欢迎关注转发 让更多的前端技友一起学习发展~ 本文作者:鹅厂高级工程师--郑高强 文章来源:http://www.cnblogs.com/kenkofox 导语 一般来说,使用vue做成单页应用比较好,但特殊情况下,需要使用多页面也有另外的好处。例如手Q的多webview架构,新开页面有利于ios右划返回,也避免了返回时页面的刷新。 所以,这里我们探讨一下如何配置实现多页面的项目框架。这里是
用户1097444
2022/06/29
4780
进阶| Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(上篇)
【教程】Flutter 应用混淆
在移动应用开发中,保护应用代码安全至关重要。Flutter 提供了简单易用的混淆工具,帮助开发者在构建 release 版本应用时有效保护代码。本文将介绍如何在 Flutter 应用中使用混淆,并提供了相关的操作步骤和注意事项。
iOS Magician
2024/04/03
3220
【教程】Flutter 应用混淆
【webpack】流行的前端模块化工具webpack初探
从开发文件到生产文件 有一天我突然意识到一个问题,在使用react框架搭建应用时,我使用到了sass/less,JSX模版以及ES6的语法在编辑器下进行开发,使用这些写法是可以提高开发的效率。可是浏览
啦啦啦321
2018/01/03
1.1K0
【webpack】流行的前端模块化工具webpack初探
微信小游戏代码包侵权解决办法
2、机器审核部分: 审核代码部分, 资源相关部分 人工审核部分: 审核UI相关, 标题是否侵权,玩法是否符合类别
用户8703799
2023/07/01
1.1K0
推荐阅读
相关推荐
Webpack和JShaman相比有什么不同?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档