- Stahuj zápisky z přednášek a ostatní studijní materiály
- Zapisuj si jen kvalitní vyučující (obsáhlá databáze referencí)
- Nastav si své předměty a buď stále v obraze
- Zapoj se svojí aktivitou do soutěže o ceny
- Založ si svůj profil, aby tě tví spolužáci mohli najít
- Najdi své přátele podle místa kde bydlíš nebo školy kterou studuješ
- Diskutuj ve skupinách o tématech, které tě zajímají
Studijní materiály
Hromadně přidat materiály
Projekt v matlabu - šifry
APRG - Algoritmizace a programování
Hodnocení materiálu:
Zjednodušená ukázka:
Stáhnout celý tento materiálFEEC VUTBRAlgoritmizace a programováníProjekt do počítačového cvičeníJiří Bajgar ID:136461BT-BIO 2010/2011Toolbox : Šifrování textuFunkce : Transpozicni_sifra Vernamova_sifra Vernamova_sifrap klic_sifryObsah TOC \o "1-3" \h \z \u Úvod PAGEREF _Toc290840136 \h 3Popsání použitých typu šifer a metod PAGEREF _Toc290840137 \h 3Transpoziční šifra PAGEREF _Toc290840138 \h 3Příklad PAGEREF _Toc290840139 \h 3Dešifrování PAGEREF _Toc290840140 \h 4Útoky na transpoziční šifru PAGEREF _Toc290840141 \h 4Vernamova šifra PAGEREF _Toc290840142 \h 4Příklad PAGEREF _Toc290840143 \h 4ASCII tabulka PAGEREF _Toc290840144 \h 4Ascii tabulka (ukázka) PAGEREF _Toc290840145 \h 5Popis všech funkci PAGEREF _Toc290840146 \h 6Funkce : Transpozicni_sifra PAGEREF _Toc290840147 \h 6Vývojový diagram k funkci d_kostka PAGEREF _Toc290840148 \h 7Funkce : Vernamova_sifra PAGEREF _Toc290840149 \h 8Funkce : Vernamova_sifrap PAGEREF _Toc290840150 \h 11Funkce : klic_sifry PAGEREF _Toc290840151 \h 13Zdroje : PAGEREF _Toc290840152 \h 14Úvod můj projekt se věnuje šifrování zpráv. Mám zde dva druhy šifrování jeden je Transpoziční šifra a druhý Vernamova šifra. Jak a proč fungují tyto šifry se dočtete dále. Proč jsem si vybral zrovna šifry. Protože můj první program vyl podle mého vyučujícího moc jednoduchý. Tak jsem hledal něco co by nebylo zas tak jednoduché, ale bylo to i zajímavé a trochu k zamyšleníTento projekt obsahuje 4 funkce. První Transpozicni_sifra tato funkce zakóduje i dekóduje zprávu podle zadaných vstupů,Vernamova_sifra tato funkce jen zakóduje text a k ní patří funkce Vernamova_sifrap, která odkóduje zakódovaný text a nakonec funkce klic_sifry Tato funkce je jen doplňková pro generování náhodného klíče pro funkci Vernamova_sifra.Všechny výsledky jsou vypisovány na command window. Jen musím upozornit že u funkce Vernamova_sifra Protože vypisuje i výstupní proměné tak se v command window zobrazí i jejich obsah ale jako úplně naposledy. Kdyby jste měli malé okno tak se bude zdát že program neudělal nic jen vypsal hlouposti. Stačí jen popojet kousek víš v command window a vše je hned napsáno a popsáno co je co. Popsání použitých typu šifer a metodTranspoziční šifraPrincipem transpoziční šifry je změna pořadí jednotlivých znaků textu (permutace) na základě předem domluveného systému. Výhodou tohoto postupu je jeho jednoduchost – může ho použít klidně dítě, protože není obvykle třeba jakákoliv znalost matematiky. Nevýhodou je jeho více či méně snadná analýza (dle pravidla transformace), další významnou nevýhodou je snadné odhalení jazyka otevřeného textu pomocí frekvenční analýzy (znaky zůstávají totožné, mění se jen jejich pořadí).Použitím transpoziční šifry dochází k difůzi – rozprostření redundance jazyka napříč zprávou.PříkladOT: SKAKALPESPRESOVESPRESZELENOULOUKUPravidlo: Zapišme text do tabulky s pěti sloupci (padding: „X“), tabulku překlopme podle diagonály a čtěme po řádcích.ŠT: SLRESNUKPESZOKAESPEUUSKORLLXAPVEEOXObr. 1: Transpoziční šifraDešifrováníProtože měl obdélník 5 sloupců, tak má po transformaci 5 řádek. Zapišme tedy došlý ŠT do obdélníku s pěti řádky – máme 35 znaků, tzn. 7 sloupců. Tímto jsme dosáhli toho, že máme před sebou obdélník, který měl šifrující na pravé straně od šipky (vizte obr 1). Buď ho ještě otočíme nebo rovnou čteme po sloupcích.Útoky na transpoziční šifruÚtok pomocí vycpávkyNejefektivnější je zaútočit na tento typ kryptosystému pomocí padding (vycpávky). Protože víme, že byly vloženy znaky X na konec textu (aby se text zarovnal na plný obdélník) a z ŠT víme, že po transformaci je padding od sebe vzdálen 7 pozic a má celkem 35 znaků, tak je zřejmé, že měl původní obdélník původně 7 řádek a 5 sloupců – můžeme dešifrovat.Vernamova šifraVernamova šifra je proudová šifra spočívající v binární operací XOR nad otevřeným textem a předem smluveným náhodným klíčem (šumem).Klíč se za žádných okolností nesmí recyklovat - na každou komunikaci se použije vždy nový - protože jinak by útočník mohl XORovat obě zašifrované zprávy, čímž by získal XOR obou nezašifrovaných zpráv, z čehož lze statistickými metodami získat otevřený text obou zpráv. Pokud se dodrží tato zásada a klíč je vygenerován skutečně náhodným způsobem (nikoliv pseudonáhodným), pak šifru nelze prolomit.PříkladOT: EMAMAMASOPřevedeme do ASCIIOT: 01000101 01001101 01000001 01001101 01000001 01001101 01000001 01010011 01001111 Klíč: 10111001 01110100 00111010 00010101 01101010 11010100 10101010 10001110 10101010 -----------------------------------------------------------------------------------------------------------------------------------ŠT: 11111100 00111001 01111011 01011000 00101011 10011001 11101011 11011101 11100101 Příjemce zprávu rozšifruje stejným předem smluveným klíčem.ASCII tabulkaAmerican Standard Code for Information Interchange (ASCII) je americký standard pro převod znaků na čísla. Jde o tabulku o 128 řádcích (kód je sedmibitový), kde každý řádek obsahuje znak anglické abecedy (případně znak používaný v informatice) jeho číselný ekvivalent. Prvních 32 znaků je řídích, původně určených pro ovládání různých zařízeni, například tiskáren.Přestože je ASCII kód dodnes velmi úspěšný, tak je vzhledem k nízkému počtu znaků (i přes rozšíření na 256 znaků (Win1250, ISO8859-2, Kód Kamenických)) nepoužitelný pro mezinárodní prostředí. Z tohoto důvodu se tato rozšíření ASCII nahrazují Unicodem.Ascii tabulka (ukázka)Obr. 2: Ascii tabulkaPopis všech funkciFunkce : Transpozicni_sifraFunkce Transpozicni_sifra je funkce na zašifrování textu podle pravidel a práce z maticemi. Je použit úplně přesný postup jak je popsán výše. Text se zapíše do matice doplní se na konci písmenem x aby byla vytvořena plná matice. Vzniklou matici překlopme podle diagonály a čtěme po řádcích. A vznikne nám samotná šifra. To byl smer =1 . Když chceme rozšifrovat tento text tak víme podle klíče kolik měla matice sloupců tak teď bude mít podle klíče počet řádku. Naplníme matici po řádkách a čteme ji po sloupcích. To byl smer=2. Funkce se spouští příkazem text=Transpozicni_sifra(x,klic,smer) kde proměná x je část text co chcete překládat zadává se jako textoví řetězec například ‘ahoj jak se mas‘ a nebo pr
Vloženo: 25.05.2011
Velikost: 188,64 kB
Komentáře
Tento materiál neobsahuje žádné komentáře.
Mohlo by tě zajímat:
Skupina předmětu APRG - Algoritmizace a programování
Reference vyučujících předmětu APRG - Algoritmizace a programování
Podobné materiály
- BRR1 - Řízení a regulace 1 - Různé projekty
- BRR1 - Řízení a regulace 1 - Všechny moje projekty
- BRR1 - Řízení a regulace 1 - Projekt 3
- BRR1 - Řízení a regulace 1 - Projekt
- BRR1 - Řízení a regulace 1 - Projektt
- BPC2 - Počítače a programování 2 - Projekty 08
- BNEZ - Napájení elektronických zařízení - Vzorový projekt napájecího zdroje BNEZ 2010
- BPC2 - Počítače a programování 2 - VSECHNY PROJEKTY DO BPC2
- APRG - Algoritmizace a programování - Projekt v matlabu - morse
- BMA3 - Matematika 3 - Projekt2_skupina3
- BMA3 - Matematika 3 - Projekt2_skupina2
- BMA3 - Matematika 3 - Projekt2_skupina5
- BMA3 - Matematika 3 - Projekt2_skupina11
- BMA3 - Matematika 3 - Projekt2_skupina8
- BMA3 - Matematika 3 - Projekt2_skupina9
- BMA1 - Matematika 1 - Projekt2_verze1
- BMA1 - Matematika 1 - Projekt2_verze2
- BEVA - Elektromagnetické vlny, antény a vedení - BEVA_Projekt
- BEVA - Elektromagnetické vlny, antény a vedení - BEVA projekt c08
- MCVT - CAD ve vysokofrekvenční a mikrovlnné technice - Projekt MCVT planární pásmová propust
Copyright 2025 unium.cz


