Gates defends DRM with specious “Bits is Bits” argument

In a great interview on Gizmodo, Bill Gates and Joel Johnson (?) squabble about DRM. Despite his disclaimer that he was intimidated, the interviewer challenges Gates boldly. Gates responds (in part), by saying that you have to start from the question “‘should there be confidential information?'” (such as for medical records) and when the interviewer accuses him of shifting the argument, Gates says “It’s not different. It’s identical technology. It’s the same bits!”

Which gives me the opportunity to point out that post-Longhorn and especially post-Palladium, the premise that computers will always have a “bits is bits” loophole, for better or worse, will no longer hold. The idea that a computer’s memory could be composed of homogeneous bits whose interpretation was dependent on context was one of the elegant innovations in the Univac, whose architecture was described by Jon von Neumann. The “von Neumann architecture,” became virtually universal by the 1970s but it’s not “fundamental” to the concept of computers.

The abstract virtual machines of managed platforms such as .NET and Java do not have homogenous bits that can be interpreted as arbitrary types of data or machine instructions or what have you. True, these abstract VMs are implemented on top of chips that are essentially von Neumann, so there’s still a “bits is bits” loophole today. With a sufficiently instrumented machine today, you can still view any piece of main memory on your system, allowing you to compromise (for better or worse) anything that executes within the context of your operating system.

In Longhorn, large portions of the OS are going to migrate from native code to managed code, making it far more difficult to access and interpret the native bits and bytes present in memory (of course, within the virtual machines, there are powerful debugging tools, but these do not generally provide insight into the underyling physical memory).

Finally, the Next-Generation Secure Computing Base fully closes the “bits is bits” loophole. The NGSCB provides a combination of hardware and software that makes it possible to create fully secure data pathways, essentially black boxes within your system architecture. Such black boxes could be used to transform encrypted data into a usable form. This could be incorporated at the level of media drivers (sound, video) although doing so would introduce a considerable performance penalty. But between Moore’s Law, the RIAA, and the MPAA, it’s not at all inconceivable.

Such a system would still have an “analog loophole” in that once transformed for playback, one should be able to intercept and record the bits perfectly. However, this might require specialized drivers or even hardware (depending on how far along the media playback pipeline the NGSCB transforms are incorporated).

Contrary to Gates’ assertion, DRM is not a context-free technology that applies equally to all bits. It is entirely likely that DRM advocates will push for design decisions and commitments from commercial OS vendors that make opague large, complex subsystems in computer systems.

Dare Obasanjo has an article on COmega

Introducing COmega is a good overview of what is probably the most obviously startling thing about COmega — it’s attempt to bridge XML / Object / Relational worlds with built-in syntax. I’m not sure that this is going to be COmega’s biggest contribution to the mainstream (I suspect that it’s threading techniques using “chords” may prove to be more important), but it’s certainly interesting. Dare promises to visit E4X, which combines XML handling with JavaScript and is, in my opinion, a better match for many XML processing scenarios, in his next article.