利用者:Iida-yosiaki
表示
前文
[編集]Wikipediaを利用して足掛け4年になるが、この利用者ページが他人からも閲覧できることに初めて気付いた。このページの過去の版には、あやしげな草稿がいっぱいあるかもしれないが、ご容赦ください。--Iida-yosiaki 2009年3月5日 (木) 10:56 (UTC)
試験
[編集]kbd要素のプレビューがうまく出なかったので、ここに書いてみる試験。
単一:ESC
二重:Control-Z
RSA暗号の概要の試し書き
[編集]鍵のペア(公開鍵と秘密鍵)を作成して公開鍵を公開する。まず[1]、適当な λ[2] と互いに素な正整数 e を選択する[3]。また、大きな2つ[4]の素数の組 {p, q} [5]を生成し、それらの積 n (= pq) を求めて、順序対 (e, n) を平文の暗号化に使用する鍵(公開鍵)とする。素数の組 {p, q} から暗号文の復号に使用する鍵(秘密鍵)d を生成する。すなわち d = e−1 mod λ となるような {p, q} をとる。d の生成後、λ も p も q も捨ててよい。ただしここで λ = lcm(p − 1, q − 1)[6]。式中の "mod" は剰余演算を表し、d は λ を法とする e のモジュラ逆数であり、lcm は最小公倍数である。
脚注
[編集]- ^ PKCS#1ではe、p、qの選択順序を規定しておらず、それらの満たすべき属性や互いの関係について記載している。
- ^ カーマイケルのλ関数でなく、オイラーのφ関数で書く説明の流儀もあるが、どちらの関数値で算出しても、RSAの鍵としては等価になる。
- ^ X.509勧告v1のAnnex C.7では、固定のeとしてフェルマーのF4すなわち65537にある利点の記載がある。
- ^ PKCS#1では2つ以上の素数だが、簡単のため当記事では2つの素数で説明している。
- ^ pとqが同一だと開平でnを素因数分解できるので、たいていpとqは違う値にする。CA/Browser ForumのBaseline Requrementsでは素数の累乗を非推奨にしている。pとqの異なるばあい、pとqの順序は任意である。
- ^ (p-1)*(q-1)とする説明の流儀もあるが、どちらで算出しても、RSAの鍵としては等価になる。