10. Šifrování dat
Opakování
- komprese dat - bezztrátová - RLE u obrázků, indexace barev, slovník
u textu; ztrátová - snížení počtu barev
Teorie
- šifrování dat (encryption) - kódování dat, které zajišťuje utajení informací při přenosu/uložení dat
- šifrují se např. přihlašovací hesla v počítači, na
internetu se chrání komunikace proti odposlechu (platby,
přihlašování, ...), podobně WiFi, GSM
- dešifrování dat - získání původní informace - je
možné jen pro držitele klíče (hesla)
- prolomení šifry hackery, crackery - nelegální nalezení klíče
např. hrubou silou (zkoušením všech možných hesel) - ochrana např.
zablokováním účtu po více neúspěšných pokusech
- kryptografie - věda o šifrování
Historické šifry
- Caesarova šifra - posun písmen v abecedě -
obr. - klíčem je číslo, vyjadřující posun
- vylepšení - promíchání šifrovacích písmen - obr.
- stejné písmeno je vždy zašifrováno stejně - snadné odhalení
podle četnosti
písmen (frekvence)
- Albertiho šifra - písmena se střídavě šifrují z
různých řad - obr. - stejná písmena můžou
mít různé zašifrované protějšky (např. silnice -> LESGOQT)
- vylepšení - Vigenerova [vižnérova] šifra -
obr.,
wiki - šifrovací řádek se volí opakovaně podle písmen
hesla (např. "wikipedie" se při hesle "bagr" zašifruje jako
"XIQZQEJZF ")
- Skytalé -
wiki
- Šifrovací mřížka -
obr. - čtverec s vystřiženými okénky, okénka se vyplní textem a
mřížka se otočí o 90° (opakuje se 3x), použito v románu Julese Verna
Matyáš Sandorf
- Polybiův čtverec -
wiki,
www
- šifra je dána číslem řádku a sloupce písmena, používáno např. vězni
vyťukáváním čísel
- Knižní šifra - slova zprávy jsou nahrazena jejich
pořadovými čísly z určité knihy (např. z Bible), podobně lze šifrovat i
písmena
- další -
https://www.cryptool.org/en/cto/,
https://www.braingle.com/brainteasers/codes/
Moderní šifry
- symetrické
- používají k šifrování i dešifrování jediný klíč (heslo) -
obr. - tento klíč je obtížné poslat příjemci
-
asymetrické - k zašifrování a dešifrování se použijí různé klíče
(soukromý a veřejný) -
obr.,
druhá osoba má přístup pouze k veřejnému klíči
- umožňuje i autentizaci (ověření pravosti autora) - např.
elektronický podpis -
obr.
Software
- Windows - BitLocker - šifrování disků
- PGP -
wiki - šifrování mailu
Další info:
- kniha Simon Singh - Kniha kódů a šifer
- filmy Kód Enigmy, Kód Navajo
Zápis:
10. Šifrování dat
= kódování dat, zajišťující utajení informací při přenosu/uložení dat (např. u přihlašovacího hesla)
- dešifrování dat - získání původní informace - je možné jen pro držitele hesla ("správného klíče do zámku")
- kryptografie - věda o šifrování
Cvičení 1 - Excel - Šifrování.xlsx - list Caesar
- list Caesar
- záhlaví Kód ASCII, Znak, Posunutý kód, Zašifrovaný znak
- vytvořit ve sloupci A řadu 65-90 a vedle ASCII písmena =znak(A2)
- Verze 1 - ve sloupci C vytvořit řadu čísel
posunutou o 8
- ve sloupci D zadat =znak(C2)
- vpravo zakódovat svisle své jméno a příjmení bez diakritiky
(natvrdo bez vzorců)
- jak snadno změnit posun?
- Verze 2 - do A29 zapsat Posun: a do B29 číslo 8
- Pro posunutý kód vytvořit vzorec =B2+B29, pak upravit na
=B2+$B$29
- problém u buněk od ASCII 83 - vylepšení vzorce (26 je počet
písmen):
- =KDYŽ(A2+$B$29<=90;A2+$B$29;A2+$B$29-26)
- Nakopírovat vzorec, otestovat změnu posunu a zakódovat text
pomocí vzorce =odkaz na zašifrované písmeno, znovu otestovat jiný
posun
- Verze 3 - automatické vyhledání znaku pomocí
=SVYHLEDAT(Co chcete vyhledat, kde ho chcete vyhledat, číslo sloupce
v oblasti obsahující vrácenou hodnotu, vrátí přibližnou nebo přesnou
shodu) -
help - místo zašifrovaného písmena zapsat vzorec:
- =SVYHLEDAT(F10;$B$2:$D$27;3;PRAVDA)
- možno přidat kontrolu posunu:
=KDYŽ(A(B29<=26;B29>=0);"ok";"posun mimo rozsah"), pozn. funkce A je
jako AND
Cvičení 2 - list Alberti - střídavý výběr ze dvou tabulek
- Zkopírovat list Caesar na Alberti
- Přidat nový posun, zkopírovat sloupce BCD na EFG a upravit vzorce na
nový posun, upravit odkazy v šifře
Cvičení 3 - list Vigener - dekódování
- heslo: "jan", zakódovat "ivan", dekódovat "tagn"
Cvičení 4 - šifrovací mřížka - list Mřížka
- vložit obrázek s mřížkou (mrizka.png), upravit velikost (kalibrace)
a dekódovat text (celkem 4 polohy - sever nahoru, pak otáčet po směru
hod. ručiček)
- podle situace možno zakódovat vlastní text