瞬簡PDF サイン 3[機能紹介:署名付与]

電子証明書の運用方式

デジタル署名は署名者が秘密鍵を使ってPDFファイルの署名データを作成し、署名したデータと電子証明書などをPDFファイルに埋め込みます。PDFファイルの検証時に、埋め込まれた署名データを使って改ざんの有無をチェックしたり、電子証明書の有効性を確認する仕組みです。

電子証明書には、秘密鍵とペアになる公開鍵、署名者の身元を保証する認証データなどが保存されています。

電子証明書は、認証局(CA:Certification Authority)が発行したものを使うのが一般的です。しかし、証明書作成ツールを使って自分で作成した自己署名証明書(オレオレ証明書)もデジタル署名に使えます。このオレオレ証明書と認証局の証明書との違いは、信頼できる証明書発行機関である認証局が証明書発行時に保有者の認証を行なっているか否かです。ただし、電子証明書という言葉で、秘密鍵と電子証明書のセットを意味するとき(PKCS#12やICカード証明書など)もあるので混同しないように注意が必要です。

秘密鍵は漏洩しないように管理しなければならず、漏洩すると電子証明書が失効してしまいます。こうしたことからデジタル署名の実務では、秘密鍵と電子証明書をどのように管理・運用するかが重要なポイントです。本製品は次の運用方式に対応しています。

  1. Windows証明書ストア方式
  2. ICカード証明書方式
  3. リモート署名方式
  4. PKCS#12方式

Windows証明書ストア方式

電子証明書をWindows証明書ストアに保存するとともに、ペアの秘密鍵へのリンクをWindowsが内部的に管理する方式です。Windows証明書ストアに登録されている電子証明書を選択して署名を実行すると、対応する秘密鍵で署名が行われます。秘密鍵が存在する場所は、Windows内部の機密領域、ICカード証明書もしくはリモート署名用サーバー内の機密ハードウェア内などになります。

Windows証明書ストアの電子証明書から機密鍵へのリンクが適切に設定されているとき、本製品では「署名タイムスタンプ」メニュー「証明書を選択」ダイアログの「インストール済から選択する(証明書ストア)」で証明書を選択して署名できます。

ICカード証明書方式

秘密鍵と電子証明書をもつICカード証明書を使用します。本製品で、ICカード証明書を利用するにはWindows PCに接続されたICカードリーダーが使える状態であること、およびICカード内の秘密鍵にアクセスするドライバー(署名用ドライバーと呼びます)の設定が必要です。署名用ドライバーは、通常、ICカード証明書を発行する認証局が用意したものを、利用者がWindowsにインストールします。

マイナンバーカードはICカード証明書の一種です。本製品でマイナンバーカードを使用するには、ICカードリーダーを使えるようにした上で、公的個人認証サービスの「JPKI利用者ソフト」をインストールして署名用ドライバーを設定します。本製品でマイナンバーカードを使って署名するには、「署名タイムスタンプ」メニューの「証明書を選択」ダイアログで「ICカードで指定する」にチェックして「マイナンバーカード」を選択します。

注意事項

ICカード証明書の署名ドライバーには、「JPKI利用者ソフト」のようにWindows証明書ストアにICカード証明書内の秘密鍵へのリンクを設定する機能をもたないものがあります。本製品で、このタイプの署名ドライバーを使用するときは、「ICカードで指定する」にチェックして「ICカードの種類」を選択する必要があります。

これ以外の原因で、 ICカード証明書をご利用できない場合は、弊社までお問い合わせください。

リモート署名方式

秘密鍵がリモート署名サービスを提供するWebサービスのサーバー内の機密保護機能をもつ専用ハードウェアに保管されています。リモート署名方式ではネットワークを介してこの秘密鍵を使用します。

本製品では2026年7月21日より法務省が開始した「商業登記リモート署名」を利用できます。商業登記リモート署名を使用するには、商業登記電子認証ポータル から「商業登記リモート署名ドライバソフト」を入手してインストールします。さらに「商業登記リモート署名ドライバソフト 管理ツール」でWindows証明書ストアに商業登記リモート署名用の電子証明書を登録します。このとき、署名ドライバーへのリンクがWindows内に設定されるので、本製品では「商業登記リモート署名証明書」をWindows証明書ストアで選択して署名できます。但し、Windows証明書ストアに多数の証明書が登録されていると見分けにくいので、本製品では、署名選択画面で「商業登記リモート署名」を直接選択もできます。

PKCS#12方式

秘密鍵とそれとペアになる電子証明書は、一般的には秘密鍵と一体にしたPFX、または、PKCS#12形式のファイルとして受け渡されます。通常、Windowsでは、PFX/PKCS#12ファイルはWindows証明書ストアにインポートして使います。このとき秘密鍵はWindowsの機密領域に取り込まれるので、一旦、Windows 証明書ストアにインポートすると、ログインしたユーザーのアカウントから証明書を選択するだけでパスワードなしに使うことができます。

なお、本製品では、直接PKCS#12ファイルを指定して署名もできます。

署名付与

既存のPDFファイルにデジタル署名を付与して、署名値をその内部に含む新しいPDFファイルを作成します。 本製品ではISO 32000(PDFの仕様書)で規定されているPAdES仕様に適合するデジタル署名をPDFファイルに付与できます。

署名フィールドの作成

PDFデジタル署名は、PDFファイルの内部構造上、署名フィールドという署名情報を管理するための枠に保存されます。本製品は枠としての署名フィールドを作成できます。署名フィールドを作成しただけでは、デジタル署名は付与されません。

本製品で作成した署名フィールドには本製品およびAdobe Acrobat / Adobe Reader(以下、Adobe製品という)等のISO 32000準拠ツールを用いて署名できます。

PDFデジタル署名の種類

本製品は、PDFデジタル署名のうち普通署名とMDP署名(証明)ができます。

普通署名はPDFファイルへの付与回数に制限がなく、また署名後に変更可能な内容を設定する機能はありません。普通署名したPDFファイルの(署名時存在範囲の)内容に何らかの編集を行うとPDFファイルの改ざんがあったとみなされます。但し、2つ目以降の署名は、PDFの増分更新という機能を使って署名前のPDFファイルに追加される(署名時に存在した内容は変更されない)ので、それ以前のPDFファイルの改ざんにはなりません。

MDP署名は、署名後に文書全体に対して変更可能な内容について次のいずれかの制限ができます。

  • 変更を許可しない
  • フォームフィールドの入力と署名フィールドに署名
  • 注釈の作成、フォームフィールドの入力と署名フィールドに署名

PDFファイルにMDP署名を付与する場合には、最初に付与しなければなりません。また、MDP署名はPDFファイルに1個だけ付与できます。なお、本製品は署名(署名フィールド)毎に変更可能な内容を設定するフィールドMDP署名を設定・付与する機能には対応していません。

注意事項
MDP署名またはフィールドMDP署名によって署名が禁止(ロック署名)されたPDFファイルに対して、新たにデジタル署名を付与することはできません。

署名の形式

PDFでは署名の構造をISO 32000で規定する署名辞書で管理します。本製品ではISO 32000-2(またはISO 32000-1およびPAdES(ETSI TS 102 778))で規定する、次の3つの形式を使えます。

  1. 基本署名:PAdES-Basic(PKCS#7)
  2. 長期署名:PAdES-Enhanced(CAdES)
  3. ドキュメントタイムスタンプ

PAdES-Basicは、ISO 32000-1で規定されているPDFデジタル署名の機能の一部を使用できます。これは古いPDFソフトでも利用できるように用意されているものです。PDFファイルの中に署名データと署名者の証明書が保存されるだけなので、PDFファイルの受領者が署名を検証したとき、検証エラーになる可能性があるなど信頼度が低いものです。

PAdES-EnhancedはPAdESでISO 32000-1の拡張として規定された形式で、署名情報の保存項目がより強化されており、PAdES-Basicよりも署名の信頼度が高くなっています。

「ドキュメントタイムスタンプ」は、署名の構造はPAdES-Basic/PAdES-Enhancedと同じであり、普通署名の一種として扱えます。ただし、使用する証明書や保存する項目が異なります。
機能紹介:タイムスタンプ

さらに、本製品には署名の長期検証(LTV)の枠組みに対応するデジタル署名を構成する機能があります。
機能紹介:署名検証

辞書とはPDFの基本的なデータ構造です。

署名の外観

デジタル署名はデジタルデータなので署名を付与しても目に見えません。PDFでは署名の外観を付与する機能が規定されており、本製品でも署名の外観を付与できます。署名の外観はオプションであり、デジタル署名の有効性とは関係ありません。外観をもたない署名を「不可視署名」と呼びます。

デジタル署名の方法

PDFデジタル署名では、通常、PDFファイル全体に対して直接署名するのではなく、PDFファイルから計算したハッシュ値に署名します。ハッシュ値を計算するアルゴリズムとしてSHA-2(SHA-256/384/512)を使用します。SHA-1は非推奨になっているため、本製品の署名付与で選択できません。

署名の計算のアルゴリズムはRSA方式(鍵長は2048、または4096 ビット)の公開鍵暗号アルゴリズムと楕円曲線暗号(ECDSA)をサポートしています。日本では、今後、RSAに代わってECDSAに移行する計画が策定されています。但し、本製品のPAdES-BasicではECDSA方式の署名付与機能はありません。

互換運用

本製品は、PDFデジタル署名機能についてAdobe 製品等ISO 32000に準拠する製品との相互運用ができます。たとえば、Adobe製品等で作成した署名フィールドに本製品で署名したり、逆に、本製品で作成した署名フィールドにAdobe製品等で署名したりできます。また、本製品によるPDFデジタル署名をAdobe製品等の署名検証機能で検証できます。