我想得到SSL证书,为我的网页,与对方聊天。我还使用AES 265哈希算法来处理更安全的网页数据,并使用sha512进行密码哈希。但我不知道如何在工业层面获得SSL证书。我尝试了许多免费的SSL网站,但我仍然没有得到。什么是服务器签名?我是怎么得到这个的?谢谢
发布于 2016-10-16 14:55:55
这实际上是一个服务器管理问题,而不是编程问题。
您可以执行自签名证书,也可以从证书颁发机构获得证书。
自签名证书是安全的,但是很多时候编程语言不喜欢它们,或者当您连接到使用它们的东西时,您需要告诉函数自签名是可以的。
尽管如此,如果您想要一个“真正的”证书,您可能需要查看一下- Encrypt加密
发布于 2016-10-16 16:04:12
您需要创建自己的密钥存储库来设置启用SSL的密钥存储库。创建您自己的Keystore之后,它必须由证书颁发机构(例如,Go爹地或GlobalSign )签名。
但是为了测试目的,您需要使用JDK或JRE附带的Keytool创建自签名证书(C:\ProgramFiles\Java\jdk1.8.0_60\bin\keystool.exe)。
可以使用以下命令创建自签名证书:
密钥工具- genkey -dname "CN=SERVER_NAME,OU=ABC,O=company.com,L=Morrisville,S=NC,C=US“-alias my别名-keyalg RSA -validity 365 -keysize -keystore keystore.jks -storepass -keystore keystore.jks-storepass-storepass -keypass -keypass password
在这里,对于避免一些混乱,storepass和keypass应该是一样的。
现在,在创建您自己的keystore.jks之后,就可以进行服务器配置了。我认为您正在使用Apache,或者如果您使用的是其他服务器,您可以很容易地在其他教程中找到服务器配置。
您需要编辑两个文件:setenv.sh/bat和server.xml。
1)转到$CATALINA_HOME/conf -->这里您将找到server.xml,现在您必须编辑端口信息,以便通过启用SSL的端口进行通信。您需要多创建一个连接器,而不是默认的8080端口,如下所示:
<Connector
port="33380" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="500"
compressableMimeType="application/json,application/atom+xml,application/xml"
compression="on"
maxKeepAliveRequests="-1"
connectionTimeout="20000"
scheme="https" secure="true" SSLEnabled="true"
keystoreFile="conf/keystore/keystore.jks" keystorePass="password"
clientAuth="false" sslProtocol="TLS"/>在这里,为keystoreFile属性指定生成的密钥存储库文件的路径,keystorepass等于您在创建密钥库文件时选择的密码。
2)转到$CATALINA_HOME/bin -->这里您将找到setenv.sh/bat文件。
在这里,您需要指定密钥库密码和密钥存储库文件的路径。
在JAVA_OPTS中添加这些服务器环境变量
-Djavax.net.ssl.keyStore=../../../keystore/keystore.jks -Djavax.net.ssl.keyStorePassword=password
我希望这将为您的配置提供一些指导。
https://stackoverflow.com/questions/40071588
复制相似问题