【技术实现步骤摘要】
代码混淆方法、装置、电子设备及存储介质
[0001]本公开涉及计算机
,尤其涉及一种代码混淆方法、装置、电子设备及存储介质。
技术介绍
[0002]随着Web应用越来越多元化和功能化,前端已经不再像以前一样只做简单的数据展示,还需要多样的交互,因此JavaScript需要实现的功能越来越多,例如文件对象模型(DOM,Document Object Model)元素处理、数据处理、大量计算、大数据展示等,且由于一些线上购物、支付平台需要足够安全的环境,在前端代码易被读懂的前提下,这些购物、支付平台将很容易被攻击者攻破。
[0003]目前相关技术中的代码混淆方法有:代码压缩和自定义变量、函数名等无语义替换,插入垃圾代码,打乱函数位置等,但上述混淆方法在实际应用中均易被破解及反编译。
[0004]需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
技术实现思路
[0005]本公开提供一种代码混淆方法、装置、电子 ...
【技术保护点】
【技术特征摘要】
1.一种代码混淆方法,其特征在于,包括:获取源代码文件对应的第一语法树;根据预设代理库,将所述第一语法树中引用类型对象属性和/或方法的原生名替换为代理名,得到第二语法树;其中,所述预设代理库包括引用类型对象属性和/或方法的原生名和代理名的映射关系;将所述第二语法树转换为混淆后代码文件。2.根据权利要求1所述的代码混淆方法,其特征在于,所述获取源代码文件对应的第一语法树,具体包括:获取源代码文件;将源代码文件转换为第一语法树。3.根据权利要求1所述的代码混淆方法,其特征在于,所述源代码文件为JavaScript的源代码文件或超文本标记语言HTML的源代码文件,所述第一语法树和所述第二语法树为抽象语法树。4.根据权利要求1所述的代码混淆方法,其特征在于,所述第二语法树还包括自定义元素,在将所述第二语法树转换为混淆后代码文件之前,所述方法还包括:将所述第二语法树中自定义元素的名称替换为混淆名称,所述混淆名称包括不同于源代码语言的关键字、保留字和所述代理名的任意名称。5.根据权利要求1所述的代码混淆方法,其特征在于,在将所述第二语法树转换为混淆后代码文件之后,所述方法还包括:将所...
【专利技术属性】
技术研发人员:吴雯,
申请(专利权)人:中国电信股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。