【问题标题】:How to set up SSL (TLS) / HTTPS on Spring Boot using AES-256?如何使用 AES-256 在 Spring Boot 上设置 SSL (TLS) / HTTPS?
【发布时间】:2015-08-04 22:36:01
【问题描述】:

我使用 RSA (How to configure SSL / HTTPS on Spring?) 在我的 Spring Boot 服务器上设置了 SSL,方法如下 their guide

  • 使用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>

像魅力一样工作。但是,当我通过运行keytool -genseckey -keystore keystore.jck -storetype JCEKS -storepass &lt;store pass&gt; -keyalg AES -keysize 256 -alias &lt;alias&gt; -keypass &lt;key pass&gt; 生成 AES 256 密钥并将 .properties 文件更改为新的密钥库/密钥值时,对服务器的每个请求都会生成0 EMPTY RESPONSE。我应该遵循哪些步骤才能成功配置它?

【问题讨论】:

  • 你遇到了什么错误(如果有的话)?
  • 刚刚编辑了我的问题。对不起!应用程序本身不会抛出异常,但每个请求都会导致0 EMPTY RESPONSE
  • 您能否编辑您的问题以描述您所采取的步骤,而不仅仅是指向指南?我们无法知道您是否真的正确地遵循了指南。
  • @Kenster 抱歉,我刚刚更新了它。我认为我正确地遵循了指南,因为它可以工作,而不是使用我需要的那种密码:/

标签: java spring ssl https


【解决方案1】:

我在使用 Spring Boot 和嵌入式 Tomcat 时遇到问题,因为我的密钥没有“tomcat”别名... 使用“tomcat”别名创建密钥解决了问题(嵌入式 Tomcat 没有获取其他密钥?)

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      知道了。解决了。密钥算法与您要使用的密码(在我的情况下为 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
      

      【讨论】:

        猜你喜欢
        • 2020-10-05
        • 2017-09-23
        • 2015-08-03
        • 2012-05-19
        • 2018-07-05
        • 2019-02-02
        • 2015-03-15
        • 2018-10-04
        相关资源
        最近更新 更多