[Powered by Google Translate] [Vigenère Cipher] [Nate Hardison - Chuo Kikuu cha Harvard] [Hii ni CS50. - CS50.TV] Kutana Alice. Alice ana kuponda juu Bob. Bahati nzuri kwa Alice, Bob pia ana macho kwa ajili yake. Bahati mbaya kwa mpenzi yao budding, si tu kufanya Alice wazazi onya Bob, lakini Alice bora rafiki, Evelyn, ina kuponda siri juu ya Bob na ubinafsi anataka kuweka peke yao kwa gharama zote. Ili kutuma ujumbe wa siri na kila mmoja kuwa Alice wazazi hawawezi kuelewa, Alice na Bob wamekuwa wakitumia cipher Kaisari, ambayo hufanya kazi kwa shifting alfabeti na idadi fulani ya barua kama njia ya kuzalisha alfabeti mpya. Kila barua katika alfabeti ya awali ni kisha kubadilishwa kwa barua yake sambamba katika alfabeti mpya kubadilishwa. Alice namba favorite ni 3, ambayo Bob anajua, hivyo yeye anatumia 3 kama ufunguo wake. Wakati yeye mabadiliko alfabeti ya Kiingereza na herufi 3, inakuwa D, B inakuwa E, C inakuwa F, na kadhalika. Wakati yeye anapata hadi mwisho wa alfabeti - kwa barua X, Y, na Z - yeye tu Wraps kuzunguka nyuma mwanzo wa alfabeti na substitutes X Y, na B, na Z na C. Hivyo wakati Alice huenda encrypt ujumbe wake siri na Bob, yaani "Meet yangu katika Hifadhi ya saa kumi na moja var kl," yeye tu hufanya substitutions mwafaka. M inakuwa P, E inakuwa H, na kadhalika mpaka wake kimaandishi Nakala wazi ujumbe yamegeuka Nakala encrypted cipher: "Phhw ph DW wkh sdun DW hohyhq DP" ni dhahiri si sounding kimapenzi zaidi, lakini Alice kuamini kwamba itabidi kufanya. Alice anatoa ujumbe kwa Evelyn wa kutoa na nyumba Bob. Lakini Evelyn badala inachukua nyuma kwa nafasi yake na inajaribu ufa code. Moja ya mambo ya kwanza Evelyn matangazo ni kwamba H barua hutokea mara 7 katika ujumbe, wengi zaidi kuliko nyakati barua nyingine yoyote. Kujua kwamba E barua ni ya kawaida katika lugha ya Kiingereza, zinazotokea karibu 13% ya muda, Evelyn guesses kwamba H imekuwa kubadilishwa kwa E ili kufanya ujumbe siri na anajaribu kutumia ufunguo wa 3 ili kuisimbua. Ndani ya dakika, Evelyn takwimu nje mipango Alice na evilly wito wazazi Alice ya. Lau Alice na Bob kuchukuliwa CS50, wangeli inayojulikana ya hii frequency-uchambuzi mashambulizi cipher Kaisari, ambayo inaruhusu kuwa ni kuvunjwa kabisa haraka. Wao pia tunajua kwamba cipher ni urahisi chini ya mashambulizi brute-nguvu, ambapo Evelyn inaweza wamejaribu yote ya funguo iwezekanavyo 25, au mabadiliko ya alfabeti ya Kiingereza, ili decipher ujumbe. Kwa nini 25 funguo na si 26? Naam, jaribu shifting barua yoyote kwa nafasi 26, na utaona nini. Anyway, mashambulizi brute-nguvu kuyang Evelyn kidogo tena lakini si muda mrefu wa kutosha kutunza yake kutoka thwarting Alice na mipango Bob, hasa kama Evelyn ana misaada ya kompyuta ambayo inaweza mpasuko kupitia kesi zote 25 katika papo. Hivyo, tatizo hili pia wanakumbana wengine ambao kutumika cipher Kaisari, na kwa hiyo watu walianza majaribio na ciphers ngumu zaidi badala kwamba matumizi ya maadili kuhama nyingi badala ya moja tu. Moja ya wengi anajulikana ya hizi inaitwa Vigenère cipher. Jinsi gani sisi kupata maadili kuhama nyingi? Naam, badala ya kutumia idadi kama ufunguo, sisi kutumia neno kwa ajili ya muhimu. Tutaweza kutumia kila barua katika ufunguo wa kuzalisha idadi, na athari ni kwamba tutaweza kuwa na nyingi Kaisari funguo cipher-style kwa shifting barua. Hebu angalia jinsi hii matendo na encrypting ujumbe Alice kwa Bob: Kukutana na mimi katika Hifadhi ya saa 11:00 Mimi, binafsi, nadhani Bacon ni ladha, hivyo hebu kutumia kama muhimu. Kama sisi kuchukua ujumbe katika muundo wake kimaandishi, wazi-maandishi, tunaona kwamba ni 25 barua kwa muda mrefu. Bacon ina barua tu 5, hivyo tunahitaji kurudia mara 5 kufanya hivyo mechi ya urefu wa Nakala wazi. Bacon Bacon Bacon Bacon Bacon. Kama kifupi kando, ikiwa idadi ya herufi katika Nakala wazi hawakuwa kugawanya cleanly na idadi ya herufi katika muhimu, sisi tu kumaliza marudio ya mwisho ya ufunguo yetu mapema, kutumia tu barua sisi zinahitajika ili kufanya kila kitu match up. Sasa sisi kwenda juu ya kutafuta maadili kuhama. Sisi wanaenda kufanya hivyo kwa kutumia nafasi ya kila barua ya ufunguo yetu - Bacon - katika A kwa alfabeti Z. Tangu sisi ni kompyuta wanasayansi, sisi kama kuanza kuhesabu saa sifuri badala ya 1, hivyo sisi ni kwenda kusema kwamba msimamo wa barua ya kwanza ya Bacon - B - ni katika nafasi ya 1 katika sifuri-indexed kwa alfabeti Z, si 2, na msimamo wa ni sifuri, si 1. Kutumia algorithm hii, tunaweza kupata maadili kuhama kwa kila herufi. Encrypt Nakala wazi na kuzalisha cipher maandishi, sisi tu kuhama kila barua katika Nakala wazi kwa kiasi fulani, tu kama sisi kufanya na cipher Kaisari, wrapping kutoka Z nyuma kama ni lazima. M anapata kubadilishwa na mahali 1 kuwa N. Barua ya kwanza haina kuhama wakati wote, lakini sisi kuhama E pili na maeneo 2 kwa G na T na maeneo 14 H. Kama sisi kazi kwa njia ya maandishi wazi, sisi kuishia na, "Negh ZF Av HUF pcfx bt gzrwep oz." Tena, si sana kimapenzi-sounding lakini dhahiri cryptic. Kama Alice na Bob angejua kuhusu Vigenère cipher, ingekuwa wamekuwa salama kutoka macho Evelyn wa prying? Unafikiri? Je, unataka kuingia katika akaunti yako ya benki kama benki yako aliamua kutumia Vigenère cipher encrypt mawasiliano yako kwa kutumia nywila yako kama ufunguo wako? Kama ningekuwa wewe, napenda. Na wakati Evelyn inaweza kuwekwa busy muda wa kutosha kwa Alice na Bob kuwa wao kukutana-up, siyo thamani yake kwa Alice na Bob kwa nafasi yake. Vigenère cipher ni rahisi kuvunja kama unajua urefu wa muhimu kwa sababu kisha unaweza kutibu encrypted cipher Nakala kama bidhaa ya ciphers chache interwoven Kaisari. Kupata urefu wa muhimu si sana ngumu, aidha. Kama awali wazi-ujumbe wa maandishi ni muda wa kutosha kwamba baadhi ya maneno kutokea mara nyingi, hatimaye utaona marudio mseto juu katika maandishi encrypted cipher, kama katika mfano huu, ambapo unaona MONCY itaonekana mara mbili. Zaidi ya hayo, unaweza kufanya mashambulizi brute-nguvu juu ya cipher. Hii haina kuchukua kiasi kikubwa zaidi ya mashambulizi brute-nguvu juu ya cipher Kaisari, ambayo inaweza kufanyika karibu mara kwa kompyuta tangu badala ya 25 kesi ya kuangalia nimepata 26 ⁿ - 1 uwezekano, ambapo n ni urefu wa ufunguo haijulikani. Hii ni kwa sababu kila barua katika muhimu inaweza kuwa yoyote ya barua 26, kupitia Z, na mtu smart ingekuwa kujaribu kutumia ufunguo kwamba hawezi kupatikana katika kamusi, ambayo ina maana kwamba wewe d na kupima yote ya mchanganyiko weird barua, kama ZXXXFF, na si tu wanandoa laki maneno katika kamusi. bala 1 anakuja katika math kwa sababu wewe si unataka kutumia ufunguo na tu ndiyo, tangu kwa alfabeti yetu sifuri-indexed kwamba bila kutoa athari sawa kama kutumia cipher Kaisari na muhimu ya sifuri. Anyway, 26 ⁿ - 1 haina kupata kubwa badala haraka, lakini wakati wewe dhahiri si unataka kujaribu kuvunja cipher kwa mkono kwa njia hii, hii ni dhahiri doable na kompyuta. Bahati nzuri kwa Alice na Bob, na kwa online benki, cryptographers kuwa na maendeleo ya njia salama zaidi kwa encrypt ujumbe siri kutoka macho prying. Hata hivyo, hiyo ni mada kwa wakati mwingine. Jina langu ni Nate Hardison. Hii ni CS50.