首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ioncube -混淆错误

Ioncube -混淆错误
EN

Stack Overflow用户
提问于 2015-09-08 16:53:03
回答 1查看 1.5K关注 0票数 0

目前我正在为我们公司开发的产品评估离子立方体。在运行编码后的产品时,我得到

代码语言:javascript
复制
PHP Fatal error:  Class '[obfuscated]'

如果我的代码中有像DomDocument这样的东西,我会得到这个错误。我觉得如果我安装并使用了任何php包,Ioncube就会抛出一个错误。我联系了Ioncube支持部门,但我无法获得解决方案。

有没有人知道如何在包含DomDocumentimagick的代码中使用离子立方?

EN

回答 1

Stack Overflow用户

发布于 2015-09-08 17:42:21

混淆在ionCube文件的编译代码中重命名潜在的符号信息,使用无意义的名称,或者在函数的情况下,使用在PHP源中使用的名称甚至是无效的名称。其推论是,任何未编码的上下文都将失败,试图使用已被混淆的符号,正如预期的那样。

为了在编码和非编码世界之间架起桥梁,可以指定混淆排除列表来命名不应该被混淆的符号。由于PHP的性质,在像$a->foo()这样的代码中,通常不知道$a是哪个类的实例,因此如果不对foo()进行混淆,那么在任何类上下文中使用的foo() (即所有foo())都不需要对其进行混淆。这实际上不是问题,因为符号重命名远不如使用动态算法密钥的代码加密等新功能重要,但最好不要盲目地将碰巧与模块中的方法共享相同名称的每个方法排除在混淆之外,这就是模块类的方法在默认情况下不会被排除的原因。

这样做的结果是,您应该准备一个排除文件,其中只包含您想要排除的方法。为所有已知模块预先准备好功能列表将是有用的,这很可能在未来的版本中可用,但很容易手动或自动生成该列表。

披露:我与ionCube有关联。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32453335

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档