Windows XP プロダクト アクティベーション

トピック
Windows XP の Microsoft プロダクト アクティベーションにおける技術詳細Windows XP の Microsoft プロダクト アクティベーションにおける技術詳細
プロダクト アクティベーションおよびボリューム ライセンスプロダクト アクティベーションおよびボリューム ライセンス
プロダクト アクティベーションおよび新しいプリインストール PCプロダクト アクティベーションおよび新しいプリインストール PC
プロダクト アクティベーションおよび小売りソフトウェア製品の箱入りセットプロダクト アクティベーションおよび小売りソフトウェア製品の箱入りセット
ハードウェア変更と Windows XP のアクティベーションに与える影響ハードウェア変更と Windows XP のアクティベーションに与える影響

Windows XP の Microsoft プロダクト アクティベーションにおける技術詳細

ソフトウェアの著作権侵害は世界中の問題で、ソフトウェア開発者や再販業者、サポート担当者、消費者に対してマイナスの影響を及ぼします。著作権侵害の形式の一つとして、これが 50% にも昇ると推定されていますが、カジュアル コピーがあります。カジュアル コピーとは、ソフトウェアの使用許諾契約書 (EULA) を侵害する方法でソフトウェアを複数 PC で共有、インストールすることです。Microsoft はこの形式の著作権侵害を減らすためのソリューションとしてプロダクト アクティベーションを開発しました。

プロダクト アクティベーションはいくつかの方法やテクノロジを使って、知的所有権の保護という Microsoft の目標を達成するために、簡単にユーザーが EULA に従ってソフトウェアの著作権侵害を減らせるようにします。

この紀要では、カスタマとパートナーがプロダクト アクティベーションに使用されているテクノロジ、およびその目立たなくて匿名的な性格の理解に役立つように、その概要を説明します。

1.

以下のルートで購入した Windows XP でのアクティベーションの動作方法

PC メーカー(OEM)

小売店("箱入りセット" のソフトウェア製品を購入)

ボリューム ライセンシング契約(Microsoft Open、Enterprise、Select ライセンシングなどのプログラムを通してライセンスを購入したカスタマ)

2.

インストール ID のハードウェア ハッシュ コンポーネントが作成される方法および、相当量のハードウェアを変更したことにより Windows XP のコピーを再アクティベートする必要のあるシナリオ。

プロダクト アクティベーションの基礎についての詳細な一般的概要は、http://www.microsoft.com/piracy/mpa.aspx (英語) を参照してください。また、このドキュメントには技術的な概念もいくつか記載されています。それら技術的概念を取り上げた参考資料のリンクが付録に挙げてあります。このドキュメントに含まれている情報は、Windows XP のプロダクト アクティベーションについての発表時点の見解です。

ページのトップへページのトップへ

プロダクト アクティベーションおよびボリューム ライセンス

Microsoft Open License、Enterprise Agreement、Select License など Microsoft のボリューム ライセンス契約を通して購入された Windows XP アップグレード ライセンスには、アクティベーションは不要です。ボリューム ライセンシング メディアおよびボリューム ライセンス プロダクト キー (VLK) を使用した Windows XP のインストールには、アクティベーションやハードウェア チェック、インストールやイメージングの制限はありません。

ページのトップへページのトップへ

プロダクト アクティベーションおよび新しいプリインストール PC

大半のカスタマは、新規コンピュータの購入時に Windows を取得します。そして Windows XP をプリインストールした新規コンピュータのほとんどは、アクティベーションをまったく必要としません。Microsoft は OEM に Windows XP を "プリ アクティベート" する機能を提供しています。全新規 PC の 80% 以上がカスタマにプリ アクティベート済みで提供されていると推定されています。

OEM による Windows XP の "プリ アクティベーション" は、OEM の構成オプションと選択によって 2 つの異なる方法で行なわれます。一部の OEM は、PC 内の OEM が指定した BIOS 情報にインストールをロックするメカニズムを使用して、Windows XP を保護します。このテクノロジは、コンピュータに Windows を再インストールするためOEM の多くが出荷した CD で何年にも渡って使用してきた既存のテクノロジと非常によく似ています。Microsoft は、既存の OEM CD BIOS ロック メカニズムを拡張してプロダクト アクティベーションと統合し、この保護方法を "システム ロック プリ インストール (SLP)" と呼んでいます。

