[Powered by Google Translate] [Vigenère Cipher] [Nate Hardison - Harvardin yliopisto] [Tämä on CS50. - CS50.TV] Meet Alice. Alice on ihastunut Bob. Onneksi Alice, Bob on myös silmät hänen. Valitettavasti heidän orastava romanssi, emme vain Alicen vanhemmat paheksuvat Bob, mutta Alice paras ystävä, Evelyn, on salainen ihastunut Bob ja itsekkäästi haluaa pitää ne erillään lainkaan kustannuksia. Jos haluat lähettää salaisia ​​viestejä toisilleen Alicen vanhemmat eivät voi ymmärtää, Alice ja Bob ovat käyttäneet Caesar cipher, joka toimii siirtämällä aakkoset, jonka tietty määrä kirjaimia keinona luoda uuden aakkoset. Jokainen kirjain alkuperäisessä aakkoset sitten korvattu sen vastaavan kirjeen uuden siirtynyt aakkoset. Alice suosikki numero on 3, joka Bob tietää, joten hän käyttää 3 kuin hänen avain. Kun hän siirtyy Englanti aakkoset 3 kirjainta, Tulee D, B tulee E, C tulee F, ja niin edelleen. Kun hän pääsee aakkosten loppuun - ja kirjaimet X, Y ja Z - hän vain kiertyy takaisin alkuun aakkoset ja korvikkeet X, Y, B ja Z kanssa C. Joten kun Alice menee salata salaisen viestin Bob, eli "Tavataan puistossa kello yksitoista aamupäivällä," hän vain tekee asianmukaiset korvaukset. M tulee P, E saa H, ja niin edelleen, kunnes hänen salaamaton selväkielinen viesti käännetään salattu salakirjoitetun: "Phhw ph dw WKH sdun dw hohyhq dp" ei todellakaan ole kaikkein romanttinen kuulostava, mutta Alice uskovat, että se kelpaa. Alice antaa viestin Evelyn toimittaa Bob taloon. Mutta Evelyn vaan vie se takaisin hänen huoneeseensa ja yrittää murtaa koodin. Yksi ensimmäisistä asioista Evelyn ilmoitusten että kirje H esiintyy 7 kertaa viesti monta kertaa kuin mikään muu kirjain. Tietäen, että E-kirjain on yleisin Englanti kielellä, esiintyy lähes 13% ajasta, Evelyn arvelee, että H on korvattu E jotta salainen viesti ja yrittää käyttämällä avainta 3 salauksen purkamiseen. Muutamassa minuutissa, Evelyn keksii Alicen suunnitelmista ja ilkeästi kutsuu Alicen vanhemmat. Oliko Alice ja Bob otettu CS50, he olisivat tienneet tämän taajuus-analyysi hyökkäys Caesar cipher, joka mahdollistaa sen rikki melko nopeasti. Ne olisi myös tiedossa, että salakirjoitusmenetelmän on helppo edellyttää brute-force hyökkäys, jolloin Evelyn olisi kokeillut kaikkia mahdollisia 25 avaimet, tai siirtyminen Englanti aakkoset, Jotta tulkita viestin. Miksi 25 avaimet eikä 26? No, yritä siirtää mitään kirje 26 kantoja, ja näet miksi. Anyway, brute-force hyökkäys olisi kestänyt Evelyn hieman pidempi mutta ei tarpeeksi pitkä pitämään häntä syyttämään Alice ja Bob suunnitelmat, varsinkin jos Evelyn on tietokoneen avulla joka voisi repiä läpi kaikki 25 tapauksissa hetkessä. Joten tämä ongelma myös vaivannut muita, jotka käytetään Caesar cipher, ja siksi ihmiset alkoivat kokeilla monimutkaisempia korvaavien ciphers jotka käyttävät useita siirtymän arvot yhden sijasta. Yksi tunnettu näistä on nimeltään Vigenère salaus. Miten saada useita siirtymän arvot? No, sen sijaan, että käytetään useita kuin avain, käytämme sana avain. Käytämme jokaisen kirjeen avain luoda useita, ja vaikutus on, että saamme useita Caesar cipher-tyylinen avaimet siirtää kirjaimia. Katsotaanpa, miten tämä toimii salaamalla Alicen viestin Bob: Tavataan puistossa kello yksitoista aamupäivällä Olen henkilökohtaisesti sitä mieltä pekoni on herkullista, joten katsotaanpa käyttää sitä näppäintä. Jos otamme viestin sen salaamaton, vain teksti-muodossa, näemme, että se on 25 merkkiä pitkä. Bacon on vain 5 kirjainta, joten meidän täytyy toistaa 5 kertaa jotta se vastaa pituuden pelkkää tekstiä. Pekoni Pekoni Pekoni Pekoni Pekoni. Sivumennen, jos kirjainten lukumäärä tekstimuodossa ei jaa siististi useissa kirjaimet avain, me vain lopettaa viimeinen toisto keskeisimmistä aikaisin, vain kirjaimet jouduimme tekemään kaiken ottelu. Nyt me menemme noin löytää siirtymän arvot. Me aiomme tehdä tämän käyttämällä asema kunkin kirjeen tärkeimmistä - pekonia - on Z aakkoset. Koska olemme tietotekniikan tutkijoita, haluamme aloittaa laskemisen nollasta 1 sijaan joten aiomme sanoa, että asento ensimmäinen kirjain pekonia - B - on asennossa 1 nolla-indeksoitu Z aakkoset, ei 2, ja sijainti on nolla, ei ole 1. Käyttämällä tätä algoritmia, voimme löytää siirtymän arvot kullekin kirjain. Salata vain teksti ja tuottaa salakirjoitetun, me vain siirtää jokaisen kirjeen selkokielisessä tiettyä rahamäärää, aivan kuten teemme Caesar cipher, pakkaamattomia Z takaisin tarvittaessa. M saa siirretty 1 paikka tulla N. Ensimmäisen E ei siirry lainkaan, mutta siirtää toisen E 2 paikkoja G ja T 14 paikkaa H. Jos teemme läpi tekstimuodossa, päädymme, "Negh zf av HUF pcfx bt gzrwep oz." Jälleen, ei kovin romanttinen kuulostava mutta ehdottomasti arvoituksellinen. Jos Alice ja Bob tienneet Vigenère cipher, he olisivat olleet turvassa Evelynin uteliailta katseilta? Mitä mieltä olet? Haluaisitko kirjautua tilillesi, jos pankki päätti käyttää Vigenère salakirjoitus salata viestintää käyttämällä salasanaa avain? Jos olisin sinä, en halua. Ja vaikka Evelyn saattaisi pitää kiireisenä riittävän kauan Alice ja Bob saada tavata-up, se ei ole sen arvoista Alice ja Bob sattuman sitä. Vigenère cipher on suhteellisen helppo murtaa jos tiedät avaimen pituus koska voit käsitellä salattuja salakirjoitetun kuin tuote muutaman toisiinsa Caesar ciphers. Löytää avaimen pituus ei ole kovin vaikeaa, joko. Jos alkuperäinen teksti-viesti on tarpeeksi pitkä, että jotkin sanat esiintyvät useita kertoja, Lopulta näet toistoa pulppuaa salattu salakirjoitetun, kuten tässä esimerkissä, jossa näet MONCY näkyvät kahdesti. Lisäksi voit suorittaa brute-force hyökkäys nolla. Tämä ei vie huomattavasti kauemmin kuin brute-force hyökkäys Caesar cipher, mikä voidaan tehdä lähes välittömästi, jossa on tietokone koska sijasta 25 tapauksesta tarkistaa sinulla 26 ⁿ - 1 mahdollisuuksista, jossa n on pituus tuntemattomalla avaimella. Tämä johtuu siitä, että jokainen kirjain avain voi olla mikä tahansa 26 kirjainta, Z, ja älykäs ihminen yrittäisi käyttää avain, jota ei löydy sanakirjasta, mikä tarkoittaa, että sinun täytyy testata kaikki outo kirjainyhdistelmät, kuten ZXXXFF, eikä vain pari sataa tuhatta sanaa sanakirjasta. Miinus 1 tulee matematiikkaa, koska et halua käyttää avain vain on, koska meidän nolla-indeksoitu aakkoset joka antaisi sinulle sama vaikutus kuin käyttämällä Caesar salaus avaimella on nolla. Anyway, 26 ⁿ - 1 ei saada suuria melko nopeasti, mutta kun et varmasti halua kokeilla murtaa salakirjoituksen käsin näin, tämä on ehdottomasti toteutettavissa tietokoneen kanssa. Onneksi Alice ja Bob, ja verkkopankit, cryptographers ovat kehittäneet turvallisia tapoja salata salaisten viestien uteliailta katseilta. Kuitenkin, että aihe toisen kerran. Nimeni on Nate Hardison. Tämä on CS50.