Ini adalah pos-silang dari math.stackexchange.
Biarkan FACT menunjukkan masalah anjak bilangan bulat: diberikan cari bilangan prima dan bilangan bulat sehinggap i ∈ N , e i ∈ N , n = ∏ k i = 0 p e i i .
Biarkan RSA menunjukkan kasus khusus masalah anjak dimana dan adalah bilangan prima. Yaitu, diberikan temukan bilangan prima atau NONE jika tidak ada faktorisasi tersebut.p , q n p , q
Jelas, RSA adalah turunan dari FACT. Apakah FACT lebih sulit daripada RSA? Mengingat sebuah oracle yang memecahkan RSA dalam waktu polinomial, dapatkah ia digunakan untuk menyelesaikan FACT dalam waktu polinomial?
(Sebuah penunjuk ke literatur sangat dihargai.)
Sunting 1: Menambahkan batasan pada daya komputasi menjadi waktu polinomial.
Sunting 2: Seperti yang ditunjukkan dalam jawaban oleh Dan Brumleve bahwa ada makalah yang memperdebatkan dan menentang RSA lebih keras (atau lebih mudah daripada) FACT. Saya menemukan makalah-makalah berikut sejauh ini:
D. Boneh dan R. Venkatesan. Melanggar RSA mungkin lebih mudah daripada memfaktorkan. EUROCRYPT 1998. http://crypto.stanford.edu/~dabo/papers/no_rsa_red.pdf
D. Brown: Mematahkan RSA mungkin sesulit memfaktorkan. Cryptology ePrint Archive, Report 205/380 (2006) http://eprint.iacr.org/2005/380.pdf
G. Leander dan A. Rupp. Tentang Kesetaraan RSA dan Anjak Piutang tentang Algoritma Generik Cincin. ASIACRYPT 2006. http://www.iacr.org/archive/asiacrypt2006/42840239/42840239.pdf
D. Aggarwal dan U. Maurer. Melanggar RSA Secara Umum Setara dengan Anjak Piutang. EUROCRYPT 2009. http://eprint.iacr.org/2008/260.pdf
Saya harus melalui mereka dan menemukan kesimpulan. Apakah seseorang mengetahui hasil ini dapat memberikan ringkasan?
Jawaban:
Saya menemukan makalah ini berjudul Melanggar RSA Mungkin Lebih Mudah Dari Anjak . Mereka berpendapat bahwa komputasi th akar modulo mungkin lebih mudah daripada anjak .n = p q n = p qe n=pq n=pq
Namun, mereka tidak menjawab pertanyaan yang Anda tanyakan: mereka tidak mempertimbangkan apakah atau tidak memperhitungkan bilangan bulat dari bentuk mungkin lebih mudah daripada memfaktorkan bilangan bulat sewenang-wenang. Akibatnya, jawaban ini sangat tidak relevan dengan pertanyaan khusus Anda.n=pq
sumber
Selanjutnya, General Number Field Sieve , algoritma pemfaktoran klasik yang paling cepat diketahui, dan algoritma Shor, algoritma pemfaktoran kuantum waktu polinomial, bekerja dengan baik untuk non-semiprimes. Secara umum, tampaknya jauh lebih penting bahwa faktor-faktor oleh koprime daripada faktor-faktor itu menjadi prima.
Saya pikir bagian dari alasan untuk ini adalah versi keputusan dari factoring co-primes paling alami digambarkan sebagai masalah janji , dan cara apa pun untuk menghapus janji input menjadi semiprime adalah dengan
Terakhir, patut untuk ditunjukkan bahwa RSA (cryptosystem, bukan masalah anjak yang Anda tetapkan di atas) secara sepele menggeneralisasi di luar semi-primes.
sumber
Bukan jawaban yang cukup lengkap, tetapi tampaknya merupakan peningkatan:
Makalah penelitian yang dikutip di atas membandingkan masalah komputasi et root mod N, yaitu melakukan operasi kunci privat dalam kriptografi RSA, dengan masalah anjak piutang, yaitu menemukan kunci privat, dalam kedua kasus, hanya menggunakan kunci publik. Dalam kasus ini, masalah anjak bukan kasus umum, tetapi kasus semiprime. Dengan kata lain, mereka mempertimbangkan pertanyaan yang berbeda.
Saya percaya bahwa diketahui, lihat AoCP Knuth, bahwa sebagian besar angka N memiliki faktorisasi utama yang panjang bitnya membandingkan panjang bit dengan N, rata-rata sekitar 1/2, 1/4, 1/8, ..., atau mungkin bahkan jatuh lebih tajam, seperti pada 2/3, 2/9, 2/27, ... tapi mungkin mendatar. Jadi, untuk N acak ukuran umum cukup kecil sehingga faktor-faktor yang lebih kecil dapat diharapkan ditemukan dengan cepat oleh divisi percobaan atau ECM Lenstra, maka yang tersisa mungkin semiprime, meskipun yang tidak seimbang. Ini adalah semacam reduksi, tetapi sangat bergantung pada distribusi faktor, dan ini merupakan reduksi lambat, karena ia memanggil algoritma faktorisasi lainnya.
Juga, tidak ada tes yang diketahui untuk menentukan apakah suatu angka semiprime atau tidak. Ini hanya berarti bahwa jika seseorang baru saja menerapkan algoritma faktorisasi semiprime ke nomor umum, dan selalu gagal, maka seseorang telah memecahkan masalah yang tidak diketahui.
sumber