システムの概念について

アプリケーションにアクティベーション機能を付けると、その使用料が、きちんと回収できるようになります。
Windowsアプリケーションに、アクティベーション機能を追加するために、それほど時間はかかりません!!
現在の認証状況は常に当社のWebサーバーに保管し、エンドユーザーがアプリケーションでON/OFFします。

アプリケーションを利用するPCを限定する仕組み
 
  • このページは、インターネットを介したアクティベーションによって、アプリケーションの正規利用者を認証する概念をご紹介しています。
  • 便宜上、「アクティベーション・サーバー」と表現していますが、実際にはASP.NET(2.0)が稼働しているWebサーバーを利用しています。
 

前提条件として

アプリケーションをご利用開始の際、最初は必ずインターネットに接続中でなければなりません。

従って、インターネットをご利用いただけない環境での認証には対応していません。

 

アクティベーションとは

直訳は活性化ですが、PCに於いては、OSやアプリケーションの機能に制限がある状態から、正規の利用者であると認証することで、その制限を完全に取り除くことを指しています。

この認証の最大の利点は、唯一特定のPCでのみ利用可能にする仕組みを備えていることです。

 

アクティベーションの例

アクティベーションによる認証を備えたアプリケーションは、今後増える傾向にあると思われます。

1. Microsoft Office 2003,2007,2010

2. Adobe CREATIVE SUITE 2,3,4,5

3. ウイルスバスター2008,2009,2010

4. Nero 8,9,10 など...

 

単純な仕組み

PCが世界で唯一のユニークな番号を持っていれば、その番号のPCがアプリケーションを使うことをサーバーに記録しておけばいいのです。

幸い、Windows XP以降のPCはそんなユニークな番号を生成しています。

そして、ユーザーIDとパスワードにより、「誰が」は特定できるので、その人が、その番号を持つPCで利用することを、サーバーに記録しておきます。

すると、たとえIDとパスワードを真似ても、PCを真似ることはできません。

 

プロダクトID

世界で唯一のユニークな番号とは、コンピュータのプロパティで確認できるプロダクトIDのことです。
コンピュータのプロパティ画面

これはOSのProduct Keyと、ハードウェアの構成要素から生成されています。

 

サーバーについて

ASP.NET 2.0 を利用するため、Windows Server 2003で運用しているレンタルサーバーのWebサイトを利用しています。

情報は、SQL Serverによって保管されます。

利用するレンタルサーバーによっては、予告なくメンテナンスが行われるなど、認証できない時間帯が生じることもあるため、24時間いつでも認証できることを保証するものではありません。

但し、アクセスできない時間帯が長時間続くような事態は、現在までに一度も起きていません。

 
 

シェアウェアを例にした大まかな処理の流れ

アクティベーションまでの大まかな流れを示した図

 

アプリケーション対アクティベーション・サーバーの通信

 

作者対アクティベーション・サーバーの通信

  • アプリケーションの作者専用サイトにログインし、Webフォームによる管理ツールをご利用ください。
  • 管理ツールでは、アプリケーション利用者の登録、削除、入金処理などを行うほか、作者自身の個人情報を編集することができます。
 

PCを再認証する場合(通常は不要)

  1. 既にアクティベーションを済ませたPCを再認証する場合、プログラムは、Windowsのレジストリ等に記録しておいたアプリケーションのユーザーIDとパスワードを読み出します。
  2. 続いて、そのPCのプロダクトIDをOS情報から読み出します。
  3. [Webサービス]を介して、サーバーにユーザーIDとパスワードとプロダクトIDを伝えます。
  4. サーバーは、受け取ったユーザーIDとパスワードとプロダクトIDが、データベースに記録している内容と完全に一致した場合は、認証成立でエラーコード 0 を返します。アプリケーションはプログラムの内部処理によって、機能制限中のフラグをOFFにするなど、その後のプログラムの動作に反映させてください。
  5. 認証手順の詳細については、サンプルプログラムのソースコードを参照してください。