Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
GNU is Not Unix Software Linux

Hypervisors Can Defeat GPLv3's Anti-Tivoization 377

DeviceGuru writes "A hypervisor can be used to isolate from each other software works released under incompatible licenses, while allowing them to run simultaneously on the same hardware. For example, Linux and Windows CE can run on separate virtual machines on one device, without violating either OS's license. Due to the isolation between multiple VMs running atop a hypervisor, it seems like this architecture could allow companies to build Linux-based devices, such as mobile phones or set-top boxes (think TiVo), that can't be upgraded by their users without authorization, thereby circumventing the GPLv3's 'anti-tivoization' clauses." Here's a white paper with more details from a commercial hypervisor company.
This discussion has been archived. No new comments can be posted.

Hypervisors Can Defeat GPLv3's Anti-Tivoization

Comments Filter:
  • Bogus! (Score:5, Insightful)

    by MMC Monster ( 602931 ) on Tuesday August 28, 2007 @04:16PM (#20389345)
    Frankly, I'm not sure what the article is trying to state.

    If the code is released under GPLv3, then modifications of the code must be able to run on the same hardware. It doesn't matter if the key to run the code is a checksum or a password to give the hypervisor. Either way, if modification of the client cannot be dropped into the place of the original client (either to run on the same hardware or the same hypervisor), it's in abuse of the GPLv3.
    • Re:Bogus! (Score:4, Interesting)

      by Orange Crush ( 934731 ) on Tuesday August 28, 2007 @04:22PM (#20389453)
      I get the same impression. If TIVO for instance wishes to use the method to satisfy both their (eventual) GPLv3 obligations *and* content-owner obligations at the same time, then I don't see it violating either the letter or the spirit of GPLv3. An end-user is free to modify the Linux client as they see fit, or to replace the hypervisor alltogether with a bare-metal Linux installation.
    • Re:Bogus! (Score:5, Interesting)

      by mmacdona86 ( 524915 ) on Tuesday August 28, 2007 @04:24PM (#20389495)
      Note that the hypervisor doesn't prevent you from updating the GPL code (the Linux kernel, for example)--
      it just prevents you from getting extra access to the machine by updating the code. Thus it allows "tivoization" without violating the letter (or arguably the spirit) of GPL v3. The GPL code you can hack and modify to your heart's content; the hypervisor just makes sure that said hacking doesn't compromise the machine.
      • Seems fair to me (Score:5, Insightful)

        by marcosdumay ( 620877 ) <marcosdumay@gma[ ]com ['il.' in gap]> on Tuesday August 28, 2007 @05:03PM (#20390059) Homepage Journal

        Really, your new version of the kernel will have the same privileges as the old version. I see no problem with that.

        I only fail to understand why they plan to put a kernel above that hypervisor. For it to be of any use, the hypervisor must controll all I/O operations anyway, what they get from Linux?

        • by Sique ( 173459 ) on Tuesday August 28, 2007 @08:31PM (#20392481) Homepage
          Moreso: What the Hypervisor is thought to achieve in an attempt to circumvent the GPL is actually something that was designed into the GPL from the very beginning: It was never forbidden to run proprietary code and GPLed code on the same machine. It was only forbidden to make a derivative work from GPLed code and distribute this with a license that is incompatible with the GPL. The FSF stated from the very beginning: If the proprietary code and the GPLed code don't share GPLed libraries or run in the same segment, everything is fine.
          (See http://www.gnu.org/licenses/gpl-faq.html#GPLAndNon freeOnSameMachine [gnu.org])

          The hypervisor is just another method to achieve exactly this behaviour that was built into the GPL from the very beginning: Make a clear distinction where the proprietary code runs, and where the GPLed code resides. So no: The hypervisor is not a "circumvention device against the GPL3".
    • by cp.tar ( 871488 )

      Even more so, while this can be used to isolate two operating systems from each other, some software is obviously going to run under the operating system. I fail to understand how you can isolate the software from the OS, as well as the usefulness of such a feat. I mean, what's the purpose of the OS then?

      Somehow, I don't think the GPL 3 was so poorly written that it could be circumvented so easily.

      • Re:Bogus! (Score:4, Insightful)

        by Kazoo the Clown ( 644526 ) on Tuesday August 28, 2007 @04:41PM (#20389763)

        Somehow, I don't think the GPL 3 was so poorly written that it could be circumvented so easily.

        Why not? It's just another form of DRM-- and we all know how easy that is to crack...

      • Re: (Score:2, Insightful)

        by everphilski ( 877346 )
        Hardware | hypervisor | GPLv3 code

        GPLv3 code can do whatever it wants, but the hypervisor can feel free to say "I'm sorry, there is no spiffy network card", "I'm sorry, there is no TV channel like that" ... think of the hypervisor as a virtual machine if you must. Programs can work fine in the virtual machine, but that doesn't mean the virtual machine will look precisely like the actual hardware. Check and mate, RMS!
        • Re:Bogus! (Score:5, Insightful)

          by Knuckles ( 8964 ) <knuckles@@@dantian...org> on Tuesday August 28, 2007 @05:09PM (#20390157)
          Check and mate, RMS!

          You must have a huge stake in proprietary software to cheer about this. Note that if this is the way of the future, it's not only "Check and mate, RMS!", but also "Check and mate, general-purpose personal computer!". Well, I guess you will still be able to import one from China, provided you won't get caught. Hurray indeed.
          • Re:Bogus! (Score:4, Interesting)

            by everphilski ( 877346 ) on Tuesday August 28, 2007 @06:26PM (#20391107) Journal
            No stake whatsoever, except opposing anti-tivoization and GPLv3. I still don't believe 'freedom' can be obtained by imposing restrictions in a software license. If you want free, make it free!

            Check and mate, general-purpose personal computer!". Well, I guess you will still be able to import one from China, provided you won't get caught.

            Homebrew it. Engineers shall rule the world :) They did it 20 years ago, why not today? Plenty of people build their own (amateur) radios, many from scratch and approaching the complexity of a modern computer. It might bring about a new renaissance ... go with the flow man, RMS is no Jesus, and the FSF is no means of salvation. They have their own ambitions and agendas, just like any other organization.
        • But then all the code Tivo doesn't want touched will just be in the Hypervisor, and it will have to not be under GPLv3. In other words, we also changed the pages of the real Death Note he's using right now!
      • by B'Trey ( 111263 )
        Essentially, you have a GPL3 and a non-GPL3 working hand in hand, passing data back and forth. The GPL3 software (say Linux, if and when it moves from v2 to v3 of the GPL) handles all of the network code, user interface, etc. However, over the network, it receives encrypted data. It passes that data, still encrypted, to the non-GPL OS. The non-GPL software decrypts it and sends it via a DRM'd, trusted interface to the video display, which displays the data. At no point does Linux ever see the unencrypt
    • Use Windows CE for the user interface. Have an internal connection to the Linux Virtual Machine. Linux does all the hard work, Windows CE works mostly like a User Interface Firewall. There are ways around it. Linux doesn't try to do any DRM it is all Windows who is doing the job. But windows is giving Linux the information to do the real work.

      You are not breaking GPL 3 you are getting DRM. HA HA! Sorry play again.
    • by romiz ( 757548 )
      The author claims that manufacturers can ensure that while the Linux part respects the GPLv3 constraints, and can be modified by the user as required by the license, it is possible for the manufacturer to protect their own part that lives in another VM on the hypervisor, and thus is not a derivative from the GPL code.

      For an embedded manufacturer, it is interesting because it protects what the manufacturer considers to be important, or even simply some code it bought from a third party, while it allows ski
    • by glindsey ( 73730 )
      My interpretation of the article is that a device manufacturer could use a hypervisor to isolate the entire "trusted path" from Linux completely, by running the application responsible for decrypting video data and outputting it in a separate VM. This application could be totally closed-source. Linux, running in its own VM, could communicate to this locked-down, non-GPLed application via a shared memory region.

      Whether this is in violation of the GPLv3, I don't know; I haven't read it. But it seems like a
      • by samkass ( 174571 )
        Whether this is in violation of the GPLv3, I don't know; I haven't read it.

        Since the GPLv3 is essentially a form of DRM, there's almost certainly a way around it. This approach seems reasonable.

        What I don't understand is why the GPLv3 didn't have a clause stating, unequivocally, that software released under it cannot implement (encode or decode) Digital Rights Management schemes in any way, shape, or form. If they're going to be against user-hostile software, why not take a stand?

        That would be ironic, sinc
        • The GPL is telling you, the user, what you can do with my software. DRM is telling you, the user, what you can do with your own data.
        • The definition of DRM is attempting to use software to provide the user a service while restricting that same service from the user.
          GPLv3 does not fall under this definition because:
          • It is voluntary on the part of the software writer(or at least, exactly as voluntary as GPLv2)
          • It still has no restrictions on the user's part
          • It's a license, not a software program
      • Re: (Score:3, Insightful)

        by homer_ca ( 144738 )
        There's just one problem with the closed source application running in its own VM. The VM is a virtual machine not a virtual application environment. That means the closed source software has to include a kernel with scheduler, memory management and device drivers for the hypervisor's virtual devices, in other words an entire OS. If you wrote an entire OS to run in the non-Free VM, why even bother having a Linux VM?
    • by also-rr ( 980579 )
      Frankly, I'm not sure what the article is trying to state.

      This is because the closed source hypervisor in your head is preventing you from accessing the appropriate parts of device memory ;)

      Frankly this is an interesting legal hack. It certainly seems to comply with the letter of the license, and possibly even the spirit. The freedom to modify GPL 3 software is preserved in the proposal.

      What it is analogous to is building (say) a hardware DVDCSS decoder that acts as a black box. Data in, video out. E
  • I can't help but think this kind of tivoization will be horribly broken by the end of the year. there's likely a way that someone somewhere will figure out a way to wipe the whole mess and do away with this nonsense.
    • You are trying to use the law to stop people from using technology. You make rules that say you can not make a hard to modify device that runs Linux like a Tivo. They make it hard to copy a DVD. Both groups will find a technical way around the problem. The sad thing is that GPLv3 treats "professional" systems differently than "consumer" systems! May both sides have fun trying to write around technology.
      • No, the GPLv3 is trying to use the law to ensure people can use the technology they, the consumer, wants to.
        • by LWATCDR ( 28044 )
          Get past the religion of FOSS for a second. GPLv3 is telling a group of users aka the developers how they can use GPLv3 software. So some developers have found a loophole.
          My post doesn't have anything to do with if FSF is right or wrong. It has everything to do with the futility of trying to write some agreement that limits the use of digital technology.

          For example if I really wanted to make a closed device all I would need to do is create my own CPU. I then make my own code generator for GCC.
          I then compile
  • Can it really? (Score:3, Interesting)

    by realdodgeman ( 1113225 ) on Tuesday August 28, 2007 @04:21PM (#20389433) Homepage
    GPLv3 states that you have to be able to use modified versions of the code on consumer devices. How can you circumvent that? Even if it runs in a hypervisor, you are still violating the license.
    • Re: (Score:2, Informative)

      by iburrell ( 537197 )
      The GPLv3 states that you have to be able to use modified versions of the GPLv3 code. It doesn't say that the proprietary code has to work with modified versions of the GPLv3 program. Think of a Tivo which has an open-source kernel, userspace, and proprietary video program. If the video program refuses to work with anything other than a Tivo-provided kernel, then you may be able to upgrade the kernel but it won't be a Tivo just a hackable DVR.

      This can't be achieved when the kernel is running on the bare
  • by jellomizer ( 103300 ) * on Tuesday August 28, 2007 @04:22PM (#20389463)
    the Anti-Tivoization clause is one the sore points in my book about the GPL 3. Because of the hippocraticy worded in it,
    For TiVo being a consumer product is Bad, IBM Being corporate product it is good.
    Free Software has a lot of advantages but if you try to get too academic with it it gets to a point where adoption of such products are impractical.
    Take the TiVo, what GPLv3 wanted to do was force TiVo to release their DRM so the community has access to their product. What actually happends is TiVo
    finds a backdoor to the license and uses it, or drops using open source and any stop to any shared contributions from TiVo and a move to a different
    platform.
    The License for free software is the cost of using the software. (Except for trading money (and rules) for rights to use, you agree to follow these rules for
    rights to use) as more rules you add to the license the more expensive the free software becomes. So if you make FreeSoftware to strict on its use
    people won't use it. Academically Free as in speech software sounds like a good plan but real life realizes there is information that you want to keep
    private.
    • by QuoteMstr ( 55051 ) <dan.colascione@gmail.com> on Tuesday August 28, 2007 @04:26PM (#20389539)
      The goal of the GPL is to keep software free; the goal of BSD-style licenses is to ensure that high-quality software is used as widely as possible. They're conflicting goals, to an extent, though there's a big overlap.

      The GPLv3's anti-tivoization clause is true to the GPL's goal. When putting software under the GPL license, one accepts that it might not get as much use as BSD-licensed (or, as an intermediate, GPLv2-licensed) software, and that's the price for the code itself remaining free.
      • by Rakishi ( 759894 )
        Yet if you sell your drm restricted product to a corporation or business there is no problem. You can restrict updatability as much has you want. Interesting definition of free you seem to have there. Free as long as one of our major supporters (IBM) isn't hurt by it, eh? Great moral based design you have there.
        • I don't like that part of the GPLv3 either, but you should understand the other side of the argument: it makes it possible to create a certified device using GPLv3 software. Imagine a voting machine using GPLv3d software, for example.
      • by ivan256 ( 17499 )
        The more restrictions you put on the use of code the less free it is.

        Period.
        • GPL does not put restrictions on use of code. It puts restrictions on distribution of code, created to ensure the lack of restrictions on use of code.
          • GPL does not put restrictions on use of code. It puts restrictions on distribution of code, created to ensure the lack of restrictions on use of code.

            There are many ways to use code which involve distributing it. Such as using it as a component of some other system you produce. This form of use is very much restricted by GPLv3.

          • Re: (Score:3, Insightful)

            by ivan256 ( 17499 )
            Is distribution no longer a form of use?

            Since they love to use Tivo as an example, let's run with that. Isn't Tivo's (the company, not the device) use of Linux simply distributing single-purpose boxes that are run by it?

            Preventing a company like Tivo from distributing GPLv3 software on a closed device doesn't increase the freedom of the software. It doesn't even have anything to do with the freedom of the software. It's an attempt to impose openness on the hardware irregardless of whether the code itself is
    • What?
    • by vux984 ( 928602 )

      Take the TiVo, what GPLv3 wanted to do was force TiVo to release their DRM so the community has access to their product.

      No, that is the fundamental error that so many people make.

      That is NEVER what they wanted to do at all.

      What they wanted to do was to stop TiVo from redistributing GPL code that couldn't be modified and run on the purchased hardware it came with.

      This was never to 'force' TiVo to do anything except make a choice:
      Use the free (as in liberty) code covered by the GPL and extend those freedoms t

    • by DVega ( 211997 )

      Take the TiVo, what GPLv3 wanted to do was force TiVo to release their DRM so the community has access to their product.

      Wrong. What they want is to be able to use their hardware. If Tivo uses other-people software it seems fair for others to use their hardware.

      What actually happends is TiVo finds a backdoor to the license and uses it, or drops using open source and any stop to any shared contributions from TiVo and a move to a different platform.

      Fine with me. Can you tell me which are the contributions

  • No, they can't. (Score:4, Informative)

    by strredwolf ( 532 ) on Tuesday August 28, 2007 @04:22PM (#20389467) Homepage Journal
    Simply put, if any part of the firmware is GPL 3'ed, even if it's running under a VM, it still requires the ability to replace it by the user w/o authorization from the factory. If I remember the license and discussion about it, it's "if it's in there, it's there for all."
    • Sure, go ahead and swap out whats in the VM. The VM is just handling the boring bits. The proprietary shit is behind the hypervisor.
  • Legalese dictates engineering choices?

    Do they really think software these days isn't slow and bloated enough without the additional burden of context-switching, just to circumvent the licensing problems?

    I equally despise Microsoft and RMS these days...
    • Re: (Score:2, Insightful)

      by JeremyGNJ ( 1102465 )
      Yes. When people use legalese to try to lock down software into "freedom" (GPL 3), then people use legalese to get around it.
    • Clap! Clap! Well put. For most people we liked Open Source because we didn't need to reinvent the wheel just tweek what was working and just as long as we gave the code back to the community and let the community to do the same with your code is one thing. But it is a game where we cant use Open Source any more because there are to many restrictions to prevent "Evil" Use so unless you think like exactly like RMS and has his exact values of good and evil, Open Source is too restrictive... Conversely Micros
      • What are you talking about? If you don't like the GPLv3's restrictions, use the GPLv2 for your code. Or the BSD license.

        I happen to think that the GPLv3 is appropriate for many projects, but it's ultimately up to the creator to choose the license, not you.
      • by fsmunoz ( 267297 )
        You are describing your own interpretation of "Open Source" and attacking the FSF because apparently the GPLv3 doesn't conform to it.

        Not even considering that the FSF as never used the term "Open Source" - and as actively distanced itself from it - you're description fails to cover BSD/X11/ISC type licenses, that don't require giving the source back to the community. You shouldn't narrow the world of free software to only GPL'ed covered code IMO.

        As for being too restrictive, well, if you do find it tha
    • Do they really think software these days isn't slow and bloated enough without the additional burden of context-switching, just to circumvent the licensing problems?

      Y'know, you could just choose not to circumvent the licensing problems. You could just use code which you can get under a license that lets you do what you want with it. Or you could *gasp* write your own code! What a concept!

      And at the risk of sounding petty, they started it. The root of this problem is not the GPLv3, it's DRM and Tivoization

  • Tivoization (n) (Score:4, Informative)

    by the_skywise ( 189793 ) on Tuesday August 28, 2007 @04:27PM (#20389553)
    To help slashdotters not have to RTFA!
    (from the whitepaper link)
    "Device vendors are also required to provide access to the source code of the GPL programs (see PLv2 ï½3, GPLv3 ï½6), including "the scripts used to control compilation and installation of the executable" [Footnotes 4, 6]. However, the GPLv2 does not require that installed executables must work, which enables a mechanism the Free Software Foundation calls "Tivoization."

    "Tivoization," according to LinuxInfo.org, "refers to the configuring (by the manufacturer or vendor) of a digital electronic product that uses free software, so that the product will operate only with a specific version of such software." Technically, this means that a vendor of a product that uses GPL v2 programs could provide access to the source code, thus being compliant with the software license, but the product would be prevented from working if a modified version is installed, through the checking of the software image's signature."
    • Re: (Score:3, Informative)

      by Todd Knarr ( 15451 )

      Not quite. It means a vendor doing that and allowing itself the ability to update and change the software while at the same time preventing the user from doing the same. If the vendor simply made it impossible to change the software, for either the user or the vendor, then that'd be acceptable under the GPL. The GPLv3 is explicit about this: it's not a violation to put the software in ROM or the like that can't be changed, but if the software can be changed then the recipient must be able to change it. TiVo

  • Either Tivo is considered a derivative work of Linux or it's not. In the former case, the company is required to release the source code to both hypervisor and Windows CE or else cease shipping the device. In the later case, Linux developers have no business telling Tivo what to do with their own hardware and software. Neither should Microsoft have any legal say in people running Vista basic in a VM.
  • Seems like the whole GPL 3 thing is "going the other way" if you step back and look at it.

    It used to be that the restrictions on proprietary code caused people to want other options, and jump through hoops to get around the restrictions.

    Now people will be doing the same to deal with the restrictions of GPL 3.

    Seems that the "spirit" of open software is being compromised by people trying to nail it down in legal terms.
    • Re: (Score:2, Insightful)

      by Anonymous Coward
      Everyone seems to forget just exactly what the GPL is, and what a License is. It is a restriction that the PROGRAMMER decided to put on the product, not RMS. All RMS does is write the license, there are hundreds of licenses out there. It just happens that programmers liked the GPL because the like the idea that someone else wouldn't make money off of their work. Later on corporations latched onto the same idea. By rolling out a GPL and a closed source version of code they could essentially acheive the equiv
      • by fsmunoz ( 267297 )
        Good post. Your characterization of the different value of the GPL and BSD license's for companies matches mine exactely: BSD great to take code from, GPL great to release closed source software to the public.

        The rest of the post is also to the point. It's a shme moderators seem to have something against modding AC's.
    • Seems like the whole GPL 3 thing is "going the other way" if you step back and look at it.


      But that was precisely the intention. To take copyright and turn it against itself. Where there was "you may not redistribute or modify without the copyright holder's permission" there's now "you may not forbid redistristibution or modification without the copyright holder's permission"
    • I think the stability of a product using this system. Not only do you have the resources of two different operating systems on one piece of hardware to contend with, if one OS fails, then the device will probably fail. It's probably done well enough on expensive server hardware, but when you do that on a consumer product, I just don't think the costs can be kept down as easily.
  • Running a GPLv3d executable under a modified BSD kernel that prevented that GPLv3ed program from violating its constraints would be the moral equivalent of what this company is suggesting, but without all the virtual machine crap. I'll let other posters deal with that issue (though I suspect that what they're doing doesn't really violate the letter or spirit of the GPL.)

    What I'm complaining about is the buzz about virtualization. What is the point? How many levels of abstraction do we need before we realize
  • We WERE playing Buzzword Bingo, weren't we? I thought that "Anti-Tivoization" was never going to come up.
  • by romiz ( 757548 ) on Tuesday August 28, 2007 @04:46PM (#20389841)
    The resulting product is fundamentally different from a TiVo.

    While on TiVo, there is no way to change any part of the code without the signing key, in the proposed solution it is possible for the user to change the whole open-source system with an other one, as required by the GPLv3 license. As such, there is much more freedom for the user to tinker with its own system.

    But for the manufacturer, it has the distinct advantages that some parts of the system can be isolated from the open subsystem, in a much more stable way, both legally and technically, than in a closed-source driver. Thus, it is possible to implement DRM, software subject to type conformance, or safety-critical tasks without risking corruption from the open system, whatever this system does. And contrary to the current solution, this does not require additional hardware.
  • Why are we doing this? Why are we trying to break GPL3, when it's the type of license that benefits the user the most of all?
    • Re: (Score:3, Insightful)

      by fotbr ( 855184 )
      Because "good for the user" isn't always the same as "good for the company".

      Surprise, surprise, companies are in business to make money.
    • Re: (Score:3, Insightful)

      by fsmunoz ( 267297 )
      "We" aren't doing this. Some companies are probably eager to do it, and then there are those around here whose major joy is bitching about the GPL, the FSF, RMS and his dog. For them everything that is unsavory to the FSF is a great joy, even if it affects everyone else - even free software developers using other licenses. They generally describe themselves as "open source" advocates but in reality they are the mirror image of the "anti-M$" crowd.
  • This sounds like SELinux or AppArmor, you get to modify the code but if the security context is the same, you can't access any more. Maybe a bit more fancy than that since virtualization will allow you to share devices without sharing content. In short, you have a hypervisor that can run two VMs, e.g. one Linux and one Palladium/TC/TXT DRM-up-your-ass Blu-Ray/HD-DVD player and yet they live in separate world. This may actually be the easiest way to get HD content playing on your Linux machine, but technical
  • Maybe I misunderstood the intended market, but why would Tivo be interested in this? A better solution would to have another CPU running the "secure" functions and have it service the needs of a larger CPU that runs the GPL code (this aux CPU behaves as an ASIC). Keep in mind, I am talking about low power CPU like the smaller PowerPC or ARM.

    It would be cheaper per unit since it would eliminate any run time license fees from the hypervisor provider.

    It could be more power efficient since the hardware desig

  • I thought virtualization was an pretty obvious [slashdot.org] workaround to the GPL3. To be honest they should have put language into the licence to prevent using virtualization to circumvent the DRM clauses
    • Re: (Score:3, Insightful)

      by QuoteMstr ( 55051 )
      You can't do that. Where would you draw the line?

      "This software cannot run on the same CPU as software that implements DRM"

      The DRMer will just use a separate coprocessor.

      "This software cannot be distributed with software that implements DRM"

      Oops. You can't distribute a Windows machine with a GPLed program on it.

      "This software cannot communicate with software that implements DRM"

      It can't connect to the internet?

      You're asking for the legal equivalent of an evil bit.
  • Circumventing? (Score:5, Insightful)

    by 11223 ( 201561 ) on Tuesday August 28, 2007 @05:27PM (#20390381)
    I may be confused, but isn't this actually a way of complying with the GPL3? Using a hypervisor allows users to upgrade the kernel of their device without running into the (theoretical) security problems that companies who lock down their devices are afraid of.
  • by bitspotter ( 455598 ) on Tuesday August 28, 2007 @06:14PM (#20390977) Journal
    Start with two machines: a "Tivo" with proprietary firmware, connected via LAN to a PC with a Trusted Computing TPM and a GPLv3 OS image signed by the "Tivo"'s vendor.

    The OS can be altered and recompiled on the PC at will, staying well within the provisions of the hardware/software definitions as used in the GPLv3 license.

    But when streaming video from the PC to the Tivo, remote attestation is used to verify the signature of the OS image booted on the PC. If the bootstrap signature is not provided, or doesn't match, the Tivo refuses to play the provided stream.

    Got it? Good. Now all you need to do is re-imagine the PC in this model as a virtual machine run inside the Tivo itself, and you get the idea.

    There might be a problem with this end-run, however. It all depends on whether the GPLv3 has to say specifically about what functionality is locked out without a bootstrap signature from the VM. If there's some language about insuring "complete", "full", or "all" functionality to modified versions, then it may not matter whether there's a hypervisor in the way or not (although the original network example I gave above is still legit).

    I'm intersted to hear what the lawyers have to say.
  • by 7-Vodka ( 195504 ) on Wednesday August 29, 2007 @02:56AM (#20395207) Journal
    I am amazed that the ratio of junk idiotic posts vs. informed posts in this discussion is astronomical.
    1. GPL3 is not designed to stop encryption of data (DRM - Digital Restrictions Management).
    2. GPL3 is designed to stop preventing a user of GPL3 software from using it to the full extent (right to modify and still use the device).
    3. What this white paper proposes is a way to implement DRM and comply with the GPL3.

    So where's the beef?
    The GPL3 doesn't stop DRM. Woot stop the presses! I could have told you that months ago during the drafting process because it's not designed to stop DRM.

Two can Live as Cheaply as One for Half as Long. -- Howard Kandel

Working...