Algoritmid ja krüptograafia - kõigepealt, enne kui ma asun enda kallal uhkustama ja selle ajaveebi igavaks ühepoolseks vestluseks muutma, saan kõigepealt aru, mis on algoritmid ja kuidas need on krüptograafiaga seotud.

Algoritmid ja krüptograafia

Algoritmid

Neile, kes arvavad, et algoritmid on ühendatud ainult arvutiteadusega, eksite. Algoritm on meetod või valem probleemi lahendamiseks. Ja kui ma ütlen probleem, võib see olla mis tahes tüüpi probleem, olgu selleks matemaatika, teaduse valemid või isegi arvutipõhised. Las ma annan teile lihtsa

Näide:

(A + b) 2 = a 2 + 2ab + b 2

Või see võib olla selline:

Kogunenud summa = põhisumma (1 + ROI * 100 * aeg)

Jah! Algoritmiks võib võtta kõik, mis on valem. Algoritm on reeglite kogum probleemi lahendamiseks, millele õigesti vastates antakse iga kord õige vastus. Algoritmid hõlmavad üldiselt sammude kordamist ikka ja jälle, nagu laenamise ja kandmise algoritmides ning pikkades korrutamis- ja jagamisalgoritmides. Algoritmid hõlmavad mitmesuguseid liitmist, lahutamist, korrutamist ja jagamist.

Kuid enne kui hakkate mõtlema, et pean siin mingisugust matemaatika loengut, lubage mul öelda, et ma ei ole. Ma räägin siin arvutiteadusega seotud algoritmidest ja krüptograafiast. Kuid enne kui ma sellega edasi lähen, lubage mul tuua teile mõned näited lihtsatest algoritmidest.

Need näited on mõeldud puhtatele noobidele, kes pole oma elu jooksul kunagi mingisuguseid algoritmilisi asju teinud. Niisiis, kui arvate, et olete piisavalt nutikas, võite minna edasi järgmisse krüptograafia jaotisesse, kus ma tutvustaksin uuesti mõnda põhitõde enne järgmisele tasemele liikumist.

Siin on mõned näited lisamise algoritmide kohta, mis võimaldavad teil praeguseks alustada ja annavad aimu, kuidas algoritmid töötavad. Alustame põhilisest matemaatikast:

Vasakult paremale lisamise algoritmid:

Alustage vasakult, lisage veerud ja kohandage tulemust.

Mõne inimese jaoks muutub see protsess nii automaatseks, et nad algavad vasakult ja kirjutavad vastuseveergu veergude kaupa, kohandades seda sammude vahele kirjutamata. Kui neil palutakse selgitada, ütlevad nad midagi sellist:

200 pluss 400 on 600, kuid (vaadates järgmist veergu) pean seda kohandama, nii et kirjutage 7. Siis, 60 ja 80 on 140, kuid see vajab kohandamist, nii, kirjutage 5. Nüüd, 8 ja 3 on 11, enam pole vaja teha, kirjutage 1. See tehnika areneb hõlpsalt manipulatiividega (nt base-10 plokkide ja rahaga) ning vahetus- või kauplemismängudest saadud kogemuste põhjal ning on kooskõlas lugemiseks ja kirjutamiseks õpitud vasakult paremale mustritega.

Nüüd võib mõnel inimesel seda lugedes kõik pähe minna. Nii et peate täpse idee saamiseks selle kohta, mis siin täpselt toimub, peate selle teabe Google'i välja saatma.

Krüptograafia

Krüptograafia on koodide kirjutamise kunst muul viisil kui inimesele loetaval viisil. See on andmete kindlal kujul säilitamise ja edastamise meetod, nii et seda saavad lugeda ja töödelda vaid need, kellele see on mõeldud. Võite öelda, et krüptograafia on lähedane nõbu krüptoloogia ja krüptanalüüsi erialadele.

Krüptograafia hõlmab selliseid tehnikaid nagu mikrodots, sõnade liitmine piltidega ja muud võimalused teabe varjamiseks säilitamisel või edastamisel. Kuid tänapäeva arvutikeskses maailmas seostatakse krüptograafiat enamasti tavalise teksti (tavaline tekst, mõnikord viidatud kui ka teksttekst) krüpteerimisega šifreeritavaks (krüptimiseks nimetatakse protsessi), seejärel jälle tagasi (dekrüpteerimiseks). Isikuid, kes seda välja harjutavad, nimetatakse krüptograafideks.

