问题 如何使用AES-256在Spring Boot上设置SSL(TLS)/ HTTPS?


我使用RSA在我的Spring Boot服务器上设置SSL(如何在Spring上配置SSL / HTTPS?) 依照指示 他们的向导

  • 使用创建了一个新的密钥库和密钥 keytool -genkey -alias <alias> -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650
  • 将这些行放在我的application.properties文件中:

    server.port: 8443 server.ssl.key-store: classpath:keystore.p12 server.ssl.key-store-password: <keystore password> server.ssl.key-password = <key password> server.ssl.keyStoreType: PKCS12 server.ssl.keyAlias: <alias>

奇迹般有效。但是当我通过运行生成AES 256密钥时 keytool -genseckey -keystore keystore.jck -storetype JCEKS -storepass <store pass> -keyalg AES -keysize 256 -alias <alias> -keypass <key pass>,并将.properties文件更改为新的密钥库/密钥值,每个服务器请求都会产生 0 EMPTY RESPONSE。我应该遵循哪些步骤来成功配置它?


5916
2018-05-22 19:31


起源

你得到了什么错误(如果有的话)? - David
刚编辑了我的问题。抱歉!应用程序本身不会引发任何异常,但每个请求都会产生 0 EMPTY RESPONSE。 - David Castillo
您可以编辑您的问题来描述您采取的步骤,而不仅仅是指向指南吗?我们无法确切知道您是否确实正确地遵循了指南。 - Kenster
@Kenster对不起,我刚刚更新了。我认为我正确地遵循指南,因为它有效,而不是我需要的那种密码:/ - David Castillo


答案:


得到它了。解决了它。关键算法与您想要使用的密码几乎没有关系(在我的情况下为AES 256)。使用常规RSA,PKCS12密钥。

然后,在application.properties中设置下一个属性:

server.ssl.ciphers=ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA
server.ssl.protocol=TLS

12
2018-05-27 18:03





我遇到过同样的问题。 将JDK 1.6更改为1.8。


1
2017-11-12 18:45



@izstas你能评论一下你的评论吗?谢谢。 - lekant


我有Spring Boot和嵌入式Tomcat的问题,因为我的密钥没有'tomcat'别名...... 使用'tomcat'别名创建密钥解决了问题(嵌入式Tomcat没有拿起其他密钥?)


0
2018-05-23 11:25