コードサイニング証明書のタイムスタンプとは

ニュースソース:DigiCert Blog

以下は 2018年3月15日に公開された、Best Practices for Timestampingを要約したものです。


コードサイニング証明書で署名を行う際は必ずタイムスタンプを取得してください。
タイムスタンプ付きで署名されたコードは、署名に利用した証明書が期限切れになってからも、署名が有効です。
タイムスタンプをつけずに署名されたコードは証明書の有効期限が切れると署名が無効になります。

現在、多くの環境ではコードの署名がチェックされ、有効な署名のないコードは利用できません。
言い換えると、タイムスタンプをつけずに署名されたコードは、証明書の有効期限が切れると同時にそのコード自体が使えなくなります。

証明書有効期限の重要性

一般的な誤解は、「証明書の有効期限は、認証局がより多くのお金を請求する機会としてのみ存在する」というものです。
これは、明らかな間違いです。コードサイニング証明書では、組織の存在をDigiCertが証明しています。
しかしその証明は証明書発行時点の現実に基づくもので、将来の組織の存在を証明することはできません。
そのため、一定の有効期間を設け、更新時に再度組織の存在をDigiCertが検証したうえで発行されるのです。

また、新しい署名アルゴリズムやより強力な鍵などの現在の最新の暗号方式にアップグレードしていくためにも、証明書の有効期限は重要な役割を果たしています。