Algoritmy a kryptografia - Najprv je potrebné najprv, ako začnem a chcem sa pochváliť seba samým a previesť tento blog na nudnú konverzáciu na jednej strane, najskôr pochopíme, čo sú algoritmy a ako súvisia s kryptografiou.

Algoritmy a kryptografia

algoritmy

Pre tých z vás, ktorí si myslia, že algoritmy sú spojené iba s počítačovou vedou, sa mýlite. Algoritmus je metóda alebo vzorec na riešenie problému. A keď hovorím problém, môže to byť akýkoľvek typ problému, či už ide o matematické, vedecké vzorce alebo dokonca o počítač. Dovoľte mi uviesť jednoduchý postup

Príklad:

(A + b) 2 = a2 + 2ab + b2

Alebo to môže byť:

Naakumulovaná suma = istina (1 + NI * 100 * čas)

Áno! Všetko, čo je vzorec, sa dá považovať za algoritmus. Algoritmus je súbor pravidiel na riešenie problému, ktorý, ak sa vykoná správne, poskytne vždy správnu odpoveď. Algoritmy všeobecne zahŕňajú opakovanie série krokov znovu a znovu, ako v algoritmoch požičiavania a prenášania a v dlhých multiplikačných a deliacich algoritmoch. Algoritmy zahŕňajú rôzne sčítanie, odčítanie, násobenie a delenie.

Ale predtým, ako si začnete myslieť, že tu chodím na nejakú prednášku o matematike, dovoľte mi povedať, že nie. Som tu, aby som hovoril o algoritmoch a kryptografii týkajúcich sa informatiky. Ale predtým, ako budem pokračovať, dovoľte mi uviesť niekoľko príkladov jednoduchých algoritmov, s ktorými môžete začať.

Tieto príklady sú určené pre čisto noobov, ktorí za celý svoj život nikdy neurobili žiadne algoritmické veci. Takže, ak si myslíte, že ste dosť šikovný, môžete prejsť na ďalšiu časť kryptografie, kde by som znova predstavil niektoré základy skôr, ako prejdem na ďalšiu úroveň.

Tu je niekoľko príkladov doplnkových algoritmov, ktoré vás teraz začnú a dajú vám predstavu o tom, ako sú algoritmy. Začnime základnou matematikou:

Algoritmy zľava doprava:

Začnite vľavo, pridajte stĺpec po stĺpci a upravte výsledok.

Pre niektorých ľudí sa tento proces stáva tak automatickým, že začína vľavo a píše stĺpec s odpoveďou po stĺpcoch a upravuje tak, ako idú bez toho, aby napísali akékoľvek kroky medzi jednotlivými krokmi. Ak sú požiadaní o vysvetlenie, hovoria niečo také:

200 plus 400 je 600, ale (pri pohľade na nasledujúci stĺpec), musím to upraviť, tak napíšte 7. Potom, 60 a 80 je 140, ale treba to upraviť, napíšte 5. Teraz, 8 a 3 je 11, nič viac, písať 1. Táto technika sa ľahko vyvíja zo skúseností s manipulatívmi, ako sú základné bloky a peniaze, výmena alebo obchodovanie s hrami, a je v súlade so vzormi zľava doprava naučenými na čítanie a písanie.

Teraz môžu niektorí ľudia pri čítaní o tom ísť všade. Možno bude potrebné, aby ste Google tieto veci dostali, aby ste získali presný prehľad o tom, čo sa tu presne deje.

Cryptography

Kryptografia je umenie písania kódov, ktoré nie je čitateľné človekom. Je to spôsob ukladania a prenosu údajov v určitej forme tak, aby ich mohli čítať a spracovávať iba tí, pre ktorých sú určené. Môžete povedať, že kryptografia je blízkym bratrancom disciplín kryptologie a kryptanalýzy.

Kryptografia zahŕňa techniky, ako sú mikrodoty, zlučovanie slov s obrázkami a ďalšie spôsoby, ako skryť informácie pri ukladaní alebo preprave. V dnešnom počítačovo zameranom svete je však kryptografia najčastejšie spájaná s kódovaním obyčajného textu (obyčajný text, niekedy označovaný ako čistý text) do šifrového textu (proces nazývaný šifrovanie), a potom späť (známy ako dešifrovanie). Jednotlivci, ktorí vykonávajú túto oblasť, sú známi ako kryptografi.

Šifrovanie sa používa už mnoho tisíc rokov. Nasledujúce kódy a šifry sa môžu naučiť a používať na ručné šifrovanie a dešifrovanie správ:

A) Monofunkčné šifry:

Monoalphabetic šifra používa rovnaké substitúcie v celej správe. Napríklad, ak viete, že písmeno A je zašifrované ako písmeno K, toto platí pre celú správu. Tieto typy správ môžu byť prelomené pomocou frekvenčnej analýzy, vzdelaných odhadov alebo pokusov a omylov.

1. Ceaser Šifra

Šifra Caesar je jednou z najjednoduchších (a najjednoduchších krakovaných) metód šifrovania. Ide o substitučnú šifru, ktorá spočíva v nahradení každého písmena tajnej správy iným písmenom abecedy, čo je pevný počet pozícií ďalej v abecede.

Pretože každé písmeno v správe má priamy preklad do iného písmena, na dešifrovanie správy sa môže použiť frekvenčná analýza. Napríklad písmeno E je najbežnejšie používané písmeno v anglickom jazyku.

Ak je teda najbežnejším písmenom v tajnej správe K, je pravdepodobné, že K predstavuje E. Ďalej, bežné koncové slová ako ING, LY a ES tiež dávajú vodítka. Pri dešifrovaní správy by tiež fungoval prístup hrubou silou vyskúšania všetkých 25 možných kombinácií.

V tomto príklade bolo každé písmeno v textovej správe posunuté o 3 písmená v abecednom poradí.

Obyčajný text : Toto je tajná správa

Ciphertext : wklv lv d vhfuhw phvvdjh

2. Atbash Šifra

Šifra Atbash je veľmi špecifický prípad substitučnej šifry, kde sú písmená abecedy obrátené. Inými slovami, všetky, ako sú nahradené Zs, všetky Bs sú nahradené Ys, atď.

Pretože dvojitým otočením abecedy získate skutočnú abecedu, môžete správu dešifrovať a dešifrovať pomocou rovnakého algoritmu.

Príklad:

Obyčajný text : Toto je tajná správa

Ciphertext : Gsrh rh z hvxivg nvhhztv

Šifra kľúčového slova je identická s Caesarovou šifrou s výnimkou, že použitá substitučná abeceda môže byť reprezentovaná kľúčovým slovom.

Ak chcete z kľúčového slova vytvoriť substitučnú abecedu, najprv si napíšte abecedu. Pod týmto si zapíšete kľúčové slovo (vynechajú sa duplicitné písmená) a potom zostávajúce nepoužité písmená abecedy.

ABCDEFGHIJKLMNOPQRSTUVWXYZ

KEYWORDABCFGHIJLMNPQSTUVXZ

Ak chcete zašifrovať text vo formáte obyčajného textu, skonvertujete všetky písmená z horného riadku na príslušné písmeno v dolnom riadku (A na K, B na E atď.).

Použitím frekvenčnej analýzy a niektorých vzdelaných odhadov je možné ľahko rozlúštiť tieto typy jednoduchých substitučných šifrov.

4. Prasiatko / slobodomurárska šifra

Šifra prasaťa (niekedy nazývaná slobodomurárska šifra alebo Freemasonova šifra) je jednoduchá substitučná šifra, ktorá vymieňa písmená za symboly založené na mriežke. Schému vyvinuli a používali slobodomurári začiatkom 17. storočia na vedenie záznamov a korešpondenciu. Kláves príklad zobrazuje jeden spôsob, ako môžu byť písmená priradené k mriežke.

B) Polyalphabetické šifry:

V polyalfabetickej šifre sa môže substitúcia meniť v celej správe. Inými slovami, písmeno A môže byť kódované ako písmeno K pre časť správy, ale neskôr môže byť kódované ako písmeno W.

Odporúčané kurzy

  • Školenie o XML
  • Tréningový kurz CCNA
  • Kompletné školenie systému UNIX a Linux
  • Tréningový balík HTML 5

1. Šifra Vigenere

Na Caesarovej šifre sa každé písmeno abecedy posúva po určitom počte miest; napríklad v Caesarovej šifre posunu 3 by sa A zmenilo na D, B na E a tak ďalej. Šifra Vigenere spočíva v použití niekoľkých Caesarových šifrov v poradí s rôznymi hodnotami posunu.

