BouncyCastle not registered

来源:互联网 发布:淘宝小风悦萌怎么样 编辑:程序博客网 时间:2024/05/23 23:24

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





0 0
原创粉丝点击