diff --git a/reference/openssl/functions/openssl-cms-read.xml b/reference/openssl/functions/openssl-cms-read.xml
index 4e4a04d174..2935facb44 100644
--- a/reference/openssl/functions/openssl-cms-read.xml
+++ b/reference/openssl/functions/openssl-cms-read.xml
@@ -1,6 +1,6 @@
-
+
@@ -15,11 +15,12 @@
stringinput_filename
arraycertificates
-
- openssl_pkcs7_read と似た処理を行います。
-
-
- &warn.undocumented.func;
+
+ PEM エンコードされた CMS 構造から証明書と
+ CRL を取り出し、PEM 形式の文字列として返します。
+ この関数は、openssl_pkcs7_read の
+ CMS 版です。
+
@@ -29,17 +30,20 @@
input_filename
-
-
-
+
+ パースする、PEM エンコードされた CMS データ。
+ 引数名に反して、ファイルへのパスではなくデータそのものを指定します。
+
certificates
-
-
-
+
+ 取り出した証明書と CRL が、PEM 形式の文字列の配列として格納されます。
+ これらを取り出せるのは、署名付きデータの場合だけです。
+ それ以外のコンテンツタイプでは、配列は空になります。
+
@@ -47,11 +51,36 @@
&reftitle.returnvalues;
-
+
&return.success;
-
+
+
+ &reftitle.examples;
+
+ openssl_cms_read の例
+
+
+]]>
+
+
+
diff --git a/reference/openssl/functions/openssl-random-pseudo-bytes.xml b/reference/openssl/functions/openssl-random-pseudo-bytes.xml
index d8b8247e98..f0b6943bbf 100644
--- a/reference/openssl/functions/openssl-random-pseudo-bytes.xml
+++ b/reference/openssl/functions/openssl-random-pseudo-bytes.xml
@@ -1,6 +1,6 @@
-
+
@@ -70,6 +70,10 @@
openssl_random_pseudo_bytes は、
失敗した場合に Exception をスローします。
+
+ length が 1 より小さい場合、
+ ValueError がスローされます。
+
diff --git a/reference/openssl/functions/openssl-x509-parse.xml b/reference/openssl/functions/openssl-x509-parse.xml
index f5e87c3538..9f60e51e37 100644
--- a/reference/openssl/functions/openssl-x509-parse.xml
+++ b/reference/openssl/functions/openssl-x509-parse.xml
@@ -1,6 +1,6 @@
-
+
@@ -52,9 +52,215 @@
&reftitle.returnvalues;
+
+ 成功した場合に証明書のフィールドを含む配列を、失敗した場合に &false; を返します。
+
+
+ alias は、証明書にエイリアスがある場合にだけ存在します。
+ 以下に示すそれ以外のキーは、常に存在します。
+
- 返されるデータの構造については(わざと)まだ文書化していません。
- これは、今後もデータの構造が変更される可能性があるためです。
+
+ openssl_x509_parse が返す配列
+
+
+
+ キー
+ 型
+ &Description;
+
+
+
+
+ name
+ string
+
+ subject の識別名を 1 つの文字列で表したもの。各要素はスラッシュで区切られます。
+ 例えば /C=US/O=Example/CN=example.com のようになります。
+
+
+
+ subject
+ array
+
+ subject の識別名。キーは、short_names が
+ &true; の場合は CN のような短縮名、
+ そうでない場合は commonName のような長い名前です。
+ 各値は UTF-8 文字列です。同じ要素が複数回現れる場合は、
+ UTF-8 文字列の配列になります。
+
+
+
+ hash
+ string
+
+ subject の識別名のハッシュ値を小文字の 16 進数で表したもの。
+ OpenSSL が CA ディレクトリから証明書を探すときに使う 8 桁の値です。
+ 証明書のフィンガープリントではありません。フィンガープリントについては
+ openssl_x509_fingerprint を参照ください。
+
+
+
+ issuer
+ array
+
+ 発行者の識別名。形式は
+ subject と同じです。
+
+
+
+ version
+ int
+
+ 証明書に格納されている、バージョンフィールドの生の値。
+ 証明書のバージョンとして通常表示される番号より 1 小さい値です。
+ バージョン 1 の証明書は 0、バージョン 2 の証明書は
+ 1、バージョン 3 の証明書は
+ 2 になります。
+
+
+
+ serialNumber
+ string
+
+ シリアル番号を 10 進数で表したもの。シリアル番号が大きい場合は、
+ 先頭に 0x を付けた 16 進数の文字列になります。
+
+
+
+ serialNumberHex
+ string
+
+ シリアル番号を大文字の 16 進数で表したもの。
+
+
+
+ validFrom
+ string
+
+ 有効期間の開始日時を ASN.1 の形式で表したもの。UTCTime
+ (YYMMDDHHMMSSZ) と GeneralizedTime
+ (YYYYMMDDHHMMSSZ) のいずれかです。
+
+
+
+ validTo
+ string
+
+ 有効期間の終了日時。形式は validFrom と同じです。
+
+
+
+ validFrom_time_t
+ int
+
+ 有効期間の開始日時を表す Unix タイムスタンプ。日時をパースできなかった場合は
+ -1 になります。
+
+
+
+ validTo_time_t
+ int
+
+ 有効期間の終了日時を表す Unix タイムスタンプ。日時をパースできなかった場合は
+ -1 になります。
+
+
+
+ alias
+ string
+
+ 証明書のエイリアス (フレンドリ名)。設定されている場合にだけ存在します。
+
+
+
+ signatureTypeSN
+ string
+
+ 署名アルゴリズムの短縮名。
+
+
+
+ signatureTypeLN
+ string
+
+ 署名アルゴリズムの長い名前。
+
+
+
+ signatureTypeNID
+ int
+
+ 署名アルゴリズムを表す数値の識別子 (OpenSSL の NID)。
+
+
+
+ purposes
+ array
+
+ 目的ごとの確認結果。キーは目的の ID で、
+ X509_PURPOSE_*
+ 定数の値です。各値は、後述する配列です。
+
+
+
+ extensions
+ array
+
+ 証明書の拡張。キーは subjectAltName のような拡張の短縮名で、
+ 短縮名がない拡張は OID がキーになります。
+ 各値は拡張の内容を表すテキストで、テキストとして出力できない場合は
+ 拡張の生データになります。どのキーが存在するかは証明書によって異なります。
+ この配列は short_names の影響を受けません。
+
+
+
+
+
+
+
+ purposes の各要素には、以下のキーがあります。
+
+
+
+ 目的ごとの配列
+
+
+
+ キー
+ 型
+ &Description;
+
+
+
+
+ 0
+ bool
+
+ エンドエンティティ証明書として、この目的に使える場合に
+ &true; になります。
+
+
+
+ 1
+ bool
+
+ CA 証明書として、この目的に使える場合に
+ &true; になります。
+
+
+
+ 2
+ string
+
+ 目的の名前。short_names が &true; の場合は
+ sslclient のような短縮名、
+ そうでない場合は SSL client のような長い名前です。
+
+
+
+
+