第二題 換位加密法

問題描述

       假設 Alice 要傳送一份機密訊息 P 給 Bob,為了避免機密訊息曝光,Alice 打算使用一種換位加密法來保護此機密訊息。換位加密的過程是先輸入一個金鑰字串 K 及機密訊息字串 P,再將機密訊息 P 以金鑰字串長度為行數,由左至右、由上而下依序排列,排列完成後,以金鑰 K 之字母順序值為選取順序,將機密訊息依照行的方式由上而下進行讀取,即可得到密文 C。

       舉例來說,若輸入 K="GREAT", 字母順序值則為 3 4 2 1 5,若機密訊息 P="TAIWANCANHELPME",則加密方式如下圖:

GREAT
34215

TAIWA
NCANH
ELPME

       密文 C="WNMIAPTNEACLAHE" Alice 運算得到密文 C 後,再將密文 C 傳送給 Bob,即可達到秘密通訊的目的。

輸入說明

       第一列輸入金鑰字串 K,例如:GREAT。 第二列輸入機密訊息字串 P,例如:TAIWANCANHELPME。
3 ≤ K < P ≤ 1000。(字串長度)
K 與 P 文字內容只有英文字母大小寫及阿拉伯數字。

輸出說明

       輸出答案為密文 C,例如: WNMIAPTNEACLAHE。

範例
輸入 輸出
GREAT
TAIWANCANHELPME
WNMIAPTNEACLAHE
DRAGON
FAKENEWSISBADTHING
KIHFWDESIEAGNBNAST