Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Virtualizace umožní obejít GNU GPL 3

Řešit problém zneužívání GPL kódu v hardwarových zařízeních některých výrobců byl jeden ze stěžejních úkolů nové verze GNU GPL 3. Nyní se zdá, že je k dispozici způsob, jak mohou výrobci nové restrikce obejít a získat ještě další výhody. Jak to funguje? Co výrobci nyní mohou? Můžeme jim v tom zabránit?

Tweetni to Twitter Jaggni to! Jagg Del.icio.us Delicious

TiVoisace

O fenoménu zvaném TiVoisace jsme psali například v článku o novinkách v GPLv3. Jedná se o velmi nepříjemnou hrozbu pro svobodný software, jejíž závažnost si uvědomuje také Free Software Foundation, která se rozhodla zasáhnout za pomocí nové GPL 3.

Problém spočívá v obcházení licenčního ujednání za pomocí elektronického podpisu. Výrobce tak dokáže zabránit uživatelům v instalaci upraveného firmware, ačkoliv dává k dispozici zdrojové kódy. Ve zmíněném článku jsme o TiVoisaci napsali:

Někteří výrobci hardware na svých zařízeních provozují svobodný software, a proto musejí vydávat jeho upravené zdrojové kódy (v hardware se šíří binární podoba). Z tohoto pohledu tedy obvykle licenci dodržují.

Problém ovšem je, že v poslední době se množí případy, kdy výrobce sice vydá zdrojové kódy, ale jeho vlastní binární software je upraven tak, aby jako jediný na zařízení běžel. Obvykle se k tomu používá šifrování nebo elektronické podpisy. Pokud si tedy uživatel vytvoří vlastní verzi firmware, přístroj ji odmítne.

Výrobce se tímto způsobem brání zejména těm úpravám firmware, které by dovolily například obejít bezpečnostní opatření. Ze zařízení TiVo by tak uživatelé s upraveným softwarem mohli získat například kopii zaznamenaného televizního pořadu a podobně. Možností je celá řada.

Na druhou stranu software je prokazatelně založen na GNU GPL kódu a je proto potřeba dodržet všechna práva zaručovaná svobodnou licencí a tato práva zajistit i pro další uživatele.

Reakcí je GNU GPL 3

Aby do budoucna nedocházelo k podobnému obcházení práva, rozhodl se Richard Stallman, že do GNU GPL verze 3 přidá pasáž, která učiní podobným pokusům přítrž. Po mnoha jednáních a silné kritice některých částí se nakonec podařilo do licence novou sekci dostat.

Konkrétně je možno příslušný text najít v paragrafu šest:

Instalační informace pro uživatelský produkt znamenají veškeré metody, procedury, autorizační klíče nebo další informace potřebné pro instalaci a spuštění modifikovaných ver­zí…

Znamená to, že výrobce, který použije ve svém zařízení kód vydaný pod GNU GPL 3, musí ke zdrojovým kódům dodat také vše potřebné k vytvoření funkční upravené verze.

Virtualizace jako beranidlo

Bruno Zoppis ovšem vymyslel a popsal způsob, jak licenční ujednání elegantně obejít a ještě získat další bonusy. Jeho metoda by se dala zařadit do kategorie „vlk se nažere a koza zůstane celá”. Jeho metoda dovoluje zcela legálně na jednom zařízení provozovat GNU GPL i uzavřený kód, aniž by došlo ke „kontaminaci” licencí.

Zoppis využívá k řešení situace virtualizaci – konkrétně hypervisory. Jedná se o techniku, kterou využívá například jaderný systém Xen.

Hypervisor je software, který je natažen do paměti ještě před nahráním samotného jádra operačního systému. Toto jádro pak běží pod správou hypervisoru, který tvoří další vrstvu mezi reálným hardware a systémem. Pod hypervisorem může samozřejmě naráz běžet několik zcela oddělených systémů. Tyto vlastnosti jsou klíčové pro Zoppisovu metodu.

Princip práce software je pak poměrně triviální. Výrobce do svého zařízení nainstaluje hypervisor, který převezme kontrolu nad celým hardware a omezí práva jednotlivých virtualizovaných systémů.

Tento hypervisor může být vydán pod libovolnou licencí, protože není založen na žádném GNU GPL kódu. Neběží pod tímto kódem ani není součástí operačního systému. Naopak systém technicky běží pod hypervisorem.

Ve dvou „kontejnerech” pak budou spuštěny dva různé systémy. V jednom poběží veškerý GNU GPL kód, který může být samozřejmě libovolně upraven, aby v zařízení běžel. Ve druhém prostoru pak poběží všechny klíčové aplikace, dekódovací software, proprietární kodeky a další uzavřený software.

Hypervisor

Při startu systému pak bude kontrolována integrita oné uzavřené části. Ta může být podepsaná elektronickým podpisem nebo šifrovaná. Zbytek software, který je vydán pod GNU GPL, může být libovolně modifikován a výrobce to nadále nemusí hlídat. Hypervisor totiž omezuje možnosti tohoto kódu, a tak ani silně upravený software nedosáhne na uložená data, šifrovací klíče a podobně.