SLP が正常に実装されると、OEM PC の BIOS に保存されている情報を使用して、インストールをカジュアル コピーから保護します。エンド カスタマと Microsoft の通信は不要で、ハードウェア ハッシュは作成されず、不要です。Windows XP はブート時に、PC の BIOS と SLP 情報を比較します。一致しないと、アクティベーションが必要となります。

SLP の実装された PC 上でも個々のハードウェアを変更でき、再アクティベーションも不要です。たとえマザーボードが置き換えられても、置換したマザーボードが OEM により製造されたオリジナルのボードで、BIOS が適切に保持されている限り不要です。BIOS 情報が一致しないという、まれに起きるシナリオでは、インターネットや電話で Microsoft アクティベーション センターに連絡することにより、PC は 30 日以内にアクティベートされる必要があります。この方法は小売のシナリオと同じです。

また OEM は、一般消費者と同じ方法で Microsoft に連絡することにより Windows XP をアクティベートできます。この方法でのアクティベーションは、小売店の箱入りセットの Windows XP をアクティベートする方法と同一です。これについては、後半でより詳細に説明します。

上の 2 つのどのプリ アクティベーションの方法も採用していない OEM により Windows XP をプリインストールされた新規 PC は、カスタマによってアクティベートされる必要があります。このアクティベーションは、小売店で箱入りセットの Windows XP を購入したユーザーが実行するのとまったく同じ方法で完了します。

ページのトップへページのトップへ

プロダクト アクティベーションおよび小売りソフトウェア製品の箱入りセット

プロダクト アクティベーションは、インストール ID の提出に基づいています。インストール ID は匿名性を保証するため特別に設計されたもので、Microsoft では著作権侵害を防止する目的だけに使用します。インストール ID は 2 つの異なる情報から成り立っています。それは製品 ID とハードウェア ハッシュです (ハッシュとは、数式とオリジナルな値から引き出された数値です)。プロダクト ID は Windows のインストールにとってユニークな値で、インストール中に使用されたプロダクト キーから作成されます。小売りのソフトウェア箱入りセットに付いてくるプロダクト キーはユニークで、プロダクト キーが作成する製品 ID もユニークです。Microsoft はプロダクト アクティベーションのほかに、製品サポートの要求時などの目的でもプロダクト ID を使用します。プロダクト ID は、[マイ コンピュータ] のプロパティで表示できます (たとえば 12345-123-1234567-12345 はプロダクト ID の 1 例です)。

ハードウェア ハッシュは 8 バイトの値で、PC のハードウェア コンポーネントから得た 10 の異なる情報を一方向に数学的に変換して作成されます。この結果、その結果のハッシュ値を逆方向に計算しても、元の値を算出できません。さらに生成されたハッシュ値の一部だけが、匿名性を確保するハードウェア ハッシュとして使用されます。

例 : プロセッサのシリアル番号は 96 ビット長です。ハッシュされた結果の一方向ハッシュは 128 ビット長になります。アクティベーションのハードウェア ハッシュでは、Microsoft はその結果のハッシュから 6 ビットだけ使用します。ハッシュ アルゴリズムの性質上、この 6 ビットを逆方向に計算して元のプロセッサのシリアル番号を算出することはできません。

さらに 6 ビットは 64 (2^6) の異なる値を表わします。昨年世界中で 1 億台以上の PC が販売されました。この 1 億台の販売された PC の内、64 の異なるハードウェア ハッシュ値だけがアクティベーションの一部として作成されました。

このように Microsoft はユーザーのプライバシーを維持するためにハードウェア ハッシュを開発しました。

