リンク

デコード結果

プレイフェア
キー (A-Z)

エンコード結果

プレイフェア
キー (A-Z)

プレイフェア暗号について

プレイフェア暗号は、2文字ずつの組を5×5の文字表で置換する換字式暗号です。

例えば、キーが「SECRET」で平文が「HELLO」の場合、以下のように暗号化されます。

平文   : HELLO
暗号文 : ISKYIQ

暗号化では、まず平文を2文字ずつの組にします。「LL」など同じ文字が組になる場合は、間に補助文字「X」を挿入します。また、最後に1文字だけ残る場合も、補助文字「X」を追加します。

HE LX LO

次に、5×5 (計25マス) の暗号表を用意します。暗号表には、25マスに対して25文字のアルファベットを書き入れますが、アルファベットは26文字のため、通常は「I=J」として同じマスにまとめます。

暗号表には、まずはキーの文字を重複を省いてマスに書き入れます。キーが「SECRET」の場合は、重複している2つ目の「E」は書き入れません。続けて、その後に「ABCDEFGHIKLMNOPQRSTUVWXYZ」を書き入れますが、ここでもキーと重複している文字は書き入れません。これにより、重複した文字のない 5×5 の暗号表が完成します。

S E C R T
A B D F G
H I K L M
N O P Q U
V W X Y Z

この暗号表を用いて、以下のルールで2文字ずつ暗号化していきます。組みの2文字が暗号表のどの位置関係かにより、変換方法が異なります。

  • 同じ行にある場合: それぞれ右隣の文字に変換します(一番右端の場合は一番左に戻る)。
  • 同じ列にある場合: それぞれ下隣の文字に変換します(一番下の場合は一番上に戻る)。
  • 別の行・列にある場合: その2文字を角とする長方形をイメージし、残りの2つの角の文字に変換します。
S E
A B
H I

K L
P Q
X Y

I K L
O P Q
HE LX LO
↓
IS KY IQ

復号では、暗号文を同じ文字表で2文字ずつ処理します。補助文字「X」は自動的には削除されない点に注意してください。