我已經安裝了Java 9,因爲我想使用OCSP(聯機證書狀態協議)功能與TLS握手,也就是OCSP裝訂。正如https://docs.oracle.com/javase/9/security/java-pki-programmers-guide.htm#JSSEC-unique_4307382所述,Java 9是第一個使用OCSP裝訂的版本。Java 9和TLS OCSP裝訂
要測試它,您可以設置或讀取某些新屬性,例如「jdk.tls.server.enableStatusRequestExtension」。
不過,我得到 「零」,而不是 「假」(或 「真」)與
System.getProperty("jdk.tls.server.enableStatusRequestExtension")
查詢此屬性時就嘗試過了新jShell:
[jshell> System.getProperty("jdk.tls.server.enableStatusRequestExtension")
$2 ==> null
這不應該發生在Java 9.任何想法爲什麼?這是我前兩天下載的一個所謂的Early Access版本。 Java 9的正式版本是2017年9月21日(昨天)。不幸的是,Mac OSX還沒有發佈的版本。 難道這確實是這個特性還沒有在Early Access Build中實現(它應該接近最終版本)?
希望任何人都可以在這裏幫忙。
這是'jdk.tls.server.enableStatusRequestExtension'是一個JVM屬性嗎? – nullpointer
@nullpointer Oracle頁面(https://docs.oracle.com/javase/9/security/java-pki-programmers-guide.htm#JSSEC-unique_4307382)說: 「設置Java服務器以使用OCSP裝訂 通過將系統屬性jdk.tls.server.enableStatusRequestExtension設置爲true(默認設置爲false),在服務器上啓用了在線證書狀態協議(OCSP)裝訂。「 所以它是一個System屬性。不確定它是否與JVM屬性相同。 – Marc
但是,如果您指定的鍵沒有屬性且System.getProperty()將始終返回null。你爲什麼聲稱「這不應該發生在Java 9」? – skomisa