私有加密算法优于公开算法?

2016-01-29 02:16:05 +08:00
 baskice
为什么我上的所有 CS 课,加密算法课,都说公开算法在性能和加密强度等综合性能上优于所有已知私有算法?

有人是想说,私有加密算法仅在加密强度一项上优于主流公开算法吗?

把 AES 之类的套几层能叫私有算法吗?只层套的话强度显然会高于主流公开加密算法的强度啊
6156 次点击
所在节点    问与答
31 条回复
louk78
2016-01-29 13:46:56 +08:00
公开算法安全性不在于算法本身,而在于 KEY ,私有算法安全性汪汪在于算法本身
lightening
2016-01-29 18:20:37 +08:00
@nbndco 比如 RSA 的所有 contributor 当年组成一个小组开发了 RSA ,而且决定不公开 RSA 算法?
nbndco
2016-01-29 18:53:57 +08:00
@lightening 问题在于在这种情况下你怎么知道 RSA 和我刚刚上厕所的时候想出来的 RSB 是不是一样安全?
公开算法的安全本来就体现在公开本身上,换言之,这是由所有人共同验证过的安全的方法。
lightening
2016-01-29 19:15:34 +08:00
@nbndco

我不知道 RSA 和 RSB 哪个更安全啊。所以 RSA 比 RSB 安全是完全可能的, RSB 比 RSA 安全也是完全可能的。

“公开算法的安全本来就体现在公开本身上,换言之,这是由所有人共同验证过的安全的方法。”
不是。很多人验证提升了算法安全的概率而已,不能保证算法是安全的。
nbndco
2016-01-29 20:15:53 +08:00
@lightening
如果你秉持安全性的不可知论那又何必要在关心有哪些加密算法呢?反正这世上算法都没差。
echo1937
2016-01-29 20:28:03 +08:00
我们看的书都不一样吗?

现代密码学和经典密码学的区别在于,加密的效果不再依靠算法的保密来实现。

言外之意是现代密码学要求,即使你的加密算法被公开了,也依然可以保证保密效果。

这保证即使你的加密仪器,操作人员被敌方获取了,你依然可以通过更换密钥来实现加密安全,


所以私有加密算法和公开加密算法谁安全就是个伪命题,
既然你的加密系统本就不靠算法保密性活着,那你为什么要保密你的算法,
商业利益要靠著作权法,专利法来保护。
lightening
2016-01-29 20:42:09 +08:00
@nbndco 可是作者(们)自己如果有足够的能力,是可以知道自己的算法比公共的好的。他们可以使用自己开发的算法。
lightening
2016-01-29 20:43:23 +08:00
@echo1937 加密算法在设计时不依赖算法的保密实现不假,但这不意味着一定要真的公开算法。
nbndco
2016-01-29 21:36:47 +08:00
@lightening 其实事实上是不存在一个比公共算法更好的私有算法的,光是实现上的优化就不是私有算法能够比得了的。
不过你要是一定要说理论,我只能说理论上当然有可能有人设计出一个比公开算法更好的算法,还写出了一个更高效的实现。
不过又回到老问题,如果只有你自己,你自己觉得什么安全高效就用什么都是无所谓的,关键问题在于如果你如何让别人相信你的那个闭源的二进制包是真正安全的。
RSA 如果当年没有公开,那现在根本不会有人用唯一一个公司发表的 RSA 二进制包来进行加密。
ipconfiger
2016-01-29 22:24:57 +08:00
私有算法更容易被社会工程学攻破, 比如当年的恩尼格玛密码机
lightening
2016-01-29 23:37:00 +08:00
@nbndco

事实上的问题是,开源软件所获得的关注并不如你想像的大。 OpenSSL 的 heartbleed 漏洞好几年才会有人发现呢。实际上用开源软件的人中极少数会真的去自己核对算法,确认是否存在漏洞。

“ Given enough eye balls, all bugs are shallow ”, but how many eye balls are enough?

当然,如我我现在要用一个算法来加密,我会用知名的公开算法。但是如我我是一个情报机构,从事机密工作,并且手下有一群足够好的信息安全专家,很可能会选择自己开发加密算法来自己用。使用公开算法会有 0day 漏洞的风险。也可能有人发现了公开算法的漏洞不发表,而利用漏洞攻击。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/254122

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX