Chcę nawiązać połączenie z gniazdem serwera SSL za pomocą następującego kodu:Jak naprawić SSL - Brak dostępnych certyfikat
int port = 12000;
ServerSocketFactory ssocketFactory = SSLServerSocketFactory.getDefault();
ServerSocket ssocket = ssocketFactory.createServerSocket(port);
// Listen for connections
Socket socket = ssocket.accept();
dostaję "javax.net.ssl.SSLException: Brak certyfikatu lub klucza odpowiada włączonym szyfrom SSL, "podczas akceptowania.
stworzyłem kluczy, który zawiera klucz RSA, używając:
keytool -genkeypair -alias ClubConnectionCert -keyalg RSA -validity 7 -keystore ClubConnectionKeystore
i zacznę mój program z następującymi opcjami:
-Djavax.net.ssl.keyStore=ClubConnectionKeystore -Djavax.net.ssl.keyStorePassword=mypassword
Czy tęsknię trochę kodu do odczytu w magazynie kluczy, lub jak mogę przetestować/debugować, czy dany magazyn kluczy jest rzeczywiście używany?
Ponadto: upewnij się, że ssl faktycznie działa bez języka Java. – jayunit100
@ jayunit100: co masz na myśli? – Bruno
Jeśli wskazuje na nieistniejącą ścieżkę, pojawi się 'FileNotFoundException'. "Upewnij się, że parametry -D są ustawione jako paramery JVM" jest najbardziej prawdopodobnym wyjaśnieniem: nie ma domyślnego pliku kluczy w JSSE (więc nie określenie właściwości systemu na wszystkich prowadzi do tego błędu). – Bruno