暗号について勉強しています。
公開鍵暗号で公開鍵と秘密鍵を決められた方式で生成するとあるのですが、鍵を生成するための式はあるのでしょうか?

このQ&Aに関連する最新のQ&A

A 回答 (3件)

参考URLの「RSA 暗号化アルゴリズム」の項が「公開鍵暗号を実現する数学的な技術情報」とのことですので参考になるかと。



参考URL:http://www.e-net.or.jp/user/missing-link/pgp/pgp …
    • good
    • 0

鍵をどのように生成するかが,公開鍵暗号を実現する上での重要なポイントです。



鍵の生成方法によって,
 RSA 暗号,ElGamal 暗号,楕円曲線暗号,
など各種の方式があります。

# もう遅い?

参考URL:http://www.ecom.or.jp/qecom/about_wg/wg05/cr-swg …
    • good
    • 0

橋本晋之介 著


RSA (ソフトバンク)

p187、188,189
を見て下さい。
 ここには、乱数を発生させて、
あるビット数の数を作り
その数が、素数か否かをテストする
次に、その素数の性質が
暗号の鍵として適当かどうかチェックする
ということが書いてあります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q「A地点とB地点にいる二人が同時に出発して接近した」この問題の解き方を教えてください

「A地点とB地点にいる二人が同時に出発して接近した」この問題の解き方を教えてください

問題
A地点にいるA君と、B地点にいるB君が同時に出発して接近した。
A君は時速4キロ、B君は時速8キロで移動した
A地点とB地点は10キロ離れている
さて二人が接触する地点の位置はどこで、出発時刻から何分後か?
道中は平坦な直線であり途中に坂や障害などはないとする

さてこの問題の解き方を教えてください

小学校算数での解き方、
中学校数学での解き方、
高校数学での解き方、
それぞれ教えてください

Aベストアンサー

A君は時速4キロ、B君は時速8キロで近づいているので、
合わせて時速12キロで近付いています。
2人が接触するのは10/12=50/60時間=50分です。

t分後に接触したとして、
A君は時速4キロで、4*t/60キロ移動しています。
B君は時速8キロで、8*t/60キロ移動しています。
二人は合計で10キロ移動したので、
4*t/60+8*t/60=10
12t=600
t=50分後です。

A君は時速4キロでxキロ、
B君は時速8キロでyキロ、
走った時に接触したとして、
x+y=10
x/4=y/8
なので、
x=2y
3y=10
y=10/3
10/3÷4=10/12時間=50分後です。

Q公開秘密鍵方式

素因数分解の困難さを利用したRSA方式は理解できましたが
楕円曲線を利用する方式はもっと短い鍵で同レベルの安全性を確保できるようです。そこで次のことに興味が出てきました。
1.楕円曲線の離散対数問題とはその概要
2.RSAと比べて、鍵の量はどの程度で済むのでしょうか?
高校レベルの数学で何とか分かるように説明をいただけないでしょうか

http://ja.wikipedia.org/wiki/%E6%A5%95%E5%86%86%E6%9B%B2%E7%B7%9A%E6%9A%97%E5%8F%B7

Aベストアンサー

そもそも楕円曲線を使って暗号システムを作るときには, 楕円曲線上の 2点 P, Q に対する「加算」P+Q をもとに「スカラー倍」mP (m は整数) という演算を定義します. で, P と Q = mP から m を求めるという問題が「楕円曲線上の離散対数問題」です. どこが「対数」なのかよくわからないかもしれませんが, RSA では a, b に対し「乗算」ab から「べき乗」a^m を定義し, これに基づいて暗号システムを作っています. で, この場合 a と b = a^m から m を求める計算が「離散対数問題」なので, 問題の本質は (「乗算」を「加算」に, 「べき乗」を「スカラー倍」に読み替えると同じ) です.
ただし, (一般的な場合には) index calculus という「普通の離散対数問題に対しては準指数時間アルゴリズムとなる方法」が使えないようなので, その分だけ「短い鍵でも安全」ということになります.
2. で, RSA に比べると「力ずくで解こうとしても時間がかかる」分「安全」といわれるわけですが, だいたい RSA などの 1/6 程度とされているんじゃないかなぁ. 今だと RSA の 1024bits に対して ECDH とかでは 160bits とかではないかな.

