Portál AbcLinuxu, 30. dubna 2025 14:25
Tématem dnešního zápisku (to se řekne dnešního, research trval přes týden...) bude kryptografie, použitelnost dualheadu a shell. Takže azbestové spoďáry nasadit a jdeme na to!
Šifrování souborů na NTFS (řečené EFS) je opředeno mnoha tajemstvími a mýty, příběhy o ztracených datech a podobně. Microsoft si za to může sám jelikož až donedávna zřejmě soudil, že čím méně a hůře dostupných informací o této technologii zveřejní tím lépe. A uživateli o takových subtilních věcech jako je PKCS raději ani neříkat, že? Ještě by mohl s řevem utéct a vyděsit kolegy nosící masky dinosaurů (snad si na tu reklamní kampaň ještě vzpomenete ). Nyní to je mnohem lepší jak z hlediska informací v nápovědě, na webu tak i přímo v systému. Příkladem může být dialog, který vyskočí na uživatele při pokusu o zašifrování prvního souboru.
Od teď, když si ňouma zašifruje celoroční práci, následně reinstaluje systém a diví se, proč jeho soubory nejdou přečíst, tak je to jen a jen jeho vina. V dřívějších verzích nebyl ani náznak něčeho takového a uživatel kryptografie neznalý si mohl myslet, že přihlašovací heslo je zároveň heslem k rozšifrování souboru. Realita je občas komplikovaná ale cesta tajení tohoto faktu před uživatelem asi není správná. Jak to vlastně funguje? MS zdroj říká:
EFS uses a public-private key pair and a per-file encryption key to encrypt and decrypt data. When a user encrypts a file, EFS generates a file encryption key (FEK) to encrypt the data. The FEK is encrypted with the user’s public key, and the encrypted FEK is then stored with the file.
Z toho lze získat docela jasnou představu. Je rovněž zřejmé, že jeden soubor lze šifrovat několika soukromými klíči. Na konci souboru se pak pouze množí FEK takže se rozměr souboru příliš nezvětšuje. Použitou šifrou byla do XP SP1 3DES, nyní je to AES. Když známe tyto informace tak snadno odvodíme kdy si můžeme tento mechanismus dovolit použít a jaké jsou jeho omezení. Např. pojmenovat soubor "seznam přijatých úplatků.txt" a ten následně zašifrovat je polovičatým řešením, které vám projde pouze pokud jste důležitým politikem. Jako postranní kanál, který mnohé o obsahu prozradí, lze považovat i datum vytvoření a poslední změny, velikost a podobně. Naštěstí lze šifrovat i složku a pak nejde přečíst ani názvy souborů v ní uložených.
A teď to nejdůležitější ze všeho- dá se to ovládat i z příkazové řádky. man cipher.exe. Oops, man tady asi nezabere… no tak třeba cipher /h
Zde spadá šifrování souborových systémů s vyloučením kořenového svazku. Na tomto poli, dle mého názoru, kraluje open source TrueCrypt, který doporučuje i naše přední kryptografická kapacita Vlastimil Klíma. I na Linuxu poskytuje lepší možnosti a pohodlí než "holý" dm-crypt nebo cryptoloop. V této kategorii je stále hodně důležitá pohodlnost používání. Ve Vistě je integrovaný mechanismus BitLocker, o kterém se zde zmíním v následující podkapitolce. Zde uvedu pouze odkaz na popis jak šifrovat nekořenové svazky pomocí příkazové řádky (naklikat se to nedá).
Aneb šifrujeme i kořenový oddíl. Jak na to v linuxu existuje spousta návodů, jeden by se našel i zde. Ve Vistě je zabudován nástroj BitLocker, který vás procesem vytvoření šifrovaného svazku provede. Nejdříve se vytvoří dodatečný oddíl (1,5 GiB veliký i když je využito jen cca 100 MiB), na který se nakopírují soubory nutné pro spuštění systému. Následně se data na oddílu se systémem in place zašifrují (AES 128 nebo AES 256). Co se stane, když uprostřed tohoto procesu vypadne napájení jsem se nedočetl. Po rebootu už můžete zažívat pocit, který mi připomněl jeden vtip z mládí: "To chce klídek!" řekla babička a odjela na houby tankem. BitLocker preferuje hardware s TPM čipem. Pak lze pro bootování použít otisk prstu a/nebo heslo zadané při bootu. Tímto jsou v zásadě vybaveny pouze některé notebooky. Na desktopech si budeme muset vystačit s uložením klíče na USB klíčenku. Ta pak slouží jako klíč k počítači. Pro případ, že by vám dongle sežral pes a vy nechcete čekat až z něho vyjde, existuje možnost klíč vyexportovat (je to ostatně obyčejný několik bajtů veliký soubor), klasicky zašifrovat a vypálit na CD.
Nyní k hodnocení. V Linuxu máme ke všemu zdrojáky, což by mohl někdo považovat za nevýhodu. Již mnohokrát ale bylo ukázáno, že metoda lakonicky nazvaná "Security by Obscurity" nefunguje. Strategie bezpečnosti založená na tom, že někdo nezná algoritmus jakým se provádí je prostě špatná. Naopak, otevřené zdrojáky jsou do jisté míry zárukou toho, že v nich žádná obskurnost není. Na druhou stranu i pro Windows existují open source řešení (např. výše zmíněný TrueCrypt nebo GnuPG) až na možnost šifrovat svazek se systémem. To by měla mimochodem příští verze TrueCryptu řešit. Oba systémy dávají prostředky uživatelům ve všech stádiích pokročilosti choroby. Pro běžné použití bych řekl, že je díky kvalitní integraci do systému dobrým řešením EFS. Oba systémy dostávají jedničku. Váha: 3.
Neboli dualehead, hydrovision, twinview a kdo ví, jak se tomu ještě přezdívá. Řeč bude zkrátka o dvou LCD panelech (s různým rozlišením) připojených ke grafické kartě nVidia. S ATI nemám v tomto směru žádné zkušenosti a také připojování televizí má svá specifika se kterými nejsem seznámen. Čím začít? Asi tím, že situace má daleko k optimu v obou systémech. Zkrátka to příliš hodně lidí nevyužívá tak to není důkladně testováno a podporováno. Stačí k tomu přimíchat ještě trochu exotiky v podobě TV karty a neštěstí je na světě. Sledování TV na vedlejším panelu a nějaká náročnější 3D aplikace (čti: hra) na hlavním panelu rovná se "nvidia driver related" výtuh ve Windows i v Linuxu. A jsou tam i další problémy. Třeba na overlay je možno zapomenout. Ale to zase není při dnešním výkonu počítačů a ve světě plném kompozitních WM tak podstatné. Dále je třeba zmínit pokles výkonu ve 3D v řádu jednotek procent.
V KDE je situace dobrá, aplikace rozšíření xinerama podporují a není problém nastavit na které obrazovce má být hlavní panel, kde mají skákat bubliny amaroku a podobně. Compiz je na tom o něco hůře. Třeba nastavit Expo tak, aby nevypadalo odporně nelze, Plane se chová podivně ... Kvůli hrám (Quake4, NWN) je třeba spouštět zvláštní Xka jinak mají snahu dělat fullscreen přes oba panely. Wine zase šílí z toho, když mají panely rozdílné rozlišení. Často to končí tím, že mám rozlišení menčího panelu i na větším nebo 2880x1200 (takový ultra widescreen ) ovšem vměstnané na 1600x1200 což vypadá velmi komicky (jako kdybych měl nastavený extrémně velký FOV). V linuxu je možnost ještě spustit dva nezávislé X servery- na každém panelu zvlášť. Pro běžnou práci mi to ale přišlo nepohodlné. Na samostatný seriál by vydalo nastaveni SyncToVBlank neboli refresh obrazovek v blank fázi kvůli zabránění tearingu.
Ve Vistě je situace o něco málo lepší. Konfigurace je pohodlná, když chce člověk přesvědčit systém, že oba panely nemají v jedné rovině horní nýbrž dolní hranu tak s tím nemusí tak cvičit jako v Linuxu. Rovněž odpadá hra padesát na padesát AKA RightOf nebo LeftOf. Hry používají fullscreen korektně (kdybych naopak chtěl aby se roztáhly na oba panely tak by to asi byl problém). Pro nastavení rozdílných pozadí na každém panelu je zapotřebí použít externí utilitku systém sám o sobě to neumí což je docela překvapivé. Dlouho, předlouho jsem nevěřícně hleděl a hledal. No, možná spíše v opačném pořadí. Aplikace občas s dualheadem nepočítají. Přesvšdčit winamp aby ukázal notification bublinu na vnitřní straně vedlejšího monitoru asi nelze. Dávám oběma systémům dvojku. Váha: 4.
Závěrem této kapitoly bych napsal, že dva LCD panely jsou naprosto návykovou záležitostí. Každému s dostatkem místa tuto konfiguraci (i přes určité problémy a výhrady) doporučuju.
Ve Vistě existují v zásadě tři možnosti- cmd. exe integrovaný v systému, BASH/CSH/… přes Cygwin a PowerShell. První je pro Linuxáka dosti těžce stravitelný. Druhý je mu až na drobné rozdíly důvěrně známý. Nechybí překvapivě ani /proc. Bude jen postrádat některé utility. Není příliš o čem psát.
Na PowerShell se ale podíváme pěkně zblízka protože to je nejmocnější nástroj z celé trojice a zároveň je poměrně málo známý. Nejdříve kritika- ani PowerShell neumí dynamicky měnit horizontální velikost konzole. Nechápu proč tomu tak je ale je to proste smutný fakt, že změnou velikosti okna docílíte maximálně toho, že se dole objeví scrollbar.
PowerShell je objektově orientovaný shell. Co to znamená v praxi?
C:\Users\Michal Kwolek> ls | Where-Object -FilterScript {$_.Name -like "D*"} | Sort-Object -Property Length | Format
-Table -property Name, Mode
Name Mode ---- ---- D.txt -a--- D2.txt -a--- Desktop d-r-- Documents d-r-- Downloads d-r--
Get-Process | where {$_.WS -gt 150MB} | foreach {$_.Kill()}
Nebo něco složitějšího s použitím WMI- pingneme si na pár serverů...C:\Users\Michal Kwolek> "www.abclinuxu.cz","www.root.cz","miho.cz" | ForEach-Object -Process {Get-WmiObject -Class Win32_PingStatus -Filter ("Address='" + $_ + "'") -ComputerName .} | Select-Object -Property Address,ResponseTime,StatusCode
Address ResponseTime StatusCode ------- ------------ ---------- www.abclinuxu.cz 78 0 www.root.cz 13 0 miho.cz 13 0
(Get-WmiObject -Class Win32_Product -Filter "Name='abc'" -ComputerName . ).InvokeMethod("Uninstall",$null)
Možností a kombinací je opravdu hodně. Chce to trochu cviku a vyznat se v názvech poskytovatelů kolekcí, pak už to jde samo. Lze samozřejmě programovat funkce, skritpy, tzv. cmdlety a lze k tomu použít i .NET. Nehodlám zde suplovat user guide, nastudujte si to sami
Musím říct, že PowerShell se mi svojí koncepcí moc líbí. Dávám oběma systémům jedničku. Váha: 3.
Dnes tady máme tedy vzácnou shodu hodnocení. A to u kategorií, u kterých bych to na začátku psaní seriálu ani ve snu nehádal. Příště bych se chtěl podívat na výkon. Otestovat/nastudovat tuto problematiku, to je program na celý rok takže ještě nevím, jak to nakonec dopadne a zda vůbec nějak
Tiskni
Sdílej:
Sakra, tato cast sa mi docela pacila, ma to naboj a zainteresovaneho citatela to nechava stale na pochybach... Preco si stale myslim, ze to vygraduje nakoniec do pozitivnej story pre konzumenta? Je to len moj blby pocit kvoli mensej nekonzistentnosti serialu, co sa tyka hodnotenia oboch systemov? Autor opomina bodove hodnotenie avizovane na zaciatku serialu...
Vsetka cest, sklbit odborne znalosti oboch systemov s literarnym talentom Raymonda Chandlera svedci o velkom talente. Je to tip pre hociktore vydavatelstvo, ze vase dielo by sa ujalo aj v kniznom vydani. Serial ma svoju kvalitu a kazdy si z neho vyberie to svoje. Serial sledujem nadalej a som zvedavy na pointu, lebo zahradnik urcite vrahom nebude... :D
Jen bych doplnil, že na EFS bych se až tak moc nespoléhal. (Stejně jako na jakékoli šifrování využívající CryptoAPI MS Windows.) Řešení by to bylo poměrně dobré, kdyby bylo spolehlivé. Jedno vyjádření Dr. Klímy mě ale vede k pochybnostem o jeho kvalitách.
Jinak jsem celkem zvědavý na řešení šifrování systémového oddílu v plánovaném TrueCryptu 5.0. Hlavní otázka bude, jestli to bude MS Windows specifické, nebo to bude obecnější řešení využitelné i pro jiné operační systémy.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.