Jelikož jsou obě části striktně samostatné, nezávislé a běží odděleně, nelze hovořit o odvozeném díle a proprietární kód může být vydán pod libovolnou licencí. Pro předávání dat mezi oběma spuštěnými systémy je pak možno využít například sdílenou paměť, do které mohou přistupovat oba programy. Kód však zůstane stále oddělen.

Co z toho plyne?

Tato poměrně obecná metoda umožňuje výrobcům hardware použít například linuxové jádro, ale i další aplikace a legálně je spojit s proprietárním kódem. Update firmware tak může zůstat aktivní, aniž by se výrobce obával kritických změn ze strany uživatele.

To se samozřejmě netýká jen výrobců TiVo, ale také dodavatelů mobilních telefonů, kapesních počítačů, set-top-boxů, multimediálních přehrávačů a všech dalších embedded zařízení.

davame_internetu_obsah
       

Doopravdy tak může být v rámci aktualizace dodávána binární forma nového firmware společně se zdrojovým kódům jen k některým částem programů. Veškeré ovladače hardware, kodeky, komunikační rozhraní a další klíčový software nám tak zůstane zcela uzavřen.

Přijdeme tak nejen o možnost vytvářet modifikované verze firmware, ale také o ovladače k některým zařízením a především o část svobod. Pokud se tento způsob distribuce firmware skutečně rozšíří, nepochybuji o tom, že FSF bude hledat nové způsoby, jak mu zamezit. Otázkou je, jestli to vůbec bude možné.

Anketa

Je to...

       

Petr Krčmář

Petr Krčmář

Petr Krčmář pracuje jako šéfredaktor serveru Root.cz. Vystudoval elektroniku se zaměřením na počítačové systémy, nyní se zabývá médii, především těmi elektronickými.

Školení: Linux – Firemní server

Na třídenním školení se naučíte nainstalovat a spravovat kompletní linuxový server do Vaší firmy se všemi základními službami, které potřebujete pro provoz Vaší sítě, firemních emailů a webových stránek.

Podrobnější informace a přihláška

Ohodnoťte jako ve škole:
Průměrná známka 3,19

Přehled názorů

Šikovné :-)
m4r3k 30. 8. 2007 00:41
Nový
firmware
Pepca 30. 8. 2007 00:57
Nový
firmware
Pepca 30. 8. 2007 00:57
Nový
└ 
Re: firmware
Pepca 30. 8. 2007 00:58
Nový
Článek se mi zdá být silně opožděnýn objevem něčeho, co se již běžně používá
Pavel Píša 30. 8. 2007 01:53
Nový
└ 
Re: Článek se mi zdá být silně opožděnýn objevem něčeho, co se již běžně…
Jan Rollo 30. 8. 2007 12:13
Nový
Porucha osobnosti
BLEK 30. 8. 2007 06:48
Nový
└ 
Re: Porucha osobnosti
jos 30. 8. 2007 08:06
Nový
 
└ 
Re: Demence
Pavel Mlady 30. 8. 2007 08:27
Nový
 
 
└ 
Re: Demence
Petr 30. 8. 2007 11:19
Nový
žeby ochrana?
zd.valek 30. 8. 2007 08:25
Nový
Linux a GPL3
Atom321 30. 8. 2007 08:34
Nový
├ 
Re: Linux a GPL3
Rejpal 30. 8. 2007 08:42
Nový
│
├ 
Re: Linux a GPL3
Zdenek 30. 8. 2007 09:28
Nový
│
│
└ 
Uplne zle
anonymní uživatel 30. 8. 2007 20:39
Nový
│
│
 
├ 
Re: Uplne zle
kokes 30. 8. 2007 21:43
Nový
│
│
 
└ 
Re: Uplne zle
anonymní uživatel 30. 8. 2007 21:54
Nový
│
│
 
 
├ 
Re: Uplne zle
Ondrej \'SanTiago\' Zajicek 30. 8. 2007 22:02
Nový
│
│
 
 
│
└ 
Re: Uplne zle
anonymní uživatel 31. 8. 2007 18:57
Nový
│
│
 
 
└ 
Re: Uplne zle
Michal Rehort 30. 8. 2007 23:10
Nový
│
│
 
 
 
└ 
Re: Uplne zle
wojta 2. 9. 2007 09:31
Nový
│
└ 
Re: Linux a GPL3
Atom321 30. 8. 2007 09:56
Nový
│
 
├ 
Re: Linux a GPL3
olgo 30. 8. 2007 11:36
Nový
│
 
└ 
Re: Linux a GPL3
Rejpal 30. 8. 2007 17:18
Nový
└ 
Re: Linux a GPL3
MiHl 30. 8. 2007 10:28
Nový
boha jeho
capslock 30. 8. 2007 08:46
Nový
├ 
Re: boha jeho
melkor 30. 8. 2007 09:10
Nový
└ 
Re: boha jeho
keff 30. 8. 2007 23:32
Nový
Nechapu
pht 30. 8. 2007 08:46
Nový
└ 
Re: Nechapu
侯日洋 30. 8. 2007 09:22
Nový
 
