Slashdot Mirror


Hypervisors Can Defeat GPLv3's Anti-Tivoization

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.

19 of 377 comments (clear)

  1. Bogus! by MMC+Monster · · Score: 5, Insightful

    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.

    --
    Help! I'm a slashdot refugee.
    1. Re:Bogus! by Orange+Crush · · Score: 3, Interesting

      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.

    2. Re:Bogus! by mmacdona86 · · Score: 5, Interesting

      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.

    3. Re:Bogus! by Kazoo+the+Clown · · Score: 4, Insightful

      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...

    4. Re:Bogus! by Knuckles · · Score: 5, Insightful

      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.

      --
      "When I first heard Daydream Nation it quite frankly scared the living shit out of me." -- Matthew Stearns
    5. Re:Bogus! by everphilski · · Score: 3, Interesting

      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.

    6. Re:Bogus! by cp.tar · · Score: 4, Informative

      Bull.

      The GPL does not restrict usage. It restricts distribution - and in a manner completely opposite to DRM.

      --
      Ignore this signature. By order.
    7. Re:Bogus! by ajs · · Score: 3, Insightful

      > I think it's a good analogy



      Nope. [DRM] tries to maximize revenue of corporations by intrusive means discussed at length here on /. while the [GPLv3] establishes a legal framework for public use of material.

      Nope.

      DRM has nothing to do with revenue. Of course, it's a tool which is most often used with respect to increasing revenue, but there is no fundamental connection between the two. I might, for example, use DRM to release a movie which I wish to re-release occasionally in order to switch which of two characters shoots the other first (not mentioning any names, here). I might charge nothing for these releases, I just want to make sure that everyone is forced to watch the version that I've decided is "current". DRM can do that.

      The GPL is a tool which allows me to restrict the use of my source code such that only people willing to grant other people my pet set of rights can distribute it. Everyone else must ask for my permission first, or they get nothing (and likely will get nothing, even if they ask).

      Now, I'm a fan of the GPL. I'm a fan of the clever hack which it embodies for using copyright law to control the distribution of additional, non-copyright rights. Very cool. I'm also a fan of the basic idea of offering users who want to share the right to do so.

      However, it's completely unreasonable to draw an imaginary line in the sand between one set of restrictions (you can share, but only if you play by my rules) and another (you can use, but only if you play by my rules) on the basis that one doesn't comprise a restriction because the intent is different.
    8. Re:Bogus! by orzetto · · Score: 3, Insightful

      Or maybe they will simply port their apps to BSD and use that on the tivo boxes. Or maybe they will license some other OS that will allow them to keep everything closed source.

      Or maybe they could start playing by the rules of the community they took Linux from, saving millions in development cost and time-to-market. Or maybe the could purchase a closed-source license for another OS. Or maybe they could write their own code instead of taking someone else's, so they can do what they want with it.

      --
      Victims of 9/11: <3000. Traffic in the US: >30,000/y
  2. Backfire in responce. by jellomizer · · Score: 4, Insightful

    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.

    --
    If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    1. Re:Backfire in responce. by QuoteMstr · · Score: 5, Informative

      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.

    2. Re:Backfire in responce. by morgan_greywolf · · Score: 5, Funny

      hippocraticy? If big words give you problems, use a dictionary to learn how to spell hypocrisy. I mean, you're barely in the ball-park, the first and last letters match, and there's a "p" in the middle somewhere. No, no. I think he really meant hippocraticy -- a government for, of and by the hippos.

  3. No, they can't. by strredwolf · · Score: 3, Informative

    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."

    --

    --
    # Canmephians for a better Linux Kernel
    $Stalag99{"URL"}="http://stalag99.net";
  4. Tivoization (n) by the_skywise · · Score: 3, Informative

    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."

  5. Not a defeat, a different way of doing things by romiz · · Score: 4, Insightful

    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.

  6. Seems fair to me by marcosdumay · · Score: 4, Insightful

    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?

    1. Re:Seems fair to me by Sique · · Score: 4, Insightful

      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)

      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".

      --
      .sig: Sique *sigh*
  7. Circumventing? by 11223 · · Score: 4, Insightful

    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.

  8. Re:This FUD makes no sense. by Ian+Alexander · · Score: 4, Insightful

    They want it because the price is unbeatable. It's just that it has an annoying license that they have to work around, in order to be able to sufficiently hamstring their users.

    See, that's never made much sense to me. Why don't they just pick up a gratis operating system with a more permissive license, like one of the BSD's, and stop worrying about tivoizing GPL'ed code?

    Or are they actually just evil and want to lock down GPL'ed code because it fills their weekly evil quota or something?