您的位置:首页 > 其它

BouncyCastle not registered

2016-03-25 16:33 295 查看
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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: