アットウィキロゴ

課題1(11月14日提出期限) 【全員対象問題】

下記の指示に従って問題を解き、解答だけではなく、途中の経過と共に、
課題提出先([email protected])までメールで送信しなさい。
メール送信するとき、件名に自分の学籍番号を付けること。(正解は10通り!)

ある企業が社内のネットワーク間で極秘文書を送るのに次のような暗号を使うことにした。

使用文字とそのコード(JIS 8単位コード)

_
この表の左端の数は1バイトの上位4ビット(16進数)、上端の数は下位4ビット(16進数)を表す。
例えば、文字 A は 41 、記号 ¥ は 5C と表される。

暗号の作り方

 暗号は、送信する文字列を次のように加工してできる:
① 送信する文字列を上のコード表を用いて16進数のコードに直す。
② コードを2進数のビット列に直す。
③ ②で得られたビット列の左端に2ビットの0、また右端に2ビットの0を余分に付ける。
④ ③で得られたビット列を左から4ビットずつ区切り、16進数のコードにする。
⑤ ④で得られたコードを暗号として送信する。

(例) 送信文が『IBM』のとき

送信文       I         B         M
①16進数コード    4    9    4    2    4    D
②2進数ビット列  0100 1001 0100 0010 0100 1101
③余分な0を付ける  0001 0010 0101 0000 1001 0011 0100
④16進数コード    1    2    5    0    9    3   4  (暗号文) 

(1).送信文が『LUCKY』のとき、この暗号で送信される暗号文を作れ。

(2).暗号文が『15105312C』のとき、送信文を解読せよ。

(3).余分な0を付ける部分を「左に3ビットのXXX、右に1ビットのX、をつける」に変更する。
 ただし、XXXXの部分は、各自の学籍番号の最後の数字を2進数に変換したものとする。
 例えば、「5」であれば「0101」として、「左に3ビットの010、右に1ビットの1、をつける」に変更する。
 通信文『LOVE』を、それぞれの学籍番号に応じて、暗号に直せ。

      (以上3問)

最終更新:2013年11月10日 17:18