Vigenere Cipher
出自KMU Wiki
(修訂版本間差異)
在2008年3月20日 (四) 17:32所做的修訂版本 (編輯) Sn0910 (對話 | 貢獻) ←上一個 |
在2008年3月20日 (四) 22:17所做的修訂版本 (編輯) (撤銷) Sn0910 (對話 | 貢獻) 下一個→ |
||
第1行: | 第1行: | ||
- | <pre>維吉尼爾加密法(Vigenere Cipher)</pre> | + | <pre>'''<u>維吉尼爾加密法(Vigenere Cipher)</u>'''</pre> |
是古典加密法的一種,其採用取代(substitution)的加密技術,也就是用另外的字元來取代原先的字元。 | 是古典加密法的一種,其採用取代(substitution)的加密技術,也就是用另外的字元來取代原先的字元。 | ||
第12行: | 第12行: | ||
4.將明文字母與對應位置的金鑰字母相加得到密文C,Ci=Pi+Ki (mod26) | 4.將明文字母與對應位置的金鑰字母相加得到密文C,Ci=Pi+Ki (mod26) | ||
- | **注意** 字母A-Z ⇒ 數字0-25 | + | ''' **注意** 字母A-Z ⇒ 數字0-25''' |
{| cellspacing="1" cellpadding="1" width="585" border="1" | {| cellspacing="1" cellpadding="1" width="585" border="1" | ||
第85行: | 第85行: | ||
6.或者更方便快速的方法,就是有張對照表 | 6.或者更方便快速的方法,就是有張對照表 | ||
- | [[Image:Sn0910.png|Image:sn0910.png]] | + | [[Image:Sn0910.png|Image:sn0910.png]]<br> |
在2008年3月20日 (四) 22:17所做的修訂版本
'''<u>維吉尼爾加密法(Vigenere Cipher)</u>'''
是古典加密法的一種,其採用取代(substitution)的加密技術,也就是用另外的字元來取代原先的字元。
其加密方式為.....
1.給定一明文字串P,如:TAKE THAT HILL
2.給定一金鑰K,如:YANG
3.當明文與金鑰字母長度不同時,重複金鑰字母使其與明文長度相同,如: YANG YANG YANG
4.將明文字母與對應位置的金鑰字母相加得到密文C,Ci=Pi+Ki (mod26)
**注意** 字母A-Z ⇒ 數字0-25
位置 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | ||
明文 | T | A | K | E | T | H | A | T | H | I | L | L | ||
金鑰 | Y | A | N | G | Y | A | N | G | Y | A | N | G | ||
密文 | R | A | X | K | R | H | N | Z | F | I | Y | R |
5.或者用相對位移方式來計算,如位置1明文為T,金鑰是Y,而Y是A移動24個位置的結果,則T也需相對移動24個位置,得到密文字母R,以此類推
6.或者更方便快速的方法,就是有張對照表