BouncyCastle not registered

1885 단어
I'm trying to run a SSHD demo, but encountered the 'BouncyCastle not registered' error:
import java.io.File;
import java.io.IOException;

import org.apache.sshd.server.SshServer;
import org.apache.sshd.server.keyprovider.SimpleGeneratorHostKeyProvider;
import org.apache.sshd.server.shell.ProcessShellFactory;

public class MollySshServerMock {
	
	public static void main(String[] args) throws IOException {
		SshServer sshd = SshServer.setUpDefaultServer();

		sshd.setPort(22);

		sshd.setKeyPairProvider(new SimpleGeneratorHostKeyProvider(new File("hostkey.ser")));
		sshd.setShellFactory(new ProcessShellFactory(new String[] { "/bin/sh", "-i", "-l" }));

		sshd.start();
	}
}
The error:
[main] INFO org.apache.sshd.common.util.SecurityUtils - BouncyCastle not registered, using the default JCE provider
The environment: Windows 7 64bit, STS 3.7.2, JDK 1.8
Tried [1] method, but failed.
Then tried [2], 
- Download  bouncycastle library at http://www.bouncycastle.org/latest_releases.html (For me its bcprov-jdk15on-154.jar and bcprov-ext-jdk15on-154.jar). - Copy theses files (eg: bcprov-jdk15on-154.jar and bcprov-ext-jdk15on-154.jar) in/path_to_your_jvm/jre/lib/ext. (e.g:/opt/jdk/jdk1.8.0_40/jre/lib/ext) edit/path_to_your_jvm/jre/lib/security/java.security and add the following line : security.provider.11=org.bouncycastle.jce.provider.BouncyCastleProvider
this method works, the output is:
[main] INFO org.apache.sshd.common.util.SecurityUtils - BouncyCastle already registered as a JCE provider

References:
[1] http://stackoverflow.com/questions/8171802/using-bouncycastle-for-a-simple-https-query
[2] http://totalprogus.blogspot.hk/2012/09/crash-could-not-start-crasshd-failed-to.html

좋은 웹페이지 즐겨찾기