Commit Graph

  • fbf72b44bf Add unreachable decoy cases to call dispatch proxies olivato 2026-09-11 20:04:06 +0100
  • d85a37c7ad Add paramPadSettings to insert random junk parameters into method signatures olivato 2026-09-11 20:04:06 +0100
  • 0b6b8a92c0 fix: rename all parameter names to `1` may lead burst compile error, change to $"_{param.Sequence}" main walon 2026-09-11 12:03:17 +0800
  • aefec5c024 fix: don't rename inherit enclosing types and nested types of types with `[BurstCompile]` walon 2026-09-11 12:01:30 +0800
  • 67f3dd4cf3 fix: disable Watermark pass because it will lead il2cpp.exe run failed if insert instructions at some special instructions(.e.g, insert instruction between ldtoken and call System.Runtime.CompilerServices.RuntimeHelpers.InitializeArray). walon 2026-09-07 22:30:06 +0800
  • 79c81e234c fix: remove RuntimeHelpers.InitializeArray dependency from ConstEncrypt DecryptInitializeArray walon 2026-09-07 22:26:01 +0800
  • c88021dba9 Fall back to a random reorder seed when nameRandomSeed is 0 olivato 2026-09-03 08:17:32 +0100
  • ee98c899c3 Skip member reordering instead of failing when nameRandomSeed is 0 olivato 2026-09-03 08:15:21 +0100
  • 1a2fe40a2f Stop gating the self-check on a fixture-scale alignment rate olivato 2026-09-01 16:50:27 +0100
  • 64ad121656 Add an alignment check that measures a build against its pre-obfuscation original olivato 2026-09-01 16:50:27 +0100
  • 50711591e0 Reset the dnlib TypeDef find cache after reordering a module olivato 2026-09-01 16:43:30 +0100
  • 46b2e0c54e Measure positional alignment against the unobfuscated original olivato 2026-09-01 16:29:32 +0100
  • 4732e7071b Cover nested types and inherited serialisation in the reorder fixture olivato 2026-09-01 16:29:32 +0100
  • 1236b2fbf7 Pin field order on base types of serializable types olivato 2026-09-01 16:29:28 +0100
  • 7ea47268d4 Pin field order on types the rename policy declines to rename olivato 2026-09-01 16:29:23 +0100
  • b3ef0049fc Pin type position when a nested type has a RuntimeInitializeOnLoadMethod olivato 2026-09-01 16:29:19 +0100
  • 5680d7ef39 Stop reordering nested types, which dnlib refuses to re-add olivato 2026-09-01 16:29:13 +0100
  • f574f73f92 Add a self-check for the member reordering exclusions olivato 2026-09-01 16:13:56 +0100
  • a1237f87d5 Add symbolObfusSettings.enableMemberReordering to shuffle type and member declaration order olivato 2026-09-01 16:13:56 +0100
  • e6fd9d404c Merge remote-tracking branch 'upstream/main' olivato 2026-09-01 16:05:54 +0100
  • 72397812cd Ignore a previous symbol mapping when names are randomised Gabriel Olivato 2026-08-19 18:05:15 +0100
  • dcf38b3f0f Add symbolObfusSettings.nameRandomSeed to randomise generated symbol names Gabriel Olivato 2026-08-19 17:53:01 +0100
  • fa2345017a fix: fix VirtualMethodGroupCalculator.TypeFlatMethods::IsLooseTypeSigMatch treats type and forward type as different type by type.AssemblyQualifiedName which leads same-virtual-slot virtual methods are grouped to different virtual method group. see [issue-32](https://github.com/focus-creative-games/obfuz/issues/32) copilot/analyze-obfuscation-level walon 2026-07-19 13:02:21 +0800
  • 977779c8b7 fix(SymbolObfus): still rename parameter names of .ctor and ..ctor even they aren't renamed walon 2026-07-03 10:02:55 +0800
  • 7b06f0fed8 new: add support for 6000.3.x; fix: fix deprecated warning of PlayerSettings.GetScriptingBackend(BuildTargetGroup) in Unity 6000 EP-Toushirou 2026-02-26 20:42:19 +0800
  • 9b4d5b2a5d [new] support 6000.3.x EP-Toushirou 2026-02-26 20:42:19 +0800
  • 3615bbcce9 fix: fix resolving type in Obfuz.Runtime failed when no to-obfuscated dll references to Obfuz.Runtime walon 2025-12-26 21:25:08 +0800
  • 1ff3b5c324 new: 新增PS5平台支持 walon 2025-11-24 18:40:22 +0800
  • 5932a6f9a6 升级版本为v3.1.0 v3.1.0 walon 2025-10-29 20:54:00 +0800
  • 6c543d233a add copyright header to all cs files. walon 2025-10-29 20:40:37 +0800
  • 81e0b412a3 修正README-EN.md文件名拼写错误 walon 2025-10-25 22:43:52 +0800
  • 4bdf21349c format: 修正VirtualMachineCodeGenerator生成的代码的格式化问题 walon 2025-10-16 22:39:04 +0800
  • c9ea564544 fix: 修复SplitBasicBlockGroup计算带filter的异常handler时,先计算整个异常块再计算filter和handler块的顺序bug,正确方式为先计算filter和handler,再计算整体 walon 2025-10-16 22:28:05 +0800
  • b582c1f24b 发布正式版本到v3.0.0 v3.0.0 walon 2025-10-09 19:42:07 +0800
  • b40a063582 fix: 修复ScriptObject中事件函数名默认未被禁用混淆的bug walon 2025-10-08 22:25:01 +0800
  • 747ee88fd3 fix: 修复 EvalStackCalculator::ReduceBaseType计算boxed值类型和class类型的base type失败的bug walon 2025-09-14 09:15:58 +0800
  • 403764e7af fix: 修复符号混淆规则文件中modifier条件对property和event没有生效的bug。由于property和event本身并不存在Access Attributes,实际上是由它们所包含的method的Access属性`或`计算而来。 walon 2025-09-10 18:20:29 +0800
  • e12a0e26dc new: 新增CompatibilitySettings,允许指定生成与mono或il2cpp兼容的混淆代码 walon 2025-09-10 11:15:05 +0800
  • daff29ea94 fix: 修复当原始dll中包含resource文件(如mscorlib)时,ObfuscateUtil.GeneratePolymorphicDll执行出现异常的bug walon 2025-09-07 18:32:02 +0800
  • eeff4a75ca fix: 修复 EvalStackCalculator计算 eval data的reduce type时未import来自其他程序集的共享基类的bug walon 2025-09-06 17:50:09 +0800
  • b0699ecf5c 修复EvalStackCalculator计算input eval stack data类型时没有对多个inbound basic block的input计算共享类型的bug walon 2025-09-06 12:26:02 +0800
  • 5557b27724 typo: AssetUtility -> AssertUtility walon 2025-08-29 21:55:24 +0800
  • 59b1166ff3 fix: 修复 ReflectionCompatibilityDetector处理Unity 6000新增的Enum.TryParse(Type,bool, out object)函数时抛出异常的bug refactor: 将 ReflectionCompatibilityDetector移到独立的ReflectionCompatibilityDetectionPass walon 2025-08-27 20:15:20 +0800
  • 4ad3ed76dc fix: 修复 ConstFieldAllocator和 RvaDataAllocator的encryption level固定取4导致EncryptionVirtualMachine的Opcode个数超过256时打印了大量"OpCode overflow"警告日志的问题 walon 2025-08-26 20:58:09 +0800
  • 2576236960 暂时对泛型禁用控制流混淆 walon 2025-08-12 14:19:32 +0800
  • c3c53b2797 修复 EvalDataTypeWithSig计算ldarga等取引用的指令的栈数据类型未包含具体类型的bug walon 2025-08-12 14:19:11 +0800
  • 0889f730fd - 修复EvalStackCalculator计算Ref类型栈变量全部归结来IntPtr类型,导致il2cpp生成代码出错的bug - 修复MethodControlFlowCalculator将box后的值类型变量类型定义为值类型的bug,正确应该是object walon 2025-08-12 12:46:34 +0800
  • 87cd3caf44 change: 禁用EvalStackObfus pass,因为它的性价比太低了。如果将来无法优化,则会被移除 walon 2025-08-07 21:32:00 +0800
  • 8dd6352028 fix: 修复类型上包含[ObufzIgnore(ObfuzScope.TypeName)]导致类型内所有函数体不混淆的bug walon 2025-08-07 18:55:17 +0800
  • 739fcb24c5 WatermarkPass不对DOTS函数注入水印指令 walon 2025-08-06 18:27:15 +0800
  • 246a49f8ba fix: 修复WatermarkPass某些情况下导致栈不平衡的bug walon 2025-08-06 15:21:23 +0800
  • 1ec6e2f426 将ObfuscationTypeMapper::RegisterType函数由internal改为public walon 2025-08-06 10:57:01 +0800
  • b68571de7e fix: 修复在Unity 2019上的编译错误 walon 2025-08-05 14:20:46 +0800
  • 50fe1e1179 更新英文README walon 2025-08-04 11:32:10 +0800
  • d52a9e7016 Code Clean Up walon 2025-08-03 12:37:44 +0800
  • f5c2fe94ea WatermarkPass不打印注入日志 walon 2025-08-02 23:22:26 +0800
  • 54bcae5178 代码水印注入特征IL指令 walon 2025-08-02 23:15:17 +0800
  • cfb544426b 更新README中关于代码水印的说明 walon 2025-08-02 21:53:37 +0800
  • 1e027e6299 feature: 支持代码水印 walon 2025-08-02 21:50:26 +0800
  • 4db68f707b MethodControlFlowCalculator对InputArgs为0的BasicBlock随机化打乱顺序 walon 2025-08-01 11:32:33 +0800
  • c596b58d3e 优化 MethodControlFlowCalculator生成的指令有可能违反IL控制流规则的问题 walon 2025-08-01 10:57:53 +0800
  • ddb144eac8 feature: 新增 RemoveConstField pass walon 2025-08-01 09:19:24 +0800
  • 1a240c47ac 修复ModifierType::Public枚举项值的错误 walon 2025-07-31 20:06:04 +0800
  • 2e48164ae9 修复EvalStackCalculator计算isinst和castclass指令的返回值的类型未转换为token所引用的类型的bug walon 2025-07-31 12:14:18 +0800
  • 9b6e6375f6 更新README walon 2025-07-29 10:14:58 +0800
  • 38ad0de746 禁用obfuz时LinkXmlProcess::GenerateAdditionalLinkXmlFile返回null walon 2025-07-28 10:46:17 +0800
  • 6ec1a74d57 README中添加多态DLL说明 walon 2025-07-26 13:40:16 +0800
  • d6d9cde741 升级版本到v3.0.0-beta walon 2025-07-26 10:32:53 +0800
  • 87f086e310 支持多态dll文件结构 walon 2025-07-25 20:47:38 +0800
  • 69b91575db 发布正式版本v2.0.0 walon 2025-07-24 11:10:23 +0800
  • 0985b3d06e 修复$$Obfuz$RVA$的所有rva字段累计长度超出16k引发的在hybridclr下运行出错的问题。此问题是hybridclr的bug,因为ldslfd之类指令要求offset小于16k。 walon 2025-07-23 20:56:38 +0800
  • d4133f1e8a 移除不必要的对NUnit.Framework的引用 walon 2025-07-23 19:34:42 +0800
  • 3bcf204f69 ExprObfus的BasicObfuscator支持混淆参数类型为IntPtr的表达式 walon 2025-07-21 11:37:29 +0800
  • 905351789e fix: 修复静态与成员函数在包含this参数后如果参数完全相同则计算出MethodDefSignature相同导致RenameRecordMap加载symbol-mapping文件时signature冲突的bug walon 2025-07-21 09:35:40 +0800
  • 3bcb093467 由于EvalStackObfus会显著增加混淆后的程序集大小(当obfuscationPercentage=1.0时大约增加了5倍),将默认obfuscationPercentage改为0.05,并且在global obfuscationPercentage超过0.1时打印警告 walon 2025-07-14 18:12:54 +0800
  • 49194ca1af 升级版本到v2.0.0-rc.1 walon 2025-07-14 11:49:07 +0800
  • 6a4f84a9b0 不混淆被BurstCompile函数直接或者间接调用的函数的代码,但仍然混淆函数名。 walon 2025-07-14 11:45:15 +0800
  • 083ddd3035 对于标记`[BurstCompile]`的类型,除了类型名和函数名以外的仍然混淆 walon 2025-07-11 19:08:25 +0800
  • 2887231df7 禁止混淆带`[BurstCompile]`的函数 walon 2025-07-11 18:03:25 +0800
  • c3238c54a9 更新README walon 2025-07-03 21:23:34 +0800
  • f908b648c1 修复LinkXmlProcess::GenerateAdditionalLinkXmlFile返回的link.xml为相对路径,没有生效的bug walon 2025-07-03 12:41:06 +0800
  • 29debc44bf 升级版本到v2.0.0-beta.1 walon 2025-07-03 12:10:05 +0800
  • 9cbb105405 LinkXmlProcess中保留整个Obfuz.Runtime walon 2025-07-03 12:09:56 +0800
  • e3d9d7a08e 重构GroupByModuleEntityManager代码 walon 2025-07-02 18:57:53 +0800
  • 4b0c5d7521 CallObufs新增Delegate Proxy支持 walon 2025-07-01 18:46:09 +0800
  • 9b9eb6d12d 重构CallObfusPass代码 walon 2025-06-30 20:02:49 +0800
  • 52d9ee1349 修复dnlib插件在非Editor模式下也能被引用的问题 walon 2025-06-30 18:25:53 +0800
  • bf3f6e4534 ObfuscatorBuilder::FromObfuzSettings新增searchPathIncludeUnityEditorDll参数,允许将UnityEditor相关dll也加入到搜索路径 walon 2025-06-28 20:51:54 +0800
  • 655c2fe07f `ObfuzSettings.enable`字段移到`BuildPipelineSettings`中 walon 2025-06-28 20:38:27 +0800
  • 02ed0608e4 添加BuildPipelineSettings,支持自定义 LinkXmlProcess和 ObfuscationProcess的 callbackOrder。 walon 2025-06-28 20:20:08 +0800
  • 59db0dfaab 更新说明 walon 2025-06-28 20:08:00 +0800
  • 2b8e51b12d 调整一些类型名 walon 2025-06-28 19:01:57 +0800
  • df181ed5c1 更新版本号为v2.0.0-alpha walon 2025-06-28 13:51:45 +0800
  • 1f29b5530e 支持UI垃圾代码生成 dev walon 2025-06-28 13:43:32 +0800
  • af8477f4b3 添加ConfigGarbageCodeGenerator walon 2025-06-28 13:10:37 +0800
  • 9d46b5438a 垃圾代码生成 walon 2025-06-28 12:12:31 +0800
  • a833cf26e1 修复MonoBehavoiur和ScriptableObject的属性没有混淆的bug walon 2025-06-28 10:49:30 +0800
  • 7a7ef72728 支持控制流混淆 walon 2025-06-22 19:33:28 +0800
  • ac9c96b4b9 删除CallObfusPass中无用代码 walon 2025-06-26 17:28:30 +0800
  • 95b789deb2 升级版本为 v2.0.0-preview.3 walon 2025-06-26 11:01:33 +0800