首页 > 其他分享 >倒底需不需进行JS加密?

倒底需不需进行JS加密?

时间:2024-09-19 11:25:08浏览次数:3  
标签:倒底 加密 混淆 代码 JS 源码 时间 需不需

关于网页JS代码要不要混淆加密,有人说:“前端无安全、加密没用、加密了只要别人肯花时间最终也差不多能被逆向,等等,所以JS代码不用保护”。这样的看法对吗?

倒底需不需进行JS加密?_javascript加密

从原理上说,确实这种说法似乎是正确的:混淆加密的JS代码,只要别人肯花时间慢慢研究,终究是能分析个差不多,终究。没错的。比如:借助ida工具,exe文件也能反汇编,也能慢慢分析代码逻辑。只是,时间、技术能力消耗的不同,同理。

但巨大的差异也正是”时间成本“,比如JS源码功能,如果直接是明文代码,可能3分钟能理解,如果是经过了混淆加密保护,则可能需要3小时、3天、3个月,甚至更久。这已经会劝退很多技术能力一般的”他人“,特别是,如果逆向分析、crack花的时间如何比直接开发还久,那别人还不如自己开发呢。

而如果有能力者,很可能不屑于逆分析、搬运他人的源码。而且逆分析po解行为还可能触犯法律(特别是商用代码),聪明人也会回避这一风险。

所以,对于JS代码,混淆加密一下,提升了安全性、还显的提升了安全意识、怎么看也比透明发布更好啊。

那么,基于上述种种,对JS代码进行混淆加密再发布,个人也以为是个很优的选择,不太理解为什么有人持排斥的态度。

当然,如果代码是完全不重要的、完全无关紧要的,那倒也可以不必,毕竟混淆加密操作一下也是需要花几分钟时间的,呵呵。

(注:开源产品也不需要...)

此外,有人可能疑虑,混淆加密的JS代码还能正确使用吗?会不会混淆加密一下就坏掉?

显然多虑了,JS混淆加密工具也早是成熟的行当了,比如JShaman、JsJiaMi.online、JS-Obfuscator等等,圈内这些知名的产品已经存在很多年,足够成熟稳定,放心的用就是了。

嗯...总结:总之,我们公司的JS代码,公司明文规定,发布前是一定要混淆加密的。可能这就是安全意识吧,保护一下没坏处,但把源码发布出去那就是让别人随便copy、随便用。

标签:倒底,加密,混淆,代码,JS,源码,时间,需不需
From: https://blog.51cto.com/jsjiami/12055154

相关文章

  • js有哪些浏览器兼容性问题
    JavaScript(JS)在不同的浏览器中可能会遇到各种兼容性问题,这主要是因为不同的浏览器对于Web标准的支持程度不同。以下是一些常见的浏览器兼容性问题:DOM方法和属性支持:不同版本的浏览器对DOM的支持程度不同,例如IE8及更早版本不支持querySelector和querySelectorAll等方法。......
  • xml字符串转JSON字符串
    xml字符串转JSON字符串,可以直接通过jackson提供的方法进行快速转换。在web项目中通常会引入spring-boot-starter-web依赖。但是spring-boot-starter-web依赖包括Jackson的JSON处理库(如jackson-databind、jackson-core等),不一定直接包含处理XML的Jackson库(如jackson-dataformat-xml......
  • 基于JSP高校研招信息共享系统(前台:用户,后台:学生、学校、管理员)
    文章目录前言一、详细操作演示视频二、具体实现截图三、技术栈1.前端-Vue.js2.后端-SpringBoot3.数据库-MySQL4.系统架构-B/S四、系统测试1.系统测试概述2.系统功能测试3.系统测试结论五、项目代码参考六、数据库代码参考七、项目论文示例八、一站式毕设支持服务结语......
  • 修复控制台出现Deprecation Warning: The legacy JS API is deprecated and will be r
    背景项目使用到Vite+Sass,然后突然某天启动项目,控制台出现了这一行报错,找了一遍没找到解决方案。最后去StackOverflow找了一下,解决了。修复方式在vite.config.js中添加这一配置即可。import{defineConfig}from"vite";exportdefaultdefineConfig({//...css:......
  • Threejs之看房案例(下)
    本文目录前言最终效果1、点精灵1.1添加点精灵1.2点精灵效果2、添加事件2.1鼠标移动事件2.1.1效果2.2鼠标点击事件2.2.1效果2.3切换互通3.完整代码前言在Threejs之看房案例(上)这篇博客中我们已经完成了大厅的3d观看效果,但是我们......
  • js数值类型
    目录背景数字整型直接量浮点型直接量JavaScript中的算术运算背景JavaScript的数据类型分为两类,原始类型(primitivetype)和对象类(objecttype)js中的原始类型包括数字,字符串,布尔值js中有两个特殊的原始值:null(空)和undefined(未定义).它们代表了各自特殊类型的唯一成员......
  • 基于nodejs+vue的校园学生成绩管理系统的设计与实现(源码+LW+调试文档+讲解等)
    博主介绍: ......
  • 基于Node.js+vue疫情期间高校员工管理系统(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景自新冠疫情爆发以来,全球教育领域遭受了前所未有的挑战。高校作为知识传播与人才培养的重要基地,其运营管理模式亟需适应疫情防控的新常态。疫情期间,高校员工......
  • 基于Node.js+vue志愿服务管理系统(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着社会的进步和公民意识的增强,志愿服务活动在全球范围内蓬勃兴起,成为连接社区、促进公益、提升社会福祉的重要力量。然而,传统的志愿服务管理方式往往依赖......
  • 基于Node.js+vue中华传统文化推广平台的设计与实现(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景在全球化的浪潮中,文化多样性面临着前所未有的挑战与机遇。中华传统文化,作为世界文化宝库中的璀璨明珠,其深厚的底蕴与独特的魅力,不仅是中华民族的精神家园,也......