2012-02-06 12 views
7

Bir sunucuya HTTPS POST isteği göndermek için son derece basit bir SSL istemcisi uygulamaya çalışıyorum ve bu görünüşte zararsız hale geliyorum istisna. JSSE referans kılavuzu kullanımda değildi. Çok teşekkürler.Java SSL İstisnası - "Prime boyutu 64'ün katları ..."

SSLContext ctx = SSLContext.getInstance("SSL"); 
// Accept-all trust manager 
TrustManager[] trustEverything = { new DefaultTrustManager() };  

// Keystore file in local directory 
KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType()); 
ks.load(new java.io.FileInputStream("keystore"),"123456".toCharArray()); 

// Key manager 
KeyManager[] managers; 
KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509"); 
kmf.init(ks, "123456".toCharArray()); 
managers = kmf.getKeyManagers(); 

ctx.init(managers, trustEverything, new SecureRandom()); 
SSLSocketFactory sslFact = (SSLSocketFactory) ctx.getSocketFactory(); 
// Connect to internal SSL-enabled server 
SSLSocket socket = (SSLSocket) sslFact.createSocket("10.131.149.36", 8443); 

istisna en kısa sürede el sıkışma olarak çalışırken atılır: Ben bu parametreler boşuna başlatıldı nerede bulmayı denedim

socket.startHandshake(); 

. Lütfen beni aptal hissettir.

Caused by: java.security.InvalidAlgorithmParameterException: Prime size must be multiple of 64, and can only range from 512 to 1024 (inclusive) 
at  com.sun.crypto.provider.DHKeyPairGenerator.initialize(DHKeyPairGenerator.java:120) 
at java.security.KeyPairGenerator$Delegate.initialize(KeyPairGenerator.java:658) 
at sun.security.ssl.DHCrypt.<init>(DHCrypt.java:117) 
+0

bu gibi görünüyor yanıtlandı: http://stackoverflow.com/questions/6851461/java-why-does-ssl-handshake -give-üretilemez-dh-keypair-exception – Eugene

+0

Bu soruyu kontrol ettiniz mi http://stackoverflow.com/questions/4764611/java-security-invalidalgorithmparameterexception-the-trustanchors-parameter-mus keystore ne zaman görünüyor boş, bu hatayı alabilirsiniz. – kosa

+1

JRE'mdeki filsleri genişletilmiş JCE politikası ile değiştirdim; hala yok. @thinksteep: Bu durumda anahtar deposu yüküne bir istisna eklemez miydi? Teşekkürler. – user1192564

cevap