このたび、コード証明書 (コードサイニング証明書、Code Signing Certificates )、EVコードサイニング証明書を発行してもらったので手続き方法をまとめました。
目次
コードサイニング証明書とHTTPSのSSLサーバ証明書の違い
コードサイニング証明書は、Windowsのプログラム、コードが改ざんされていないことを保証するものです。
悪意のあるコードの改ざんを防ぎ、エンドユーザーを保護します。
一方、HTTPSで使われるSSLサーバ証明書は、ブラウザやユーザーのコンピュータとサーバやウェブサイトの間に暗号化された接続を確立し、エンドユーザーを保護します。
これらは全く違うもので、互換的に使用することはできません。
OVコードサイニング証明書とEVコードサイニング証明書の違い
コードサイニング証明書には大きく分けてOVコードサイニング証明書とEVコードサイニング証明書があります。
両者の違いは以下にまとめました。
・https://urashita.com/archives/30477
一言でまとめると、OVコードサイニング証明書とEVコードサイニング証明書の違いは
- OVコードサイニング証明書は安くて機能は高くない
- EVコードサイニング証明書は高くて高機能
です。
ただ、最も分かりやすいOVコードサイニング証明書とEVコードサイニング証明書の違いは
- OVコードサイニング証明書ではWindows Defender SmartScreenの表示を回避出来ない
- EVコードサイニング証明書ではWindows Defender SmartScreenの表示を回避出来る
です。
詳しくは以下をご覧ください。
・https://urashita.com/archives/30548
OVコードサイニング証明書とEVコードサイニング証明書の料金・価格
コードサイニング証明書については個人でオレオレ証明書を使って無料で発行可能ですが、それではそもそも信頼されません。
通常の価格・料金は次の通りです。
ブランド | OVコードサイニング証明書 | EVコードサイニング証明書 |
---|---|---|
デジサートコードサイニング証明書 DigiCert Code Signig |
404ドル/年間 | 566ドル/年間 |
セクティゴコードサイニング証明書 Sectigo Code Signing |
99ドル/年間 | 319ドル/年間 |
コモドコードサイニング証明書 Comodo Code Signing |
83ドル/年間 | 319ドル/年間 |
一番安いコモドコードサイニング証明書でもOV証明書は1年間83ドル、EV証明書は1年間319ドルかかります。
EVコードサイニング証明書の発行手続き
このたび、コチラのサイトを使ってEVコードサイニング証明書の発行手続きを行いました。
・https://codesigningstore.com/
COMODO EV Code Signing Certificate 3年を買う
まず、COMODO EV Code Signing Certificate 3年を買います。
この時はクーポン適用で3年間で798ドルでした
購入後の手続きは以下の3ステップです。
コードサイニング証明書 (CSR)のリクエスト
コードサイニング証明書の検証、バリデーション
コードサイニング証明書の発行
コードサイニング証明書 (CSR)のリクエスト
フォームに沿って、コードサイニング証明書(CSR)をリクエストします。
フォームを提出すれば終了かと思いきや、まだやることがあった。
なんと
EV Code Signing Form
Subscriber Agreement
の2つのPDFをダウンロードして、署名して送る必要があります。
なんと送り先はCOMODOではなくてSECTIGOだった。
署名したPDFを作成して、適当に英作文して指定されたSECTIGOのサポートチケットに送ります。
コードサイニング証明書の検証、バリデーション
コードサイニング証明書の検証、バリデーションについては、メールと電話がありました。
会社の存在確認、電話番号の確認です。
検証には1週間ほど時間がかかります。
最後はこんなメールが届きました。
認証作業が完了し、証明書は発行済です。
今後とも、よろしくお願いいたします。Sectigo APAC 日本サポートチーム
コードサイニング証明書の発行
コードサイニング証明書そのものは、Safenet USB トークン(USBドングル)がイギリスのSECTIGOからUPSにて郵送で送られてきます。
こちらがSafenet USB トークン(USBドングル)です。
EV コードサイニング証明書の署名方法
EVコードサイニング証明書の署名方法は次の通りです。
SafeNet Authentication Client ソフトウェアをインストール
以下のURLからOSに合わせて「SafeNet Authentication Client 」ソフトウェアをダウンロードして、インストールします。
SafeNet Authentication Client Download for Sectigo Certificates on eToken
今回は、Windowsで署名するためにWindows版を使いました。
Windows版の「SafeNet Authentication Client 」のダウンロード・インストール後、再起動します。
すると「SafeNet Authentication Client 」が常駐するようになります。
その後、Safenet USB トークン (USBドングル) をパソコンに挿入します。
SignTool.exe (署名ツール) で署名
コマンドラインを使った署名の手順は以下の通りです。
Developer Command Prompt for VS 2019を起動します。
Signtoolコマンドが起動することを確認します。
以下のコマンドの一つを実行します。
タイムスタンプありの場合
1 |
signtool.exe sign /fd sha256 /s my /tr http://timestamp.digicert.com /v "C:\filename.dll" |
複数の証明書が個人ストアにインストールしてある場合、/sha1オプションを使用して、EVコードサイニング証明書のハッシュ値を指定します。
1 |
signtool.exe sign /fd sha256 /sha1 SHA1_hash_value /tr http://timestamp.digicert.com /v "C:\filename.dll" |
タイムスタンプなしの場合
1 |
signtool.exe sign /fd sha256 /s my /v "C:\filename.dll" |
複数の証明書が個人ストアにインストールしてある場合、/sha1オプションを使用して、EVコードサイニング証明書のハッシュ値を指定します。
1 |
signtool.exe sign /fd sha256 /sha1 SHA1_hash_value /v "C:\filename.dll" |
上述のコマンドを実行した場合、以下のダイアログが表示され、トークンパスワードの入力を求められます。
トークンパスワードはSectigoからメールで送られてきています。
トークンパスワードを入力して「OK」をクリックします。ファイルへの署名が成功した旨のメッセージが表示されます。
ファイルへの署名をバッチ処理したい場合は、SafeNetトークンへのシングルログオンを有効にしておく必要があります。
シングルログオンを有効化してログオンしておけば、トークンパスワードの入力なしで署名をバッチ処理できるようになります。
コメント