拡張ユークリッド アルゴリズムを使用する必要があることはわかっていますが、どのような計算を行う必要があるのか正確にはわかりません。私は膨大な数を持っています。ありがとう
6 に答える
p=11、q=7、e=17、n=77、φ(n)=60、d=?
式からの最初の代入値:-
ed mod φ (n) =1
17 日 mod 60 = 1
次のステップ: – n の totient を取ります。これは左側に 60、右側に [e] です。
60 = 17
3 番目のステップ: – 17 が 60 になる回数を尋ねます。つまり、3.5 です…..余りを無視して 3 を取ります。
60 = 3(17)
ステップ 4: – ここで、この式 60 = 3(17) のバランスをとって、左辺が右辺と等しくなるようにする必要があります。どのように?
60 = 3(17) + 9 <== 3 に 17 を掛けると、51 に 9 を足すと 60 になります。つまり、両辺は等しくなります。
ステップ 5: – 17 を左側に、9 を右側に持っていきます。
17 = 9
ステップ 6:- 9 が 17 になる回数を尋ねます。それは 1.8 です…….
17 = 1(9)
ステップ 7:- ステップ 4: – この 17 = 1(9) のバランスを取る必要があります
17 = 1(9) + 8 <== 1 に 9 を掛けると、9 に 8 を足すと 17 になります。つまり、両辺は等しくなります。
ステップ 8:- 再び 9 を左側に、8 を右側に取ります。
9 = 1(8)
9 = 1(8) + 1 <== 方程式のバランスをとるために +1 に達したら、停止して逆置換を開始することができます。
ステップ A:-ステップ 8 の最後の式である 9 = 1(8) + 1 は、次のように記述できます。1.= 9 – 1(8)
ステップ B:-ステップ 7 から 8 = 17 – 1(9) と簡単に言うだけで、(8) が何であるかがわかります。これで、ステップ A を次のように書き直すことができます。
1=9 -1(17 – 1(9)) <== ここでは 9=1(9) なので、次のように書き直すことができます:-
1=1(9)-1(17) +1(9) <== 類似用語をグループ化します。この場合、1(9) に 1(9) を追加します。つまり、2(9) です。
1=2(9)-1(17)
ステップ C: – ステップ 4 から 9 = 60 – 3(17) と簡単に言うだけで、(9) が何であるかがわかります。これで、ステップ B を次のように書き直すことができます。
1=2(60-3(17) -1(17)
1=2(60)-6(17) -1(17) <== 類似用語をグループ化します。この場合、6(17) と 1(17) を加算します。つまり、7(17) です。
1=2(60)-7(17) <== この段階で停止できます。これ以上代用するものはありません。したがって、次の 17 の値を取得します。つまり 7 です。totient でそれを引きます。
60-7=日
したがって、d= 53 の値。
Thiloによる承認された回答は、カーマイケルの totient関数の代わりにEuler の totient 関数を使用して を見つけるため、正しくありません。RSA 鍵生成の元の方法は Euler の関数を使用しますが、通常は代わりに Carmichael の関数を使用して導出されますが、その理由については説明しません。特殊な表記法を使用せずに、指定されたプライベート指数を見つけるために必要な数学は次のとおりです。d
d
d
p
q
e
d = e^-1*mod(((p-1)/GCD(p-1,q-1))(q-1))
どうしてこれなの?d
関係で定義されているため
de = 1*mod(λ(n))
λ(n)
カーマイケルの関数はどこにありますか
λ(n)=lcm(p-1,q-1)
どちらに拡張できますか
λ(n)=((p-1)/GCD(p-1,q-1))(q-1)
d
したがって、これを定義する元の式に挿入すると、
de = 1*mod(((p-1)/GCD(p-1,q-1))(q-1))
そして、それを最終的な式に再配置するだけです
d = e^-1*mod(((p-1)/GCD(p-1,q-1))(q-1))
関連情報については、こちらを参照してください。