處理 x509 crt 檔案的用途時
openssl_x509_parse 的輸出會提供一個陣列,其中包含以下用途
每個新的陣列(例如 [purposes][1]、[purposes][2])都是一個新的用途檢查
我將此輸出與以下指令的輸出進行了比較
# openssl x509 -purpose -in <x509crt_file>
我得到的結果是
[purposes][x][2] 顯然是被檢查的用途的名稱
[purposes][x][1] 對應於作為 CA 測試的用途(如 [purposes][x][2] 中所述)
[purposes][x][0] 對應於該用途的通用可用性
[purposes] => 陣列
(
[1] => 陣列
(
[0] => 1
[1] => 1
[2] => sslclient
)
[2] => 陣列
(
[0] => 1
[1] => 1
[2] => sslserver
)
[3] => 陣列
(
[0] => 1
[1] => 1
[2] => nssslserver
)
[4] => 陣列
(
[0] => 1
[1] => 1
[2] => smimesign
)
[5] => 陣列
(
[0] => 1
[1] => 1
[2] => smimeencrypt
)
[6] => 陣列
(
[0] => 1
[1] => 1
[2] => crlsign
)
[7] => 陣列
(
[0] => 1
[1] => 1
[2] => any
)
[8] => 陣列
(
[0] => 1
[1] => 1
[2] => ocsphelper
)
)