サイト内の現在の位置 : Comodo SSL ホーム > 製品
コード署名プロセス
署名プロセスは以下のとおりです。
- 発行者はComodoからコード署名デジタルIDを取得します。
- 発行者はコードを作成します。
- SIGNCODE.EXEユーティリティーを使って発行者は、
- MD5やSHAなどのアルゴリズムでコードのハッシュを作成します。
- 自分の秘密鍵を用いてこのハッシュを暗号化します。
- コード、暗号化ハッシュ、発行者の証明書からなるパッケージを作成します。
- エンドユーザーがこのパッケージを受け取ります。
- エンドユーザーのMicrosoftブラウザーは発行者のデジタルIDを検査します。Authenticode有効アプリケーション内にすでに組み込まれているComodoルートの公開鍵を使用して、エンドユーザーのブラウザーはコード署名デジタルID(これ自身Comodoルートの秘密鍵によって署名されている)の正当性を確認します。
- 発行者のデジタルID内に含まれている発行者の公開鍵を使用して、エンドユーザーのブラウザーは署名されているハッシュを解読します。
- エンドユーザーのブラウザーは発行者と同じハッシュアルゴリズムによってコードを実行し、新規のハッシュを作成します。
- エンドユーザーのブラウザーは2つのハッシュを比較します。2つのハッシュが同じであれば、ブラウザーはコンテンツがComodoによって確認されたというメッセージを表示し、エンドユーザーは当のコードがデジタルIDで示されている発行者によって署名されたこと、署名後に変更されていないことを確信します。
全体のプロセスはシームレスで、エンドユーザーからは見えません。エンドユーザーはコンテンツが発行者によって署名され、Comodoによって確認されたというメッセージを見るだけです。
コード署名における6つのステップ
以下の手順は、Authenticodeと、Comodo発行のコード署名デジタルIDの取得方法と使用方法を示しています。
ステップ1: すべてのツールについて適切なバージョンを実行していることを確認します。
ツールは以下のとおりです。
- Internet Explorer 4.0 以降
- Internet Client SDK
ステップ2: Comodoから発行されるAuthenticode向けコード署名IDを申請します。
コード署名IDの申請プロセスにおいてお使いのブラウザーは秘密鍵を生成します。この秘密鍵(MyPrivateKey.pvkという)はフロッピーディスクに格納し、保管箱など安全な場所に保存します。コードの署名に秘密鍵が必要になるので、是非バックアップコピーをとっておいてください。秘密鍵はComodoに送られることは絶対ないので、もしなくしてしまうと、コードに署名することができなくなります。秘密鍵をなくしたり盗まれたりした場合は、ただちにComodoにご連絡ください。
ステップ3: デジタルIDを取得します。
申請プロセスが完了すると、Comodoはいくつかのステップを実行して、お客さまの実在を確認します。商業的な発行者の場合、Comodoは数多くのバックグラウンドチェックを行ないます。この結果、お客さまの情報を確認し、デジタルIDを発行するのに3日から5日かかります。
このプロセスの最後にComodoはPIN (Personal Identification Number: 暗証番号)を含んだメールをお客さまに送信します。このメール内の手順に従ってデジタルIDを取得します。デジタルIDはファイル(MyCredentials.spcなど)に保存してください。
デジタルIDの申請と取得を行なうときは同じマシンを使わなければならないの注意してください。秘密鍵とデジタルIDを使うと、別のマシン上でファイルに署名することができます。
ステップ4: ファイルの署名準備をします。
PEファイル(.exe、.ocx、.dllなど)を作成する場合は、何も特別なことをする必要はありません。cabファイルの場合は、ファイルを作成する前に .ddfファイルに次の項目を追加する必要があります。Set ReservePerCabinetSize=6144
ステップ5: ファイルに署名します。
ここで、.exeファイルか .cabファイル、および.ocxファイルか .dllファイルに署名できます。署名には、ActiveX SDKに含まれているSIGNCODE.EXEユーティリティーを使用します。またデジタルIDファイル(通常MyCredentials.spcという)と、お客様の秘密鍵(MyPrivateKey.pvk)を含んだディスケットも必要です。
このプロセスでは、ComodoのタイムスタンプサーバーのURL(http://timestamp.comodoca.com/authenticode)を知っておく必要があります。
ステップ6: 署名を検査します。
Microsoft SDK にはchktrust.exeというユーティリティーが含まれています。このユーティリティーを使えば、ファイルを配布する前に署名を確認できます。
署名済みの .exe、.dll、.ocxを検査するには "chktrust filename" を実行してください。
署名済みのcabファイルを検査するには "chktrust -c cabfilename.cab" を実行してください。
コード署名プロセスが成功した場合、デジタル証明書が表示されます。.おめでとうございます。目的のファイルにデジタル署名したことになります。このファイルがInternet ExplorerによってWebサイトからダウンロードされると、同じ証明書がユーザーに表示されます。このファイルに署名後に何らかの改ざんがされると、ユーザーにそのことが通知され、インストールを拒否するオプションが提供されます。
最後に
MicrosoftとComodoは、インターネットを商取引およびコンテンツの配布にとって安全で有効なプラットフォームにすることに取り組んでいます。AuthenticodeとComodoのコード署名デジタルIDを使うことで、お客さまのコードはシュリンクラップ(収縮包装)して販売した場合のように安全で信頼されるものになります。