作成日

2 June 2009

Adobe AIRアプリケーションにはコードサイニング署名が必須

AIRアプリケーションは、ブラウザの枠を超えて動作し、ローカルのデータにアクセスできるなど自由度が高いため、エンドユーザーは信頼できるアプリケーションに限ってインストールを行うよう、十分に注意しなければなりません。そのため、AIRランタイムでは、すべてのアプリケーションにコードサイニング署名することを義務付け、セキュリティを確保しています。署名がないアプリケーションはインストールができません。また、万が一エンドユーザーが不正に改ざんされたアプリケーションをインストールしようとしてもインストーラが立ち上がりません(AIR 1.0, 1.1)。エンドユーザーは、AIRアプリケーションの署名から、インストールしようとしているアプリケーションの発行者が信頼できる組織なのか、アプリケーションが不正に改ざんされていないかを知り、インストールの続行を検討することが重要です。そのためには、信頼できる認証局から発行されたコードサイニング証明書を利用する必要があります。

自己署名の証明書と認証局から発行された証明書の違い

デベロッパーは、ツールを利用して簡単に自己署名入り証明書を作成することができます。これを使って、自らの環境で作成されたAIRアプリケーションのインストールを確認することができます。しかし、誰でも自由に作成できる自己署名の証明書では、アプリケーションを配布する先に対して証明書の情報に信頼を与えることができません。そのため、自己署名を用いたアプリケーションでは、インストールする際の警告で発行者が不明となり、検証IDも不明と表示されます(図1参照)。

一方、信頼された認証局から発行された証明書は、認証局が申請された情報を厳格に確認して発行しているため、証明書の情報は認証されています。それを確認する仕組みとして、発行者が表示され、発行者IDが検証済みと表示されます(図2)。エンドユーザーは、発行者の表示から発行者の身元が確認されていることを知り、安心してアプリケーションをインストールできます。デベロッパーは、エンドユーザーに安心と信頼を提供するためにも認証局から発行された証明書を利用してコードサイニング署名を行うことが必要です。

信頼できる認証局とは

認証局は、電子証明書の申請に対し、発行者(配布者)の身元を登記簿謄本・印鑑証明書等の書類から、発行組織の実在性と正当性について、厳格な審査を行って証明書を発行しています。また認証局の運用は、暗号鍵や設備・情報などの管理にも厳格な基準が設けられています。中でもWebTrustという監査基準を満たした認証局は、「信頼できる認証局」として、様々なウェブブラウザやAIRなどの実行環境に、その認証局自身のルート証明書が登録されています。そのため、ウェブブラウザやAIRなどの実行環境は、信頼できる認証局から発行された証明書を「検証済み」と表示することができるのです。

署名の注意

AIRアプリケーションのアップデートの際には、アプリケーションが同一の証明書で署名されている必要があります。自己署名の証明書でアプリケーションを配布してしまうと、アップデートの際に認証局の証明書を使うことができなくなってしまいますので注意してください。アプリケーション配布の際には、最初から認証局が発行した証明書で署名するようにしましょう。

証明書の取得から署名まで

AIRアプリケーションの署名には、「証明書の目的」に「コード署名」が含まれている証明書が必要です。一般的なSSLサーバ証明書やS/MIME向け証明書を流用することはできません。認証局から「コードサイニング用証明書」として販売されているサービスを利用するのが良いでしょう。ここでは、国内でサポートができ、Adobe AIR対応のコードサイニング証明書を提供しているグローバルサインの証明書を例に、取得から署名までの流れを説明します。大きく分けて、7つのステップがあります。

Step1 ≪お客様≫ お申込み書類の準備
Step2 ≪お客様≫ Webフォームからのお申込み
Step3 ≪お客様≫ お支払
Step4 ≪お客様≫ メールアドレスの確認
Step5 ≪グローバルサイン≫ 認証
Step6 ≪お客様≫ 証明書の取得とインストール
Step7 ≪お客様≫ アプリケーションに署名

※ディスティングイッシュネーム情報にメールアドレスを登録した場合のみ必要です。

  • Step1 お申込み書類の準備
    お申込みに必要な書類は、認証方法により異なります。必要書類のダウンロードのページにアクセスして、認証方法をご確認下さい。必要な書類が表示されます。
  • Step2 Webフォームからのお申込み
    今すぐお申込みのページにアクセスをして、お申込みフォームに必要事項を入力して下さい。。
  • Step3 お支払
    お支払方法は、銀行振込またはクレジット決済をお選び頂けます。
  • Step4 メールアドレスの確認
    Step2でディスティングイッシュネーム情報にメールアドレスを登録した場合、メールアドレスの受信確認が必要となります。(登録をされなかった人は、次のステップへお進み下さい。)
    ディスティングイッシュネーム情報のメールアドレスにメールをお送り致します。メールの記載に沿って確認作業を行なって下さい。
  • Step5 認証
    弊社にて認証作業をいたします。認証作業後に、証明書の取得用のURLをディスティングイッシュ情報のメールアドレス、もしくは契約者様のメールアドレスへお送り致します
    ※ディスティングイッシュ情報のメールアドレスアドレスがない場合は、契約者様のメールアドレスへお送り致します。
  • Step6 証明書の取得とインストール
    メールに添付してあるリンク先にアクセスして、証明書の取得を実行します。証明書の取得には、Internet Explorerが必要です。
    1. 画面の指示に従って、インストールを進めると、以下のCertificate Installationのメッセージが表示されます。
  1. AIRツールにポーティングするため、証明書のバックアップを行います。Internet Explorer から、[ツール] - [インターネットオプション]のコンテンツタブにある証明書をクリックします。証明書は個人のタブに格納されます。
  2. AIRツールではPKCS #12形式(拡張子.pfx)の証明書が求められます。格納された証明書をダブルクリックして、詳細タブのファイルコピーをクリックします。すると、証明書のエクスポートウイザードが開始されます。
  1. 機密キーのエクスポート画面が表示されたら、「秘密鍵をエクスポートする」を選択して次へ進みます。
  1. 「証明のパスにある証明書を可能であればすべてを含む」を選択します。
  1. バックアップする証明書に対するパスワードを入力します。AIRツールへのインポートの際にこのパスワードが必要となります。次へ進み、保存場所を指定すれば証明書の取得作業は完了です。
  • Step7 アプリケーションに署名
    証明書の取得後は、いよいよAIRアプリケーションへの署名です。アプリケーションの署名ツールは、AIR SDK, Adobe® Dreamweaver® CS3, Adobe Flash® CS3 Professional, Adobe Flex Builder 3などが利用できます。AIRアプリケーションの署名に関しては、グローバルサインの署名サポートページをご覧下さい。

[コードサイニング] Adobe AIR 署名ツールの入手方法