[Powered by Google Translate] [維瓊內爾密碼] [內特 - 哈迪森 - 哈佛大學] [這是CS50。 - CS50.TV] 愛麗絲見面。 Alice有一個暗戀鮑勃。 幸運的是愛麗絲,,Bob也有她的眼睛。 不幸的是,他們萌芽的浪漫, 不僅是愛麗絲的父母不同意鮑勃, 但在Bob,Alice的最好的朋友,伊夫林,有一個暗戀 和自私的希望,讓他們除了不惜一切代價。 發送秘密消息給對方Alice的父母無法理解, Alice和Bob已經使用了愷撒密碼, 它的工作原理是由一定數目的字母字母表轉移 作為一種方法來生成一個新的字母。 原來的字母每一個字母對應的字母,然後取代 在新轉向字母。 愛麗絲最喜歡的數字是3,Bob知道, 所以她用她的鑰匙。 當她轉移由3個字母的英文字母, A變成B變成D,E,C變成F, 等等。 當她得到的端部中的字母 - 字母X,Y,和Z - 她只是環繞的字母開始 x替換的A與B,Y和Z與C 所以,當愛麗絲進入加密了她的秘密消息發送給Bob, 即“相約在上午十一時,我在公園” 她只是作出適當的替代。 M為P,E成為H,等等直到她的未加密的純文本消息 變成加密的密文: “Phhw pH值DW WKH sdun DW hohyhq DP” 絕對不是最浪漫的冠冕堂皇的, 但愛麗絲相信它會做。 愛麗絲的消息伊夫林交付給Bob的房子。 但是,伊夫林,而不是把它拿回自己的房間,並嘗試破解密碼。 其中的第一件事情伊夫林通知,字母H在郵件中出現了7次, 有更多的時間比任何其他字母。 知道的字母“E”是英語中最常見的, 幾乎13%的時間發生, 伊夫林猜測,H被取代為E,為了使秘密信息 ,並試圖使用的密鑰3對其進行解密。 在幾分鐘之內,伊夫林計算出Alice的計劃和邪惡叫愛麗絲的父母。 Alice和Bob採取CS50,他們會知道這 頻率分析攻擊的愷撒密碼, 這使得它能夠相當迅速被打破。 他們也已經知道的密碼很容易受到蠻力攻擊, 據此,伊夫林可能已經嘗試了所有可能的25個按鍵, 或輪班的英文字母, 為了破譯的消息。 為什麼25個鍵,而不是26嗎? 那麼,嘗試將任何字母,26個職位,你就會明白為什麼。 無論如何,蠻力攻擊伊夫林的時間長一點 但沒有足夠長讓她挫敗Alice和Bob的計劃, 特別是如果伊夫林具有借助計算機 這可能撕裂通過25例瞬間。 因此,這個問題也困擾著其他人誰使用了愷撒密碼, 因此,人們開始嘗試更複雜的替換密碼 使用多個偏移值,而不只是一個。 其中最知名的是所謂的維瓊內爾密碼。 我們如何獲得多個移值嗎? 好了,而不是使用大量的關鍵,我們用一個詞來形容的關鍵。 我們將使用中的每個字母的鍵,生成一個數字, 的效果是,我們將有多個愷撒密碼式按鍵移動信。 Alice的消息進行加密,鮑勃讓我們來看看它是如何工作的: 我在公園見面在上午十一時 我個人認為培根是美味的, 讓我們使用的關鍵。 如果我們把信息在未加密的純文本格式, 我們看到,這25個字母長。 培根只有5個字母,所以我們需要重複5次, 以使其與純文本的長度相匹配。 培根熏肉,臘肉臘肉臘肉。 作為一個簡短的一邊,如果在純文本的信件數量 沒有劃分乾淨的字母數的關鍵, 我們剛剛結束最後重複我們的主要初, 只使用字母,我們需要做的一切相匹配。 現在我們去發現的位移值。 我們要做到這一點,我們的每一個字母鍵 - 培根的位置 - 在A到Z的字母。 由於我們的計算機科學家,我們喜歡在零,而不是1開始計數, 所以我們說的第一個字母培根的位置 - B - 是在零到Z的字母索引一個位置, 不為2,和A是零的位置,而不是1。 使用這種算法,我們可以發現每個字母的位移值。 要加密的純文本,並生成密文, 我們只是轉移在純文本中的每個字母指定的量, 就像我們做的愷撒密碼,包裹從Z到A,如果必要的。 中號被移1位,成為N. 第一個E不轉移,但我們轉向第二個E到G的2個名額 14位和T H. 如果我們的工作,通過純文本,我們結束了, “Negh ZF AV福林pcfx BT gzrwep盎司。” 同樣,不是很浪漫的冠冕堂皇的,但絕對是神秘的。 如果Alice和Bob稱有關維瓊內爾密碼, 他們已經從Evelyn的窺探安全嗎? 你怎麼想? 你想登錄到您的銀行帳戶,如果您的銀行決定使用 維瓊內爾密碼來加密你的通信使用您的密碼,您的鑰匙? 如果我是你,我不會。 而伊夫林可能會不停地忙碌著足夠長的時間,Alice和Bob有自己的滿足, 它不值得為Alice和Bob的機會,它。 維瓊內爾密碼是比較容易突破的,如果你知道的密鑰長度 因為那樣的話,你可以把加密的密文 作為幾交織凱撒密碼的產品。 是不是非常難找到的密鑰長度。 如果原來的純文本消息是足夠長的時間,有些話中多次出現, 最終,你會看到重複出現在加密的密文, 在這個例子中,在那裡你看到MONCY出現兩次。 此外,還可以進行暴力攻擊的密碼。 這確實明顯長於愷撒密碼蠻力攻擊, 這可以通過與計算機幾乎瞬間 自25例,而不是檢查你有26ⁿ - 1的可能性, 其中n是未知的密鑰的長度。 這是中的關鍵可能是因為每個字母的26個字母, 從A到Z,和一個聰明的人會嘗試使用一鍵無法在字典中找到的, 這意味著你必須測試所有奇怪的字母組合,如ZXXXFF, 不只是一對夫婦十萬字在字典中。 減1,數學,因為你不希望使用一個密鑰,只有A的, 因為我們的零索引字母,會給你同樣的效果 使用愷撒密碼的關鍵為零。 總之,26ⁿ - 1沒有得到大而迅速, 但是當你絕對不會想嘗試打破了密碼的手這樣, 這是一台電腦肯定是可行的。 幸運的是,Alice和Bob,以及網上銀行, 密碼專家已經開發出更安全的方式來加密秘密信息 從窺視的眼睛。 然而,這是一個主題為另一個時間。 我的名字是Nate哈迪森。這是CS50。