Na zašifrovanie je možné použiť tabuľku abeced, ktorá sa nazýva tabula recta, Vigenere square alebo Vigenere table. Skladá sa z abecedy napísanej 26-krát v rôznych riadkoch, pričom každá abeceda sa cyklicky posúva smerom doľava v porovnaní s predchádzajúcou abecedou, čo zodpovedá 26 možným šifrám Caesar. V rôznych bodoch procesu šifrovania používa šifra odlišnú abecedu od jedného z riadkov. Abeceda použitá v každom bode závisí od opakujúceho sa kľúčového slova.

Predpokladajme napríklad, že obyčajný text, ktorý sa má šifrovať, je:

ATTACKATDAWN

Osoba odosielajúca správu vyberie kľúčové slovo a opakuje ho, kým sa nezhoduje s dĺžkou obyčajného textu, napríklad kľúčového slova „LEMON“:

LEMONLEMONLE

Každé písmeno je kódované nájdením priesečníka v mriežke medzi písmenom obyčajného textu a písmenom kľúčového slova. Napríklad prvé písmeno obyčajného textu A sa zašifruje pomocou abecedy v riadku L, ktorý je prvým písmenom kľúča. To sa dosiahne pri pohľade na písmeno v riadku L a stĺpci A námestia Vigenere, konkrétne L. Podobne sa pre druhé písmeno holého textu používa druhé písmeno kľúča; písmeno v riadku E a stĺpci T je X. Zvyšok obyčajného textu je zakódovaný podobným spôsobom:

Obyčajný text : ATTACKATDAWN

Kľúč : LEMONLEMONLE

Ciphertext : LXFOPVEFRNHR

Dešifrovanie sa vykoná nájdením pozície ciphertextového listu v riadku tabuľky a následným prevzatím označenia stĺpca, v ktorom sa zobrazuje ako holý text. Napríklad v riadku L sa šifrový text L objaví v stĺpci A, ktorý sa považuje za prvé písmeno obyčajného textu. Vyhľadaním X v riadku E tabuľky dešifruje druhé písmeno; objaví sa v stĺpci T, ktorý sa považuje za obyčajné písmeno.

Šifra Gronsfeld je identická s šifrou Vigenere s výnimkou, že sa používa iba 10 riadkov, čo umožňuje, aby kľúčové slovo bolo číslo namiesto slova.

steganografie

Steganografia je vlastne veda o úkryte informácií od ľudí, ktorí by vás prenasledovali. Rozdiel medzi týmto a šifrovaním spočíva v tom, že budúci snoopers nemusia vedieť, že na prvom mieste sú nejaké skryté informácie.

Napríklad obrazové súbory majú zvyčajne veľa nevyužitého priestoru. Tento priestor by sa mohol použiť na odosielanie skrytých správ. Ak vykonávate výskum v oblasti šifrovania, môže sa stať, že sa príležitostne používa výraz steganografia. Nejde však o skutočné šifrovanie (aj keď môže byť stále veľmi efektívne), a preto ho tu uvádzam iba kvôli úplnosti.

Takže v podstate, ak chcete začať cvičiť kryptologiu, najlepším spôsobom, ako začať, by bolo začať riešiť algoritmy a šifrovaný text spolu so steganografiou. Aj keď sa môže zdať steganografia jednoduchá a nejde o skutočné šifrovanie, stále je to jedno z najpoužívanejších šifrovaní, pokiaľ ide o základné informácie a keď potrebujete niečo kódovať vo veľmi krátkom čase a najlepším možným spôsobom.

Prvý zdroj obrázka: pixabay.com

Odporúčané články

Tu je niekoľko článkov, ktoré vám pomôžu získať viac podrobností o algoritmoch a kryptografii, takže stačí prejsť na odkaz.

  1. Otázky týkajúce sa rozhovorov o dátových štruktúrach a algoritmoch Najužitočnejší
  2. 8 úžasných algoritmov rozhovory otázky a odpovede
  3. Programovacie jazyky s najlepšou voľbou na učenie sa algoritmov
  4. 10 najlepších dátových štruktúr a algoritmov C ++ | základy

Kategórie: