[Powered by Google Translate] [Виженера Cipher] [Nate Хардисон - Гарвардскі універсітэт] [Гэта CS50. - CS50.TV] Знаёмствы Аліса. Аліса закахана ў Боба. На шчасце для Алісы, Боб таксама мае вачэй для яе. На жаль, для іх які падае надзеі раман, не толькі бацькі Алісы не ўхваляюць Боб, але лепшы сябар Алісы, Эвелін, ёсць таямніца закахана ў Боб і эгаістычна хоча захаваць іх адзін ад аднаго любой цаной. Для перадачы сакрэтных паведамленняў адзін аднаму, што бацькі Алісы не магу зразумець, Аліса і Боб выкарыстаў шыфр Цэзара, , Які працуе шляхам зруху алфавіту на пэўную колькасць літар як спосаб стварэння новага алфавіту. Кожная літара ў зыходным алфавіце затым замешчаны адпаведным лістом У новай ссунутыя алфавіту. Любімы нумар Алісы 3, які Боб ведае, такім чынам, яна выкарыстоўвае 3, як яе ключом. Калі яна зрушваецца ангельскага алфавіту на 3 літары, Становіцца D, B становіцца E, C становіцца F, і гэтак далей. Калі яна дабіраецца да канца алфавіту - на лісты, X, Y, Z і - яна проста абцякае вярнуцца да пачатку алфавіту і заменнікі X з A, Y з B, і Z з C. Так што, калі Аліса адпраўляецца ў шыфраваць свае таемныя паведамленне Бобу, а менавіта: "Сустрэнь мяне ў парк на 11 раніцы», яна проста робіць адпаведныя замены. M становіцца P, E становіцца H, і гэтак далей, пакуль яе незашыфраваным выглядзе тэкставага паведамлення ператвараюцца ў зашыфраваны тэкст шыфра: "Phhw тэл DW WKH sdun DW hohyhq ДП" , Безумоўна, не самы рамантычны гучанне, але Аліса лічаць, што ён будзе рабіць. Аліса дае паведамленне для Эвеліна даставіць на дом Боба. Але замест Эвелін бярэ яго да сябе ў пакой і спрабуе ўзламаць код. Адна з першых рэчаў, Эвелін адзначае, што літара H адбываецца 7 раз ў паведамленні, шмат больш разоў, чым любая іншая літара. Ведаючы, што літара Е з'яўляецца найбольш распаўсюджаным у англійскай мове, адбываецца амаль 13% часу, Эвелін мяркуе, што H была заменена E для таго, каб зрабіць таемнае паведамленне і спрабуе з дапамогай ключа ад 3 да расшыфроўкі. Праз некалькі хвілін, Эвелін высвятляе планы Алісы і злосна называе бацькі Алісы. Калі б Аліса і Боб прынята CS50, яны б ведалі гэтага Частата аналізу напад на шыфр Цэзара, , Што дазваляе ёй быць разбіта даволі хутка. Яны таксама ведалі, што шыфр лёгка падвяргаюцца атака грубай сілы, Эвелін якой мог бы паспрабаваць усе магчымыя 25 клавіш, або зрухі ангельскага алфавіту, для таго, каб расшыфраваць паведамленне. Чаму 25 клавіш, а не 26? Ну, паспрабуйце ч. любую літару на 26 пазіцый, і вы зразумееце, чаму. Ва ўсякім выпадку, атака грубай сілы ўзялі б Эвелін трохі даўжэй але не дастаткова доўга, каб утрымаць яе ад зрыву Алісы і Боба планы, асабліва калі Эвелін мае дапамозе кампутара , Якія могуць капіяваць праз усе 25 выпадкаў у адно імгненне. Такім чынам, гэтая праблема таксама пакутуюць іншыя, якія выкарыстоўвалі шыфр Цэзара, і, такім чынам, людзі пачалі эксперыментаваць з больш складанымі шыфрамі замены што выкарыстанне некалькіх значэнняў зруху замест аднаго. Адзін з самых вядомых з іх завецца Виженера шыфр. Як мы можам атрымаць некалькі значэнняў зруху? Ну, а з дапамогай шэрагу ў якасці ключа, мы выкарыстоўваем слова для ключа. Мы будзем выкарыстоўваць кожную літару ў ключавым для генерацыі лікаў, і эфекту з'яўляецца тое, што мы будзем мець некалькі шыфр Цэзара ў стылі ключоў для перамяшчэння літар. Давайце паглядзім, як гэта працуе з дапамогай шыфравання паведамленні Алісы да Боба: Сустрэнемся ў парку на 11-й раніцы Я, асабіста, думаю, бекон смачная, так што давайце выкарыстоўваць яго ў якасці ключа. Калі мы возьмем паведамленне ў незашыфраваным выглядзе, тэкставы фармат, мы бачым, што гэта 25 літар. Бэкон мае толькі 5 літар, так што мы павінны паўтарыць 5 разоў каб ён адпавядаў даўжыні просты тэкст. Бекон Бекон Бекон Бекон Бекон. У якасці кароткага бок, калі лік літар у звычайны тэкст не дзяліць чыста па колькасці літар у ключавых, Мы проста ў канчатковым канчатковае паўтор нашых ключавых рана, выкарыстоўваючы толькі літары мы павінны зрабіць усё, супадаюць. Цяпер мы ісці аб пошуку зрух каштоўнасцяў. Мы збіраемся зрабіць гэта з дапамогай пазіцыі кожнай літары з нашых ключавых - бекон - У А-Я алфавіце. Так як мы кампутарных навукоўцаў, мы хацелі пачаць адлік з нуля, а не 1, так што мы збіраемся сказаць, што становішча першай літары бекон - B - знаходзіцца ў становішчы 1 у нуль-індэксавацца па алфавіце Z, не 2, а пазіцыя роўная нулю, а не 1. Выкарыстоўваючы гэты алгарытм, мы можам знайсці зрух значэнняў для кожнай літары. Каб зашыфраваць тэкст і генераваць зашыфраваны тэкст, мы проста перакласці кожнай літары ў тэкст на зададзеную велічыню, гэтак жа, як мы робім з шыфр Цэзара, упакоўка з Z назад у выпадку неабходнасці. M атрымлівае ссунуты на 1 месца, каб стаць N. Першая E не зрушваецца на ўсіх, але мы зрушваем 2. E на 2 месцы для G і T на 14 месцаў для H. Калі мы будзем працаваць праз звычайны тэкст, мы ў выніку, "Negh ZF AV HUF pcfx BT gzrwep Оз". Зноў жа, не вельмі рамантычна які гучыць, але вызначана загадкавым. Калі Аліса і Боб ведаў пра Виженера шыфр, б яны былі ў бяспецы ад цікаўных вачэй Эвелін? Што вы думаеце? Ці хочаце вы увайсці ў свой банкаўскі рахунак, калі ваш банк вырашыў выкарыстаць Шыфр Виженера для шыфравання сувязі з выкарыстаннем пароля ў якасці ключа? Калі б я быў табой, я б не стаў. І ў той час Эвелін можа быць заняты дастаткова доўга для Алісы і Боба, каб іх сустрэць у эксплуатацыю, яно таго не каштуе для Алісы і Боба, каб рызыкаваць. Шыфр Виженера адносна лёгка разбіць, калі вы ведаеце даўжыню ключа таму што тады вы можаце звяртацца зашыфраваны тэкст шыфра як твор некалькіх пераплеценых шыфраў Цэзара. Знаходжанне даўжыні ключа не вельмі складана, альбо. Калі зыходны тэкставыя паведамленні дастаткова доўга, што некаторыя словы сустракаюцца некалькі разоў, у рэшце рэшт вы ўбачыце паўтарэння, якія ўзнікаюць у зашыфраваны тэкст шыфра, як у гэтым прыкладзе, дзе вы бачыце MONCY з'яўляюцца двойчы. Акрамя гэтага, вы можаце выканаць грубай сілы атакі на шыфр. Гэта сапраўды займае значна больш, чым грубай сілай атакі на шыфр Цэзара, што можна зрабіць амаль імгненна з дапамогай кампутара так як замест 25 выпадкаў, каб праверыць вас ёсць 26 ⁿ - 1 магчымасцям, дзе п даўжыні невядомага ключа. Гэта таму, што кожная літара ў ключы можа быць любы з 26 літар, А да Z, а разумны чалавек паспрабуе выкарыстаць ключ, які не можа быць знойдзена ў слоўніку, Гэта азначае, што вы павінны праверыць усе дзіўныя камбінацыі літар, як ZXXXFF, і не толькі пара соцень тысяч слоў у слоўніку. Мінус 1 прыходзіць у матэматыцы, таму што вы не хацелі б выкарыстоўваць ключ толькі гэта, так як з нашай нулявы індэксаваць алфавіт, які дасць вам той жа эфект як з дапамогай шыфра Цэзара з ключавым нуля. Ва ўсякім выпадку, 26 ⁿ - 1 сапраўды становіцца вялікім даволі хутка, але пакуль вы дакладна не хацелі б паспрабаваць зламаць шыфр рукой такім чынам, гэта, безумоўна, выканальныя з дапамогай кампутара. На шчасце для Алісы і Боба, а таксама для онлайн-банкінгу, крыптаграфія распрацавалі больш бяспечныя спосабы для шыфравання сакрэтных паведамленняў ад цікаўных вачэй. Зрэшты, гэта тэма для іншага часу. Мяне клічуць Нейт Хардисон. Гэта CS50.