我是一个学习自由和开放源码软件许可,安全和隐私。我之所以问这个问题,是因为说服用户使用或改用自由和开放源码软件的理由之一是,由于代码是开放的,专家可以检查代码以解决安全问题,因此FOSS有利于安全。然而,我怀疑代码混淆在自由和开放源码软件中是否常见,在审查自由和开放源码软件源代码时,这是否会成为一个障碍。有人遇到过我提到的问题吗?流行的自由和开放源码软件许可证是否明确地提到了代码混淆的问题?
发布于 2019-06-17 06:24:16
一般来说,面向安全的开源软件依赖于克尔霍夫原理。
简而言之,假设绝对没有什么是秘密,除了密钥本身。任何和所有的攻击者都应该能够通过任何试图混淆您的代码来破译和推理,因为最重要的是,计算机也需要能够执行它。
计算机对人类唯一的优势是它能够以更高的速度进行计算。他们无法猜测或推断任何事情;你必须明确地告诉它如何完成每一步。你必须把你的秘密放到算法本身中去模糊处理,否则计算机不能也不会处理你的数据。
“开放源码”这一短语意味着,每一条消除你的秘密的指令都可以为每个能够理解它的人所使用。
所以不,混淆在开源许可许可下的软件中并不常见。
发布于 2019-06-17 06:56:42
我怀疑在自由和开放源码软件中代码混淆是否常见。
不是的。开放源代码的目的是使源代码可供用户使用和修改.混淆代码会阻止这些目标中的任何一个实现。
我偶尔会看到开源软件的插件(如WordPress插件)以模糊的形式发布,以提供对GPL许可条款的技术遵从(该许可要求GPL软件的加载项,如WordPress,也可以在GPL下发布),同时阻止用户对代码进行修改。但是,还不清楚这是否符合许可证,因为代码没有以其原始形式分发,而且通常被认为是不友好的行为。
https://security.stackexchange.com/questions/211957
复制相似问题