Playfair密碼

算法描述:Playfair密碼出現於1854年,它將明文中的雙字母組合做爲一個單元對待,該加密算法是基於一個關鍵詞(密鑰)的,該關鍵詞填寫在一個5*5的矩陣中(去出重複字母和字母j),經過該矩陣完成對明文、密文的加密、解密過程。 
  加密描述:Playfair加密算法將明文中的雙字母組合做爲一個單元對待,並將這些單元轉換位密文雙字母組合。加密過程把密鑰填寫在一個5*5的矩陣中(去出重複字母和字母j),矩陣中其它未用到的字母按順序填在矩陣剩餘位置中。 
  對明文加密規則以下: 
  1 若p1 p2在同一行,對應密文c1 c2分別是緊靠p1 p2 右端的字母。其中第一列被看作是最後一列的右方。 
  2 若p1 p2在同一列,對應密文c1 c2分別是緊靠p1 p2 下方的字母。其中第一行被看作是最後一行的下方。 
  3 若p1 p2不在同一行,不在同一列,則c1 c2是由p1 p2肯定的矩形的其餘兩角的字母,而且c1和p1, c2和p2同行。 
  4 若p1 p2相同,則插入一個事先約定的字母,好比x。 
  5 若明文字母數爲奇數時,則在明文的末端添加某個事先約定的字母做爲填充。 
  解密描述:Playfair解密算法首先將密鑰填寫在一個5*5的矩陣中(去出重複字母和字母j),矩陣中其它未用到的字母按順序填在矩陣剩餘位置中,根據替換矩陣由密文獲得明文。    對密文解密規則以下:    1 若c1 c2在同一行,對應明文p1 p2分別是緊靠c1 c2 左端的字母。其中最後一列被看作是第一列的左方。    2 若c1 c2在同一列,對應明文p1 p2分別是緊靠c1 c2 上方的字母。其中最後一行被看作是第一行的上方。    3 若c1 c2不在同一行,不在同一列,則p1 p2是由c1 c2肯定的矩形的其餘兩角的字母,而且c1和p1, c2和p2同行。
相關文章
相關標籤/搜索