さらにまた PC がドッキング ステーションに挿入可能かどうかや、PCMCIA カードを受け付けるかどうかということも判断されます (ドッキング ステーションや PCMCIA カードがあってもよいということは、そのデバイスがない時はハードウェアがなくなったり、変更された時だとしてもよいことを意味します)。最後にハードウェア ハッシュ アルゴリズムにはバージョン番号があります。ほかの値も使用されるため、2 つの異なる PC が実際に同一のハードウェア ハッシュを作成する恐れがあります。ハッシュ値を作成するために使用される異なる 10 のハードウェア値は、下の表で概要を説明します。

1: ハードウェアハッシュのコンポーネント値

コンポーネント名 ハッシュ値の例 (ビット数)

1

ディスプレイ アダプタ

00010 (5)

2

SCSI アダプタ

00011 (5)

3

IDE アダプタ

0011 (4)

4

ネットワーク アダプタのMAC アドレス

1001011000 (10)

5

RAM 量の範囲 (つまり 0-64mb、64-128mb、など)

101 (3)

6

プロセッサ タイプ

011 (3)

7

プロセッサのシリアル番号

000000 (6)

8

ハード ドライブ デバイス

1101100 (7)

9

ハード ドライブ ボリュームのシリアル番号

1001000001 (10)

10

CD-ROM / CD-RW / DVD-ROM

0101111 (7)

 

"ドッキング可能"

0 (1)

 

ハードウェア ハッシュ バージョン (使用されているアルゴリズムのバージョン)

001 (3)

プロダクト ID (9 バイト) とハードウェア ハッシュ (8 バイト) は、Microsoft によりアクティベーション要求を処理するために使用されます。アクティベーションがインターネット経由で完了すると、この 2 つの値からインストール ID (バイナリ形式) が作成されて、要求ヘッダ情報と共に機密保護されたソケット (HTTP の SSL) を通して直接 Microsoft アクティベーション システムにバイナリ形式で送信されます。インターネット アクティベーションを完了するため、通信は 3 回行なわれます。

1.

ハンドシェイク要求。プロダクト ID とハードウェア ハッシュ、要求 ID などの要求ヘッダ データ (ハンドシェイク、要求、承認のリンク)、アクティベーション テクノロジ バージョンが含まれています。合計で 262 バイトです。

2.

ライセンス要求。プロダクト ID とハードウェア ハッシュ、任意のユーザー登録情報を保持するためのカスタマ データ構造が含まれています。登録がスキップされると、この構造は空となります。また要求 ID などの要求ヘッダ データと PKCS10 デジタル証明書の要求構造が含まれています。PKCS10 の構造は、任意のユーザー登録情報が追加されると少し変わります。合計で 2763 〜 3000 バイトです。

3.

承認要求。証明書 ID (ライセンス要求後ユーザーのコンピュータに返されたもの)、発行日付、エラー コードが含まれています。合計で 126 バイトです。

インターネット アクティベーションが完了すると、アクティベーション確認メッセージが直接ユーザーの PC にデジタル証明書として送信されます。この証明書は Microsoft によりデジタル署名されているので、変更や偽造はできません。インターネット アクティベーションの一部として返された確認パケットは約 9 KB のサイズです (デジタル証明書チェーンが確認データ パケット サイズのほとんどを占めます)。

カスタマ サービス窓口に電話してアクティベーションが完了すると、製品 ID およびハードウェア ハッシュが自動的に 50 桁の 10 進数表現であるインストール ID として表示されます。エンコーディングによりデータは変更できないように暗号化され、エラー ハンドリングに役立つようにチェック数字が添付されます。電話によるアクティベーションは 4 ステップのプロセスです。

1.

電話をかける国を選択すると、適切な電話番号が製品 UI に表示されます。

2.

その電話番号にダイヤルします。

3.

インストール ID をカスタマ サービス窓口に通知します。

4.

カスタマ サービスの窓口からもらった確認 ID を入力します。

確認 ID は 42 桁の整数で、アクティベーション キーとエラー ハンドリングに役立つチェック数字が含まれています。インストール ID と確認 ID は両方とも、わかりやすく分けて製品 UI に表示されます。

ページのトップへページのトップへ

ハードウェア変更と Windows XP のアクティベーションに与える影響

