Windows Vista | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
疑問 | Windows Vistaのライセンス認証(アクチベーション)は回避可能なのだろうか? SLP(System Locked Pre-installation)を使用する方法! |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
調査 | Windows Vistaにはライセンス認証(アクチベーション)があり自作パソコンユーザーには何かと不便なのでライセンス認証の回避方法を調査します。(^^;;; メーカー製のWindows Vistaパソコンには認証が必要ないのでその原因を調査してみます。 仕組み的にはWindowsXPと同じと思われますが、マイクロソフトのホームページにWindows Vistaについての記述を見つけることができませんでした。 唯一見つけたのはこちらです。 ”OEM コンピュータの KMS ライセンス認証”と言うところの記述をみると BIOSのACPI_SLICテーブルの記述とWindows Vista上の有効なWindowsマーカーが一致する必要があるようです。 まあ、WindowsXPと同じってことでしょうか? では、実際にメーカー製のWindows Vistaパソコンで確認してみます。(今回は SOTECのBJ3312 Windows Vista HomeBasic搭載パソコンで確認してみます。) とりあえず、コマンドプロンプトを管理者として実行し、下記を実行してプリインストール状態を確認します。 cscript c:\windows\system32\slmgr.vbs -dlv まずは、KeyfinderでSLP用のプロダクトキーを確保し、有効なWindowsマーカーを見極める為、Cドライブをバックアップします。 最初に、Windows Vista HomeBasicをプロダクトキーを入力せずにクリーンインストールします。 次にコマンドプロンプトを管理者として実行し、下記を実行して状態を確認します。 cscript c:\windows\system32\slmgr.vbs -dlv では、コマンドプロンプトを管理者として実行し、先に確保したSLP用のプロダクトキーに変更します。 cscript c:\windows\system32\slmgr.vbs -ipk *****-*****-*****-*****-BK3JF コマンドプロンプトを管理者として実行し、下記を実行して状態を確認します。 cscript c:\windows\system32\slmgr.vbs -dlv 有効なWindowsマーカーを発見すべく、バックアップしてあるCドライブのファイルに変更していきます。 変更すること数時間・・・・・・・・・・・やっと目的のファイルが見つかりました。 下記のファイルを入れ替えると(入れ替えはセーフモードではなく通常モードで可能ですが、”Software Licensing”サービスの停止とファイルの所有権、アクセス権の変更が必要です。) C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareLicensing\tokens.dat 結論! 有効なWindowsマーカー(メーカー情報)は下記ファイルに書いてある様です。 C:\Windows\ServiceProfiles\NetworkService\AppData\Roaming\Microsoft\SoftwareLicensing\tokens.dat <補足1> では上記ファイルを他のパソコンで試して見ましょう。 まず、通常のWindows Vista HomeBasicを上記SLP用プロダクトキーでインストールし tokens.datをSOTECのBJ3312のものに変更します。 結果は、当然ですがライセンス認証(アクチベーション)を要求されます。 では、BIOSを改変してみましょう。(方法はWindowsXPと同じです。ここ参照) 残念ながら、Manufacturer NameをSOTECのBJ3312と同じ”SOTEC CO., LTD.”に変更してもライセンス認証に成功することができませんでした。 今回の敵は手ごわいですね。(T_T)
<補足2> SOTECのBJ3312でWindows Vistaの他のバージョンの場合を試してみましょう。 必要なものは @そのバージョン用のSLPキー AそのバージョンのSLP用tokens.dat ですが、ちょうどいろいろなバージョンのSLPキーが流出しましたね〜(^^)
問題はtokens.datですが、海外の情報より”OEM Certificate”の情報だけをtokens.datより抜き出せば各バージョンのWindows Vistaに利用できることがわかりました。 方法
では、早速SOTECのBJ3312にWindows Vista Ultimateを上記SLPキーでインストールします。 まずは、インストール直後の状態をコマンドプロンプトを管理者として実行し、下記を実行して確認します。 cscript c:\windows\system32\slmgr.vbs -dlv
では、”OEM Certificate”情報をコマンドプロンプトを管理者として実行し、下記を実行して適用します。 cscript c:\windows\system32\slmgr.vbs -ilc <右記ファイルの保存場所>oemcert_sotec.xrm-ms
再度、コマンドプロンプトを管理者として実行し、下記を実行して状態を確認します。 cscript c:\windows\system32\slmgr.vbs -dlv
<補足3> 海外の情報でWindows VistaのSLPのBIOS変更方法が記載されていましたので試してみます。 必要なものは @BIOS編集ツール ABIOSのACPI_SLICテーブルに記載されているOEM ID,OEM Table ID BBIOSのACPI_SLICテーブルの内容(ACPISLIC.bin) のようです。 @についてはAward BIOSの場合、CBROM 2.19, MODBIN6 2.01.01,バイナリーエディタが必要とのことです。 Aについては後述するとして、BについてはSOTECのBJ3312より取り出します。 幸いなことにSOTECのBJ3312のマザーボードはECS 945G-M3 v3.0&Award BIOSな為、上記BIOS編集ツールが使えました。
AについてはACPITBL.BINより
では、早速 自作機のBiosを改変してみます。 今回の犠牲者は古いマザーですが EPoXのEP-4G4A です。(このBiosは512KBのAward BIOSです。) 説明上、このBios名を4G4A2B04.BINとします。
早速Biosを更新してWindows Vistaを立ち上げましたが、OSが起動しません。 上記で乗っ取った”APIC”の影響でOSの再インストールが必要になります。 気を取り直して、Windows Vista UltimateをSLPキーでインストールし、上記で述べた”OEM Certificate”情報を追加します。 おおっ!ライセンス認証に成功しました。(^^) <補足3+> GIGABYTE GA-8I915G Duo でも試してみました。(このBiosは384KBのAward BIOSですが・・・・ AMIのフラッシュユーティリティを使います。) 方法は上記と一緒ですが乗っ取るACPI機能のうち、”MCFG”ではライセンス認証に失敗、”APIC”で成功しました。(このマザーもOSの再インストールが必要でした。) また、流出しているASUSのノート用のACPISLIC.BINと”OEM Certificate”情報でも成功しました。 まとめると('070218更新)
|
PRESENTED by hiroji