TwlIPL/docs/マスタリングツール/ビルド方法.txt
nishikawa_takeshi 8342327d46 マスタリングツール関連のドキュメントを追加。
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2259 b08762b0-b915-fc4b-9d8c-17b2551a87ff
2008-08-25 06:38:54 +00:00

88 lines
2.7 KiB
Plaintext

* ---------------------------------------------------
*
* TWL マスタリングツール 作成方法
*
* ---------------------------------------------------
* ---------------------------------------------------
* 手順
* ---------------------------------------------------
マスタリングツールは、TWLにおける暗号の秘密鍵を内部に持つツールです。
そのため、このツールが流出するとTWLの暗号が破られてしまいます。
(自作のゲームソフトや違法なゲームソフトを量産機で起動できてしまいます。)
その対策として、マスタリングツールの実行バイナリ(.exe)自体に暗号をかけ、
特殊なUSBキーをPCに挿さないと、復号できない仕組みを導入しています。
この対策によって、マスタリングツールの実行バイナリが流出しても、
秘密鍵が漏れることはないうえ、USBキーを持たないユーザは実行できません。
上記の対策を実現するために、マスタリングツールの作成方法は、
以下の2ステップに分かれます。
(Step1.) マスタリングツールのコンパイル
(Step2.) 実行バイナリの暗号化
[用語の定義]
・エンベロープ: Step2.の実行バイナリの暗号化処理
・ドングル: ツール実行のために必要な特殊なUSBキー
* ---------------------------------------------------
* (Step1.) マスタリングツールのコンパイル
* ---------------------------------------------------
このステップでは、マスタリングツールのソースをコンパイルします。
(注意!)
この作業だけでは、マスタリングツールの実行バイナリは暗号化されないため、
ツールが流出すると、誰でもマスタリングが可能になってしまいます。
(1) 準備
以下のパッケージが必要です。
○ TWLIPL_private
マスタリングツールのソースを含むパッケージ。
秘密鍵の生データを含むため、流出させない管理が必要です。
そのため、USBメモリ内にリポジトリとツリーが置かれ、
そのUSBメモリは指紋認証キャビネットで管理されています。
したがって、このパッケージを入手するには、
指紋認証キャビネットへの指紋の登録が必要です。
○ TwlSDK
いくつかのライブラリを使用しています。
○ TwlIPL
いくつかのインクルードファイルを使用しています。
ビルド前に、以下の環境変数に各ツリーのルートを指定しておく必要があります。
-- TWLSDK_ROOT
-- TWL_IPL_RED_ROOT
-- TWL_IPL_RED_PRIVATE_ROOT
(2) 方法
make してください。
(3) ビルドスイッチ
mastering.h には、各種のビルドスイッチが宣言されていますので、
適宜、変更してください。
* ---------------------------------------------------
* (Step2.) 実行バイナリの暗号化(エンベロープ)
* ---------------------------------------------------
(1) 準備
以下の機材が必要です。
○ エンベロープ用USBキー
実行用のUSBキーとは異なります。ソフトGの村上豊さんが所有しています。
○ エンベロープソフト
PCソフトです。ソフトGが所有しています。
(2) 方法
現在、エンベロープが可能なのは、ソフトGの村上豊さんのみです。
村上豊さんにお問い合わせください。
以上