`
jindw
  • 浏览: 508453 次
  • 性别: Icon_minigender_1
  • 来自: 初到北京
社区版块
存档分类
最新评论

脚本合并时混淆隔离的三个级别

    博客分类:
  • JSI
阅读更多
直接合并--传统方式
根据脚本依赖关系,组织好导入顺序,简单的合并成单个大文件。
这是最常见简单功能的一种合并方式。通常也不需要任何工具的支持。由程序员手动完成。
优点:简单
缺点:需要程序员自己管理脚本名称冲突。


间接依赖全局变量的隔离--JSI运行时等价的隔离策略
就是说,比如你在脚本包p1有一个脚本A 依赖脚本元素B,脚本元素B依赖仍外一个脚本包p2中的脚本元素A,如果你采用直接合并的话,两个包中都有一个名为A的元素,直接合并一定会产生冲突。
这时,就需要我们在最后导出发布脚本时,做好这种隔离操作。
如:我们正真直接使用的只是p1包中的A,那么这些元素导出前后变量名映射可能是:
A(p1)->A
B(p1)->a_
A(p2)->b_


优点:借助外力,很好的解决了冲突问题。
缺点:支持工具实现比较复杂。


内部变量隔离合并--简化版本

脚本文件A.js中可能由多个全局变量:A、 _temp、 index 、status。
但是,除A外,其他都是都不希望被其他脚本访问,就是说,虽然从JS语法上,他们也算全局变量。但是,我更愿意把他看作一种内部变量,或者说脚本文件内可以访问的变量。这里,我们称他们为内部变量(JSI中,未在包定义文件中添加的脚本元素,即是这种类型)
实事上。如果你习惯了由工具管理这些内部变量,那么,你一定会经常的使用他们,因为他们才是真正简单的JS私有元素实践。
如果我们的合并混淆器能达到这个隔离级别,那么我们就可以大胆的大量使用这类设计了。


优点:借助外力,解决了大部分冲突问题,支持工具实现相对简单。
缺点:支持工具实现依然比较复杂。
分享到:
评论

相关推荐

    SQL脚本文件合并工具

    工具在合并时需要考虑这些因素,确保合并后的脚本按照正确的顺序执行。 6. **批处理执行**:在SQL*Plus中,批处理功能允许一次性执行多条SQL语句,工具应支持将合并后的脚本转化为适合批处理的形式。 7. **用户...

    SQL脚本文件合并工具.exe

    利于将多个分散的sal脚本合并为一个sql文件。

    Javascript脚本混淆器

    2. 代码结构打乱:混淆器会改变代码的原始顺序,比如将函数定义移动到运行时,或者将代码块拆散到多个地方,增加理解难度。 3. 代码压缩:通过删除不必要的空格、换行和注释,以及合并相似的语句,混淆器可以显著...

    iOS代码混淆,提供Object-C混淆python脚本

    三个主要功能:Object-C类名混淆、Object-C方法名混淆、字符串混淆 脚本不局限于一种语言处理,脚本做的工作是正则匹配到目标字符串->生成映射->替换字符串,如需处理其他语言,只需修改脚本内的正则表达式即可。

    SQL脚本文件合并工具.zip

    4. **备份恢复**:在创建数据库备份时,如果每个表或对象都有单独的脚本,合并这些脚本可以使恢复过程更加简单和快速。 5. **性能优化**:合并后的脚本可以一次性提交,减少了数据库的开销,提高了执行效率,尤其...

    iOS开发Objective-C项目工程混淆脚本.zip

    3. **运行时混淆**:在运行时动态生成代码或者改变方法实现,这在Objective-C中尤为方便,因为Objective-C支持消息传递和Runtime机制。 4. **混淆类别(Category)**:利用Category在运行时添加方法的特性,可以将...

    JEB2反混淆脚本android 逆向脚本

    总之,JEB2结合反混淆脚本是Android逆向工程中一个强大且实用的工具组合,它可以帮助我们解析和理解混淆的Android应用,从而进行更深入的功能分析、漏洞挖掘或安全评估。正确使用这些工具和脚本,可以极大地提升逆向...

    缓存视频文件合并脚本.rar

    标题“缓存视频文件合并脚本.rar”涉及的是一个用于整合多个分段视频文件的脚本工具。在处理大型视频文件时,为了便于传输或存储,通常会将视频分割成多个小片段。这个压缩包提供的就是一个帮助用户将这些分段的视频...

    B站视频合并脚本.rar

    【标题】"B站视频合并脚本.rar"指的是一个压缩包文件,其中包含了一个用于合并B站(哔哩哔哩)APK应用缓存的视频的脚本。B站作为一个流行的二次元文化与视频分享平台,其视频内容可以通过APK应用缓存到本地设备上,...

    批量合并GDB的python脚本

    arcmap-数据处理-批量合并GDB的python脚本

    Hex固件合并,2个hex文件合并成一个hex文件。里面有我写的操作说明。这个处理脚本是我的原创。

    1、如果想合并多个文件可以参考merge文件夹下的merge.bat脚本编写。 2、hex2bin.exe的使用方法是:拖拽hex文件到其上面释放,自动在当前目录下生成同名bin文件(或者用批处理加参数即可)。

    BAT批处理脚本-将所在目录的BAT文件合并成一个BAT文件,通过 选择 运行其中之一.zip

    例如,如果你有一个包含多个测试脚本的目录,你可以通过这个合并脚本来快速启动所需的测试,而无需逐一打开和运行。或者在软件开发环境中,它可以用来一键执行构建或清理任务。这大大提高了工作效率,减少了手动操作...

    javascript脚本加密混淆系统0.1.1110.257

    2015年底写的一样,用于javascript的混淆和加密。@q617884838。

    PowerShell脚本解混淆系统及检测方案.pdf

    这种方法将解混淆的三个阶段紧密结合,利用混淆代码自身的逻辑进行自动化解混淆,提高了检测的准确性和效率。通过分析PowerShell的语义,如`Invoke-Expression`、`.DownloadString()`等关键命令的使用,可以揭示隐藏...

    boot.bin和app.bin的自动合并脚本,附demo merge_test.rar

    例如,在Keil、IAR或STM32CubeIDE等IDE中,可以设置构建后步骤(Post-Build Steps)来调用这个批处理脚本,每当编译完成时,自动执行合并操作,生成可用于烧录的完整固件文件。 对于STM32 Bootloader,通常需要具备...

    qvod缓存文件合并脚本

    2、多个电影批量合并,将三个文件放到p2pcache内或包含p2pcache内各个电影的文件夹内,依次执行copy_ren.vbs在提示“复制rename.vbs 完成”再执行do_ren.vbs,全部合并完成后会提示“执行rename.vbs 完成” ...

    360杀毒隔离内网病毒库升级更新批处理脚本

    "360杀毒隔离内网病毒库升级更新批处理脚本" 提供了解决这个问题的一个有效方案。这篇内容将深入探讨这个脚本的工作原理、实现方式以及它在特定环境下的重要性。 首先,让我们了解一下360杀毒软件。360杀毒是一款...

    pyarmor:用于混淆python脚本,将混淆的脚本绑定到固定计算机或使混淆的脚本过期的工具

    在运行时混淆每个函数(代码对象)的co_code。 代码对象完成执行后立即清除frame的f_locals。 在运行混淆脚本的许可证文件时,请对其进行验证。 另请参阅支持平台Python 2.7和Python3 预建平台:win32,win_amd64,...

    文件合并脚本 python

    文件合并脚本 python 文件合并脚本 python

    Unity3D+Obfuscator Pro v3.9.5+脚本混淆工具

    在开发过程中,编写了大量的C#脚本,这些脚本包含了项目的逻辑和核心功能,为了保护知识产权和防止恶意逆向工程,开发者通常会使用代码混淆工具。 Obfuscator Pro是专为Unity3D设计的一款高级代码混淆工具,它的...

Global site tag (gtag.js) - Google Analytics