私はコンピュータサイエンスの初心者です。実行時間について何かを学びましたが、理解したことが正しいかどうかわかりません。だから私を助けてください。
したがって、素因数分解は現在、多項式時間の問題ではありませんが、素数性テストは問題です。チェックする番号がnであると仮定します。1からsqrt(n)までのすべての数値がnを除算できるかどうかを判断するためだけにプログラムを実行し、答えが「はい」の場合は、その数値を格納します。このプログラムは多項式時間だと思いますね。
私が間違っている可能性のある方法の1つは、因数分解プログラムが最初に検出された素数ではなく、すべての素数を検出する必要があることです。だから多分これが理由です。
ただし、公開鍵暗号では、暗号を攻撃するには、多数の素因数を見つけることが不可欠です。通常、多数(公開鍵)は2つの素数の積にすぎないため、一方の素数を見つけることは、もう一方の素数を見つけることを意味します。これは多項式時間である必要があります。では、なぜ攻撃が困難または不可能なのですか?