S/MIME署名
証明書・鍵P7SはS/MIMEメール等の署名に使われ、本文そのものではない場合があります。分離署名は元の内容と組で検証するため、署名だけをPDFへ変換して元文書を取り出せるとは限りません。メールではMIME構造を保った原本を使い、署名検証と署名者の信頼を分けて確認します。
- 主な用途
- メールや文書の署名データ
- 中身の種類
- バイナリデータ
目次・よくある質問・根拠資料を見る
内容の最終確認: · 編集:Kai
開き方・操作手順
使っている環境や目的の項目を開いて、手順を確認してください。
操作名・対応状況はアプリ・OS・版によって異なります。変更する前に原本を残してください。
開けないとき:症状から確認
- 本文が見つからない:分離署名か、元文書が別添かを確認します。
- 検証に失敗:原本の改変、改行やMIMEの変更と署名方式を確認します。
- 署名者が信頼されない:証明書の有効期間・チェーンと本人確認の条件を調べます。
- 別文書を指定:署名の対象になった未変更データと照合します。
- 表示用PDFしかない:表示出力と署名対象の原データを区別します。
- 検証時刻の条件が違う:利用アプリの時刻・証明書検証の設定を確認します。
P7Sの検証 / 同梱内容がある場合の取り出し
- 分離か同梱かを識別し、分離の場合は対応する元データをそろえます。
- 対応する検証手順を使い、取り出せる内容は元データと照合します。
- 署名を変換・移動した後も、元データと正規の検証結果を確認します。
署名が正しいだけで文書の内容が安全・正確とは限りません。検証エラーを無条件で無効にせず、元文書を保存します。
分離署名と含まれた内容
P7Sの使い方によって元データの有無が異なります。文書を再保存してから検証せず、受取った原データを使います。
確認例:文書を開いて再保存するとバイト列が変わる場合があります。署名検証には受信した未変更データを残します。
この手順の根拠:OpenSSL Project · openssl-cms / IETF / RFC Editor · RFC 8551 — S/MIME 4.0
検証結果を段階で読む
本文の署名一致、署名者証明書と信頼チェーンを別々に確認します。チェックを無効にして成功扱いにはしません。
この手順の根拠:OpenSSL Project · openssl-cms / IETF / RFC Editor · RFC 8551 — S/MIME 4.0
関連形式との違い
| 形式・方法 | 役割 | 確認する点 |
|---|---|---|
| P7S | 署名情報 | 元データ・署名者 |
| 元メール・文書 | 署名対象 | 未変更の状態 |
| P7B | 証明書の束等 | 役割が違う |
取り扱いと安全性
署名と証明書を正規アプリで確認し、不明な署名者の証明書を信頼済みに登録してエラーを消しません。本文の添付ファイルも別途確認します。
よくある質問
P7Sはメール本文?
署名だけで、本文は別の場合があります。
元文書なしで検証できる?
分離署名では対応する元内容が必要です。
署名付きなら安全?
署名者の信頼と本文・添付の安全性は別です。
P7Sからメールを必ず復元できる?
分離署名には本文が含まれない場合があります。元のメッセージを保存します。
文書を再保存してから検証してよい?
改行や内容が変わる場合があります。受取った未変更の原データを使います。
形式の基本情報:正式名称・MIME type・管理団体
- 名称
- CMS / PKCS#7 signature (common P7S use)
- 管理・仕様
- IETF S/MIME / producing signing tools
- MIME type
- 作成元・配信元の指定による。拡張子だけでMIME typeは確定できません。
公式・一次情報
- プロジェクト公式openssl-cms
CMS署名、分離署名と内容の検証の資料です。
OpenSSL Project · リンク確認: - 標準仕様RFC 8551 — S/MIME 4.0
署名付きメールとMIME構造の規格です。
IETF / RFC Editor · リンク確認: