To understand why it's helpful to compare DRM with Encryption. Encryption is a mechanism to share secrets with trusted second parties without the possibility of a third, untrusted party receiving the secret message. Encryption is built upon a very solid background of mathematics, and works because the second party is considered to be trustworthy of the key to unlock the secret message.
DRM, on the other hand, assigns no trust to any party except the original source. The assumption is that the second party has a limited, revocable right to the secret message, and is not to pass the message to any other party, even if they want to. The problem with that is the second party must somehow still decrypt the message, even though they are not trusted with the ability to do so. This is the basic conceptual challenge of DRM.
DRM accomplishes this using two techniques. First is obscurity. The mechanism, algorithms and keys used to encrypt or decrypt the managed message are themselves kept secret. Second, Patent encumbrance is used on some aspect, usually the decoding algorithm, so that the parties that do know that part are prevented legally from disclosing it to other parties, or using it at all without proper license.
Both of these features are in opposition to Open Source. By its very nature, Open source discloses algorithms. Any bit of code released under supposedly open source that happens to also be patent encumbered fails to in fact be free software.
Depends on what you mean -- do you think closed-source DRM that runs on client machines out of your control is "possible"? Everything I've seen suggests that it is not: they all get broken sooner or later.
If you think it is, then I suppose an open-source DRM is equally possible. :-)
I wouldn't be at all surprised. Although I have no formal theories about this, since the popular encryption and hashing functions are open source and very well studied, most have withstood the test of hackers for a reasonable time. And I figure DRM is somewhere in the same category of problems as ciphers and hashes.
I mean, the now-looked-down-upon MD5 was first published at 1992 and only at 2005, a first manufactured and practical collision was demonstrated (according to wikipedia). Blowfish was published 1993, and there's still no effective cryptanalysis on it.
So, sure, why not. The problem here is that the open source community, per se, has no incentives in building such a device...
Edit: My answer has gotten some arguably well-deserved criticism, basically stating that DRM is, in a nutshell, security by obscurity, where the obscurity is blown away by making it open source. And, sure, as said earlier, who am I to disagree. But, still, I wouldn't be surprised that, while today's DRM is done by obscuring stuff, one given day, some brainiac comes along, and designs a DRM that actually works.
Sure, dismiss as much as you want, and this is actually more of a play of thoughts, but I've learned to never say never.
发布评论
评论(5)
不是以任何实用的方式。
要了解为什么将 DRM 与加密进行比较会很有帮助。 加密是一种与受信任的第二方共享秘密的机制,而不受信任的第三方不可能接收到秘密消息。 加密是建立在非常扎实的数学背景之上的,并且之所以有效,是因为第二方被认为是值得信赖的解锁秘密消息的密钥。
另一方面,DRM 不向除原始来源之外的任何一方授予信任。 假设第二方对秘密消息拥有有限的、可撤销的权利,并且不会将消息传递给任何其他方,即使他们愿意。 问题是第二方仍然必须以某种方式解密消息,即使他们不被信任有能力这样做。 这是 DRM 的基本概念挑战。
DRM 使用两种技术来实现这一点。 首先是默默无闻。 用于加密或解密托管消息的机制、算法和密钥本身都是保密的。 其次,专利负担用于某些方面,通常是解码算法,以便合法地阻止知道该部分的各方将其披露给其他方,或在没有适当许可的情况下完全使用它。
这两个特性都与开源相对立。 就其本质而言,开源公开了算法。 任何在所谓的开源下发布的代码,如果碰巧也受到专利保护,那么实际上都不是自由软件。
Not in any practical fashion.
To understand why it's helpful to compare DRM with Encryption. Encryption is a mechanism to share secrets with trusted second parties without the possibility of a third, untrusted party receiving the secret message. Encryption is built upon a very solid background of mathematics, and works because the second party is considered to be trustworthy of the key to unlock the secret message.
DRM, on the other hand, assigns no trust to any party except the original source. The assumption is that the second party has a limited, revocable right to the secret message, and is not to pass the message to any other party, even if they want to. The problem with that is the second party must somehow still decrypt the message, even though they are not trusted with the ability to do so. This is the basic conceptual challenge of DRM.
DRM accomplishes this using two techniques. First is obscurity. The mechanism, algorithms and keys used to encrypt or decrypt the managed message are themselves kept secret. Second, Patent encumbrance is used on some aspect, usually the decoding algorithm, so that the parties that do know that part are prevented legally from disclosing it to other parties, or using it at all without proper license.
Both of these features are in opposition to Open Source. By its very nature, Open source discloses algorithms. Any bit of code released under supposedly open source that happens to also be patent encumbered fails to in fact be free software.
这是可能的,但就像任何 DRM 一样,它本质上是被破坏的。 ;)
It is possible but like any DRM, it's broken by nature. ;)
还有 Project DReaM,Sun 的开源 DRM 框架。
There's also Project DReaM, Sun's open source DRM framework.
取决于您的意思 - 您认为在不受您控制的客户端计算机上运行的闭源 DRM“可能”吗? 我所看到的一切都表明事实并非如此:它们迟早都会被打破。
如果您这么认为,那么我认为开源 DRM 同样是可能的。 :-)
Depends on what you mean -- do you think closed-source DRM that runs on client machines out of your control is "possible"? Everything I've seen suggests that it is not: they all get broken sooner or later.
If you think it is, then I suppose an open-source DRM is equally possible. :-)
我一点也不感到惊讶。 尽管我对此没有正式的理论,但由于流行的加密和散列函数都是开源的并且经过了很好的研究,因此大多数都经受住了黑客的考验一段合理的时间。 我认为 DRM 与密码和哈希属于同一类问题。
我的意思是,现在被人看不起的 MD5 于 1992 年首次发布,直到 2005 年才演示了第一次制造和实际碰撞(根据维基百科)。 Blowfish 于 1993 年发布,至今仍没有有效的密码分析方法。
所以,当然,为什么不呢。 这里的问题是开源社区本身没有动力构建这样的设备...
编辑:我的回答受到了一些可以说是当之无愧的批评,基本上指出 DRM 是,简而言之,通过默默无闻实现安全,通过开源来消除默默无闻。 当然,正如之前所说,我有什么资格不同意。 但是,尽管今天的 DRM 是通过模糊处理来实现的,但有一天,一些聪明人出现并设计了一种真正有效的 DRM,这一点我不会感到惊讶。
当然,你想拒绝多少就拒绝多少,这实际上更多的是一种思想游戏,但我学会了永远不要说永远。
I wouldn't be at all surprised. Although I have no formal theories about this, since the popular encryption and hashing functions are open source and very well studied, most have withstood the test of hackers for a reasonable time. And I figure DRM is somewhere in the same category of problems as ciphers and hashes.
I mean, the now-looked-down-upon MD5 was first published at 1992 and only at 2005, a first manufactured and practical collision was demonstrated (according to wikipedia). Blowfish was published 1993, and there's still no effective cryptanalysis on it.
So, sure, why not. The problem here is that the open source community, per se, has no incentives in building such a device...
Edit: My answer has gotten some arguably well-deserved criticism, basically stating that DRM is, in a nutshell, security by obscurity, where the obscurity is blown away by making it open source. And, sure, as said earlier, who am I to disagree. But, still, I wouldn't be surprised that, while today's DRM is done by obscuring stuff, one given day, some brainiac comes along, and designs a DRM that actually works.
Sure, dismiss as much as you want, and this is actually more of a play of thoughts, but I've learned to never say never.