簡體   English   中英

在Java中,SSLv3已禁用,但在Javamail API中,ssl可以正常工作嗎?

[英]In java SSLv3 is disabled but in javamail API ssl works?

Java由於漏洞而禁用了SSLv3。但是在Java郵件API中,通過SSL使用SMTP服務器可以正常工作嗎? 為什么會這樣?

基於SSL的電子郵件使用SSL / TLS協議系列,該系列由SSLSocketImpl和Java運行時庫中的相關類實現。

根據所使用的Java版本, SSLSocketImpl將與遠程服務器協商SSL / TLS協議的可接受版本。 Java最多可支持TLSv1.3(在Java 11中)。 在更新111 1中,對TLSv1.0的支持已添加到Java 6中

實際上,默認情況下,2015年1月對Java 6及更高版本進行了更新,以禁用Java 6及更高版本中的SSLv3支持。 您必須設置系統屬性才能啟用SSLv3。

1-Java 6更新111不可公開獲得。 如果您使用的是Java 6的最新公共發行版,則必須使用不安全的SSLv3或更早版本。 大多數SMTP服務器都不接受。 這只是升級到受支持的Java版本的又一個原因。 即Java 8、11或更高版本。


但是在Java郵件API中使用通過SSL的SMTP服務器有效嗎? 為什么會這樣?

因為它沒有使用SSLv3(或更早版本); 往上看。

這是另一個我認為也可以解決此問題的堆棧溢出問題的鏈接。 堆棧溢出

如在此鏈接中所述:

可以通過從java.security文件的jdk.tls.disableAlgorithms屬性中刪除“ SSLv3”來重新激活該協議,或者通過將該屬性設置為“ true”來動態地激活該協議。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM