1 00:00:00,000 --> 00:00:10,101 >> [Duke luajtur muzikë] 2 00:00:10,101 --> 00:00:12,700 >> ZAMYLA Chan: Le të zbatojë Vigenere, një pak më 3 00:00:12,700 --> 00:00:14,710 siguruar shifrën se Cezarit. 4 00:00:14,710 --> 00:00:19,670 Plain text është enciphered duke përdorur një varg në vend të një numër të plotë. 5 00:00:19,670 --> 00:00:22,970 Secili karakter alfabetik në plain text është zhvendosur nga një 6 00:00:22,970 --> 00:00:24,450 letër ne fjale. 7 00:00:24,450 --> 00:00:30,860 >> Në këtë shembull, fjalen ohai, O korrespondon me një zhvendosje të 14; H tek nje 8 00:00:30,860 --> 00:00:36,910 zhvendoset nga 7; një ndryshim, të 0; dhe unë një ndryshim i 8. 9 00:00:36,910 --> 00:00:40,710 Nëse ju keni zbatuar me sukses tuaj Cezari shifër, ajo do të jetë një e bukur 10 00:00:40,710 --> 00:00:43,510 Kuadri nga të cilat ju mund të zbatojë Vigenere. 11 00:00:43,510 --> 00:00:47,140 Siç mund ta shikoni, drejtimin e një Vigenere shifër me një karakter të vetëm si një 12 00:00:47,140 --> 00:00:51,830 fjalë kyçe është e njëjta gjë si një shifër Caesar. 13 00:00:51,830 --> 00:00:55,170 >> Hapat e njëjta zbatohet për Vigenere siç bënë në Çezarit. 14 00:00:55,170 --> 00:01:01,240 Keyword është linja e dytë komandës Argumenti, kështu që ju të hyni në atë me argv1. 15 00:01:01,240 --> 00:01:05,400 Atëherë ju keni nevojë për të verifikuar se çelësi Fjala është me të vërtetë të gjithë alfabetik. 16 00:01:05,400 --> 00:01:09,040 Këtu është vendi ku është alfa mund të vijnë në volitshëm. 17 00:01:09,040 --> 00:01:13,550 Nëse ju keni një të vlefshme fjalen, ju merrni forca nga përdoruesit, dhe pastaj 18 00:01:13,550 --> 00:01:15,820 ju jeni gati për të shifroj. 19 00:01:15,820 --> 00:01:20,840 >> Formula Vigenere shifër është e ngjashme te Cezari formule, me përjashtim tani k 20 00:01:20,840 --> 00:01:27,650 bëhet i j k subscript, duke treguar j-th letër e fjalen. 21 00:01:27,650 --> 00:01:29,640 Le të futemi nëpër këtë proces. 22 00:01:29,640 --> 00:01:34,060 Thuaj ju kërkuar për të dërguar një mesazh për të tuaj përplasje, unë si ju, por ju nuk e bëni 23 00:01:34,060 --> 00:01:35,190 duan të gjithë të dinë. 24 00:01:35,190 --> 00:01:39,800 Pra, ju përdorni një shifër Vigenere me panda fjalen, sepse, mirë, ju gjithashtu 25 00:01:39,800 --> 00:01:41,160 si pandat. 26 00:01:41,160 --> 00:01:47,140 >> Letra e parë, unë, do të jetë zhvendosur nga p, duke i dhënë x, 15 gërma pasi unë, 27 00:01:47,140 --> 00:01:52,850 15 sepse është p 16 letër e alfabetit. 28 00:01:52,850 --> 00:01:56,750 Letra e ardhshëm në tekst të thjeshtë është një hapësirë, kështu që nuk do të jetë zhvendosur. 29 00:01:56,750 --> 00:02:00,420 Dhe indeksi i fjalen nuk do të ndryshojë. 30 00:02:00,420 --> 00:02:05,440 >> Pastaj shkronja tjetër në tekst të thjeshtë është l, zhvendosur nga nje, i cili nuk zhvendoset 31 00:02:05,440 --> 00:02:10,930 letër plain tekst në të gjitha, sepse a eshte 0-os letër e alfabetit. 32 00:02:10,930 --> 00:02:14,980 Procesi vazhdon, avancimit Karakteri fjalen çdo herë ka një 33 00:02:14,980 --> 00:02:16,840 letër në tekst të thjeshtë. 34 00:02:16,840 --> 00:02:21,850 Pasi Letra e fundit ne fjalen është arritur, fjalen dhe përfundon rreth 35 00:02:21,850 --> 00:02:25,890 ndërrime në rrafshinë e ardhshëm letër teksti nga p. 36 00:02:25,890 --> 00:02:27,170 X lvne Noh. 37 00:02:27,170 --> 00:02:29,180 Sa romantike. 38 00:02:29,180 --> 00:02:33,120 >> Dhënë kështu një karakter, si mendoni ju konvertojë se në korresponduese 39 00:02:33,120 --> 00:02:34,590 shifrojë ndryshim? 40 00:02:34,590 --> 00:02:37,870 Provoni krahasuar ASCII Vlerat e në ndryshim. 41 00:02:37,870 --> 00:02:41,530 Ndoshta ju mund të gjeni një marrëdhënie në mes të shkronjave dhe të tyre 42 00:02:41,530 --> 00:02:44,550 indeksi alfabetik përdorur matematikë ASCII. 43 00:02:44,550 --> 00:02:48,850 Ju mund të shtoni ose të zbres një karakter nga një tjetër për të marrë 44 00:02:48,850 --> 00:02:51,630 ju rezultati i dëshiruar? 45 00:02:51,630 --> 00:02:55,480 >> Mos harroni se për ndërrime uppercase dhe letra vogle janë të njëjta. 46 00:02:55,480 --> 00:02:59,510 Pra, ndoshta ju do të duhet për të identifikuar dy formula të ngjashme për të përfaqësuar 47 00:02:59,510 --> 00:03:03,570 zhvendosje, një për një uppercase karakteri fjalen, dhe një 48 00:03:03,570 --> 00:03:06,510 për një të vogle. 49 00:03:06,510 --> 00:03:10,630 >> Tjetra, mos harroni se përparimet fjalen vetëm nëse karakteri në 50 00:03:10,630 --> 00:03:13,520 plain text është një letër dhe se rasti i thjeshtë 51 00:03:13,520 --> 00:03:16,020 Teksti duhet të ruhet. 52 00:03:16,020 --> 00:03:20,280 Pra, nëse ne shikojmë në formulën për Zhvendosje Vigenere, ka dy indeksi 53 00:03:20,280 --> 00:03:22,880 variablave, i dhe j. 54 00:03:22,880 --> 00:03:26,795 Njëri mban gjurmët e pozitës në plain tekst, dhe tjetri pozicioni 55 00:03:26,795 --> 00:03:27,910 ne fjale. 56 00:03:27,910 --> 00:03:32,960 Por thjeshtë teksti juaj mund të jetë shumë më të gjatë se fjalen tuaj, në të cilin rastin tuaj 57 00:03:32,960 --> 00:03:38,290 Indeksi fjalen nevojë për të përfunduar rreth mbrapa te fillimit te kyce. 58 00:03:38,290 --> 00:03:39,870 >> Si do ta bëni këtë? 59 00:03:39,870 --> 00:03:43,740 Le të shikojmë mbrapa në Operatori modulo. 60 00:03:43,740 --> 00:03:47,280 Modulo është përkufizuar eshte pjesa i ndarë dy numra. 61 00:03:47,280 --> 00:03:50,680 Por ajo është një praktike aktuale përdorimin e modulo? 62 00:03:50,680 --> 00:03:54,340 >> E pra, thonë se ju keni një grup të madh të njerëz, dhe ju duhet të ndahet në 63 00:03:54,340 --> 00:03:55,100 tre grupe. 64 00:03:55,100 --> 00:03:59,500 Një mënyrë për të ndarë njerëzit në grupe është që ata llogarisin off. 65 00:03:59,500 --> 00:04:03,520 Ju numri grupin grupet numër 1, 2, dhe 3. 66 00:04:03,520 --> 00:04:08,510 Personi i parë do të thonë se 1, 2 e ardhshëm, 3 Next. 67 00:04:08,510 --> 00:04:12,860 Personi, pasi që do të thonë se 1, sepse atje nuk eshte nje grup 4, dhe 68 00:04:12,860 --> 00:04:15,880 fillon numërimin përsipër nga atje. 69 00:04:15,880 --> 00:04:18,209 >> Ju mund të përdorni për të modulo bëjë të njëjtën gjë. 70 00:04:18,209 --> 00:04:22,680 Këtë herë, grupet do të jenë grupi 0, 1, dhe 2. 71 00:04:22,680 --> 00:04:26,960 Personi i parë, numri i 1 modulo 3, eshte 1. 72 00:04:26,960 --> 00:04:29,830 Person modulo 2 3 është 2. 73 00:04:29,830 --> 00:04:32,460 3 Person modulo 3 është 0. 74 00:04:32,460 --> 00:04:38,470 4 Person modulo 3 jep 1, dhe kështu grupet mund ta mbështillni rreth. 75 00:04:38,470 --> 00:04:44,700 >> Pra, nëse ju merrni një indeks dhe modulo se indeksi nga një madhësi maksimale, 76 00:04:44,700 --> 00:04:49,820 Rezultati kurrë nuk do të jetë më e madhe se, ose të barabartë me madhësi, do të thotë që ju 77 00:04:49,820 --> 00:04:52,330 mund të rrisin indeksin si më shumë që ju dëshironi. 78 00:04:52,330 --> 00:04:57,400 Dhe për aq kohë sa ju modulo indeksin nga disa numër, ju nuk do të merrni një numër 79 00:04:57,400 --> 00:04:58,510 më të mëdha se kaq. 80 00:04:58,510 --> 00:05:04,500 Pra, ne kemi 10 njerëz në vend të 5, dhe ata do të të gjithë të caktuar për grupet e 81 00:05:04,500 --> 00:05:07,480 Numri 0, 1, ose 2. 82 00:05:07,480 --> 00:05:11,680 >> Mundohuni për të aplikuar këtë mbështjellës mbi fjalen, përveç në vend të sorting 83 00:05:11,680 --> 00:05:16,050 njerëzit në numrat e grupit që ju dëshironi Indeksi i fjalen kështu që ju mund të 84 00:05:16,050 --> 00:05:19,080 të marrë karakterin e duhur për zhvendoset pa e tejkaluar 85 00:05:19,080 --> 00:05:21,836 gjatësia e vargut. 86 00:05:21,836 --> 00:05:24,790 Me këtë, ju keni tuaj Vigenere shifër. 87 00:05:24,790 --> 00:05:27,790 Emri im është Zamyla, dhe kjo është CS50. 88 00:05:27,790 --> 00:05:32,566