Pengecualian Jabat Tangan SSL: Tidak Dapat Menjana Pasangan Kunci DH
S: Apabila menyambung ke pelayan IRC tertentu melalui SSL dengan Java, mengapa SSL proses jabat tangan membuang pengecualian "Tidak dapat menjana pasangan kekunci DH"?
J: Pengecualian ini berlaku apabila pelayan menggunakan pertukaran kunci Diffie-Hellman (DH) dengan saiz utama yang melebihi maksimum 1024 bit pelaksanaan Java lalai.
Diagnosis:
Mesej " Saiz perdana mestilah berbilang 64, dan hanya boleh berjulat dari 512 hingga 1024 (termasuk)" menunjukkan bahawa pelayan meminta saiz utama lebih besar daripada 1024 bit, mencetuskan pengehadan ini dalam Java.
Penyelesaian:
Penyelesaian:
Gunakan pelaksanaan JCE BouncyCastle sebagai penyelesaian untuk mengendalikan prima yang lebih besar saiz.
Pembetulan Kekal:
Kemas kini kepada Java 9 atau lebih baru, kerana isu itu telah dibetulkan dalam JDK-7044060. Walau bagaimanapun, ambil perhatian bahawa saiz perdana maksimum yang boleh diterima masih terhad kepada 2048 bit. Untuk saiz utama melebihi 2048 bit, rujuk JDK-8072452, yang dijadualkan untuk Java 9.
Atas ialah kandungan terperinci Mengapa Jabat Tangan SSL Java Saya Gagal dengan Pengecualian 'Tidak Dapat Menjana Pasangan Kunci DH'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!