Krüptimist on kasutatud tuhandeid aastaid. Järgmisi koode ja šifreid saab õppida ja kasutada sõnumite käsitsi krüptimiseks ja dekrüptimiseks:

A) Monoalfabeetilised šifrid:

Monoalfabeetiline šifr kasutab kogu sõnumis sama asendamist. Näiteks kui teate, et täht A on kodeeritud kui täht K, kehtib see kogu teate puhul. Seda tüüpi sõnumeid saab lahti saada, kasutades sagedusanalüüsi, täpsustatud oletusi või prooviversioone.

1. Ceaser Cipher

Caesari šifr on üks lihtsamaid (ja kõige hõlpsamini purustatud) krüptimismeetodeid. See on asenduskopeerija, mis hõlmab salajase teate iga tähe asendamist erineva tähestiku tähega, mis on fikseeritud arv tähestikus paiknevaid positsioone.

Kuna igal sõnumi tähel on otsene tõlge teise tähe juurde, saab sõnumi dešifreerimiseks kasutada sagedusanalüüsi. Näiteks on täht E inglise keeles kõige sagedamini kasutatav täht.

Seega, kui salajase sõnumi kõige tavalisem täht on K, on ​​tõenäoline, et K tähistab E. Lisaks annavad vihjeid ka tavalised sõnaliited nagu ING, LY ja ES. Sõnumi dešifreerimiseks toimiks ka julma jõu lähenemine kõigi 25 võimaliku kombinatsiooni proovimiseks.

Selles näites on iga tavalise tekstiga täht tähestikus 3 tähte allapoole nihutatud.

Platekst : see on salajane teade

Ciphertext : wklv lv d vhfuhw phvvdjh

2. Atbash Cipher

Atbaši šifr on väga spetsiifiline asendusšifri juhtum, kus tähestiku tähed on ümber pööratud. Teisisõnu, kõik need, mis on asendatud Z-dega, kõik B-d asendatakse Y-dega ja nii edasi.

Kuna tähestiku kahekordne ümberpööramine annab teile tegeliku tähestiku, saate sõnumi šifreerida ja dešifreerida, kasutades sama algoritmi.

Näide:

Platekst : see on salajane teade

Ciphertext : Gsrh rh z hvxivg nvhhztv

Märksõna šifr on identne Caesari šifriga, erandiks on see, et kasutatavat asendustähestikku saab tähistada märksõnaga.

Märksõnast asendustähestiku loomiseks kirjutage kõigepealt tähestik üles. Selle alla kirjutate märksõna (jättes ära dubleerivad tähed) ja seejärel järelejäänud kasutamata tähestiku.

ABCDEFGHIJKLMNOPQRSTUVWXYZ

MÄRKSÕNAABCFGHIJLMNPQSTUVXZ

Lihttekstisõnumi krüpteerimiseks teisendate kõik tähed ülemisest reast vastavateks tähtedeks alumisel real (A – K, B – E jne).

Sagedusanalüüsi ja mõne haritud äraarvamise abil saab seda tüüpi lihtsaid asendusšifreid hõlpsalt lahti saada.

4. Pigpen / vabamüürlaste šifer

Pigmendi šifr (mõnikord nimetatakse seda vabamüürlaste või Freemasoni šifriks) on lihtne asendusšifr, mis vahetab ruudustikul põhinevate sümbolite jaoks tähti. Skeemi töötasid vabamüürlased välja ja kasutasid seda 1700. aastate alguses dokumentide pidamiseks ja kirjavahetuseks. Näiteklahv näitab, kuidas tähti saab võrkudele omistada.

B) polüalfabeetilised šifrid:

Polüfafüütilise šifri korral võib asendamine kogu sõnumi vältel muutuda. Teisisõnu, A-tähe võib kodeerida kirja osaks K-tähena, kuid hiljem võidakse see kodeerida tähena W.

Soovitatavad kursused

  • XML-i koolitus
  • CCNA eksami koolituskursus
  • Täielik UNIX ja Linux OS koolitus
  • HTML 5 koolituskimp

1. Vigenere Cipher

Caesari šifris on iga tähestiku täht nihutatud teatud arvu kohtade võrra; näiteks nihke 3 keisririigi šifris saab A-st D, B-st E ja nii edasi. Vigenere šifr koosneb mitme Caesari šifri kasutamisest järjest erineva nihke väärtusega.

Krüpteerimiseks võib kasutada tähestiku tabelit, mida nimetatakse tabula recta, Vigenere ruut või Vigenere tabeliks. See koosneb 26-kordselt erinevates ridades kirjutatud tähestikust, iga tähestik nihkub eelmise tähestikuga võrreldes tsükliliselt vasakule, mis vastab 26 võimalikule keisririba šifrile. Krüpteerimisprotsessi erinevates punktides kasutab šifr ühest reast erinevat tähestikku. Igas punktis kasutatav tähestik sõltub korduvast märksõnast.

Oletagem näiteks, et krüptitav tavaline tekst on:

ATTACKATDAWN

Sõnumi saatja valib märksõna ja kordab seda, kuni see vastab tavalise teksti pikkusele, näiteks märksõnale LEMON:

LEMONLEMONLE

Iga täht kodeeritakse, leides tavalise teksti ja märksõna tähe ristmikust ristmiku. Näiteks šifreeritakse tavalise teksti esimene täht A, kasutades reas L olevat tähestikku, mis on klahvi esimene täht. Selleks vaadatakse Vigenere ruudu reas L ja A veerus olevat tähte, nimelt L. Samamoodi kasutatakse tavalise teksti teise tähe puhul võtme teist tähte; tähe reas E ja veerus T on X. Ülejäänud tekst on šifreeritud sarnaselt:

Platekst : ATTACKATDAWN

Võti : LEMONLEMONLE

Ciphertext : LXFOPVEFRNHR

Krüptoteksti tähe asukoha leidmine tabeli reas ja seejärel dekrüptimise tegemiseks veeru sildi võtmine, milles see kuvatakse tavalise tekstina. Näiteks reas L kuvatakse veerus A šifretekst L, mida võetakse esimese tavalise tähena. X-i otsimisel tabeli E reas dekrüpteeritakse teine ​​täht; see kuvatakse veerus T, mida võetakse tavalise tähena.

Gronsfeldi šifr on identne Vigenere šifriga selle erandiga, et kasutatakse ainult 10 rida, mis võimaldab märksõnal sõna asemel olla number.

Steganograafia

Steganograafia on tegelikult teadus teabe varjamise kohta inimeste eest, kes teid nuusaksid. Selle ja krüptimise erinevus on see, et potentsiaalsed snooperid ei pruugi kõigepealt öelda, kas seal on varjatud teavet.

Näiteks on pildifailides tavaliselt palju kasutamata ruumi. Seda ruumi saab kasutada peidetud teadete saatmiseks. Krüpteerimise uurimisel võite näha terminit steganograafia, mida mõnikord kasutatakse. See ei ole siiski tõeline krüptimine (kuigi see võib siiski olla üsna tõhus) ja sellisena mainin seda siin ainult täielikkuse huvides.

Nii et põhimõtteliselt, kui soovite hakata krüptoloogiat praktiseerima, oleks parim viis alustamiseks algoritmide ja Cipherteksti lahendamine koos Steganograafiaga. Ehkki steganograafia võib tunduda lihtne ja see pole tõene krüptimine, on see siiski üks enimkasutatavaid krüptimisi, kui rääkida põhitõdedest ja kui teil on vaja midagi väga lühikese ajaga ja parimal võimalikul viisil kodeerida.

Esimene pildi allikas: pixabay.com

Soovitatavad artiklid

Siin on mõned artiklid, mis aitavad teil algoritmide ja krüptograafia kohta rohkem üksikasju saada, nii et lihtsalt minge lingi kaudu.

  1. Andmestruktuuride ja algoritmide küsitlemise küsimused | Kõige kasulikum
  2. 8 vinge algoritmiga intervjuu küsimust ja vastust
  3. Parim valik programmeerimiskeeli algoritmide õppimiseks
  4. 10 parimat andmestruktuuri ja algoritmi C ++ | Põhitõed

Kategooria: