Sebagian besar enkripsi saat ini, seperti RSA, bergantung pada faktorisasi bilangan bulat, yang tidak diyakini sebagai masalah NP-keras, tetapi milik BQP, yang membuatnya rentan terhadap komputer kuantum. Saya bertanya-tanya, mengapa belum ada algoritma enkripsi yang didasarkan pada masalah NP-hard yang dikenal. Kedengarannya (setidaknya dalam teori) seperti itu akan membuat algoritma enkripsi yang lebih baik daripada yang tidak terbukti sebagai NP-hard.
109
Telah ada.
Salah satu contohnya adalah cryptosystem McEliece yang didasarkan pada kekerasan dari decoding kode linier.
Contoh kedua adalah NTRUEncrypt yang didasarkan pada masalah vektor terpendek yang saya yakini dikenal sebagai NP-Hard.
Lainnya adalah cryptosystem knapsack Merkle-Hellman yang telah rusak.
Catatan: Saya tidak tahu apakah dua yang pertama rusak / seberapa baik mereka. Yang saya tahu adalah bahwa mereka ada, dan saya mendapatkannya dari melakukan pencarian web.
sumber
Saya dapat memikirkan empat rintangan utama yang tidak sepenuhnya independen:
Perhatikan bahwa saya tidak memiliki keahlian dalam kriptografi; ini hanyalah respons algoritmik. keberatan kompleksitas-teoretis.
sumber
Kriptografi kunci publik seperti yang kita kenal sekarang ini dibangun di atas permutasi pintu trap satu arah , dan pintu trap sangat penting.
Agar protokol aman untuk umum, Anda memerlukan kunci yang tersedia untuk siapa saja, dan cara untuk mengenkripsi pesan menggunakan kunci ini. Jelas, setelah dienkripsi, akan sulit untuk memulihkan pesan asli hanya mengetahui sandi dan kunci publik: sandi hanya dapat diuraikan dengan beberapa informasi tambahan, yaitu kunci pribadi Anda.
Dengan pemikiran itu, mudah untuk membangun sistem crypto primitif berdasarkan permutasi pintu jebol satu arah.
sumber
Sekedar memberi argumen heuristik, berdasarkan pengalaman praktis.
Hampir semua contoh, dari hampir semua masalah NP-complete, mudah diselesaikan. Ada masalah di mana ini tidak benar, tetapi mereka sulit ditemukan, dan sulit untuk menjadi positif Anda memiliki kelas seperti itu.
Ini telah muncul dalam praktik beberapa kali ketika orang mencoba untuk menulis generator masalah acak untuk beberapa kelas NP-lengkap terkenal, seperti Constraint Programming, SAT atau Travelling Salesman. Pada beberapa tanggal kemudian seseorang menemukan metode untuk menyelesaikan hampir semua contoh yang dihasilkan generator acak sepele. Tentu saja, jika itu terjadi pada sistem enkripsi kita akan berada dalam masalah serius!
sumber
Cryptosystems Merkle-Hellman didasarkan pada masalah ransel biner (jumlah subset).
sumber