そもそも楕円曲線を使って暗号システムを作るときには, 楕円曲線上の 2点 P, Q に対する「加算」P+Q をもとに「スカラー倍」mP (m は整数) という演算を定義します. で, P と Q = mP から m を求めるという問題が「楕円曲線上の離散対数問題」です. どこが「対数」なのかよくわからないかもしれませんが, RSA では a, b に対し「乗算」ab から「べき乗」a^m を定義し, これに基づいて暗号システムを作っています. で, この場合 a と b = a^m から m を求める計算が「離散対数問題」なので, 問題の本質は (「乗算」...続きを読む

Q問題の解き方をHPにのせるときの著作権について

はじめまして。
HPに学習ページをつくろうと思っています。
教科書の章末問題などでは、問題と答えだけしかのってないものがありますよね。
自分流に問題をといて、解き方をHP上にのせるのは
著作権の侵害になるのでしょうか?
「~~という本のP32の問1の解き方」とか書いたら侵害になるのでしょうか?
こういうタイトルをかかないで、問題と解き方だけを書いたほうがいいのでしょか?

Aベストアンサー

> 自分流に問題をといて、解き方をHP上にのせるのは
著作権の侵害になるのでしょうか?

なりません。

> 「~~という本のP32の問1の解き方」とか書いたら侵害になるのでしょうか?

もし、このURLに書いてみる内容と合致すれば、
問題ないのかも。
http://www.cric.or.jp/qa/sodan/sodan6_qa.html

私も法律家ではないので詳しくはないですが、
こちらを参考にされてみてはいかが?
http://www.cric.or.jp/

QRSA(公開鍵)

a=2, b=3として以下の方法(RSA)で公開鍵、秘密鍵を作成し、平文4を暗号化したいのですが、暗号化しても4のままになってしまいます。これって暗号化されているのでしょうか?どなたかわかる方がいましたらよろしくお願いします。
1-二つの素数を決める。これをa,bとする。
2-a*b=c (cを合成数)
3-d=(a-1)(b-1)という自然数dを求める
4-f*e/dで余りが1となるようなfを求める。(秘密鍵)
暗号文 =M(平文)^e / c の余り。

Aベストアンサー

ちょっと計算すればわかるんだけど 4^n ≡ 4 (mod 6) for n > 0.
もっと大きな値を使わないとダメです.

Q因数分解の解き方について

因数分解の解き方について
質問です。

3x2 -7x+2

たすき掛けをつかわない
因数分解の解き方を
教えてください。

たしか、海外の学生の解き方で、
まず数字をかけるやり方だったと思います。

分数などにはせず、
最後は見事に解答が出る方法です。

思い出せず、モヤモヤしています。
よろしくお願いします。

Aベストアンサー

>>>たしか、海外の学生の解き方で、まず数字をかけるやり方だったと思います。

ありましたね。

>>>思い出せず、モヤモヤしています。

私もサイトをお気に入りに入れていなかったので、もやもやしています。^^

たぶん、x^2 につく係数を整数の2乗にするんじゃなかったかと思います。

これでうまくいっているのかわかりませんが、3をかけて
9x^2 - 3×7x + 6 = (3x+a)(3x+b)
 = 9x^2 + 3(a+b)x + ab
としてみると、
a+b = -7
ab = 6
なので、
a=-1、b=-6

わりと楽に行きました。
最後の仕上げに、3で割って元に戻しましょう。

ただし、これが思い出せないやり方と同じなのかわかりませんが・・・

Q公開鍵簿とは?

暗号について勉強しています。本などの参考文献を読んでいると、公開鍵暗号では利用者Aが秘密鍵と公開鍵を生成し、公開鍵を公開簿などに登録して、Aと連絡を取りたいBが公開された鍵を利用して、文章を暗号化するとされているのですが、公開鍵簿となる物(同等の物)は実際にあるのでしょうか?

Aベストアンサー

こんちゃ (^^ゝ
>公開鍵簿となる物(同等の物)

ええありますよ!
PGP(Pretty Good Privacy)ですね。

>公開鍵暗号では利用者Aが秘密鍵と公開鍵を生成し、
>公開鍵を公開簿などに登録して、

私がAさんだとしますよね。
するとPGPで公開鍵を作成しPGPサーバにUPでするんです。
そのPGPサーバーがここでは公開簿の役割ですね。

世界中の公開鍵(PGP)がこのPGPサーバー(公開簿)にのせてあります。 
暗号ってのは有効期限付きもあるので、その期限が切れたり
変更したりして鍵そのものが有効鍵でなくなると使えません。

その変更した旨わからせるために新しい鍵を
サーバーにのせておけば Bは変更したことに気づけるんです。AとBが直接連絡をとれなくても。

うちの会社では自宅で仕事をするときはPGPで暗号化して
ドキュメントファイルとかの安全をはかります。
まあ やってみれば?
pgp 無料
http://www.biwa.ne.jp/~mkoma/pgp.html

PGP説明
http://www.sourcenext.com/products/tetsu_sec/mail.html#mail

ちなみにこんなのが暗号。

-----BEGIN PGP MESSAGE-----
Version: PGPfreeware 5.5.3i for non-commercial use <http://www.pgpi.com>

qANQR1DBwU4DVy55KIf/BjkQB/0WOP2BLdFlHttJ/ZfA+M8jFCuX55jq8WtRntQq
B/w1/rdolDvgE6SsZnfoYAqqj6Bp6VSWLk1DY03yYZqKqw5Mo4tsLcG+jw+QhY0v
cMxgjsyldo4a2BkONup4vhrtqcCeuYBZQ1JEySYuQzKsGSqewc9ESdjV7EbB655h
VNqNtUwsolhLQMfQd7twwaDFo8M77SeTpfJQl47riOCJa6cK67nG0FBn6k+vCxig
1x8NQ6VUymQqVgypkt635huoPyMUMCo0eV86Hu2xhGHvZTOKxJOY+V43/uv7lROi
QoZHQu3AATN9mmBEXQ9beXdLY7qacl6SGEDUXbZUJ/YnjP9wB/474BaLtnpoJ3jK
uNb4pURXrN1jWofe/aERIabBKMeomuHkDdpP5lSL+/HHdXq2WMuwx18Dpx9x5ks1
pDMQH+4JMPGDIxPlUmYXxNZSThNeVbSKhDJ4iUAWDT5qyorjdEQceA5MCC9AO5u7
GMC5MXtlnwnvjJ0+3/Tp0PRYm1OoxBL7MhN7te6H1m5uJn8LUjgiEdMQ8imuEghI
qPKvNJwKRo6rkHkqMBzmeX5E5na6LXRmmqxBZbCpTkB0VmrwdCOAYu8cwFWS47Zr
MMdbme/wTaO5k5BrE/rso+A2Fd4M6mKF2dyl1sCuJa1751aLdJDv5Qtw7COTlI8D
KzwU04BWyWS08wM22Ie/bKiLoZ3QfUwr+kBjbSY7NXpp+htrJZATzkVGIWfZfUb6
VwoARPKxcQ+qEOJ3tzhHv7jpMsfASpbJ1b2zEZn3aeBFYECPzcIMTE00bH3hah67
EldgcDPUcStzGFIr
=Yr+Q
-----END PGP MESSAGE-----


これを解読すると

コレハアンゴウ デス 
スパイ エイガ モ ビックリ ズラズラ
(・o・) oh!Nooo!

てな文章になるんですよ。くす。
ではでは!
 

参考URL:http://www.sourcenext.com/products/tetsu_sec/mail.html#mail

こんちゃ (^^ゝ
>公開鍵簿となる物(同等の物)

ええありますよ!
PGP(Pretty Good Privacy)ですね。

>公開鍵暗号では利用者Aが秘密鍵と公開鍵を生成し、
>公開鍵を公開簿などに登録して、

私がAさんだとしますよね。
するとPGPで公開鍵を作成しPGPサーバにUPでするんです。
そのPGPサーバーがここでは公開簿の役割ですね。

世界中の公開鍵(PGP)がこのPGPサーバー(公開簿)にのせてあります。 
暗号ってのは有効期限付きもあるので、その期限が切れたり
変更したりして鍵そのものが有効...続きを読む

Q指数関数の解き方

a2x=3の時

  a3x-a-x
-----  この解き方が解らないので
   ax+a-x
         解き方のヒント教えて

Aベストアンサー

分子と分母に a^x をかけましょう。

分子は a^{4x}-1 = (a^{2x})^2-1 = 3^2 - 1
分母は a^{2x}+1 = 3 + 1

となります。

Qアルファベットの配列を数字の配列に置き換えた暗号で暗号化の為、キ-ワ-

アルファベットの配列を数字の配列に置き換えた暗号で暗号化の為、キ-ワ-ド”HELLO”を用いると”JAPAN ”が”18 06 02 13 03 ”と表示される。同じキ-ワ-ドを用い、”TOKYO”を現したものは?
という問題が有ります。

回答では、”02 20 23 11 04 ”との事です。

どの様に解けば良いのでしょうか?

Aベストアンサー

アルファベットにおける文字の順序を考えて、和をとります。

JAPAN+HELLO
=(10、1、16、1、14)+(8、5、12、12、15)
=(18、6、28、13、29)
=(18、06、02、13、03)
26を超えたら、1に戻ります(26を引きます)。
よって、
TOKYO+HELLO
=(20、15、11、25、15)+(8、5、12、12、15)
=(28、20、23、37、30)
=(02、20、23、11、04)

Q不等式の解き方教えてください!

不等式の解き方教えてください!
(100+z)-(100+z)×0.2≧100
↑↑の解き方を教えてください!

Aベストアンサー

(100+z)-(100+z)×0.2≧100

わかりやすく、ばらばらにしましょう。

100+Z-0.2×100-0.2×z≧100

つぎにまとめましょう。

(1-0.2)×z+(1-0.2)×100 ≧100

けいさんをすすめましょう

0.8×z+0.8×100≧100

さらにすすめましょう

0.8×z+80≧100

つぎに、りょうほうのしきから80をひいてみましょう

0.8×z+80-80 ≧100-80

ぱずるといっしょですね。

0.8×z ≧20

こんどはりょうほうのしきを0.8でわってみましょう

0.8÷0.8×z ≧20÷0.8

z≧20÷0.8=200÷8=100÷4=50÷2=25

だから・・・

z≧25

となりますね

Q基底Bで生成される位相と部分基底で生成される位相の定義について質問

英語での講義で
基底Bで生成される位相と部分基底で生成される位相の定義がわからず困っています。

Def
If X is a set,a basis for a topology on X is a collection B of subsets of X (called basis elements) such that
(1) For each x∈X,there is at least one basis element b containing x.
(2) If x belongs to the intersection of two basis elements b_1 and b_2,then there is a basis element b_3 containing x such that b_3⊂b_1∩b_2.

Xを集合とし,B∈2^XがXの位相の基底
⇔(def)
(i) ∀x∈X,∃b∈B;x∈b.
(ii) x∈b_1∩b_2⇒∃b_3∈B;x∈b_3⊂b_1∩b_2

の解釈で正しいでしょうか?

If B satisfies these two conditions, then we define the topology T generated by B as follows: A subset U of X is said to be open in X (that is ,to be an elemnt of T) if for each x∈U,there is a basis element b∈B such that x∈b and b⊂U.
Note that ezchd basis elements is etself an element of T.

T(∈2^X)はXの位相の基底Bから生成される位相
⇔(def)
∃U∈T such that (x∈U⊂X⇒∃b∈B;x∈b且つb⊂U)

で正しいでしょうか?

Def
A subbasis S for a topology on X is a collection of subsets of X whose union equals X. The topology T' generated by the subbasis S is defined to be the collection T of all unions of finite intersectoins of elements of S.

SをXの位相の部分基底(位相の基底の部分集合)とするとX=∪[b∈S]bとなる。この時,
T'はSで生成される位相
⇔(def)
A:={∩[i=1..n]b_i;b_i∈B (i=1,2,…,n)}
T:=∪[a∈A]a
T'⊂T.

英語での講義で
基底Bで生成される位相と部分基底で生成される位相の定義がわからず困っています。

Def
If X is a set,a basis for a topology on X is a collection B of subsets of X (called basis elements) such that
(1) For each x∈X,there is at least one basis element b containing x.
(2) If x belongs to the intersection of two basis elements b_1 and b_2,then there is a basis element b_3 containing x such that b_3⊂b_1∩b_2.

Xを集合とし,B∈2^XがXの位相の基底
⇔(def)
(i) ∀x∈X...続きを読む

Aベストアンサー

なかなかに頑固というか・・・

「Xを集合とする。Xのある集合の族Bが次の条件を満たす時,BはXの開基底または開基であるという。
任意の集合G(⊂X)が与えられた時,Gの任意の点に対してx∈b⊂Gとなるb(∈B)が存在する。」
・・・これを定義Sと呼ぼう

>一般論では具合が悪いなんとかかんとか、、、、と途端にお茶を濁されるので当惑しておるのです

じゃあ,具合が悪いといわれたら
自分で反例作ればいいでしょう?
あなたの定義Sでよく知られたものがきっちり生成できる?
この定義Sは忘れること.
だってさ。。。。これ開基の定義として不適切だもの.
例えば,きわめて自明な例をとろう.

位相空間R(実数)をとる
Rの開基Bとして,開区間(a,b)の集合をとる
さて,Rの部分集合として,{1}をとる
さて,x∈(a,b)⊂{1}なんていう開区間(a,b)はあるかい?

位相が入ってるRで考えるのがいやなら,抽象的に.
定義Sによる「開基」をBとする
さて集合Xの任意の元xに対して,部分集合{x}をとる
Bの定義により(Gは任意の集合であることに注意)
x∈b⊂G={x}
となるBの元bが存在するが,これはb={x}であることを意味する.
したがって,Bは要素が一個の部分集合をすべて含む集合族である.
このようなBによって生成されるXの位相は
Xのベキ集合であり,Xには離散位相しか入らない.
これは定義としては不適切でしょう?

「位相に関係ない開基の定義Aがある」
したがって,この定義は位相空間でも適用可能
さらに
「位相空間であれば,位相空間の性質を使った
開基の定義Bがある」
となって,位相空間に対して定義Bによる開基があれば
この開基は定義Aも満たす.
逆に,一般の集合Xに対して,定義Aによる開基があれば
この定義Aによる開基で生成される位相を集合Xにいれることで
Xは位相空間となり,
もともとの開基(そもそもは定義Aによるものだった)は
位相空間Xに対する定義Bによる開基にもなる.

上であげた「定義A」と「定義B」の実際の表現はわかりますか?
定義A
集合Xの部分集合族Bが以下の条件を満たすとき
BをXの開基という
(1)BはXを被覆する
(2)任意の b1, b2 ∈ B および任意の x ∈ b1 ∩ b2 に対して、ある b ∈ B が存在して、x ∈ b ⊂ b1 ∩ b2 となる。

定義B
位相空間Xに対して,部分集合族Bが以下の条件を満たすとき
BをXの開基という.
(1) Bの要素はすべて開集合である
(2) X の任意の開集合 U の任意の点 x に対して、x ∈ b ⊂ U を満たす B の要素 b が存在することである。

定義Bと定義Sの違いはわずか.けどその差が問題.

さて,
一般の集合Xに対して定義Aで開基Bを定める
この開基Bに対して,集合族Oを以下のように定める
集合UがOの要素であるとは
U の任意の点 x に対して,
x ∈ b ⊂ U を満たす B の要素 b が存在することをいう.

このとき,OはXの位相である(これの証明は以下の通り.
・Xと空集合はOの要素
・Oの任意の要素U1,U2をとる.
x∈ U1 ∩ U2 に対して,
x ∈ b1 ⊂ U1, x ∈ b2 ⊂ U2 なるBの要素b1,b2がある(Oの定義).
x ∈ b ⊂ b1 ∩ b2 となるBの要素bがある(定義A(2))
よって
x ∈ b ⊂ b1 ∩ b2 ⊂ U1 ∩ U2
つまり, U1 ∩ U2はOの要素
・添え字集合をIとして,Oの要素のUi(i∈I)をとる.
各iに対して,
x ∈ bi ⊂ Ui を満たす B の要素 bi が存在する(Oの定義).
したがって,
Uiの和集合をUとする.
Uの任意の要素xに対して,あるiが存在して
x∈ bi ⊂ Ui ⊂ U
であるので,UはOの要素である.
・以上より,Oは位相である
).
さらに定義Aによる開基Bが
「位相Oが入った位相空間Xに対する定義B」を満たす.
なぜなら,
位相Oの定義より,開基Bの任意の要素bに対して
b の任意の点 x に対して,
x ∈ b ⊂ b であるので
bはXの開集合
・・・・定義Bの条件(1)の証明終わり
次に定義Bの条件(2)だけども
これは位相Oの定義から自明。

そして,逆も示す.
位相空間Xで定義Bによる開基Bをとる.
XはXの開集合であるから,Xの任意のxに対して
x ∈ b ⊂ U を満たす B の要素 b が存在する.
よって,BはXを被覆する
・・・定義Aの条件(1)の証明終わり

任意の b1, b2 ∈ B および任意の x ∈ b1 ∩ b2をとる.
定義Bより,開基Bの任意の要素は開集合である.
したがって,b1, b2は開集合であり,
よってb1 ∩ b2は開集合.
定義Bより,
x ∈ b ⊂ b1 ∩ b2を満たす B の要素 b が存在する.
・・・定義Aの条件(2)の証明終わり

それと
>でも冒頭の問題が解消されないと不安を残したままだと自信を持って先に進めません。
これは初学者が勉強する態度としてはある意味最悪のものです.
ときには分からなくても,「そーいうものだ」と保留して
あえて先にいくことが絶対に必要です.
この「先送り」の手法はどんな勉強でも必須であり,
実際,研究の最前線での「仮説を立てて先に進む」とか
「モデルを構築する」なんていう方法論は
ある意味「壮大なる先送り」です.
先送りして進んでおくと,
いつの間にか分かってることもありますし,
先送りして不具合がでたら,先送り部分がまずいことが分かります.
#背理法もその意味では似ている.
ぶっちゃけた話
「開基」なんてものは位相空間論の本質ではありません.

なかなかに頑固というか・・・

「Xを集合とする。Xのある集合の族Bが次の条件を満たす時,BはXの開基底または開基であるという。
任意の集合G(⊂X)が与えられた時,Gの任意の点に対してx∈b⊂Gとなるb(∈B)が存在する。」
・・・これを定義Sと呼ぼう

>一般論では具合が悪いなんとかかんとか、、、、と途端にお茶を濁されるので当惑しておるのです

じゃあ,具合が悪いといわれたら
自分で反例作ればいいでしょう?
あなたの定義Sでよく知られたものがきっちり生成できる?
この定義Sは忘れること.
だって...続きを読む


人気Q&Aランキング

おすすめ情報