プロダクト アクティベーションは動作しているハードウェアを繰り返しチェックしますが、これもただ、違法なハードディスク クローニングを削除するのに役立てるためだけです。まん延するもう一つの著作権侵害であるハードディスク クローニングとは、侵害者がハードディスクのイメージ全体を別の PC にコピーすることです。Windows XP はログイン毎に、アクティベートされた時と同一または類似のハードウェアで実行されているかチェックします。ハードウェアが "かなり相違している" と検出されると、再アクティベーションが必要となります。このチェックは、前に説明した SLP BIOS チェックが失敗すると、SLP BIOS チェック後に実行されます。この結果 PC が工場で SLP プリ アクティベーション メソッドを使用してプリ アクティベートされていると、置換マザーボードが純正で、OEM により BIOS と共に供給されている限り、PC 内のすべてのコンポーネントはマザーボードを含めて交換できます。上に述べたようにボリューム ライセンシング メディアとボリューム ライセンス プロダクト キー (VLK) を使用して行なわれた Windows XP のインストールには、ハードウェア コンポーネントのチェックはありません。

Microsoft は "かなり相違している" ハードウェアを、ドッキング可能であるように構成されている PC とは別だと定義しています。さらにネットワーク アダプタには、大きな "ウエート" が与えられます。PC がドッキング可能でなくて、ネットワーク アダプタが挿入されていて交換されたことがないと、ほかの 6 つ以上の値が変更されない限り再アクティベーションは不要です。ネットワーク アダプタが挿入されていて交換されるか、ネットワーク アダプタを全く挿入したことがない場合で、4 つ以上変更されると (従来ネットワーク アダプタがあった場合はその交換を含めて)、再アクティベーションが必要になります。

シナリオ A

上の表 1 に挙げられたハードウェア コンポーネントを全部揃えた PC 1。ユーザーはマザーボードと CPU チップをアップグレードのため交換し、ビデオ アダプタを交換して、2 台目のハード ドライブを追加して、RAM の量を 2 倍に増やし、CD-ROM ドライブを高速なものに交換しました。

結果: 再アクティベーションは不要です。

シナリオ B

ネットワーク アダプタを持たないコンポーネントを除く、上の表 1 に挙げられたハードウェア コンポーネントを全部揃えた PC 2。ユーザーは RAM の量を 2 倍に増やし、ビデオ カードと SCSI コントローラを交換しました。

結果: 再アクティベーションは不要です。

ドッキング可能な PC はもう少し柔軟に処理されます。PC がドッキング可能で、ネットワーク アダプタが挿入されていて交換されていない場合、ほかの 9 つ以上の値が変更されない限り再アクティベーションは不要です。ネットワーク アダプタが挿入されていないか挿入されていたものが交換された場合で、7 つ以上変更されると (ネットワーク アダプタを含めて)、再アクティベーションが必要になります。

シナリオ C

ネットワーク アダプタを持たないコンポーネントを除く、上の表 1 に挙げられたハードウェア コンポーネントを全部揃えたドッキング可能な PC 3。ユーザーは RAM の量を 2 倍に増やし、ハードディスク ドライブを大容量に交換し、ネットワーク アダプタを追加しました。

結果: 再アクティベーションは不要です。

1 つのコンポーネントの複数回の変更 (たとえばビデオ アダプタ A からビデオ アダプタ B へ、さらにビデオ アダプタ C へ) は 1 回の変更として処理されます。オリジナルのアクティベーション中に存在しなかった 2 台目のハード ドライブの追加など PC へのコンポーネントの追加では再アクティベーションは不要で、上の表にないコンポーネントの変更でも再アクティベーションは不要です。さらに Windows XP を同一または類似ハードウェアへ再インストールした場合、再アクティベーションは何回でも実行できます。最後に、Microsoft アクティベーション クリアリングハウス システムでは、自動的にアクティベーションがインターネット経由で 1 年に 4 回まで、かなり相違しているハードウェア上でも許可されます。この最後の機能は、経験豊富なパワー ユーザーがシステムを変更できるように実装されたもので、再アクティベーションが必要な場合に電話に代わってインターネット経由での再アクティベーションを実行できます。


ページのトップへページのトップへ