└ 
Re: Nechapu
honza 30. 8. 2007 12:34
Nový
 
 
└ 
Re: Nechapu
BoodOk 30. 8. 2007 13:58
Nový
 
 
 
└ 
Re: Nechapu
J 31. 8. 2007 15:42
Nový
 
 
 
 
└ 
Re: Nechapu
anonymní uživatel 3. 9. 2007 12:46
Nový
 
 
 
 
 
├ 
Re: Nechapu
anonymní uživatel 3. 9. 2007 18:15
Nový
 
 
 
 
 
│
└ 
Re: Nechapu
melkor 4. 9. 2007 08:05
Nový
 
 
 
 
 
│
 
└ 
Re: Nechapu
honza 4. 9. 2007 21:20
Nový
 
 
 
 
 
└ 
Re: Nechapu
honza 3. 9. 2007 22:33
Nový
Patent?
MiHl 30. 8. 2007 09:56
Nový
tivoizacia a slobodny softver
samo 30. 8. 2007 10:18
Nový
├ 
Re: tivoizacia a slobodny softver
sartori 30. 8. 2007 11:54
Nový
├ 
Re: tivoizacia a slobodny softver
mtd 30. 8. 2007 15:58
Nový
│
└ 
Re: tivoizacia a slobodny softver
Ondrej 'SanTiago' Zajicek 30. 8. 2007 21:54
Nový
│
 
├ 
Re: tivoizacia a slobodny softver
mtd 31. 8. 2007 10:35
Nový
│
 
└ 
Re: tivoizacia a slobodny softver
mtd 31. 8. 2007 10:41
Nový
└ 
Re: tivoizacia a slobodny softver
Jan 30. 8. 2007 20:10
Nový
 
├ 
Re: tivoizacia a slobodny softver
keff 30. 8. 2007 23:57
Nový
 
├ 
Re: tivoizacia a slobodny softver
Drom 31. 8. 2007 00:34
Nový
 
├ 
Re: tivoizacia a slobodny softver
anonymní uživatel 2. 9. 2007 15:28
Nový
 
└ 
Re: tivoizacia a slobodny softver
anonymní uživatel 4. 9. 2007 16:40
Nový
a ten propriertarny sofware pobeci pod cim?
NaiL 30. 8. 2007 12:03
Nový
Takovou virtualizaci umozňuje i PikeOS, který už mají i zákazníci v ČR
Jan Rollo 30. 8. 2007 12:09
Nový
├ 
Re: Takovou virtualizaci umozňuje i PikeOS, který už mají i zákazníci v ČR
Jan Rollo 30. 8. 2007 12:39
Nový
│
└ 
Re: Takovou virtualizaci umozňuje i PikeOS, který už mají i zákazníci v ČR
Jan Capek 31. 8. 2007 09:35
Nový
└ 
Re: Takovou virtualizaci umozňuje i PikeOS, který už mají i zákazníci v ČR
rak 30. 8. 2007 19:53
Nový
 
└ 
Re: Takovou virtualizaci umozňuje i PikeOS, který už mají i zákazníci v ČR
anonymní uživatel 30. 8. 2007 20:42
Nový
 
 
└ 
Re: Takovou virtualizaci umozňuje i PikeOS, který už mají i zákazníci v ČR
anonymní uživatel 31. 8. 2007 06:20
Nový
 
 
 
└ 
Re: Takovou virtualizaci umozňuje i PikeOS, který už mají i zákazníci v ČR
anonymní uživatel 31. 8. 2007 19:05
Nový
Viry a Antiviry
PaJaSoft 30. 8. 2007 14:07
Nový
Proč obcházení licence?
Miloš 30. 8. 2007 16:44
Nový
├ 
Re: Proč obcházení licence?
anonymní uživatel 30. 8. 2007 17:12
Nový
└ 
Re: Proč obcházení licence?
dc 30. 8. 2007 17:20
Nový
SW vs FW / PC vs Embedded zarizeni
Honza 30. 8. 2007 21:35
Nový
└ 
Re: SW vs FW / PC vs Embedded zarizeni
dan 30. 8. 2007 23:37
Nový
 
├ 
Re: SW vs FW / PC vs Embedded zarizeni
Honza 31. 8. 2007 08:34
Nový
 
│
└ 
Re: SW vs FW / PC vs Embedded zarizeni
dan 31. 8. 2007 11:57
Nový
 
└ 
Re: SW vs FW / PC vs Embedded zarizeni
mtd 31. 8. 2007 11:00
Nový
A co na to FSF?
anonymní uživatel 31. 8. 2007 19:19
Nový
Zabananovat v GPLv4?
Clock 2. 9. 2007 14:54
Nový
└ 
A je to vůbec potřeba?
hstech 3. 9. 2007 13:36
Nový
       

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem