Testové otázky ze síťování
Síťové spojení
Pojem paket označuje zprávu poslanou v počítačové síti.
- ukázka: když připojíme svůj počítač do sítě, můžeme do ní posílat pakety. Ano: kvůli tomu jsme nejspíš počítač připojovali, abychom mohli něco posílat.
- ukázka: IP adresa je důležitá jen pro posílání paketů. Ne: potřebujeme ji nejen, abychom mohli na síť posílat data, ale také, abychom ze sítě mohli stahovat.
- počítače můžou komunikovat jedině když oba znají doménové jméno (např. gymjs.cz, seznam.cz) toho druhého. Ne: většina počítačů doménové jméno nemá. Důležitá je IP adresa.
- každý paket má v sobě zapsanou IP adresu příjemce. Spíše ano, tedy pokud máme na mysli obvyklou síťovou komunikaci.
- IP adresu počítači určuje výrobce v továrně. Ne: adresu obvykle získáváme při připojení do sítě a jeden počítač může mít adres i několik.
- když mají dva počítače stejnou IP adresu, nemůžou spolu po síti komunikovat. Ano: není jak tomu druhému poslat paket, vždycky by nám přišel zpátky.
- při průchodu Internetem se paket mění na fyzické vrstvě. Ano: například když paket přišel z wifi a má pokračovat drátem, musí se na fyzické vrstvě hodně přepsat.
- při průchodu Internetem se paket mění na síťové vrstvě. Spíše ne: síťová vrstva slouží právě k tomu, aby paket prošel Internetem beze změn. Jedině se na každém směrovači snižuje číslo Time To Live, aby paket nebloudil sítí donekonečna.
- při průchodu Internetem se paket mění na aplikační vrstvě. Ne, tedy pokud síť funguje správně. Nechceme, aby nám někdo sahal do přenášených dat.
- síť může fungovat na aplikační vrstvě i když neobsahuje žádné spojení na fyzické vrstvě. Ne: je potřeba nějak spojit ty počítače, jinak žádná síť nebude.
- dva počítače spolu můžou komunikovat na síťové vrstvě i když nejsou přímo spojené na fyzické vrstvě. Ano: to je smysl síťové vrstvy.
- transportní vrstva může zajišťovat bezchybný přenos dat. Ano, víceméně to je její smysl.
- v případě telefonování a počítačových her transportní vrstva obvykle nedělá nic pro bezchybný přenos dat. Ano, opravy každé chyby by mohla trvat citelně dlouho, což je pro telefon a hry nepříjemné. Je pohodlnější chybná data zahodit a pokračovat jako nic.
- může se stát, že paket odeslaný do Internetu nebude nikdy doručen příjemci. Ano, počítačů je na světě moc, než aby všechny fungovaly bez chyby.
Webové stránky
- pro stažení webové stránky klient musí nejdřív poslat dotaz a od serveru potom dostane odpověď. Ano. Služeb, které fungují jinak, je poměrně málo – například teletext v analogové televizi.
- server se dozví, když z něj někdo stahuje webovou stránku. Ano, ví o tom, že nám ji posílá.
- stažená webová stránka se může lišit podle toho, kdy jsme ji stáhli. Ano: například facebooková zeď se mění každou chvíli.
- z webového serveru jdou stránky stahovat, jen když je zapnutý. Ano.
- nejde předem určit, jak bude webová stránka velká (např. kolik megabajtů), dokud se celá nestáhne. Ne, jde to určit z hlavičky Content-Length.
- typ stahovaného souboru (např. obrázek) se určuje jinak než koncovkou názvu (např. .jpg). Ano, určuje se hlavičkou Content-Type. Proto někdy prohlížeč má problém správně otevřít i soubory se smysluplnou koncovkou a nabízí jen je uložit na disk.
- protokol HTTP slouží k doručování e-mailových zpráv. Ne: je určený ke stahování webových stránek. Doručovat s ním poštu nejde.
Zabezpečení na Internetu
Zkratkou i. k. v následujících otázkách myslíme komunikaci po Internetu, jak ji nejčastěji lidé používají.
- ukázka: i. k. může obsahovat soubory z našeho disku. Ano: stane se to třeba ve chvíli, kdy si nahráváme do profilu fotky z prázdnin.
- i. k. prochází přes nějaký další počítač. Ano, většinou se připojujeme někam daleko po světě, takže takových počítačů jsou třeba i desítky.
- i. k. probíhá pomocí sítě Tor. Ne, to by bylo zbytečné a hrozně pomalé.
- i. k. někdo může odposlouchávat. Ano, jakýkoliv z těch počítačů, přes který komunikace prochází, ji může jednoduše číst.
- když někdo odposlouchává i. k., nedozvíme se to. Ne. Tak to s odposloucháváním chodí.
- i. k. všech lidí prochází přes jedinou ústřednu. Ne.
- i. k. prochází přes poskytovatele připojení. Ano: určitě to tak být nemusí, ale většina lidí platí za připojení nějakému poskytovateli.
Pojem HTTPS označuje protokol pro zabezpečené stahování webových stránek
- ukázka: HTTPS je síť Tor. Ne: obě tyto technologie zajišťují zabezpečené spojení, ale Tor navíc zajišťuje anonymitu – za cenu mnohonásobného zpomalení.
- HTTPS se jednoznačně pozná podle zeleného zámku v adresním řádku. Spíše ano. Tahle otázka je špatně, ten zámek je zelený jen v některých prohlížečích.
- HTTPS šifruje mimo jiné síťovou vrstvu. Ne, to by pak nešlo zjistit, kam se paket má poslat.
- HTTPS šifruje mimo jiné aplikační vrstvu. Ano. HTTPS je protokol aplikační vrstvy.
- HTTPS zaručuje odesílaným a přijímaným datům stejnou úroveň bezpečnosti. Ano, obojí je šifrované stejným způsobem.
- autor programu může vždy číst zprávy a informace, které pomocí jeho programu posíláme a stahujeme. Ne, pokud program poctivě používá šifrování, nemůže ani jeho autor přenášená data rozluštit.
Kryptografie
X, Y zde označují libovolné zprávy, K je šifrovací klíč. Všechny tři hodnoty X, Y, K můžeme chápat jako kus textu anebo jako čísla v počítači.
hash(A) je hashovací funkce spočítaná ze zprávy A.
sym(A, B) je zpráva A zašifrovaná symetrickou šifrou pomocí klíče B.
- ukázka: když X = Y, tak musí platit Y = X. Ano: X a Y je prostě totéž. Ten samý text, to samé číslo – na tom už nesejde.
- když X = Y, tak musí platit hash(X) = hash(Y). Ano, to je stejný případ jako předchozí otázka. Hash ze stejného souboru vyjde vždycky stejně.
- když hash(X) = hash(Y), tak musí platit X = Y. Ne: pravděpodobně to tak je, ale nemusí to nutně být pravda.
- když sym(X, K) = sym(Y, K), tak musí platit X = Y. Ano, když tu zprávu (v obou případech je stejná, to víme) dešifrujeme klíčem K, musí nám vyjít X a zároveň musí vyjít Y, takže X = Y.
V následujících otázkách zkratka A, B → C znamená: pokud známe A a B, můžeme snadno spočítat C.
- ukázka: X, Y → X. Ano: když známe X a Y, tak to samozřejmě znamená, že známe X.
- ukázka: X → K. Ne: X a K jsou docela libovolné hodnoty a nesouvisejí spolu. Můžeme tak akorát tipovat, jaké je K.
- X → hash(X). Ano: spočítáme hashovací funkci, to je hned.
- X, K → sym(X, K). Ano: zašifrujeme zprávu X klíčem K.
- hash(X) → X. Ne: sice takové X jde teoreticky najít (dokonce nekonečně mnoho řešení), ale trvá to strašně dlouho.
- X, hash(X), hash(Y) → Y. Ne, X a Y tady spolu nijak nesouvisí, takže to je stejné jako předchozí otázka.
- sym(X, K), K → X. Ano, máme klíč a šifrovanou zprávu, takže X můžeme prostě dešifrovat. Takhle to má fungovat.
- sym(X, K) → K. Ne, kdybychom dovedli takhle zjistit klíč, tak potom dešifrujeme i zprávu a šifra bude k ničemu.
- sym(X, K), sym(Y, K) → K. Ne, kdyby šlo určit klíč takhle snadno ze dvou poslaných zpráv, tak ta šifra bude skoro zbytečná.
Nové otázky
Při opravném termínu 28. 1. dostanete, mimo jiné, z následujících deseti otázek pět.
- pokud zašifrujeme data symetrickou šifrou a ztratíme šifrovací klíč, obvykle už nejde data rozšifrovat
- každý webový server musí být povinně registrovaný na Ministerstvu průmyslu a obchodu
- když počítači pošleme zcela stejný paket dvakrát za sebou, počítač nám zaručeně pošle stejnou odpověď
- aby počítač mohl určit, jestli je paket adresovaný jemu, musí dotyčný paket přečíst na aplikační vrstvě
- dva počítače můžou po Internetu komunikovat takovým způsobem, že nikdo další neví, že spolu komunikují
- abych mohl poslat někomu šifrovaná data, musím znát přesně stejný klíč, jako má příjemce