• 検索結果がありません。

暗号の数理レポート 

N/A
N/A
Protected

Academic year: 2021

シェア "暗号の数理レポート "

Copied!
2
0
0

読み込み中.... (全文を見る)

全文

(1)

暗号の数理レポート 

次の

2

つの課題のいずれかをレポートとして提出すること。ただし,課題

1

20

点満点,課 題

2

30

点満点とする。

課題

1 (1)

任意の自然数

m, n

を入力したとき,互いに素でなければ,最大公約数を表示し,互い に素のときは

mp + nq = 1

をみたす整数

p, q

を出力する

Java

プログラムを作成せよ。アルゴリズムは拡張ユクリッ ドアルゴリズムを用いること。

(2) 40

桁〜50桁の自然数

m, n

をランダムに発生させ,それに対し

(1)

のプログラムを適

用せよ。その結果を

3

組の

m, n

について計算せよ。

課題

2 (1) n, b

b < n

となる任意の自然数とする。nが合成数であるかを

b

を用いて判定する

Miller

テストを実行する

Java

プログラムを作成せよ。

(2) 45

桁の自然数

n

をランダムに発生させよ。また

b < n

となる自然数

b

をランダムに発

生させよ。この

n, b

に対し

(1)

のプログラムを適用せよ。合成数であるという結論が得 られない場合は別の

b

について

(1)

のプログラムを実行させよ。これを

5

回くり返せ。

この計算結果を報告せよ。

プログラムは情報センターの環境で動くことを確認すること。

Java program

には

BigInteger

クラスを使うのが簡単である。

http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/math/BigInteger.html

参照。

BigInteger(int numBits, Random rnd)

のより

0 2numBits

の範囲の整数がランダムに生 成される。例えば

/////////////////////////////////////////////////////////

import java.math.BigInteger;

import java.util.Random;

import java.io. \uff0a ; public class BigPrime {

public static void main (String args[ ]){

BigInteger p = new BigInteger ( 200, new Random( ) );

...

} }

/////////////////////////////////////////////////////////

などとすると

0 2

200の範囲の整数

p

がランダムに生成される。

BigInteger

クラスにはいろいろな

constructor,method

があるが,課題

1

に関しては和,積,

商などの基本的なもの意外は使用してはいけない。

(2)

課題

2

については

gcd(BigInteger val)

modPow(BigInteger exponent, BigInteger m)

など計算に必要な

method

は使ってよいが

Miller

テストを行う

method

は使ってはいけない。

プログラムを作成した人は

(1)

簡単なアルゴリズムの説明

(2)

プログラムの使用方法

(3)

計算結果

mail

の本文にそれぞれ独立した項目として書き,プログラムを独立したファイル

(そのま

まで実行可能な状態のファイル)として添付して

[email protected]

まで送るこ と。勿論名前,学生番号も忘れずに。

ただし「実行可能」の意味は次の通り;一連の操作が必要な場合はその手順を順に記したもの でもよい。例えば実行には

subdirectory XXX

にある

file1,file2,file3

が必要で,そのファイ ルが存在した場合

exec-file

という名前のファイルが実行可能とする。file1,file2,file3を例え ば

zip

でまとめ

yyy

とする。unzip yyyとすると

subdirectory XXX

にされるように設定し てあるとき,ファイルとして

exec-file

yyy

を添付し,リストとして,「unzip yyy; ./exec-

file」と書いたものを沿えて提出。ただし unzip

等が任意の

directory

で実行可能でないとき

full-path

で書くこと。shell scriptが書ける人は

shell script

の形でもよい

(というかその

方が私は楽です)。

ただしプログラム・説明文を含めて自分で書いたと思われないレポート

(ネットからの copy&paste

を含む)ないし他のレポートと同一と判断されるレポートは採点の対象にはならない。

締切は

2

23

(木)

とする。

参照

関連したドキュメント

子どもが、例えば、あるものを作りたい、という願いを形成し実現しようとする。子どもは、そ

奥付の記載が西暦の場合にも、一貫性を考えて、 []付きで元号を付した。また、奥付等の数

奥付の記載が西暦の場合にも、一貫性を考えて、 []付きで元号を付した。また、奥付等の数

ただし、このBGHの基準には、たとえば、 「[判例がいう : 筆者補足]事実的

あれば、その逸脱に対しては N400 が惹起され、 ELAN や P600 は惹起しないと 考えられる。もし、シカの認可処理に統語的処理と意味的処理の両方が関わっ

それに対して現行民法では︑要素の錯誤が発生した場合には錯誤による無効を承認している︒ここでいう要素の錯

いてもらう権利﹂に関するものである︒また︑多数意見は本件の争点を歪曲した︒というのは︑第一に︑多数意見は

行ない難いことを当然予想している制度であり︑