0

私は数値を得ました。それを2つの要素に分けて、それらをオイラーの関数に入れ、RSA暗号化のためにnを計算する必要があります。どうすれば2つの整数を見つけることができますか? 番号:1387:19•73だから、私はどのようにして19番と73番を最も速く得るのですか?(1387)=(19-1)*(73-1)= 1296 = nEulers Phi Nを計算する最も簡単な方法は何ですか?

私は私の試験でそれらを使用することができないので、私はそれのための任意のインターネット電卓を使用したくない。

+0

ファクタ番号。オイラーのΦ関数を計算するためにそれを因数分解したいという事実はあまり意味がありません。ナイーブトライアル部門から洗練されたナンバーフィールド手法まで、数多くのファクタリングアルゴリズムがあります。あなたはポケット電卓でできる小さな数字について話しているようですが、連続したオッズで試行分割を使用してください(nは奇妙であると仮定して、ほとんどの場合RSAと同じです)。 –

+0

それで、できるだけ小さな素数で数を始めから分けてください。数字が87654352の場合はどうなりますか?また、巨大な数です。 – Sick654

+0

87654352は巨大ではありません。あなたはまだそれほど素朴なアプローチでそれを因数分解することができます。一般的なアルゴリズムは、数値フィールドシーブとそのすべてのバリアントです。これははるかに大きな数値に適用できます。素因数を見つけるために適用できる他の多くのアルゴリズムがあります。 –

答えて

0

あなたの例では、n = pq、p = 19、q = 73です.pとqはすべて素数ですので、あなたの値段を推測することができます。RSAの頼りになるのは、値nは簡単に2つの素数に分けることができないので、教師はあまりにも大きな値を与えません。たとえば、先生が私に値n = 1387を与えると、最後の数字が7であると考えることができるので、2つの数値の値は3 *?9または?1 *?7.のようになります。 3,13,23,43,53,73,83 ...?9は19,29,59,79,89 ...と等しいかもしれませんが、今では1387を使用して3を除算し、 ?9マッチ(1387の結果が3の素数であるかどうかを見てください)。それは ちょうど私の考え、あなたに幸運。

関連する問題