从对开发代码的人和运行该代码的企业的真正好处(如果所讨论的代码实际上是商业代码)的角度而言,编写混淆的代码的首要原因是什么?是否有记录在案的案例(可在某些地方在线获得)描述混淆的好处多于坏?是否有众所周知的例子,例如,证明混淆处理会有意义地延迟恶意的第三者获取代码?看来,就像卷起车窗并不会阻止人们打破它们并窃取您的立体声音响一样,混淆代码只会使诚实的人保持诚实。
=========
背景:
这是有意挑战我关于该主题的假设的一种尝试。
我通常反对使用代码混淆,但是我很好奇我是否缺少某些东西。我明白了为什么在JavaScript之类的情况下,缩小可以帮助事情更快地加载并且全部(在那里有真正的,功能上的好处),但是我似乎无法提出代码混淆的单一原因,从而成为障碍。发现一段代码/算法的作用实际上对于任何目的都是有效的。
随着开源软件的疯狂流行,问题似乎是“共享代码,还是专有?” 在商业代码方面,我能理解为什么您不能共享所有内容,并且您有法律来打击盗窃。
顺便说一句,如果有人编写混淆代码的原因是“工作安全性”,那么我将解雇任何被发现是一致的程序员,并故意使用混淆的唯一目的是帮助保持他们的工作,除非他们可以合理地证明它有一些保留。商业利益。它是如此的反团队,以至于很荒谬,它指向的是一个更关心通过误导的做法来保持工作,然后再因为编写出色的软件而保持工作的人。
我仅提及此特定案例,因为尽管我意识到人们通常在开玩笑,但我想阻止任何以其基本目的是仅对工作安全进行迷惑是一个好主意的答案。