(57)【要約】  ユーザに表示するためにオーディオ・ファイルのマルチメディア・プレゼンテーションをコンピューティング・デバイス（１０２）に配信し、さらにユーザがマルチメディア・プレゼンテーションに合わせて楽器（１１２）を演奏することができるシステムと方法が開示される。コンピューティング・デバイス（１０２）でのユーザによる楽曲の選択に応じて、サーバ（１０４）は楽曲に関連付けられたセッション・ファイルをコンピュータ・ネットワーク（１０５）を介してコンピューティング・デバイス（１０２）に送信する。セッション・ファイルは、オーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに提示するためにコンピューティング・デバイス（１０２）がセッション・ファイルを処理することができるように、オーディオ・ファイルとマルチメディア・データを含む。インターフェース・デバイス（１０６）は、コンピューティング・デバイス（１０２）とユーザの楽器（１１２）とに接続されている。インターフェース・デバイス（１０６）は、ユーザがオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせて楽器（１１２）を演奏することができるよう、楽器（１１２）をコンピューティング・デバイス（１０２）に結合する。
2005510763.tif 000002
【特許請求の範囲】
【請求項１】
ユーザがマルチメディア・プレゼンテーションに合わせて楽器を演奏することができるように、オーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに表示するためにコンピューティング・デバイスに配信するシステムにおいて、
ユーザによる楽曲の選択に応じてコンピュータ・ネットワークを介してコンピューティング・デバイスにセッション・ファイルを送信するサーバであって、コンピューティング・デバイスがオーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに提示するためにセッション・ファイルを処理するよう、セッション・ファイルが選択された楽曲に関連付けられており、セッション・ファイルがオーディオ・ファイルとマルチメディア・データを含むサーバと、
コンピューティング・デバイスとユーザの楽器に接続されているインターフェース・デバイスであって、ユーザがオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせて楽器を演奏できるように楽器をコンピューティング・デバイスに結合するインターフェース・デバイスと
を含むシステム。
【請求項２】
楽器に対するサウンド特性を規定する設定を有する楽器用コントロール・パネル・グラフィカル・インターフェースがコンピューティング・デバイスによって表示される請求項１に記載のシステム。
【請求項３】
コントロール・パネル・グラフィカル・インターフェースが、楽曲に対するサウンド特性をユーザが設定することができる請求項２に記載のシステム。
【請求項４】
ユーザが選択した楽曲に対するオーディオ・ファイルに関連付けられた楽器のサウンド特性をモデル化するために、セッション・ファイルのマルチメディア・データがコントロール・パネル・グラフィカル・インターフェースを事前に決めた値に設定する請求項２に記載のシステム。
【請求項５】
ユーザの楽器を含まないオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせてユーザがユーザの楽器を演奏することができるよう、ユーザの楽器に関連付けられたトラックをユーザが選択した楽曲のオーディオ・ファイルから除去される請求項１に記載のシステム。
【請求項６】
セッション・ファイルのマルチメディア・データが、ユーザが選択した楽曲のオーディオ・ファイルに関連付けられた楽譜を表示させる請求項１に記載のシステム。
【請求項７】
インターフェース・デバイスに記憶されている一意の識別子に基づいてサーバがユーザを識別する請求項１に記載のシステム。
【請求項８】
ユーザのインターフェース・デバイスに記憶されている一意の識別子がインターフェース・デバイスに関連付けられたシリアル番号である請求項７に記載のシステム。
【請求項９】
サーバが、一意の識別子に基づいてユーザに楽曲のプレゼンテーションを合わせる請求項７に記載のシステム。
【請求項１０】
インターフェース・デバイスがインターフェース・デバイスに関連付けられたユーザ・キーを記憶する請求項７に記載のシステム。
【請求項１１】
サーバからユーザのコンピューティング・デバイスに送信されたオーディオ・ファイルがオーディオ・ファイルに関連付けられたオーディオ・ファイル・キーで暗号化されており、オーディオ・ファイル・キーはユーザに対するユーザ・キーで暗号化されており、これもまたコンピューティング・デバイスに送信される請求項１０に記載のシステム。
【請求項１２】
コンピューティング・デバイスがオーディオ・ファイルを解読するために解読されたオーディオ・ファイル・キーを使用するように、インターフェース・デバイスが、記憶されているユーザ・キーを使用してユーザ・キーで暗号化されたオーディオ・ファイル・キーを解読し、解読されたオーディオ・ファイル・キーをコンピューティング・デバイスに送信する請求項１１に記載のシステム。
【請求項１３】
楽器がマイクロフォンである請求項１に記載のシステム。
【請求項１４】
楽器がギターである請求項１に記載のシステム。
【請求項１５】
ギター用増幅器を含み、ギターのサウンド特性を規定する設定を有するコントロール・パネル・グラフィカル・インターフェースがコンピューティング・デバイスによって表示される請求項１４に記載のシステム。
【請求項１６】
ユーザが選択した楽曲に対するオーディオ・ファイルに関連付けられたギターのサウンド特性をモデル化するために、セッション・ファイルのマルチメディア・データがコントロール・パネル・グラフィカル・インターフェースを事前に決めた値に設定する請求項１５に記載のシステム。
【請求項１７】
ギター・トラックを含まないオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせてユーザがユーザのギターを演奏することができるよう、ユーザが選択した楽曲のオーディオ・ファイルからギター・トラックが除去される請求項１６に記載のシステム。
【請求項１８】
セッション・ファイルのマルチメディア・データが、ユーザが選択した楽曲のオーディオ・ファイルに関連付けられたギター用の楽譜を表示させる請求項１６に記載のシステム。
【請求項１９】
ユーザがマルチメディア・プレゼンテーションに合わせて楽器を演奏することができるオーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに配信する方法において、
ユーザによる楽曲の選択に応じて、楽曲に関連付けられた、オーディオ・ファイルとマルチメディア・データとを含むセッション・ファイルを送信するステップと、
オーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに提示するためにコンピューティング・デバイスを使用してセッション・ファイルを処理するステップと、
ユーザがオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせて楽器を演奏できるように、楽器のアナログ信号のアナログ・デジタル変換を実行することによって楽器をコンピューティング・デバイスに結合するステップと
を含む方法。
【請求項２０】
楽曲に対するサウンド特性を規定する設定を有する楽器用コントロール・パネル・グラフィカル・インターフェースを表示するステップをさらに含む請求項１９に記載の方法。
【請求項２１】
コントロール・パネル・グラフィカル・インターフェースが、楽曲に対するサウンド特性をユーザが設定することができる請求項２０に記載の方法。
【請求項２２】
ユーザが選択した楽曲に対するオーディオ・ファイルに関連付けられた楽器のサウンド特性をモデル化するために、セッション・ファイルのマルチメディア・データがコントロール・パネル・グラフィカル・インターフェースを事前に決めた値に設定する請求項２０に記載の方法。
【請求項２３】
ユーザの楽器を含まないオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせてユーザがユーザの楽器を演奏することができるよう、ユーザの楽器に関連付けられたトラックをユーザが選択した楽曲のオーディオ・ファイルから除去するステップをさらに含む請求項１９に記載の方法。
【請求項２４】
マルチメディア・プレゼンテーションでユーザが選択した楽曲のオーディオ・ファイルに関連付けられた楽譜をユーザに対して表示するステップをさらに含む請求項１９に記載の方法。
【請求項２５】
一意の識別子に基づいてユーザを識別するステップをさらに含む請求項１９に記載の方法。
【請求項２６】
一意の識別子がシリアル番号である請求項２５に記載の方法。
【請求項２７】
一意の識別子に基づいてユーザに楽曲のプレゼンテーションを合わせるステップをさらに含む請求項２５に記載の方法。
【請求項２８】
ユーザ・キーを記憶するステップをさらに含む請求項２５に記載の方法。
【請求項２９】
ユーザのコンピューティング・デバイスに送信されたオーディオ・ファイルをオーディオ・ファイルに関連付けられたオーディオ・ファイル・キーで暗号化するステップと、
オーディオ・ファイル・キーをユーザに対するユーザ・キーで暗号化するステップと
をさらに含む請求項２８に記載の方法。
【請求項３０】
記憶されているユーザ・キーを使用してユーザ・キーで暗号化されたオーディオ・ファイル・キーを解読するステップと、
解読されたオーディオ・ファイル・キーでオーディオ・ファイルを解読するステップと
をさらに含む請求項２９に記載の方法。
【請求項３１】
楽器がマイクロフォンである請求項１９に記載の方法。
【請求項３２】
楽器がギターである請求項１９に記載の方法。
【請求項３３】
ギター用増幅器を含み、ギターのサウンド特性を規定する設定を有するコントロール・パネル・グラフィカル・インターフェースを表示するステップをさらに含む請求項３２に記載の方法。
【請求項３４】
ユーザが選択した楽曲に対するオーディオ・ファイルに関連付けられたギターのサウンド特性をモデル化するために、セッション・ファイルのマルチメディア・データがコントロール・パネル・グラフィカル・インターフェースを事前に決めた値に設定する請求項３３に記載の方法。
【請求項３５】
ギター・トラックを含まないオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせてユーザがユーザのギターを演奏することができるよう、ギター・トラックをユーザが選択した楽曲のオーディオ・ファイルから除去するステップをさらに含む請求項３４に記載の方法。
【請求項３６】
マルチメディア・プレゼンテーションでユーザが選択した楽曲のオーディオ・ファイルに関連付けられたギターに対する楽譜をユーザに対して表示するステップをさらに含む請求項３４に記載の方法。
【請求項３７】
コンピュータによって実行された際に、
ユーザによる楽曲の選択に応じて、楽曲に関連付けられた、オーディオ・ファイルとマルチメディア・データとを含むセッション・ファイルを送信するオペレーションと、
オーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに提示するようセッション・ファイルを処理するオペレーションと、
ユーザがオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせて楽器を演奏できるように、楽器のアナログ信号のアナログ・デジタル変換を実行するオペレーションと
を含むオペレーションをコンピュータに実行させる命令を記憶しているコンピュータ可読媒体。
【請求項３８】
楽曲に対するサウンド特性を規定する設定を有する楽器用コントロール・パネル・グラフィカル・インターフェースを作成し、表示するオペレーションをさらに含む請求項３７に記載のコンピュータ可読媒体。
【請求項３９】
コントロール・パネル・グラフィカル・インターフェースが、楽曲に対するサウンド特性をユーザが設定することができる請求項３８に記載のコンピュータ可読媒体。
【請求項４０】
ユーザが選択した楽曲に対するオーディオ・ファイルに関連付けられた楽器のサウンド特性をモデル化するために、セッション・ファイルのマルチメディア・データがコントロール・パネル・グラフィカル・インターフェースを事前に決めた値に設定する請求項３８に記載のコンピュータ可読媒体。
【請求項４１】
ユーザの楽器を含まないオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせてユーザがユーザの楽器を演奏することができるよう、ユーザの楽器に関連付けられたトラックをユーザが選択した楽曲のオーディオ・ファイルから除去するオペレーションをさらに含む請求項３７に記載のコンピュータ可読媒体。
【請求項４２】
マルチメディア・プレゼンテーションでユーザが選択した楽曲のオーディオ・ファイルに関連付けられた楽譜をユーザに対して表示するオペレーションをさらに含む請求項３７に記載のコンピュータ可読媒体。
【請求項４３】
一意の識別子に基づいてユーザを識別するオペレーションをさらに含む請求項３７に記載のコンピュータ可読媒体。
【請求項４４】
一意の識別子がシリアル番号である請求項４３に記載のコンピュータ可読媒体。
【請求項４５】
一意の識別子に基づいてユーザに楽曲のプレゼンテーションを合わせるオペレーションをさらに含む請求項４３に記載のコンピュータ可読媒体。
【請求項４６】
ユーザ・キーを記憶するオペレーションをさらに含む請求項４３に記載のコンピュータ可読媒体。
【請求項４７】
ユーザのコンピューティング・デバイスに送信されたオーディオ・ファイルをオーディオ・ファイルに関連付けられたオーディオ・ファイル・キーで暗号化するオペレーションと、
オーディオ・ファイル・キーをユーザに対するユーザ・キーで暗号化するオペレーションと
をさらに含む請求項４６に記載のコンピュータ可読媒体。
【請求項４８】
記憶されているユーザ・キーを使用してユーザ・キーで暗号化されたオーディオ・ファイル・キーを解読するオペレーションと、
解読されたオーディオ・ファイル・キーでオーディオ・ファイルを解読するオペレーションと
をさらに含む請求項４８に記載のコンピュータ可読媒体。
【請求項４９】
楽器がマイクロフォンである請求項３７に記載のコンピュータ可読媒体。
【請求項５０】
楽器がギターである請求項３７に記載のコンピュータ可読媒体。
【請求項５１】
ギターに対するサウンド特性を規定する設定を有するギター用増幅器を含むコントロール・パネル・グラフィカル・インターフェースを作成し、表示するオペレーションをさらに含む請求項５０に記載のコンピュータ可読媒体。
【請求項５２】
ユーザが選択した楽曲に対するオーディオ・ファイルに関連付けられたギターのサウンド特性をモデル化するために、セッション・ファイルのマルチメディア・データがコントロール・パネル・グラフィカル・インターフェースを事前に決めた値に設定する請求項５１に記載のコンピュータ可読媒体。
【請求項５３】
ギター・トラックを含まないオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせてユーザがユーザのギターを演奏することができるよう、ギター・トラックをユーザが選択した楽曲のオーディオ・ファイルから除去するオペレーションをさらに含む請求項５２に記載のコンピュータ可読媒体。
【請求項５４】
マルチメディア・プレゼンテーションでユーザが選択した楽曲のオーディオ・ファイルに関連付けられたギター用の楽譜をユーザに対して表示するオペレーションをさらに含む請求項５２に記載のコンピュータ可読媒体。
【請求項５５】
楽器をコンピューティング・デバイスに結合するインターフェース・デバイスにおいて、コンピューティング・デバイスは、楽器の処理済デジタル・オーディオ信号を作成するためにインターフェース・デバイスから受信した楽器のデジタル化されたオーディオ信号に対してデジタル信号処理（ＤＳＰ）を実行し、デジタル・オーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに提示し、楽器の処理済デジタル・オーディオ信号とデジタル・オーディオ・ファイルの両方のミックスされたデジタル信号を作成し、インターフェース・デバイスは、ミックスされたデジタル信号をアナログ・サウンド・デバイスによりユーザに送信するためにユーザにサウンドを提示するアナログ形式に変換させ、それによりユーザがマルチメディア・プレゼンテーションに合わせて楽器を演奏することを可能にし、
プロセッサと、
楽器の処理済デジタル・オーディオ信号とコンピューティング・デバイスから受信したデジタル・オーディオ・ファイルの両方のミックスされたデジタル信号をミックスされたアナログ・オーディオ信号に変換するデジタル・アナログ（Ｄ／Ａ）コンバータと、
楽器のデジタル化されたオーディオ信号とミックスされたデジタル信号のタイミングとフォーマットを制御するデジタル・オーディオ・インターフェースと
を含み、
プロセッサは、ユーザがオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせて楽器を演奏することができるように、ミックスされたデジタル信号がＤ／Ａコンバータを介し、またアナログ・サウンド・デバイスを介してユーザに送信されるよう、デジタル・オーディオ・インターフェースを制御するインターフェース・デバイス。
【請求項５６】
シリアル入出力（Ｉ／Ｏ）リンクを介してインターフェース・デバイスをコンピューティング・デバイスに結合するシリアルＩ／Ｏコントローラをさらに含む請求項５５に記載のインターフェース・デバイス。
【請求項５７】
シリアル入出力（Ｉ／Ｏ）コントローラがユニバーサル・シリアル・バス（ＵＳＢ）コントローラであり、インターフェース・デバイスがＵＳＢリンクを介してコンピューティング・デバイスに結合されている請求項５６に記載のインターフェース・デバイス。
【請求項５８】
アナログ・サウンド・デバイスに出力するために他のオーディオ信号を含むミキサーをさらに含む請求項５５に記載のインターフェース・デバイス。
【請求項５９】
アナログ・サウンド・デバイスに出力するために処理済アナログ・オーディオ信号とアナログ・オーディオ・ファイルのボリュームを制御するボリューム・コントローラをさらに含む請求項５５に記載のインターフェース・デバイス。
【請求項６０】
アナログ・サウンド・デバイスが少なくとも１つのスピーカを含む請求項５５に記載のインターフェース・デバイス。
【請求項６１】
ユーザの楽器を含まないオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせてユーザがユーザの楽器を演奏することができるよう、ユーザの楽器に関連付けられたトラックがマルチメディア・プレゼンテーションに関連付けられたデジタル・オーディオ・ファイルから除去される請求項５５に記載のインターフェース・デバイス。
【請求項６２】
マルチメディア・プレゼンテーションがユーザに表示されるオーディオ・ファイルに関連付けられた楽譜を含む請求項６１に記載のインターフェース・デバイス。
【請求項６３】
楽器がギターである請求項５５に記載のインターフェース・デバイス。
【請求項６４】
コンピューティング・デバイスがコンピュータ・ネットワークを介してサーバからデジタル・オーディオ・ファイルのマルチメディア・プレゼンテーションを受信する請求項５５に記載のインターフェース・デバイス。
【請求項６５】
セキュリティ・デバイスに記憶されている一意の識別子に基づいて許可されたインターフェースされたデバイスとしてインターフェース・デバイスを識別するセキュリティ・デバイスをさらに含む請求項６４に記載のインターフェース・デバイス。
【請求項６６】
ユーザのセキュリティ・デバイスに記憶されている一意の識別子がインターフェース・デバイスに関連付けられたシリアル番号である請求項６５に記載のインターフェース・デバイス。
【請求項６７】
セキュリティ・デバイスがインターフェース・デバイスに関連付けられたユーザ・キーを記憶する請求項６５に記載のインターフェース・デバイス。
【請求項６８】
サーバからユーザのコンピューティング・デバイスに送信されたデジタル・オーディオ・ファイルがデジタル・オーディオ・ファイルに関連付けられたオーディオ・ファイル・キーで暗号化され、オーディオ・ファイル・キーがユーザに対するユーザ・キーで暗号化され、これもまたコンピューティング・デバイスに送信される請求項６７に記載のインターフェース・デバイス。
【請求項６９】
コンピューティング・デバイスがオーディオ・ファイルを解読するために解読されたオーディオ・ファイル・キーを使用するよう、セキュリティ・デバイスが記憶されているユーザ・キーを使用してユーザ・キーで暗号化されたオーディオ・ファイル・キーを解読し、解読されたオーディオ・ファイル・キーをコンピューティング・デバイスに送信する請求項６８に記載のインターフェース・デバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチメディア・プレゼンテーションをユーザに配信することに関する。詳細には、本発明は、ユーザがマルチメディア・プレゼンテーションに合わせて楽器を演奏できるようオーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに配信することに関する。
【背景技術】
【０００２】
コンピュータのユーザがそのコンピュータを使用して音楽を作成、編集することを可能にするために、デジタル信号処理（ＤＳＰ）アルゴリズムを使用する多くのソフトウェア・パッケージが開発されてきた。さらに、ＭＩＤＩ（音楽演奏用デジタル・インターフェース）標準プロトコルの開発は、楽器、シンセサイザー、およびコンピュータの間における音楽情報の交換を可能にした。ＭＩＤＩプロトコルは、旋律の開始、音の高さ、主旋律、ボリューム、およびビブラートのような音楽的属性を含む音楽イベント用のコードを規定する。音楽セッションを録音するためにＭＩＤＩインターフェースを有するコンピュータを使用することができるが、テープ・レコーダの場合のようにアナログ音波を録音するのではなく、コンピュータは音楽をキーストロークと制御コードとして記憶する。この場合、この録音は、従来の録音とは全く異なる方法でソフトウェア・パッケージを使用して編集することができる。例えば、リズムはＭＩＤＩメッセージのタイム・コードを編集することにより変更することができる。別の例として、コンピュータは、演奏をある調から別の調に簡単に移調することができる。ＭＩＤＩ録音を編集することのできる複数の方法は事実上無限にある。
【０００３】
さらに、ユーザが自分のコンピュータに自分の楽器（例えば、鍵盤またはギター）をインプットすることにより音楽を作成するために自分のコンピュータを使用できるよう、ＭＩＤＩの使用を伴う場合と伴わない場合のある特有のソフトウェア・プログラムが開発されてきた。一般に、楽器からのアナログ・オーディオ信号はアナログ・デジタル（Ａ／Ｄ）変換を受け（例えば、コンピュータでサウンド・カードが実行される）、そのオーディオ信号のデジタル・バージョンは次いで、コンピュータ・プログラムによって変更することができるように、コンピュータによりデジタル信号処理を受ける。この変更はユーザの制御下でも（例えば、音楽編集のために）、ソフトウェア・プログラムで事前に決めた方法でも行うことができる。次いで、このデジタル的に変更された信号をユーザに対する再生用にアナログ形式に変換し直す（例えば、デジタル・アナログ（Ｄ／Ａ）変換）。例えば、自分のコンピュータにフックしたギターを演奏しているユーザは、変形した方法で再生するようそのギターのオーディオ信号をデジタル的に変更することを選ぶ。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
残念ながら、ユーザが音楽を作成、編集するためにユーザ自身のコンピュータを使用するデジタル信号処理のすべての利点をもってしても、コンピュータは、ユーザが効果的な音楽の演奏方法を学習するような方法ではまだ十分に活用されてはいない。さらに、ユーザは学習すべき幅広い音楽の選択肢に対する高速かつ容易なアクセスを現在は有していない。
【課題を解決するための手段】
【０００５】
本発明は、ユーザに表示するためにコンピューティング・デバイスにオーディオ・ファイルのマルチメディア・プレゼンテーションを配信するシステムおよび方法に関し、さらにユーザがそのマルチメディア・プレゼンテーションに合わせて楽器を演奏できるようにする。
【０００６】
一実施態様では、ユーザによるコンピューティング・デバイスでの楽曲の選択に応じて、サーバはその楽曲に関連するセッション・ファイルをコンピュータ・ネットワークを介してコンピューティング・デバイスに送信する。このセッション・ファイルは、コンピューティング・デバイスがオーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに提示するためにセッション・ファイルを処理することができるよう、オーディオ・ファイルとマルチメディア・データを含む。インターフェース・デバイスがコンピューティング・デバイスとユーザの楽器に接続されている。インターフェース・デバイスは、ユーザがオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせて楽器を演奏できるように、コンピューティング・デバイスに楽器を結合させる。したがって、ユーザには、サーバからダウンロードすることのできる幅広い種類の楽曲への高速かつ容易なアクセスが提供される。この場合、ユーザは、学習を容易にするためにマルチメディア・プレゼンテーション形式で提示されるダウンロードした楽曲に合わせて演奏することができる。
【発明を実施するための最良の形態】
【０００７】
本発明の特徴および利点は、本発明の以下の説明から明らかになろう。
【０００８】
以下の説明で、本発明の様々な実施形態を詳細に説明する。しかし、このような詳細は本発明の理解を容易にし、本発明を実施するための実施形態の例を説明するために含まれているものである。本発明の範囲を逸脱せずに他の変形態様や実施形態が可能なので、このような詳細は本発明を記載された特定の実施形態に限定するために使用されるべきではない。さらに、本発明の完全な理解を提供するために多数の詳細が記載されているが、本発明を実行するためにこれらの具体的な詳細が必ずしも必要ではないということが当業者には明らかになろう。この他の場合、本発明を不明瞭にしないように、周知の方法、データのタイプ、プロトコル、手順、構成要素、ネットワーク機器、プロセス、インターフェース、電気的構造、回路などのような詳細は詳しく記載せず、ブロック図形式で示す。さらに、本発明の態様は具体的な実施形態で記載するが、これら形態はハードウェア、ソフトウェア、ファームウェア、ミドルウェア、またはこれらの組み合わせで実施することができる。
【０００９】
次に図１を参照する。図１は、本発明の一実施形態による、オーディオ・ファイルのマルチメディア・プレゼンテーションをコンピューティング・デバイス１０２に配信するためのシステム例１００を示すブロック図を示している。１つまたは複数のサーバ１０４がコンピュータ・ネットワーク（例えば、インターネット）１０５を介してコンピューティング・デバイス１０２に結合されている。一実施形態では、ユーザによるコンピューティング・デバイス１０２での楽曲の選択に応じて、サーバ１０４はその楽曲に関連付けられたセッション・ファイルをコンピュータ・ネットワーク（例えば、インターネット）１０５を介してコンピューティング・デバイス１０２に送信する。このセッション・ファイルはデジタル・オーディオ・ファイルとマルチメディア・データを含む。コンピューティング・デバイス１０２は、後で検討するようにオーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに提示するためにセッション・ファイルを処理する。１つ以上のサーバ１０４も、後で検討するように、セッション・ファイルや他のアセットを記憶するアセット・データベース１０７と、ユーザに関する情報を記憶するユーザ情報データベース１０９とにネットワーク接続を介して結合されている。
【００１０】
セキュリティ・デバイス１１０を含んだインターフェース・デバイス１０６がコンピューティング・デバイス１０２とユーザの楽器１１２（例えば、ギター）に接続されている。インターフェース・デバイス１０６は、ユーザがコンピューティング・デバイス１０２によって処理中のデジタル・オーディオ・ファイルのマルチメディア・プレゼンテーションに合わせて楽器１１２を演奏できるように、入出力（Ｉ／Ｏ）リンク１１４（例えば、ユニバーサル・シリアル・バス・リンク）を介してコンピューティング・デバイス１０２に楽器１１２を結合する。さらに、インターフェース・デバイス１０６は、選択された楽曲に関連するオーディオ・ファイルをユーザがユーザ自身の楽器に合わせて再生する際にユーザの楽器１１２からのサウンドに合わせて再生するために増幅スピーカ１２０またはヘッドフォン１２２のようなアナログ・サウンド・デバイスに接続することができる。
【００１１】
さらに具体的には、インターフェース・デバイス１０６は、楽器１１２からのオーディオ信号のアナログ・デジタル（Ａ／Ｄ）変換を実行し、Ｉ／Ｏリンク１１４を介して楽器１１２のデジタル化されたオーディオ信号をコンピューティング・デバイス１０２に送信する。楽器１１２のデジタル化されたオーディオ信号は、例えばユーザが選択した楽曲のオーディオ・ファイルにその信号を合わせるために、楽器の処理済デジタル・オーディオ信号を作成するようソフトウェア・モジュールによって実行されるデジタル信号処理（ＤＳＰ）を受ける。コンピューティング・デバイス１０２はデジタル・オーディオ・ファイルと楽器の処理済みデジタル信号の両方のミックスされたデジタル信号を作成し、それを、コンピューティング・デバイス１０２からＩ／Ｏリンク１１４を介してインターフェース・デバイス１０６に返送する。ミックスされたデジタル信号がアナログ形式に変換されて（Ｄ／Ａ変換）、スピーカ１２０またはヘッドフォン１２２のようなアナログ・サウンド・デバイスを介して出力されるミックスされたアナログ・オーディオ信号となる。したがって、ユーザは、ユーザによる学習を容易にするためにコンピューティング・デバイスにマルチメディア・プレゼンテーション形式で提示されるダウンロードした楽曲に合わせて演奏することができる。さらに、後で検討するように、ユーザには、サーバ１０４からダウンロードすることのできる幅広い種類の楽曲に対する高速かつ容易なアクセスが提供される。
【００１２】
ネットワーク関連業者には、コンピューティング・デバイス１０２と１つ以上のサーバ１０４を、モデム・プール（図示せず）を使用して、または追加のネットワークやゲートウェイ（図示せず）を介して直接またはダイヤルアップ電話もしくは他のネットワーク伝送回線経由を含めて様々な方法でコンピュータ・ネットワーク１０５に結合することができるということを理解できるであろう。例えば、コンピューティング・デバイス１０２は、単純旧式電話システム（ＰＯＴＳ）、セルラ電話システム、ケーブル、デジタル加入者回線、総合デジタル通信網、衛星接続、コンピュータ・ネットワーク（例えば、インターネット、広域ネットワーク（ＷＡＮ）、またはローカル・エリア・ネットワーク（ＬＡＮ）など）、または一般にいかなる種類の私設または公共通信回線の１つまたは複数、およびこれらの組み合わせを使用するリンクを介してサーバ１０４と通信することができる。これらのリンクのための伝送媒体の例には、限定または制限はしないが、電線、光ファイバ、撚線を含めてケーブル、または無線チャネル（例えば、無線周波数（ＲＦ）、地上、衛星、またはいかなる他の無線信号伝達方式）が含まれる。
【００１３】
より具体的には、コンピュータ・ネットワーク１０５は、通常、伝送制御プロトコル／インターネット・プロトコル（ＴＣＰ／ＩＰ）、非同期転送モード（ＡＴＭ）、フレーム・リレー（ＦＲ）、ポイント・ツー・ポイント（ＰＰＰ）、システム・ネットワーク・アーキテクチャ（ＳＮＡ）、ボイス・オーバー・インターネット・プロトコル（ＶｏＩＰ）、またはいかなる他の種類のプロトコルを使用することのできるパケット化された、パケット交換された、またはコネクション型などのネットワークである、コンピュータ・ネットワーク（例えば、インターネット、広域ネットワーク（ＷＡＮ）、またはローカル・エリア・ネットワーク（ＬＡＮ）など）である。コンピュータ・ネットワーク１０５は、パケットを使用したコンピューティング・デバイス１０２と１つ以上のサーバ１０４との間のデータ・トラフィックの通信を可能にする。ネットワーク・コンピュータ１０５を介したデータ・トラフィックは、オーディオ、テキスト、グラフィック、ビデオ、電子メール、ファックス、マルチメディア、文書、音声、およびデータの他の一般的な形式を含めていかなるタイプであってもよい。コンピュータ・ネットワーク１０５は、通常、デジタル・データ・トラフィックを転送するよう設計された切り換えまたは経路指定設備を含むことのできるデータ・ネットワークである。図１の環境は例示に過ぎず、本発明の実施形態はいかなるタイプの通信システムおよび／またはコンピュータ・ネットワーク、プロトコル、およびこれらの組み合わせによって使用することができるということを理解されたい。さらに、１つ以上のサーバ１０４、アセット・データベース１０７、ユーザ情報データベース１０９の間のネットワーク接続は上記例によって説明した方法で結合することもできる。
【００１４】
以上、本発明の実施形態を実行することのできるネットワーク環境例を簡単に説明したが、図２ａは本発明の実施形態と共に使用可能な従来型のデータ処理またはコンピュータ・システム２００を示している。より具体的には、図２ａは、本発明の様々な態様を使用することのできるコンピューティング・デバイス１０２（例えば、パーソナル・コンピュータ）またはサーバ・コンピュータ・システム１０４の一例として使用するための一般的なデータ処理またはコンピューティング・システム２００の一例を示している。
【００１５】
図示するように、データ処理またはコンピュータ・システム２００は、システム・ユニット２０２、ディスプレイ・デバイス２０４、プリンタ２１０のような出力デバイス、およびキーボード２０８やマウス２０６のような入力デバイスから構成されている。データ処理システム２００は、入力デバイス２０８、２０６を操作することにより、またはディスク２１２のような固定型または取外し可能なメディア・ストレージ・デバイスからや、ネットワーク接続インターフェース（図示せず）から直接的に処理用データを受信する。次いでデータ処理システム２００はデータを処理し、その結果得られた出力データをディスプレイ・デバイス２０４、プリンタ２１０のような出力デバイス、ディスク２１２のような固定型または取外し可能なメディア・ストレージ・デバイス、またはネットワーク接続インターフェースを介して提示する。コンピューティング・デバイス１０２はいかなる種類のコンピュータ・システムまたはコンピューティング・デバイス（例えば、パーソナル・コンピュータ（ラップトップ／デスクトップ）、ネットワーク・コンピュータ、ハンドヘルド・コンピューティング・デバイス、サーバ・コンピュータ、またはいかなる他のタイプのコンピュータ）であってもよいということを理解されたい。さらに、コンピューティング・デバイス１０２の場合、データ処理システム２００は、Ｉ／Ｏリンク１１４（例えば、ＵＳＢリンク）を介してインターフェース・デバイス１０２からの入出力データに適応するためにシリアルＩ／Ｏポート１１３（例えば、ＵＳＢポート）を含む。
【００１６】
次に図２ｂを参照する。図２ａによって説明されているようなデータ処理システム２００の構成要素の高レベル・ブロック図が示されている。従来型コンピュータ・システムでは、システム・ユニット２０２は、ローカルすなわちシステム・バス２１４またはそのようなデバイス間でデータを伝達するための他の通信手段を介した様々なタイプのキャッシュ、ランダム・アクセス・メモリ（ＲＡＭ）、または他の高速ダイナミック・ストレージ・デバイスを含むことのできるメイン・メモリ２２２と通信状態にあるプロセッサ２２０のような処理装置を含む。プロセッサは、本発明の実施形態の機能を実施するために情報を処理する。説明用の例として、「プロセッサ」は、複雑命令セット・コンピュータ（ＣＩＳＣ）、縮小命令セット・コンピュータ（ＲＩＳＣ）、超長命令語（ＶＬＩＷ）、またはハイブリッド・アーキテクチャのようないかなるタイプのアーキテクチャでも有する中央処理装置、またはデジタル信号プロセッサ、マイクロコンピュータ、状態マシンなどを含むことができる。
【００１７】
メイン・メモリ２２２は、データならびにプロセッサ２２０によって実行される命令を記憶することができ、プロセッサ２２０による命令の実行中に一時的数値変数または他の中間情報を記憶するために使用することができる。コンピュータ・システム２００は、読み取り専用メモリ（ＲＯＭ）および／またはプロセッサ２２０のために静的情報と命令を記憶するためにローカル・バス２１４に結合されている他の静的ストレージ・デバイス２２４も含む。不揮発性メモリ２２４の例には、ハードディスク、フラッシュ・メモリ、バッテリバックのランダム・アクセス・メモリ、読み取り専用メモリ（ＲＯＭ）などが含まれ、揮発性メイン・メモリ２２２は、ランダム・アクセス・メモリ（ＲＡＭ）、動的ランダム・アクセス・メモリ（ＤＲＡＭ）、または静的ランダム・アクセス・メモリ（ＳＲＡＭ）などが含まれる。
【００１８】
データ処理システム２００のシステム・ユニット２０２は、様々なデバイスと、バス・ブリッジ２１８を介してシステム・バス２１４に取り付けられている複数のデバイスの間で通信する拡張バス２１６も特徴とする。磁気ディスク２１２またはＣＤ−ＲＯＭやＤＶＤのような光ディスクのようなデータ・ストレージ・デバイス２２８とその対応するドライブが拡張バス２１６を介してデータと命令を記憶するためにデータ処理システム２００に結合されている。コンピュータ・システム２００は、コンピュータのユーザに生成されたミーティングのパッケージ記述と関連画像のようなデータを表示するために陰極線管（ＣＲＴ）または液晶ディスプレイ（ＬＣＤ）のようなディスプレイ・デバイス２０４にも拡張バス２１６を介して結合されている。通常、英数字と他のキーを含む英数字入力装置２０８は情報および／またはコマンド選択をプロセッサ２２０に伝達するためにバス２１６に結合されている。他のタイプのユーザ入力デバイスは、方向情報とコマンド選択をプロセッサ２２０に伝達し、またディスプレイ２０４上でカーソルの移動を制御するための、従来型のマウス、トラックボール、またはカーソル方向キーのようなカーソル制御デバイス２０６である。さらに、コンピューティング・デバイス１０２の場合、データ処理システム２００は、インターフェース・デバイス１０６からの入出力データをシリアルＩ／Ｏリンク１１４（例えば、ＵＳＢリンク）を介して受け取るためにシリアルＩ／Ｏポート１１３（例えば、ＵＳＢポート）を含む。
【００１９】
通信デバイス２２６は、サーバ１０４のような遠隔コンピュータまたはサーバ、もしくは他のサーバに例えばインターネットを介してアクセスするためにバス２１６にも結合されている。通信デバイス２２６は、モデム、ネットワーク・インターフェース・カード、またはイーサネット（登録商標）、トークンリング、または他のタイプのネットワークとインターフェースするために使用されるような他の周知のインターフェース・デバイスを含むことができる。いかなる場合でも、この方法では、コンピュータ・システム２００は、図１に示し上記で説明したようなネットワーク・インターフェースを介して複数のサーバ１０４に結合することができる。
【００２０】
従来型のデータ処理またはコンピュータ・システム２００の例で続けると、コンピューティング・デバイス１０２とサーバ１０４のどちらも、デバイスに電源が投入されるかリセットされた場合に実行するためにデバイスのメモリにブートされたオペレーティング・システムの制御下で動作することができる。さらには、オペレーティング・システムは１つまたは複数のソフトウェア・モジュールまたはコンピュータ・プログラムの実行を制御する。これらのソフトウェア・モジュールは、通常、コンピューティング・デバイス１０２とサーバ１０４を使用する際にユーザを支援するアプリケーション・プログラムと、ユーザに表示するために、またユーザがマルチメディア・プレゼンテーションに合わせて楽器を演奏できるようにするために、コンピューティング・デバイス１０２へのオーディオ・ファイルのマルチメディア・プレゼンテーションの配信に関連付けられた様々な機能、ならびに後で検討するようにセキュリティおよび商業方法に関連する他の機能を含む。
【００２１】
本発明の所望の機能を実行するために１つまたは複数の命令（例えば、コード・セグメント）としてこれらの機能を実施することができる。ソフトウェアで実施される場合（例えば、ソフトウェア・モジュールによって）、本発明の要素は必要なタスクを実行するための命令／コード・セグメントである。命令は、マシンまたはプロセッサ（例えば、プロセッサ２２０）によって読み取られ、実行されたときに、マシンまたはプロセッサに本発明の実施形態を実施し、かつ／または使用するために必要なオペレーションを実行させる。この命令またはコード・セグメントを、機械可読媒体（例えば、プロセッサ可読媒体またはコンピュータ・プログラム製品）に記憶させても、搬送波で実施されるコンピュータ・データ信号または搬送波によって変調される信号により伝送媒体または通信リンクを介して送信してもよい。機械可読媒体は、機械（例えば、プロセッサ、コンピュータなど）によって可読かつ実行可能な形式の情報を記憶または転送することのできるいかなる媒体でも含むことができる。機械可読媒体の例には、電子回路、半導体メモリ・デバイス、ＲＯＭ、フラッシュ・メモリ、消去プログラム可能ＲＯＭ（ＥＰＲＯＭ）、フロッピー（登録商標）・ディスケット、コンパクト・ディスクＣＤ−ＲＯＭ、光ディスク、ハードディスク、光ファイバー媒体、無線周波数（ＲＦ）リンクなどが含まれる。コンピュータ・データ信号は、電子ネットワーク・チャネル、光ファイバ、空中、電磁気、ＲＦリンクなどのような伝送媒体を介して伝播することのできるいかなる信号であってもよい。コード・セグメントは、インターネット、イントラネットなどのようなネットワークを介してダウンロードすることができる。
【００２２】
次に図３ａを参照する。図３ａは、本発明の一実施形態によるインターフェース・デバイス１０６の平面図を示している。インターフェース・デバイス１０６は、ユーザがコンピューティング・デバイス１０２による処理中のオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせて楽器１１２を演奏することができるように、コンピューティング・デバイス１０２に入出力（Ｉ／Ｏ）リンク１１４を介して楽器１１２を結合する。図３ａの平面図に示すように、インターフェース・デバイス１０６は、楽器１１２とオーディオ・ファイルのボリュームを調製するためのボリューム・ダイヤルすなわちノブ３０４と、インターフェース・デバイスの動作状態（すなわち、電源が入っているか切れているか）を示すＬＥＤインジケータ３０８を含む。インターフェース・デバイス１０６は、内部電子構成要素を収納するために金属、プラスチック、金属めっきしたプラスチックなどのハウジングを含む。本発明の一実施形態によりインターフェース・デバイス１０６の正面図を示す３ｂに手短に戻ると、インターフェース・デバイスは、楽器がインターフェース・デバイス１０６に電気的に結合されように、楽器１１２から入力ジャック（または他の入力デバイス）を受け入れるために入力ポート３１０を含む。
【００２３】
次に図３ｃを参照する。図３ｃは、本発明の一実施形態によるインターフェース・デバイス１０６の背面図を示している。インターフェース・デバイス１０６は、インターフェース・デバイス１０６を増幅スピーカに接続することができるように、増幅スピーカ１２０用スピーカ・ジャックを受け入れるために使用することのできる左右スピーカの出力ポート３２０、３２２を含む。これにより、自分の楽器１１２を演奏しているユーザには、楽器と、コンピューティング・デバイス１０２による処理中の楽曲に関連付けられたオーディオ・ファイルの両方が聴こえる。さらに、インターフェース・デバイス１０６はポート３２３の追加回線を含む。例えば、ゲームからのサウンドやコンピューティング・デバイス１０２からの他のソフトウェア・プログラムをインターフェース・デバイス１０６を介してスピーカ１２０またはヘッドフォン１２２に単純に経路指定できるよう、コンピューティング・デバイス１０２のサウンド・カードからの入力をサポートするためにポート３２３の追加回線を使用することができる。
【００２４】
また、インターフェース・デバイス１０６は、ユーザがヘッドフォン１２２を使用して自分の楽器１１２とオーディオ・ファイルを聴けるように、ヘッドフォン１２２にヘッドフォン・ジャックを受け入れるために使用することのできるヘッドフォン出力ポート３２６を含む。インターフェース・デバイス１０６は、インターフェース・デバイス１０６とコンピューティング・デバイス１０２の間にＩ／Ｏリンク１１４（例えば、ＵＳＢリンク）を形成することができるように、Ｉ／Ｏコネクタ（例えば、ＵＳＢコネクタ）を受け入れるためのシリアルＩ／Ｏポート３３０（例えば、ＵＳＢポート）をさらに含む。インターフェース・デバイス１０６は、他の入力部および出力部も幾つでも含むことができるということを理解されたい。
【００２５】
次に図３ｄを参照する。図３ｄは、本発明の一実施形態によるインターフェース・デバイス１０６の内部構成要素３３４の略図である。インターフェース・デバイス１０６は、以下でより詳細に検討するように楽器１１２とコンピューティング・デバイス１０２の間における信号のＡ／ＤとＤ／Ａ変換に関連する機能、ならびにセキュリティ・デバイス１１０を使用するセキュリティ機能を実行するためにインターフェース・デバイス１０６の構成要素を制御するマイクロプロセッサ３４０を含む。
【００２６】
図３ｄに示すように、インターフェース・デバイス１０６は、増幅器３３６に接続されている入力ポート３１０からＩｎｓｔｒｕｍｅｎｔ  ｉｎ回線を含む。したがって、一例として、入力ポート３１０から入ってくる楽器１１２からのアナログ・オーディオ信号は増幅器３３６によって増幅される。増幅されたアナログ・オーディオ信号がＡ／Ｄコンバータ３３８によって処理され、楽器のデジタル化されたオーディオ信号に変換されるように、増幅器３３６はアナログ・デジタル（Ａ／Ｄ）コンバータ３３８に接続されている。
【００２７】
インターフェース・デバイス１０６のマイクロプロセッサ３４０は、セキュリティ・デバイス１１０、バッファＲＡＭ  ３４４、およびデジタル・オーディオ・インターフェース３４６の構成要素に結合されている。マイクロプロセッサ３４０は、楽器１１２とコンピューティング・デバイス１０２の間で信号のＡ／ＤおよびＤ／Ａ変換に関連する機能を実行するためにインターフェース・デバイス１０６の構成要素３３４を制御する。デジタル・オーディオ・インターフェース３４６は、デジタル化されたオーディオ信号をフォーマットし、タイミングを取ることに関連する従来の機能を実行する。デジタル・オーディオ・インターフェース３４６は、これらの機能を実行するために複数のタイミング・クロックを含むことができる。したがって、この例で続けると、楽器１１２のデジタル化されたオーディオ信号がデジタル・オーディオ・インターフェース３４６によって次にフォーマットされる。さらに、デジタル・オーディオ・インターフェース３４６は、速度整合のためにデジタル化されたオーディオ信号の一部を記憶するために使用されるバッファＲＡＭ  ３４４に結合されている。
【００２８】
さらに、バッファＲＡＭ  ３４４はマイクロプロセッサ３４０とシリアルＩ／Ｏコントローラ３４８とに接続されている。シリアルＩ／Ｏコントローラ３４８は、シリアルＩ／Ｏリンク１１４にそってコンピューティング・デバイス１０２への／からのデジタル・データのフローを制御する。一例では、シリアルＩ／Ｏコントローラ３４８はＵＳＢコントローラであってよく、シリアルＩ／Ｏリンク１１４はＵＳＢリンクであってよい。シリアルＩ／Ｏコントローラ３４８によって制御されるデジタル・データは、楽器１１２から直接的に入ってきてデジタル信号処理（ＤＳＰ）のためにコンピューティング・デバイス１０２に送信中のデジタル化されたオーディオ信号と、コンピューティング・デバイス１０２によってＤＳＰを既に受けた楽器の処理済デジタル・オーディオ信号と、コンピューティング・デバイス１０２から入ってくる選択された楽曲に関連付けられたデジタル・オーディオ・ファイルの両方のミックスしたデジタル信号とを含むことができる。しかし、楽器のデジタル化された信号はＤＳＰ処理のためにコンピューティング・デバイス１０２を介して渡す必要はなく、ユーザが依然としてオーディオ・ファイルに合わせて演奏することができるようにＤＡＣ  ３５０に直接的に渡し、アナログ・サウンド・デバイスに渡すことができるということを理解されたい。バッファＲＡＭ  ３４４は、速度整合のような従来の目的のために、楽器のデジタル・オーディオ信号（事前ＤＳＰ処理）、デジタル・オーディオ・ファイル、およびミックスされたデジタル信号を記憶するためにも使用される。
【００２９】
デジタル・オーディオ・インターフェース３４６はデジタル・アナログ・コンバータ（ＤＡＣ）３５０にさらに接続されている。ミックスしたアナログ・オーディオ信号を、増幅スピーカ１２０またはヘッドフォン１２２のようなアナログ・サウンド・デバイスを介して再生することができるように、楽器の処理済のデジタル・オーディオ信号とコンピューティング・デバイス１０２からのデジタル・オーディオ・ファイルの両方のミックスしたデジタル信号は、このミックスしたデジタル信号をアナログ形式に、すなわちミックスしたアナログ・オーディオ信号に変換するためにＤＡＣ  ３５０によって処理される。しかし、上記のように、楽器のデジタル化された信号はＤＳＰ処理のためにコンピューティング・デバイス１０２を介して渡される必要はなく、ユーザがオーディオ・ファイルに合わせて演奏することができるようにＤＡＣ  ３５０に直接的に渡し、アナログ・サウンド・デバイスに渡すことができるということを理解されたい。
【００３０】
ＤＡＣ  ３５０の出力部にはミキサー３５２が接続されている。ミキサー３５２は、増幅器３５８、３６０によってそれぞれ増幅されるポート３２３の回線のようなソースの他の回線からのアナログ・オーディオ信号入力を受信する。この結果、これらは増幅スピーカ１２０またはヘッドフォン１２２を介して再生することもできる。
【００３１】
ポート３２３の回線からのこれら追加のアナログ・オーディオ信号入力を、楽器のアナログ・オーディオ信号とオーディオ・ファイルとミックスするか、インターフェース・デバイスを介してスピーカ１２０またはヘッドフォン１２２に単純に経路指定してもよい。例えば、ゲームからのサウンドと、コンピューティング・デバイス１０２からの他のソフトウェア・プログラムをインターフェース・デバイス１０６を介してスピーカ１２０またはヘッドフォン１２２に単純に経路指定することができるように、ポート３２３の回線からの入力部の追加回線はコンピューティング・デバイス１０２のサウンド・カードからであってもよい。この方法で、コンピューティング・デバイス１０２（例えば、パーソナル・コンピュータ）にフックされているインターフェース・デバイス１０６と共に他のソフトウェア・プログラムを依然として使用することができ、ユーザはインターフェース・デバイスを使用することとインターフェース・デバイスを使用しないことを切り換えるためにユーザ自身のパーソナル・コンピュータ・システムを再構成する必要ない。
【００３２】
次いでミキサー３５２からのアナログ信号はスピーカ・ポートおよび３２０、３２２を介して回線ｏｕｔ（例えば、左、右）３６０、３６２を介して増幅スピーカ１２０に渡される。具体的には、アナログ信号はボリューム・コントローラ３６８の制御下で増幅器３６４、３６６により増幅することができ、ボリューム・コントローラ３６８はボリューム・ダイヤル３０４によって制御される。同様に、ミキサー３５２からのアナログ信号もヘッドフォン・ポート３２６を介して回線ｏｕｔ３６０、３６２（例えば、左、右）を介してヘッドフォン１２２にも渡される。同様に、アナログ信号はボリューム・コントローラ３６８の制御下で増幅器３７４、３７６により増幅することができ、ボリューム・コントローラ３６８はボリューム・ダイヤル３０４により制御される。
【００３３】
したがって、コンピューティング・デバイス１０２による処理中のオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせてユーザが楽器１１２を演奏できるように、インターフェース・デバイス１０６は入出力（Ｉ／Ｏ）リンク１１４を介して楽器１１２をコンピューティング・デバイス１０２に結合させる。より具体的には、上記のように、インターフェース・デバイス１０６は楽器１１２からのオーディオ信号のアナログ・デジタル（Ａ／Ｄ）変換を実行し、楽器のデジタル化されたオーディオ信号をＩ／Ｏリンク１１４を介してコンピューティング・デバイス１０２に送信する、そこで、楽器１１２のデジタル化されたオーディオ信号がソフトウェア・モジュールによって実行されるデジタル信号処理（ＤＳＰ）を受ける（例えば、それをユーザが選択した楽曲のオーディオ・ファイルに合わせるために）。デジタル・オーディオ・ファイルと楽器の処理済みデジタル信号の両方のミックスされたデジタル信号がコンピューティング・デバイス１０２からＩ／Ｏリンク１１４にそってインターフェース・デバイス１０６に返送され、ミックスされたデジタル信号はそこでアナログ形式、すなわちミックスされたアナログ・オーディオ信号に変換され（Ｄ／Ａ変換）、スピーカ１２０またはヘッドフォン１２２を介して出力される。したがって、ユーザによる学習を容易にするために、後述するようにコンピューティング・デバイスにマルチメディア・プレゼンテーション形式で提示されたダウンロードされた楽曲に合わせてユーザは演奏することができる。
【００３４】
インターフェース・デバイス１０６はセキュリティ・デバイス１１０も含む。許可されたインターフェース・デバイスで操作中のユーザに対してのみサーバ１０４へのアクセスが認められるように、セキュリティ・デバイス１１０はインターフェース・デバイス１０６をサーバ１０４に対して一意に識別するために使用することのできる構成要素を含む。さらに、適切に許可されたインターフェース・デバイス１０６がオーディオ・ファイルを受信し使用できるように、セキュリティ・デバイス１１０がサーバ１０４と共に、オーディオ・ファイルが適切に暗号化され解読されることを保証するために使用される。これは、認可された素材の無許可の複製から保護し、コンテンツ（例えば、オーディオ・ファイル）の提供者に対して安全な収入の機会を提供する。
【００３５】
セキュリティ・デバイスは、マイクロプロセッサ３４０、セキュリティ論理３８０を有するセキュリティ保護されたメモリ３７９、セキュリティ・ファームウェア３８３を記憶するためのプログラム・ストレージ３８２、および不揮発性メモリ（例えば、ＥＥＰＲＯＭ）３８４を含む。一般に、セキュリティ保護されたメモリ３７９や不揮発性メモリ３８４と共にマイクロプロセッサ３４０によって実行された場合、セキュリティ・ファームウェア３８３は、サーバ１０４がインターフェース・デバイス１０６を一意に識別し、許可されたインターフェース・デバイス１０６によって使用するために特別に暗号化されたオーディオ・ファイルを、インターフェース・デバイス１０６と共にコンピューティング・デバイス１０２が解読できる安全なオペレーションを提供する。セキュリティ保護されたメモリ３７９は、ハードウェアで実施されるセキュリティ論理３８０を使用して読み取り、書き込むためにロックし、ロック解除することのできる読み取り専用メモリ（ＲＯＭ）と書き込み可能メモリの両方を含む。
【００３６】
インターフェース・デバイス１０６のシリアル番号３８６に関連付けられたユーザ・キー３８７は、インターフェース・デバイス１０６をサーバ１０４に認証させるためにセキュリティ論理３８０によって使用される。また、メモリ・キー３８９は、セキュリティ保護されたメモリ３７９を最初にロック解除するためにセキュリティ論理３８０によって使用される。シリアル番号３８６、ユーザ・キー３８７、メモリ・キー３８９は製造中にセキュリティ保護されたメモリ３７９に封印される。セキュリティ保護されたメモリ３７９が一度封印されたらその後は二度と書き込むことはできない。サーバ１０４が、以下でより詳細に検討するように、インターフェース・デバイス１０６を一意に認証するために最初に要請と応答を生成し、かつセキュリティ保護されたメモリ３７９と不揮発性メモリ３８４を開きかつロックすることができるように、サーバのユーザ情報データベース１０９にもシリアル番号３８６、ユーザ・キー３８７、メモリ・キー３８９が格納される。
【００３７】
不揮発性メモリ３８４はセキュリティ保護されたメモリ３７９に対する拡張として使用される。セキュリティ保護されたメモリ３７９もロック解除されていない限り、ファームウェア３８３は不揮発性メモリ３８４へのアクセスを阻止する。不揮発性メモリ３８４は、ファームウェア３８３によって制御されるハードウェア書き込み保護を有する。不揮発性メモリ３８４は、特定の購入したアセット（例えば、オーディオ・ファイル）に関連付けられたアセット暗号化キー（例えば、オーディオ・ファイル・キー）のようなキー３８８、現在の日付とあるアセット３９０に対する購入申込の日付、およびアセット情報（例えば、アセットに関する情報）３９２を記憶する。シリアル番号３８６、ユーザ・キー３８７、メモリ・キー３８９、キー３８８、日付３９０、アセット情報３９２、およびファームウェア３８３などを、セキュリティ・デバイスのメモリ、プログラム・ストレージ３８２、安全なメモリ３７９、または不揮発性メモリ３８４のどれか、すなわちプログラム・ストレージ３８２、セキュリティ保護されたメモリ３７９、または不揮発性メモリ３８４に置き、または同一場所に配置することができるが、この具体的な構成は一実施形態に過ぎないといことを理解されたい。
【００３８】
以下でより詳細に検討するように、多くの他の機能と共に、セキュリティ・デバイス１１０はコンピューティング・デバイス１０２やサーバ１０４と共に、サーバ１０４がインターフェース・デバイス１０６を一意に識別することを可能にし、コンピューティング・デバイス１０２がインターフェース・デバイス１０６と共に、許可されたインターフェース・デバイス１０６によって使用するために特別に暗号化されたオーディオ・ファイルを解読することを可能にする。
【００３９】
図４は、本発明の一実施形態による、使用されている典型的なソフトウェア・モジュールを示す、コンピューティング・デバイス１０２にオーディオ・ファイルのマルチメディア・プレゼンテーションを配信するためのシステム例１００のより詳細な図面を示すブロック図である。簡単にいえば、上記のように、１つ以上のサーバ１０４がコンピュータ・ネットワーク（例えば、インターネット）１０５を介してコンピューティング・デバイス１０２に結合されている。さらに、インターフェース・デバイス１０６がコンピューティング・デバイス１０２に結合されており、楽器１１２はインターフェース・デバイスに結合されている。一実施形態では、ユーザによるコンピューティング・デバイス１０２での楽曲の選択に応じて、サーバ１０４は楽曲に関連付けられたセッション・ファイルをコンピュータ・ネットワーク（例えば、インターネット）１０５を介してコンピューティング・デバイス１０２に送信する。セッション・ファイルはオーディオ・ファイルとマルチメディア・データを含む。コンピューティング・デバイス１０２による処理中のオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせてユーザが楽器１１２を演奏できるように、コンピューティング・デバイス１０２は、オーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに提示するためにセッション・ファイルを処理する。
【００４０】
より具体的には、図４に示すように、コンピューティング・デバイス１０２とサーバ１０４はそれぞれ、本発明の実施形態の機能を実施する複数のソフトウェア・モジュールを含む。これらのソフトウェア・モジュールは、通常、コンピューティング・デバイス１０２とサーバ１０４を使用する際にユーザを支援するアプリケーション・プログラムと、以下で検討するようにユーザに表示し、またユーザがマルチメディア・プレゼンテーションに合わせて楽器を演奏することを可能にするオーディオ・ファイルのマルチメディア・プレゼンテーションをコンピューティング・デバイス１０２に配信することに関連する様々な機能、ならびにセキュリティおよび商業方法に関連する他の機能を含む。例えば、コンピューティング・デバイス１０２はアプリケーション・ソフトウェア・モジュール４０２を含み、このアプリケーション・ソフトウェア・モジュール４０２は埋め込まれたブラウザ４０４、オーディオ再生ソフトウェア・モジュール４０６、およびセキュリティ・ソフトウェア・モジュール４０８をさらに含む。さらにコンピューティング・デバイス１０２は、デバイス・ドライバ・ソフトウェア・モジュール４１０とオーディオＤＳＰソフトウェア・モジュール４１２を含む。サーバ側では、サーバ１０４は、サーバ・ソフトウェア・モジュール４１５、アプリケーション・ソフトウェア・モジュール４１６、データベース・ソフトウェア・モジュール４１８、商業ソフトウェア・モジュール４２０、およびセキュリティ・ソフトウェア・モジュール４２２を含む。
【００４１】
コンピューティング・デバイス１０２のアプリケーション・ソフトウェア・モジュール４０２は、埋め込まれたブラウザ４０４と他のすべてのソフトウェア・モジュール（例えば、オーディオＤＳＰソフトウェア・モジュール４１２、オーディオ再生ソフトウェア・モジュール４０６、デバイス・ドライバ・ソフトウェア・モジュール４１０、およびセキュリティ・ソフトウェア・モジュール４０８）の実施形態とインターフェースし、これを制御する。これによって、マルチメディア・プレゼンテーションに合わせてユーザが楽器を演奏できるようにするためにユーザにオーディオ・ファイルのマルチメディア・プレゼンテーションを表示すること、ならびにセキュリティやその他の商業機能に関する本発明の実施形態が適切に実施される。一実施形態では、アプリケーション・ソフトウェア・モジュール４０２は埋め込まれたブラウザ４０４と共に、選択すべき複数の楽曲をユーザに提供するウェブページ（例えば、ホームページ）をまずユーザに表示する。埋め込まれたブラウザ４０４は、アプリケーション・ソフトウェア・モジュール４０２とその様々な機能に関して特に合わされており、Ｍｉｃｒｏｓｏｆｔ  Ｅｘｐｌｏｒｅｒのような従来から知られているいかなるタイプのブラウザにでも基づくことができる。
【００４２】
アプリケーション・ソフトウェア・モジュール４０２は、楽器のサウンド特性を規定する設定を含む楽器１１２へのコントロール・パネル・グラフィカル・インターフェースも表示させる。コントロール・パネル・グラフィカル・インターフェースは、楽器１１２に対するサウンド特性をユーザが設定することも可能にする。さらに、サーバ１０４によってコンピューティング・デバイス１０２に送信される選択された楽器（例えば、ユーザによって選択された）に対するセッション・ファイルのマルチメディア・データに応じて、アプリケーション・ソフトウェア・モジュール４０２は、ユーザが選択した楽曲に対するオーディオ・ファイルに関連付けられた楽器のサウンド特性をモデル化するためにコントロール・パネル・グラフィカル・インターフェースの設定を事前定義された値に設定する。同様に、アプリケーション・ソフトウェア・モジュール４０２は、ユーザが選択し（例えば、そしてサーバ１０４からコンピューティング・デバイス１０２に送信された）、ユーザの楽器に関連付けられたトラックをオーディオ・ファイルから除去した楽曲を再生することができる。この結果、ユーザの楽器を含まないオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせてユーザは自分の楽器１１２を演奏することができる。さらに、アプリケーション・ソフトウェア・モジュール４０２は、楽曲のオーディオ・ファイルに関連付けられた楽譜をユーザに対して表示させるためにセッション・ファイルのマルチメディア・プレゼンテーションを処理する。マルチメディア・プレゼンテーションの表示はコンピューティング・デバイス１０２のディスプレイ・デバイス２０４で行うことができ、サウンドはインターフェース・デバイス１０６の増幅スピーカ１２０を介して経路指定することができる。
【００４３】
これらの機能を達成するために、アプリケーション・ソフトウェア・モジュール４０２は、従来のデバイス・ドライバ・ソフトウェア・モジュール４１０や、オーディオＤＳＰソフトウェア・モジュール４１２、オーディオ再生ソフトウェア・モジュール４０６を使用する。楽器のサウンド特性をユーザが設定できるように、オーディオＤＳＰソフトウェア・モジュール４１２は楽器１１２のオーディオ信号を処理する（例えば、ＤＳＰアルゴリズムを使用して）。上記のように、楽器のサウンド特性をモデル化し、ユーザが選択した楽器に適切に関連付けられるようにコントロール・パネル・グラフィカル・インターフェースの設定を事前定義された値に設定するためにアプリケーション・ソフトウェア・モジュール４０２によってオーディオＤＳＰソフトウェア・モジュール４１２を使用することができる。さらに、オーディオＤＳＰソフトウェア・モジュール４１２は、上記のミックスしたデジタル・オーディオ信号を作成するために、デジタル・オーディオ・ファイルと楽器の処理済みデジタル・オーディオ信号の両方を結合する。また、アプリケーション・ソフトウェア・モジュール４０２は、デジタル・オーディオ・ファイルと楽器１１２のデジタル処理されたサウンドのミックスされたデジタル信号を、それがユーザに対して増幅スピーカ１２０またはヘッドフォン１２２によって再生されるインターフェース・デバイス１０６に返送するのを制御するために、オーディオ再生ソフトウェア・モジュール４０６を制御する。しかし楽器が処理のためにコンピューティング・デバイス１０２ではなくインターフェース・デバイス１０６を介してのみ経路指定される場合、アプリケーション・ソフトウェア・モジュール４０２はデジタル・オーディオ・ファイルのみの送信を制御するためにオーディオ再生ソフトウェア・モジュール４０６も制御することができる。様々な異なる楽器用のオーディオＤＳＰソフトウェア・モジュールは当技術分野では周知であることを理解されたい。例えば、ＭＩＤＩファイルを変更することのできる一般的なタイプのＤＳＰソフトウェア・モジュールは良く知られている（例えば、ＭＩＤＩ  ＳＨＯＰ）。また、オーディオ・ファイルと楽器からのオーディオ信号とを再生するために使用されるオーディオ再生ソフトウェア・モジュールも良く知られている。
【００４４】
以下で本発明の態様を説明するために使用する具体的な一実施形態では、アプリケーション・ソフトウェア・モジュール４０２、オーディオＤＳＰソフトウェア・モジュール４１２、ユーザがログオンするウェブページ、およびコントロール・パネル・グラフィカル・インターフェースは、楽器１１２としてギターをサポートするよう指示される。具体的には、ギターからのオーディオ信号を変更するためのＤＳＰアルゴリズムは当技術分野では周知であり、コンピューティング・デバイス１０２のソフトウェアで容易に実施することができるということを理解されたい。例えば、本発明の態様を実装するためにオーディオＤＳＰソフトウェア・モジュール４１２で使用することのできる様々な増幅器とスピーカ・キャビネットの構成をモデル化するためにギターからのオーディオ信号を変更するためのＤＳＰアルゴリズムの一例は、参照により本明細書に組み込んだ「Ｔｕｂｅ  Ｍｏｄｅｌｉｎｇ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｄｉｇｉｔａｌ  Ｇｕｉｔａｒ  Ａｍｐｌｉｆｉｃａｔｉｏｎ  Ｓｙｓｔｅｍ」という名称の特許出願第５，７８９，６８９号に具体的に記載されている。さらに、複数の異なる楽器用の幅広い種類のソフトウェアで実現されるコントロール・パネル・グラフィカル・インターフェースが知られており、ギターに関しては、いくつかの基本的なコントロール・パネル・グラフィカル・インターフェースが知られている。例えば、ＡＭＰ  ＦＡＲＭは、ギター用のソフトウェアで実現されるコントロール・パネル・グラフィカル・インターフェースの１つのタイプを含む。しかし、これらはどれも、以下でさらに詳細に説明するギター・コントロール・パネル・グラフィカル・インターフェースの新しくて自明でない特徴の多くを含まない。さらにまた、コンピューティング・デバイス１０２のセキュリティ・ソフトウェア・モジュール４０８の形態も以下でさらに詳細に説明する。
【００４５】
本発明の一実施形態では、サーバ１０４は、サーバ・ソフトウェア・モジュール４１５、アプリケーション・ソフトウェア・モジュール４１６、データベース・ソフトウェア・モジュール４１８、商業ソフトウェア・モジュール４２０、およびセキュリティ・ソフトウェア・モジュール４２２を含む。アプリケーション・ソフトウェア・モジュール４１６は、サーバ１０４でサーバ・ソフトウェア・モジュール４１５とすべての他のソフトウェア・モジュール（例えば、データベース・ソフトウェア・モジュール４１８、商業ソフトウェア・モジュール４２０、およびセキュリティ・ソフトウェア・モジュール４２２）の実施形態とインターフェースを取り、またこれを制御する。この結果、ユーザがマルチメディア・プレゼンテーションに合わせて楽器を演奏すること、ならびにセキュリティおよび商業機能に関する他の機能を可能にするためにユーザに対してオーディオ・ファイルのマルチメディア・プレゼンテーションを表示することに関する本発明の実施形態が適切に実現される。
【００４６】
以下で検討するように、サーバ１０４で、アプリケーション・ソフトウェア・モジュール４１６はサーバ・ソフトウェア・モジュール４１５と共に、コンピューティング・デバイス１０２に本発明の機能を実現するために必要なデータを提供する。サーバ・ソフトウェア・モジュール４１５は、コンピューティング・デバイス１０２にデータを送信し／デバイス１０２から受信するための従来のサーバ・ソフトウェアであってよい。例えば、ハイパーテキスト転送プロトコル（ＨＴＴＰ）およびハイパーテキスト・マークアップ言語（ＨＴＭＬ）または拡張マークアップ言語（ＸＭＬ）を使用して、サーバ１０４は様々な機能とデータをユーザに提供するためにコンピュータ・ネットワーク１０５を介してコンピューティング・デバイス１０２と通信することができる。コンピューティング・デバイス１０２では、アプリケーション・ソフトウェア・モジュール４０２の一部である埋め込まれたブラウザ４０４、もしくは場合によりＮｅｔｓｃａｐｅ（商標）社（Ｍｏｕｎｔａｉｎ  Ｖｉｅｗ，ＣＡ）製のＮｅｔｓｃａｐｅ（商標）Ｎａｖｉｇａｔｏｒ（商標）、Ｍｉｃｒｏｓｏｆｔ（商標）社（Ｒｅｄｍｏｎｄ，ＷＡ）製のＩｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（商標）、Ａｍｅｒｉｃａ  Ｏｎｌｉｎｅ（商標）のユーザ・インターフェース、または良く知られた供給業者によるいかなる他のブラウザまたはＨＴＭＬ／ＸＭＬトランスレータのような他のブラウザを使用して、コンピューティング・デバイス１０２はサーバ１０４にデータを供給し、サーバ１０４にある処理済または未処理のデータにアクセスすることができる。
【００４７】
上記のように本発明の一実施形態によれば、アプリケーション・ソフトウェア・モジュール４１６の制御下にあるサーバ・ソフトウェア・モジュール４１５は、コンピューティング・デバイス１０２でのユーザの楽曲の選択に応じて、コンピュータ・ネットワーク１０５を介してコンピューティング・デバイス１０２にセッション・ファイルを送信する。セッション・ファイルは、オーディオ・ファイルとマルチメディア・データとを含む。これによって、コンピューティング・デバイス１０２は、ユーザにオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせて自分の楽器１１２（例えば、ギター）を演奏できるようにユーザにマルチメディア・プレゼンテーションを提供するためにセッション・ファイルを処理することができる。さらに、後で検討するように、アプリケーション・ソフトウェア・モジュール４１６の制御下のサーバ・ソフトウェア・モジュール４１５は、本発明の機能を実現するために様々な異なる種類のデータをコンピューティング・デバイス１０２から受信し／に送信する。
【００４８】
データベース・ソフトウェア・モジュール４１８は、以下でより詳細に検討するように、アプリケーション・ソフトウェア・モジュール４１６の制御下にあるアセット・データベース１０７とユーザ情報データベース１０９のデータの入力と出力を制御するためにＭｙＳＱＬのような従来のデータベース・ソフトウェアであってよい。さらに、商業ソフトウェア・モジュール４２０とセキュリティ・ソフトウェア・モジュール４２２の態様と機能を以下でより詳細に検討する。
【００４９】
サーバ１０４とコンピューティング・デバイス１０２の間で伝達されたデータは、マルチメディア・データとオーディオ・ファイルを有するセッション・ファイル、ユーザ情報、オーディオ・ファイルと他のアイテムの購入やライセンシング制約を追跡するための商業情報、暗号化されたキーや暗号化されたアセットとオーディオ・ファイルを含むセキュリティ情報、ウェブサイト表示用マルチメディア・データを複数の他のデータと共に含む。セッション・ファイル、マルチメディア・データ、オーディオ・ファイル、商業情報、および他のアセットに関する情報の多くは、後で検討するようにアセット・データベース１０７に記憶することができる。ユーザ名、電子メール・アドレス、自宅住所、コンピュータ接続速度、クレジットカード番号、購入情報、コンピュータのタイプ、ユーザの音楽的な好みのタイプ、およびユーザまたはセキュリティ・デバイス１１０に対するユーザのシリアル番号、ユーザ・キー、メモリ・キー、および他のユーザ情報を含めてセキュリティ情報を含むユーザ情報は、後で検討するようにユーザ情報データベース１０９に記憶することができる。関連分野の業者には、アセット・データベース１０７とユーザ情報データベース１０９は、１つまたは複数のＤＡＳＤアレイ、テープ・ドライブ、光ドライブなどのような様々な大容量記憶装置を含めてストレージ・デバイスに記憶することができ、上記の情報は様々な形式またはデータ構造のいずれか１つで記憶することができることは容易に理解されよう。
【００５０】
以下で本発明の態様の一部を説明するために使用する具体的な一実施形態では、コンピューティング・デバイス１０２、サーバ１０４とそれに関連したアセットやユーザ情報データベース１０７、１０９、およびインターフェース・デバイス１０６が、関連するソフトウェア・モジュールと共に、楽器としてギター１１２をサポートするために使用される。しかし、当業者には、本発明はいかなるタイプの楽器でもサポートするよう使用することができるということを理解されたい。さらに、本発明は、本発明の実施形態が仮想カラオケ機として機能することができるように、マイクロフォンが楽器として使用され、入力オーディオ信号が人間の声である場合もサポートできることを理解されたい。これらの形態は、本開示をさらに読むことによってより理解されよう。
【００５１】
図５ａを参照する。図５ａは、図４の既に記載したシステム例１００を使用して、本発明の一実施形態による、ユーザにマルチメディア・プレゼンテーションを配信するための方法５００を示す流れ図である。ブロック５０２で、ユーザがユーザ自身のコンピューティング・デバイス１０２にアプリケーション・ソフトウェア・モジュール４０２をロードした後、アプリケーション・ソフトウェア・モジュール４０２は図６ａに示すようにコントロール・パネル・グラフィカル・インターフェース６００をユーザに提示する。例えば、コントロール・パネル・グラフィカル・インターフェース６００をコンピューティング・デバイス１０２のディスプレイ・デバイス２０４に表示することができる。次に、コンピューティング・デバイス１０２は、アプリケーション・ソフトウェア・モジュール４０２を使用して、ユーザがサーバ１０４にログオンしてサーバにアクセスすることを許可する。以下で検討するある具体的なギターの実施形態によれば、サーバは、以下でＧＵＩＴＡＲＰＯＲＴウェブサイトと称するギター関連ウェブサイトをユーザに提示する。すなわち、ユーザには、まずＧＵＩＴＡＲＰＯＲＴホームページが、その後、他のＧＵＩＴＡＲＰＯＲＴウェブページが提示される。
【００５２】
同様に図６ａを参照すると、サーバ１０４へのログオンはユーザがＧＵＩＴＡＲＰＯＲＴオンライン・ボタン６０６を選択することにより達成することができる。例えば、コンピューティング・デバイス１０２は標準のコンピュータ・ネットワーク・プロトコル（例えば、ＴＣＰ／ＩＰ）を使用してコンピュータ・ネットワーク（例えば、インターネット）を介してサーバ１０４に接触することができる。ブロック５０６で、アプリケーション・ソフトウェア・モジュール４１６の制御下にあるサーバ１０４はセキュリティ・ソフトウェア・モジュール４２２と共に、サーバ１０４へのアクセスが許可されるべきか否かを判定するためにセキュリティ・デバイス１１０からの一意の識別子（例えば、インターフェース・デバイス１０６のシリアル番号）に基づいてユーザを識別する。これらのセキュリティ機能については後でより詳細に検討する。ユーザがサーバ１０４によって許可されない場合、ブロック５０８でセッションは終了する。しかし、ユーザがサーバ１０４を使用することが許可された場合、方法５００はブロック５１０に移動する。
【００５３】
ブロック５１０で、アプリケーション・ソフトウェア・モジュール４０２は、埋め込まれたブラウザ４０４を使用して、図６ｂに示すようにサーバ１０４から受信したＧＵＩＴＡＲＰＯＲＴホームページを表示する。ＧＵＩＴＡＲＰＯＲＴホームページが最初にギター・コントロール・パネル・グラフィカル・インターフェース６００の下に表示される。図６ｂも参照すると、ＧＵＩＴＡＲＰＯＲＴホームページは、Ｆｅａｔｕｒｅｓ、Ｎｅｗｓ、Ｄｉｓｃｕｓｓｉｏｎ、Ｕｓｅｒ  Ｐａｇｅ、Ｇｕｉｔａｒ  Ｔｏｏｌｓ、Ｍｕｓｉｃａｌ  Ｐｉｅｃｅｓ（例えば、Ｎｅｗｅｓｔ  Ｊａｍｔｒａｃｋ）、およびＴｏｎｅｓを含む。ＧＵＩＴＡＲＰＯＲＴホームページについては後で詳細に検討する。さらに、サーバ１０４でユーザ情報データベース１０９に記憶されているユーザに関する情報（例えば、具体的にはユーザの音楽の好み）に基づいて、サーバ１０４はユーザの音楽の好みに合うようにＧＵＩＴＡＲＰＯＲＴホームページを作り替えることができる。例えば、ユーザの好みがロックンロールである場合、Ｎｅｗｅｓｔ  Ｊａｍｔｒａｃｋ（例えば、楽曲）は特定のロックンロールのＴｏｎｅｓと共にロックンロールの楽曲に向けられる。さらに、ＧＵＩＴＡＲＰＯＲＴホームページの他の構成要素、例えばＮｅｗｓ、Ｆｅａｔｕｒｅｓなどをユーザの好みと連動させることもできる。ブロック５１２で、ユーザはＴｏｎｅまたは楽曲（例えばＪａｍｔｒａｃｋ）を選択することができる。ユーザがＴｏｎｅを選択した場合、ブロック５１４で方法５００は図５ｂに進む。一方、ユーザが楽曲（例えばＪａｍｔｒａｃｋ）を選択した場合、ブロック５１６で方法５００は図５ｃに進む。Ｊａｍｔｒａｃｋはサーバ１０４からダウンロードすることのできる１つのタイプの楽曲である。
【００５４】
本発明の方法および関連するコントロール・パネル・インターフェースの説明を助けるために、コントロール・パネル・グラフィカル・インターフェースの一部を次に検討する。次に図６ａを参照する。図６ａは、ギター６００用コントロール・パネル・グラフィカル・インターフェースを具体的に説明するスクリーンショットである。上記のように、アプリケーション・ソフトウェア・モジュール４０２はコントロール・パネル・グラフィカル・インターフェース６００を生成し、オーディオＤＳＰソフトウェア・モジュール４１２と共に、ユーザがコントロール・パネル・グラフィカル・インターフェースの設定を変更する（または、設定はセッション・ファイルまたは事前定義されたパッチにより決定される事前に決めた設定に設定することができる）ことを可能にする。これによって、オーディオＤＳＰソフトウェア・モジュール４１２は所望の設定と一致させるためにギター１１２からのオーディオ信号を処理する。ギター用のコントロール・パネル・グラフィカル・インターフェース６００の設定を次に説明する。
【００５５】
コントロール・パネル・グラフィカル・インターフェース６００は、ほとんどのギター増幅器に共通した複数の標準コントローラ・ノブ６０４を含むが、これには、ドライブ・コントロール・ノブ６０６、バス・コントロール・ノブ６０８、ミドル・コントロール・ノブ６１０、高音域コントロール・ノブ６１２、臨場感コントロール・ノブ６１４、およびボリューム・コントロール・ノブ６１６が含まれる。これらのコントロール・ノブはギターのサウンドを変更するためにユーザによって選択可能である。コントロール・パネル・グラフィカル・インターフェース６００は、ギターからのオーディオ信号のパワーを増大させるためにブースト・スイッチ６２０をさらに含む。バイパス・ボタン６２２は選択されると、ギターからのそのままの未処理のオーディオ信号が使用されるようＤＳＰ処理を切る。比較ボタン６２４は選択されると、２つの異なるコントロール・パネル・グラフィカル・インターフェース構成を並べて比較することができる。コラプス・ボタン６２８は選択されると、コントロール・パネル・グラフィカル・インターフェース６００のサイズを縮小する。ミュート・ギター・ボタン６３０は選択されると、ギターからのオーディオ信号を消音する。
【００５６】
Ｍａｓｔｅｒ  Ｖｏｌｕｍｅダイヤル６３２はギター１１２のオーディオ信号のボリュームと現在処理中のいかなる他のオーディオ信号（例えば、オーディオ・ファイルからの）のボリュームの両方を制御する。ハム低減ボタン６３４を選択すると、ユーザはギター１１２とディスプレイ・デバイス２０４の間のハム干渉を低減させることができる。一度ハム低減ボタン６３４が選択され、学習ボタン６３６が押し下げられると、コンピューティング・デバイス１０２はギター１１２とディスプレイ・デバイス２０４の間のハム干渉を測定し（例えば、ユーザはユーザ自身のギターをディスプレイ・デバイスの隣に移動することができる）、ＤＳＰ処理がそのハム干渉を補償してそれを除去する。ノイズ・ゲート・ボタン６３８は選択されると、ギターからの入力オーディオ信号が閾値以下である場合はこれを減衰させるが、これが閾値以上である場合はギターからのオーディオ信号を減衰させない。したがって、ノイズ・ゲート・ボタン６３８はギターを取り扱う際のノイズのようなものを除去するために使用することができる。左右スピーカの間でギターのサウンドをパンするためにギター・パン・スライド６４０を使用することができる。
【００５７】
さらに、上記のように、ユーザはトーンを選択することができ、またはユーザがユーザ自身の選択した楽曲に合わせるようにトーンを自動的に選択することができる。選択されるトーンのタイプはｔｏｎｅフィールド６４２に示されている。ほとんどいかなるタイプのギター増幅器（例えば、ＭＡＲＳＨＡＬＬ、ＦＥＮＤＥＲ、ＶＯＸ、ＲＯＬＡＮＤなど）、ほとんどいかなるタイプのスピーカ・キャビネット、およびほとんどいかなるタイプの効果に基づいて増幅器モデルを表すトーンを幾つでも再生することができる。例えば、ＡＣ／ＤＣによるＨｅｌｌｓ  Ｂｅｌｌｓリズム・セクション、ヘビー・ファンクロック・リード、'６４Ｆｅｎｄｅｒ  Ｄｅｌｕｘｅに対するトーンまたはいかなる他のトーンでもユーザは選択し（例えば、Ｔｏｐ  １０  Ｔｏｎｅｓ  ６８５（図６ｂ）を参照されたい）、または作成することができる。具体的には、ギター１１２からのオーディオ信号を変更するためのＤＳＰアルゴリズムは当業者には周知であり、コンピューティング・デバイス１０２のソフトウェアで容易に実現することができるということを理解されたい。例えば、本発明の態様を実現するためにオーディオＤＳＰソフトウェア・モジュール４１２で使用することのできる様々な増幅器とスピーカ・キャビネット構成をモデル化するためにギターからのオーディオ信号を変更するためのＤＳＰアルゴリズムの一例は、参照により本明細書に組み込んだ「Ｔｕｂｅ  Ｍｏｄｅｌｉｎｇ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｄｉｇｉｔａｌ  Ｇｕｉｔａｒ  Ａｍｐｌｉｆｉｃａｔｉｏｎ  Ｓｙｓｔｅｍ」という名称の特許出願第５，７８９，６８９号に具体的に記載されている。
【００５８】
通常、トーンは、ギター増幅器、スピーカ・キャビネット、および複数の異なる効果ならびに他の設定により規定することができる。ここでもまた、トーンはユーザにより選択され、ユーザにより作成されることができ、または選択された楽曲に合うよう事前設定しておくことができる。モデル化中のギター増幅器トーンのタイプを増幅器モデル・フィールド６４４に示す（例えば、'９０Ｍａｒｓｈａｌｌ  ＪＣＭ−８００）。モデル化中のスピーカ・キャビネット構成トーンをスピーカ・キャビネット・モデル・フィールド６４６に示す（例えば、４×１２  '７８  Ｍａｒｓｈａｌｌ  ｗｉｔｈ  Ｓｔｏｃｋ  ７０ｓ）。スピーカ・キャビネット構成６４６は、増幅されたギターのサウンドでスピーカ・キャビネットの効果をエミュレートする。さらに、複数のデジタル再生された良く知られた効果ボックスは、トーンを作成するためにコントロール・パネル・グラフィカル・インターフェース６００によって提供される。具体的には、圧縮効果ボックス６５０、遅延効果ボックス６５２、変調効果ボックス６５４（例えば、コーラス、フランジャー、ロータリー、トレモロなどを含む）、およびリバーブ効果ボックス６５６が提供される。効果ボックスは、通常、ギターと標準増幅器に結合されている追加のデジタル・オーディオ楽器プロセッサにある。また、この特定のコントロール・パネル・グラフィカル・インターフェース６００は、遅延効果ボックス６５２が現在選択されていることを示しており、遅延時間６６０、フィードバック・パーセンテージ６６２、およびレベル・パーセンテージ６６４のような遅延効果の具体的な属性を示している。さらに、上記のように、ユーザはＧＵＩＴＡＲＰＯＲＴオンライン・ボタン６０６を選択することによってＧＵＩＴＡＲＰＯＲＴウェブサイトにログオンすることができる。
【００５９】
次に図６ｂを参照する。図６ｂは、本発明の一実施形態による、ユーザがサーバ１０４に正常にログオンした際にユーザに示される表示のスクリーンショットである。具体的には、アプリケーション・ソフトウェア・モジュール４０２と埋め込まれたブラウザ４０４は、サーバ１０４から受信したＧＵＩＴＡＲＰＯＲＴホームページ６７０を表示する。これはコントロール・パネル・グラフィカル・インターフェース６００の下に置かれ、サーバ１０４から受信したデータと共にユーザが要求した機能の多くを実行する。コントロール・パネル・グラフィカル・インターフェース６００は、この場合は圧縮効果ボックスが既に選択されており、圧縮効果ウィンドウが示されていること（例えば、異なる圧縮率の選択を考慮して）を除いて図６ａに示したものと同じであることに留意されたい。
【００６０】
図６ｂに示すように、ＧＵＩＴＡＲＰＯＲＴホームページ６７０は、Ｈｏｍｅボタン６７１、Ｆｅａｔｕｒｅボタン６７２、Ｎｅｗｓボタン６７３、Ｄｉｓｃｕｓｓｉｏｎボタン６７４、Ｕｓｅｒｓボタン６７５、およびＧｕｉｔａｒ  Ｔｏｏｌｓボタン６７６を含む。ユーザがＨｏｍｅボタン６７１を選択した場合、ユーザにはＧＵＩＴＡＲＰＯＲＴホームページが戻される。Ｆｅａｔｕｒｅｓボタン６７２を押し下げることによりＦｅａｔｕｒｅｓページに移動するが、このページは、アーティストのインタビュー、スタジオ・ノート、およびユーザが有用と思う可能性のある音楽の分野に関する他の記事を含む。Ｎｅｗｓボタン６７３を選択するとＮｅｗｓページに移動するが、このページは特にその音楽の分野とギターに関するニュース記事を提供する。ユーザがＤｉｓｃｕｓｓｉｏｎボタン６７４を選ぶと、掲示板に移動するが、この掲示板はいかなる主題でもよいが通常は特に音楽とギターに関するメッセージ（例えば、質問、回答、ニュース、記事など）をユーザが掲示することができる。Ｕｓｅｒｓボタン６７５を選択すると、ユーザ自身のプロファイル（例えば、名前、アドレス、購入のタイプ、音楽の好み、など）をユーザが更新することができるユーザ・ページがユーザに提供される。Ｇｕｉｔａｒ  Ｔｏｏｌｓボタン６７６を押し下げることによって、ユーザはユーティリティ・ページに移動するが、このページはＣコードの場合の指使いは何か、増幅器の設定方法など、ギター演奏に関する情報をユーザに提供する。これは、よくある質問（ＦＡＱ）の列挙、検索可能なデータベース、ギターの専門家への電子メールによる質問などにより達成することができる。
【００６１】
ＧＵＩＴＡＲＰＯＲＴホームページには、新しい記事、インタビュー、ニュース、コード、ギター・リック、Ｎｅｗｅｓｔ  Ｊａｍｔｒａｃｋｓ（例えば、楽曲）、および最も人気の高いトーンへのリンクを表す選択可能なアイコンがある。例えば、図６ｂは、選択可能なＳｔｕｄｉｏ  Ｎｏｔｅｓアイコン・リンク６７８、６７９、選択可能なＩｎｔｅｒｖｉｅｗアイコン・リンク６８０、選択可能なＴｏｄａｙ’ｓＮｅｗｓアイコン・リンク６８１、Ｃｈｏｒｄ  ｏｆ  ｔｈｅ  Ｗｅｅｋアイコン・リンク６８２、およびＬｉｃｋ  ｏｆ  ｔｈｅ  Ｗｅｅｋアイコン・リンク６８３、ならびにＮｅｗｅｓｔ  Ｊａｍｔｒａｃｋｓ（例えば、楽曲）リンク６８４、およびＴｏｎｅリンク６８５を示している。さらに、上記のように、ＧＵＩＴＡＲＰＯＲＴウェブサイトは、サーバ１０４でユーザ情報データベース１０９に記憶されているユーザ情報（例えば、具体的にはユーザの音楽の好み）に基づいてユーザに合わせることができる。この情報により、サーバ１０４はユーザの音楽の好みに合わせるようＧＵＩＴＡＲＰＯＲＴウェブサイトを作り替えることができる。例えば、ユーザの好みがロックンロールである場合、Ｎｅｗｅｓｔ  Ｊａｍｔｒａｃｋｓ  ６８４（例えば、楽曲）をロックンロール楽曲と特定のＴｏｎｅｓ６８５に向ける。さらに、ＧＵＩＴＡＲＰＯＲＴウェブサイトの他の構成要素は、ユーザの好み、例えばＳｔｕｄｉｏ  Ｎｏｔｅｓ、Ｉｎｔｅｒｖｉｅｗｓ、Ｎｅｗｓ、Ｃｈｏｒｄ  ｏｆ  ｔｈｅ  Ｗｅｅｋ、Ｌｉｃｋ  ｏｆ  ｔｈｅ  Ｗｅｅｋなどに連動させることもできる。
【００６２】
さらに、コントロール・パネル・グラフィカル・インターフェース６００はＧＵＩＴＡＲＰＯＲＴウェブサイトと対話するいくつかの選択可能なボタンを有する。図６ｂに示すように、ＧＵＩＴＡＲＰＯＲＴウェブサイトに接続するためのＧＵＩＴＡＲＰＯＲＴオンライン・ボタン６０６は既に押し下げられている。Ａｒｔｉｓｔ  ａｎｄ  Ｇｅａｒボタン６８７が用意されており、これは選択されるとユーザに選択可能なアーティストのリストを提供する。これにより、ユーザはアーティストの伝記を提供するアーティストに関して書かれた記事と、かれらが使用している楽器のタイプを見ることができる。Ｔｒａｃｋボタン６８８は選択されると、ユーザが選択できる楽曲（例えば、Ｊａｍｔｒａｃｋｓ）のリストをユーザに提供する。ユーザによる楽曲（例えば、Ｊａｍｔｒａｃｋｓ）の選択に応じて、サーバ１０４は、選択された楽曲に関連付けられたセッション・ファイルをコンピュータ・ネットワーク（例えば、インターネット）１０５を介してコンピューティング・デバイス１０２に送信する。セッション・ファイルはオーディオ・ファイルとマルチメディア・データとを含む。コンピューティング・デバイス１０２は、後で検討するように、ユーザにオーディオ・ファイルのマルチメディア・プレゼンテーションを提示するためにセッション・ファイルを処理する。Ｔｏｎｅボタン６８９は選択されると、ユーザが選択できるトーンのリストをユーザに提供する。ユーザによるトーンの選択に応じて、サーバ１０４はパッチ情報（例えば、増幅器のタイプ、スピーカ・キャビネット、効果設定など）を送信する。これにより、コントロール・パネル・グラフィカル・インターフェース６００は適切に構成され、ＤＳＰソフトウェア・モジュール４１２は適切なトーンをエミュレートするためにギター信号を適切に処理する。しかし、ＧＵＩＴＡＲＰＯＲＴウェブサイトへの接続があってもなくても、ユーザはあらかじめ記憶されているトーンと楽曲（例えば、Ｊａｍｔｒａｃｋｓ）を使用することができるということを理解されたい。
【００６３】
また、コントロール・パネル・グラフィカル・インターフェース６００はｔｕｎｅｒボタン６９０を有しているが、このボタンは選択されるとユーザ自身のギターをユーザが調弦できるようにコンピューティング・デバイスが色チューナとして動作することができる。コントロール・パネル・グラフィカル・インターフェース６００はＨｅｌｐボタン６９１も有しているが、このボタンは選択されるとユーザに標準のヘルプ機能を提供する。さらに、コントロール・パネル・グラフィカル・インターフェース６００は、以前に訪れたＧＵＩＴＡＲＰＯＲＴウェブサイトのウェブページすべてをユーザが前後にトグルすることができる標準の前矢印と後矢印６９２と６９３を有している。
【００６４】
上記のように、ユーザがＴｏｎｅを選択すると、方法５００は図５ｂに進む（ブロック５１４）。例えば、ユーザはＴｏｎｅｓボタン６８９またはＴｏｐ  Ｔｏｎｅｓ  ６８５（例えば、Ｈｅａｖｙ  Ｆｕｎｋ  Ｒｏｃｋ  Ｌｅａｄ（図６ｂ）の１つを選択することにより提供されるＴｏｎｅの１つを選択することができる。図５ｂを参照する。図５ｂは、本発明の一実施形態による、ユーザにトーンを提供する方法５０１を示す流れ図である。ユーザによるトーンの選択に応じて、サーバ１０４はパッチ情報（例えば、増幅器のタイプ、スピーカ・キャビネット、効果設定など）をコンピューティング・デバイス１０２に送信する（ブロック５１８）。アプリケーション・ソフトウェア・モジュール４０２は、楽器（例えば、ギター）に対するトーンのサウンド特性をモデル化するようコントロール・パネル・グラフィカル・インターフェース６００を適切な構成に設定する（ブロック５２０）。さらに、ＤＳＰソフトウェア・モジュール４１２は適切なトーンをエミュレートするためにギター・オーディオ信号を適切に処理する。したがって、ユーザはインターフェース・デバイス１０６を介してコンピューティング・デバイス１０２に接続されているユーザ自身のギター１１２を適切なトーンで演奏することができる。例えば、パッチは様々な録音アーティスト（例えば、Ｊｉｍｉ  Ｈｅｎｄｒｉｘ、Ｅｒｉｃ  Ｃｌａｐｔｏｎ、Ｊｅｒｒｙ  Ｇａｒｃｉａ、Ｃｈｅｔ  Ａｔｋｉｎｓ、Ｒｏｂｅｒｔ  Ｃｒａｙなど）に関するギター・トーンを表しても、ロック、カントリー、ジャズなど、様々なギターのスタイルを表すためにＧＵＩＴＡＲＰＯＲＴウェブサイト用に特別に作成してもよい。
【００６５】
上記のように、ユーザが楽曲を選択した場合、方法５００は図５ｃに進む（ブロック５１６）。例えば、ユーザはＴｒａｃｋｓボタン６８８またはＮｅｗｅｓｔ  Ｊａｍｔｒａｃｋｓ６８４の１つ（例えば、Ｗｅｌｃｏｍｅ  ｔｏ  ｔｈｅ  Ｊｕｎｇｌｅ（図６ｂ））を選択することにより提供される楽曲（例えば、Ｊａｍｔｒａｃｋｓ）の１つを選択することができる。図５ｃを参照する。図５ｃは、本発明の一実施形態による、ユーザに楽曲を提供する方法５０３を示す流れ図である。具体的には、ユーザによる楽曲（例えば、Ｊａｍｔｒａｃｋ）の選択に応じて、サーバ１０４は選択された楽曲（例えば、Ｊａｍｔｒａｃｋ）に関連付けられたセッション・ファイルをコンピュータ・ネットワーク（例えば、インターネット）１０５を介してコンピューティング・デバイス１０２に送信する（ブロック５２４）。セッション・ファイルはオーディオ・ファイルとマルチメディア・データとを含む。
【００６６】
手短に図５ｄを参照する。図５ｄは、本発明の一実施形態による、セッション・ファイル５３９のコンテンツを示す図である。セッション・ファイル５３９は、楽曲（例えば、Ｊａｍｔｒａｃｋ）に関連付けられたオーディオ・ファイル５４０を含む。楽曲のオーディオ・ファイル５４０は、通常はユーザが伴奏することを希望する歌である。オーディオ・ファイル５４０はフルソングであってよい（すなわち、すべての楽器トラックとボーカル・トラックを有する）。あるいは、オーディオ・ファイル５４０は１つまたは複数のトラックを除去することができる。例えば、１つまたは複数のギター・トラックを除去することができ、１つまたは複数のボーカル・トラックを除去することができ、１つまたは複数のベース・トラックを除去することができ、１つまたは複数のドラム・トラックを除去することができるなどである。例えば、後で検討するように、ユーザはギター・トラックを除去した楽曲（例えば、Ｊａｍｔｒａｃｋ）を選択することができる。これによって、ユーザがギター・トラックを除去した歌を伴奏することができるように、オーディオ・ファイル５４０はコンピューティング・デバイス１０２とインターフェース・デバイス１０６により（例えば、増幅スピーカ１２０によって）ギター・トラックを除去して再生される。
【００６７】
さらに、セッション・ファイル５３９は、ユーザに対してマルチメディア情報をプレゼンテーションし、表示するためにＪａｖａＳｃｒｉｐｔを埋め込んだＨＴＭＬデータを含むマルチメディア・ブロック５４２を有する。具体的には、後でより詳細に検討する図６ｃを手短に参照すると、マルチメディア・データは、ユーザが演奏中のオーディオ・ファイル５４０に合わせて演奏することができるように歌または楽曲６０１の名前、およびリード・シート６０５に関連付けられた楽譜６０３を表すために、コンピューティング・デバイス１０２のアプリケーション・ソフトウェア・モジュール４０２と埋め込まれたブラウザ４０４とによって（コンピューティング・デバイス１０２の他のソフトウェア・モジュールと共に）処理することができる。マルチメディア・データ・ブロック５４２は、これらの機能を達成するために他のすべての必要なデータも含む。
【００６８】
セッション・ファイル５３９は、ギター１１２が関連付けられ選択された楽曲／オーディオ・ファイル５４０に合わせて適切なトーンまたはサウンドを有するように、パッチ情報を含むパッチ・ブロック５４４も含む。パッチ情報は、コントロール・パネル・インターフェース６００のギター設定が選択された楽曲／オーディオ・ファイルに合わせて設定されるように増幅器のタイプ、スピーカ・キャビネット、効果設定などを含む。アプリケーション・ソフトウェア・モジュール４０２は、特定の楽曲／オーディオ・ファイル５４０に関してギター用のトーンのサウンド特性をモデル化するためにコントロール・パネル・グラフィカル・インターフェース６００を適切な構成に設定する。さらに、ＤＳＰソフトウェア・モジュール４１２は、ギターのサウンドが楽曲／オーディオ・ファイル５４０に合うよう適切なトーンをエミュレートするためにギター信号を適切に処理する。
【００６９】
さらに、セッション・ファイル５３９は、選択された楽曲／オーディオ・ファイル５４０に対するテンポの変更、プログラムの変更、調号の変更、位置マーカなどを表すＭＩＤＩファイル５４６を含む。ＭＩＤＩファイルは当技術分野では良く知られている。コンピューティング・デバイス１０２（例えば、アプリケーション・ソフトウェア・モジュール４０２を使用する）は、ＭＩＤＩファイルでどのようなイベントが発生するかを決定する目的で現在のオーディオ再生位置をＭＩＤＩファイル内の対応するオーディオ・ファイル位置に変えるために、再生中にＭＩＤＩからのテンポ・マップを解釈する。オーディオ・ファイルの特定の位置に必要とされるコントロール・パネル・グラフィカル・インターフェース６００の増幅器制御のために（例えば、ＤＳＰソフトウェア・モジュール４１２を使用してエミュレート中のギター用の特定のトーン）、増幅器、スピーカ・キャビネット、および効果設定などを選択するためのパッチ情報５４４を選択するためにＭＩＤＩファイルからのプログラム変更が使用される。ユーザに現在の調号を表示するためにＭＩＤＩファイル５４６からの調号の変更が使用される。楽曲の様々なポイントでイベントを表示させるためにＭＩＤＩファイル５４６のマーカが使用される。ＭＩＤＩファイル５４６の各マーカにはテキスト・ラベルが割り当てられている。このラベルは、そのラベルに達した際に実行されるべきＪａｖａＳｃｒｉｐｔ機能に対応する。
【００７０】
例えば、図６ｃを手短に参照すると、楽曲（例えば、Ｊａｍｔｒａｃｋ）ＬＡ  Ｓｍｏｏｔｈ  Ｊａｚｚ  ｉｎ  Ｃ  ６０１とその関連する楽譜６０３とともにリードシート６０５が既にユーザによって選択されており、示されている。ＬＡ  Ｓｍｏｏｔｈ  Ｊａｚｚ楽曲にはＭＩＤＩマーカが関連付けられている。ＭＩＤＩマーカ６０７に対するテキスト・ラベル６０９は楽譜６０３の上に表示されており、セッション・ファイル５３９のＭＩＤＩファイル５４６から来ている。この例では、ＭＩＤＩマーカ６０７のテキスト・ラベル６０９は、図示するように楽曲／オーディオ・ファイル５４０の異なる部分、すなわちイントロ、歌詞、ブリッジ、コーラス、ソロ  １などを表している。例えば、ＭＩＤＩマーカ６０７はテキスト・ラベル６０９「Ｃｈｏｒｕｓ」を有する場合がある。テキスト・ラベル６０９「Ｃｈｏｒｕｓ」に対するＭＩＤＩマーカ６０７は、歌のコーラスが始まった時は何時でも楽譜６０３を表示させる（例えば、コード、楽譜、ギター・タブラチュア、歌詞など）。別の例として、図６ｃに示すように、イントロの楽譜６０３（例えば、コーラス）が示されている。したがって、コンピューティング・デバイス１０２が関連付けられたセッション・ファイル５３９からＭＩＤＩマーカ６０７を受信した場合、対応する機能を検索し、それに対するスクリプトを実行するＪａｖａＳｃｒｉｐｔを使用してＭＩＤＩマーカを処理する。ＪａｖａＳｃｒｉｐｔは、通常、ピクチャをロードするか、またはディスプレイ・デバイスに何かを描く。この例では、ＪａｖａＳｃｒｉｐｔは、「Ｉｎｔｒｏ」用のＭＩＤＩマーカ６０７を受信した際に、選択された楽曲、ＬＡ  Ｓｍｏｏｔｈ  Ｊａｚｚ  ｉｎ  Ｃのイントロの楽譜６０３（例えば、コード）を表示する。
【００７１】
方法５０３を示す図５ｃを参照すると、ブロック５２８で、ユーザにオーディオ・ファイル５４０のマルチメディア・プレゼンテーションを提示するために（例えば、楽譜６０３を含めて）、セッション・ファイル５３９（例えば、オーディオ・ファイル５４０とマルチメディア・データの残り）が処理される。これによって、ユーザはオーディオ・ファイル５４０のマルチメディア・プレゼンテーションに合わせてギター１１２を演奏することができる（ブロック５３０）。
【００７２】
図６ｃも参照すると、コンピューティング・デバイス１０２は再生中にピクチャ、テキスト、およびグラフィックスを表示することができる（例えば、ディスプレイ・デバイス２０４に）。例えば、コンピューティング・デバイスは楽譜６０３を表示することができる。これによって、楽曲／Ｊａｍｔｒａｃｋの再生中に（例えば、オーディオ・ファイル５４０を含めて）、楽曲の現在の位置が、通常は歌詞、調号、およびギター・タブラチュア（例えば、コード、楽譜、フィギュアリング図、など）のような他の情報と共に表示され、ユーザはオーディオ・ファイル５４０のマルチメディア・プレゼンテーションに合わせてユーザ自身のギター１１２を演奏することが可能になる。
【００７３】
例えば、図６ｃのこの例では、楽曲（例えば、Ｊａｍｔｒａｃｋ）ＬＡ  Ｓｍｏｏｔｈ  Ｊａｚｚ  ｉｎ  Ｃ  ６０１とその関連する楽譜６０３を有するリードシート６０５はユーザによって既に選択されており、ＧＵＩＴＡＲＰＯＲＴディスプレイ６７１に表示されている。この例では、ＭＩＤＩマーカ６０７のテキスト・ラベル６０９が表示されており、図示するように楽曲／オーディオ・ファイル５４０の異なる部分、すなわちイントロ、歌詞、ブリッジ、コーラス、ソロ  １などを表している。図６ｃに示すように、イントロの楽譜６０３（例えば、コード）が示されている。この例では、ＪａｖａＳｃｒｉｐｔは、「Ｉｎｔｒｏ」用のＭＩＤＩマーカ６０７を受信した際に、選択された楽曲ＬＡ  Ｓｍｏｏｔｈ  Ｊａｚｚ  ｉｎ  Ｃのイントロの楽譜６０３（例えば、コード）を表示する。
【００７４】
したがって、ユーザは楽譜６０３とオーディオ・ファイル５４０に合わせてユーザ自身のギター１１２を演奏することができる。オーディオ・ファイル５４０が進むに従い、ユーザが楽譜を読み、それに従って演奏することができるように楽譜６０３を自動的に更新することができる（例えば、楽曲の次の部分、ブリッジ、コーラス、ソロなど）。さらに、ユーザは、学習と即興演奏を可能にするためにギター・トラックがある場合とない場合のある楽曲／オーディオ・ファイル５４０のバージョンを選ぶことができる。さらに、上記のように、ボーカル、ドラム、ベースなどを除去した楽曲／オーディオ・ファイルを選ぶことができる。
【００７５】
さらに、パッチ・ブロック５４４はギター１１２が関連する楽曲／オーディオ・ファイル５４０と合う適切なトーンまたはサウンドを有するようにパッチ情報を含む。パッチ情報は、コントロール・パネル・インターフェース６００のギター設定が選択された楽曲／オーディオ・ファイルと合うよう設定され、楽曲自体の変更にさえ対処することができるよう増幅器のタイプ、スピーカ・キャビネット、効果設定などを含む。これは、上記のようにＭＩＤＩマーカによってトリガすることができる。アプリケーション・ソフトウェア・モジュール４０２は、特定の楽曲または楽曲の一部に対するギター用トーンのサウンド特性をモデル化するために、コントロール・パネル・グラフィカル・インターフェース６００を適切な構成に設定し、ＤＳＰソフトウェア・モジュール４１２は、ギターのサウンドが楽曲／オーディオ・ファイル５４０と合うよう適切なトーンをエミュレートするためにギター信号を適切に処理する。上記のように、ユーザのギターはコンピューティング・デバイス１０２によって電気的に経路指定され、これはコンピューティング・デバイス１０２が再生中のギターのサウンドを制御することができる。これによって、増幅器のモデル、その設定、およびいかなる効果でも楽曲／オーディオ・ファイル５４０を通して適宜、動的に変更することができる。図６ｃに示すように、選択されたＬＡ  Ｓｍｏｏｔｈ  Ｊａｚｚ  ｉｎ  Ｃ楽曲のイントロと合うようジャズ・サウンドをエミュレートするために遅延設定の’９０  Ｍａｒｓｈａｌｌ  ＪＣＭ−８００増幅器に基づく増幅器モデルが使用される。したがって、楽曲／Ｊａｍｔｒａｃｋの各部分に対して一致するパッチは、例えばコーラス中のあるトーンからソロ中の別のトーンに移行するために自動的に提供される。
【００７６】
図６ｃを参照して、本発明の他の特定の機能を指摘するためにＧＵＩＴＡＲＰＯＲＴディスプレイ６７１の具体的な態様を検討する。図示するように、Ｔｒａｃｋボタン６８８が既に選択されており、楽曲ＬＡ  Ｓｍｏｏｔｈ  Ｊａｚｚ  ｉｎ  Ｃ  ６０１がユーザによって選択されている。したがって、ＬＡ  Ｓｍｏｏｔｈ  Ｊａｚｚ  ｉｎ  Ｃ  ６０１関連の楽譜６０３付きリードシート６０５がＧＵＩＴＡＲＰＯＲＴディスプレイ６７１にさらに表示される。選択された楽曲（例えば、Ｊａｍｔｒａｃｋ）ＬＡ  Ｓｍｏｏｔｈ  Ｊａｚｚ  ｉｎ  Ｃ  ６０１の下には、楽曲を選択することのできる方法を制御するボタンがある。Ｗｅｂ  Ｌｏａｄボタン６１１は、ユーザがＧＵＩＴＡＲＰＯＲＴウェブサイトから楽曲を選択し、それをユーザのコンピューティング・デバイス１０２にロードする（例えば、それをローカル・メモリに記憶する）ことができる。Ｈａｒｄ  Ｄｉｓｋボタン６１３は、コンピューティング・デバイス１０２（例えば、ユーザのハードディスクに）に既にローカルに記憶されている楽曲をユーザが選択することができる。ＣＤボタン６１５は、ユーザのコンピューティング・デバイス１０２のＣＤドライブでＣＤからユーザが楽曲を選択することができる。ＣＤの歌が選択された場合、ＧＵＩＴＡＲＰＯＲＴサーバ１０４はそれが歌に関連するセッション・ファイル５３９を有するか否かを判定し、有する場合は、ユーザがそのように選んだならば、ユーザに歌のマルチメディア・プレゼンテーション（例えば、パッチ・ファイル、楽譜など）を提供する。
【００７７】
Ｊａｍボタン６１７は、ユーザによって選択されると、ユーザがそれに合わせて即興演奏できるように上記の楽曲（例えば、Ｊａｍｔｒａｃｋ）のマルチメディア・プレゼンテーションを開始する。ミキサ・スライド６１９は楽曲のボリュームを制御する。現在演奏しているマルチメディア・プレゼンテーション（例えば、オートセレクト・オン）に関して自動的に選択されたコントロール・パネル・グラフィカル・インターフェース６００（すなわち、増幅器設定）の事前に決められたパッチ設定を使用して、ユーザ自身の好みにコントロール・パネル・グラフィカル・インターフェース６００設定（すなわち、増幅器設定）自体をユーザが設定したことに反して、オートセレクト・オン／オフ・ボタン６２１をトグルするために使用することができる。
【００７８】
楽曲（例えば、Ｊａｍｔｒａｃｋｓ）およびループに対する典型的なタイマ表示６２３が従来のデジタル・マルチメディア制御機能６２５（例えば、再生、録音、停止、巻戻し、高速先送りなど）と共に提供される。Ｌｉｃｋ  Ｌｅａｒｎｅｒボタン６２７は選択されると、学習を容易にするために音の高さを変更せずに現在再生中の楽曲（例えば、Ｊａｍｔｒａｃｋ）のテンポを減速する。また、楽曲のその部分の学習を容易にするために楽曲／Ｊａｍｔｒａｃｋ（例えば、イントロ、コーラスなど）の現在の部分をループする（すなわち、反復的に再生する）Ｌｏｏｐボタン６２９が用意されている。さらに、楽曲に関する情報を提供するトラック詳細６３１を選択することができる。例えば、録音された場合、アーティストに関する情報、どのタイプのギター、増幅器、および効果が使用されたか。その楽曲の出所、例えばＳｏｎｙ、Ａｒｉｓｔａなど、またはその楽曲がＧＵＩＴＡＲＰＯＲＴウェブサイト用に特別に作成されたものか否か（そして誰によって）に関する情報を提供するクレジット６３３を選択することができる。例えば、ＧＵＩＴＡＲＰＯＲＴウェブサイトにのみ、特定タイプの音楽、例えばロック、ブルース、ジャズ、カントリーなどの学習を容易にするために楽曲（例えば、Ｊａｍｔｒａｃｋｓ）をカスタム作成することができる。
【００７９】
したがって、本発明は、ユーザがＧＵＩＴＡＲＰＯＲＴウェブサイトからトーンおよび楽曲をダウンロードすることができるようにユーザ自身のギター１１２をユーザがインターフェース・デバイス１０６を介してコンピューティング・デバイス１０２に結合することができる。購入に伴いインターフェース・デバイス１０６はオンライン購入サービス（例えば、楽曲およびトーンのダウンロード）を入手する必要がある。インターフェース・デバイス１０６はユーザを一意に識別し、システム１００の残りと共に、以下でさらに詳細に検討するようにユーザを許可し、オーディオ・ファイルを暗号化し、解読し、またアセットの購入を追跡するために使用される。さらに、ユーザによる楽曲（例えば、Ｊａｍｔｒａｃｋ）の選択に応じて、サーバ１０４は楽曲に関連付けられたセッション・ファイル５３９をコンピュータ・ネットワーク１０５を介してコンピューティング・デバイス１０２に送信する。セッション・ファイル５３９は、オーディオ・ファイルのマルチメディア・プレゼンテーションをユーザに提示するためにコンピューティング・デバイスがセッション・ファイルを処理することができるようオーディオ・ファイルとマルチメディア・データを含む。コンピューティング・デバイス１０２は、ユーザがユーザ自身のギター１１２をオーディオ・ファイルのマルチメディア・プレゼンテーションに合わせて演奏することができるようにユーザにオーディオ・ファイルのマルチメディア・プレゼンテーション（例えば、楽譜６０３のスクローリングを含めて）を提示するためにセッション・ファイル５３９を処理する。さらに、ギターに似せた親しみ易いギター装置用の直観的なコントロール・パネル・グラフィカル・インターフェース６００が提供される。コントロール・パネル・グラフィカル・インターフェース６００は、標準制御付きの増幅器パネルを含み、これによってユーザは異なるトーンを達成するために複数の異なるタイプの増幅器から選択することが可能になる。同様に、一組の効果ボックスも設けられている。
【００８０】
上記のように、ユーザは楽譜６０３（例えば、コード、旋律、タビュラチュア（運指図）、歌詞など）を見ながら楽曲を聴くことができる。楽曲は、営利目的の楽曲およびギターの学習を容易にするためにＧＵＩＴＡＲＰＯＲＴウェブサイトが使用するためだけに作成された楽曲の両方を含むことができる。ユーザは、練習を容易にするために、元のギター・トラックがある場合とない場合の楽曲のバージョンに合わせて即興演奏することができる。したがって、ユーザには、サーバ１０４からダウンロードすることのできる幅広い種類の楽曲（例えば、Ｊａｍｔｒａｃｋｓ）への高速かつ容易なアクセスが提供される。この場合、ユーザは、学習を容易にするためにマルチメディア・プレゼンテーション形式で提示されるダウンロードされた楽曲に合わせて演奏することができる。
【００８１】
ユーザに、様々な異なるスタイルで多数の楽曲（例えば、Ｊａｍｔｒａｃｋｓ）へのアクセスを提供する。楽曲は、既存のサウンド録音、既存のサウンド録音の再ミックス（ギター・トラックまたはボーカル・トラックなしの例）、既に発行されている著作権保護された歌の再録音されたバージョン、ＧＵＩＴＡＲＰＯＲＴウェブサイトに提供される元の歌（例えば、ギターの学習を容易にするために作成された歌）、ドラム・ループ、グルーブなどを含むことができる。さらに、即興演奏と練習を容易にするためにグルーブ（例えば、リズム・セクション、ドラムビートなど）を提供することができる。また、ＧＵＩＴＡＲＰＯＲＴウェブサイトは、楽曲（例えば、Ｊａｍｔｒａｃｋｓ）の他に、複数の録音アーティストによるＣＤ、プリント・シート・ミュージック、タビュラチュア、ギター用記譜、コード・チャート、歌詞、デジタル・シート・ミュージック、Ｔシャツ、音楽関連記事などのような多くの他の音楽関連アセットの販売も提供することができる。さらに、以下で詳細に検討するように、ダウンロードしたそれぞれの一意の楽曲またはトーン、またはいかなるタイプの購入でも、コンテンツのライセンシング・パートナー（例えば、著作権所有者）への正確な報告のために追跡され、再録音される。
【００８２】
本発明の実施形態は、ユーザを一意に識別し、コンピューティング・デバイス１０２が使用するために暗号化されたアセットを解読するためのセキュリティ・デバイス１１０をさらに提供する。したがって、セキュリティ・デバイスは認可された素材を無許可の複製から保護し、コンテンツ提供者に安全な収入の機会を提供する。アセットは、通常、オーディオ・ファイル（例えば、著作権保護されたサウンド録音）を含めて楽曲（例えば、Ｊａｍｔｒａｃｋｓ）に関係しているが、アセットはコンピュータ・ネットワークを介して送信されたいかなる種類のデータ（例えば、マルチメディア、ビデオ、ムービー、音声、ソフトウェア、一般的なデータ形式など）であってもよいということを理解されたい。以下で詳細に検討するように、セキュリティ・デバイス１１０はコンピューティング・デバイス１０２やサーバ１０４と共に、多くの他の機能の他に、サーバ１０４がセキュリティ・デバイス１１０を一意に識別することを可能にし、許可されたセキュリティ・デバイス１１０に結合されたコンピューティング・デバイス１０２が許可されたセキュリティ・デバイス１１０が使用するために特別に暗号化されたアセットを解読することができる。後で検討するように、セキュリティ・デバイス１１０は、サーバ１０４に対して各セキュリティ・デバイス１１０を一意に識別するために、また許可されたセキュリティ・デバイスに結合されたコンピューティング・デバイス１０２でのみアセットが動作することを保証し、それによってコンテンツ提供者に安全な収入の機会を提供するために、埋め込まれた電子シリアル番号、ハードウェア暗号化およびキー記憶回路と組み合わされたユーザ・キーを含む。
【００８３】
次に図７ａを参照する。図７ａは、本発明の一実施形態によるセキュリティ・システム７００を示している。上記のように、サーバ１０４は、コンピュータ・ネットワーク１０５を介してコンピューティング・デバイス１０２に結合されており、コンピューティング・デバイス１０２はＩ／Ｏリンク（例えば、ＵＳＢリンク）を介してセキュリティ・デバイス１１０に接続されている。
【００８４】
セキュリティ・システム７００のセキュリティ形態を強調するために示されたサーバ１０４は、セキュリティ・ソフトウェア・モジュール４２２、アプリケーション・ソフトウェア・モジュール４１６、サーバ・ソフトウェア・モジュール４１５、データベース・ソフトウェア・モジュール４１８、および本明細書には示さないが商業ソフトウェア・モジュール４２０を含む。さらに、コンピュータ・ネットワーク接続を介してサーバ１０４にはアセット・データベース１０７とユーザ情報データベース１０９が結合されている。
【００８５】
セキュリティ・システム７００のセキュリティ形態を強調するためにさらに示されたコンピューティング・デバイス１０２は、セキュリティ・ソフトウェア・モジュール４０８とセキュリティ・ハードウェア・インターフェース・ソフトウェア７０４を含むアプリケーション・ソフトウェア・モジュール４０２を含む。セキュリティ・デバイス１１０は、セキュリティ・サービス７０６を実施するためにセキュリティ・サービス７０６とセキュリティ構成要素７１０とを含む。さらに、ローカル・アセット・ストレージ７１２、例えばハードドライブのようなローカル・メモリは、Ｉ／Ｏリンク７１４を介してコンピューティング・デバイス１０２に結合されているか、またはコンピューティング・デバイス１０２の一部である。ユーザが既にダウンロードしたアセット（例えば、オーディオ・ファイル）を記憶するためにローカル・アセット・ストレージ７１２を使用することができる。
【００８６】
セキュリティ・デバイス１１０は、セキュリティ・サービス７０６を実施するために使用することのできるセキュリティ構成要素７１０を含む。このようなセキュリティ・サービス７０６は、許可されたセキュリティ・デバイス１１０で作業しているユーザにのみサーバ１０４へのアクセスが許可されるようにサーバ１０４に対してセキュリティ・デバイス１１０を一意に識別することを含む。サーバ１０４と共にセキュリティ・デバイス１１０によって実行される別のセキュリティ・サービス７０６は、適切に許可されたセキュリティ・デバイス１１０に結合されているコンピューティング・デバイス１０２のみがアセットを受信し使用することができるように、アセット（例えば、オーディオ・ファイル）が適切に暗号化され、解読されることを保証する。
【００８７】
サーバ１０４を詳細に見ると、サーバ１０４は、後で検討するようにセキュリティ機能を実行するためのセキュリティ・プログラムとアルゴリズムを含んでいるセキュリティ・ソフトウェア・モジュール４２２を含む。セキュリティ・ソフトウェア・モジュール４２２は、ユーザを認証し、認証されたユーザに暗号化されたアセットを配信するために、サーバ１０４のクロック／カレンダおよび様々なデータベース、すなわちユーザ情報データベース１０９とアセット・データベース１０７からの情報を調整する。クロック／カレンダは、日付および時刻を正確に決定することができるサーバ・コンピュータ１０４の典型的な部分である。さらに、サーバ１０４はセキュリティ保護された動作環境で動作する（例えば、セキュア・ソケット・レイヤ（ＳＳＬ）、Ｓ−ＨＴＴＰなどを使用する）。
【００８８】
ユーザ情報データベース１０９は、サーバ１０４（例えば、一実施形態では、ＧＵＩＴＡＲＰＯＲＴウェブサイト購入者）にアクセスするよう登録されており、許可されているセキュリティ・デバイス１１０を有するユーザごとの購入と登録情報を含む。ユーザごとの購入情報は、後で検討するように、各セキュリティ・デバイス１１０の信頼性を判定し、アセットを暗号化し、解読するために必要とされるユーザの購入期限日とユーザのセキュリティ・デバイス１１０に対するユーザの一意のシリアル番号、ユーザ・キー、およびメモリ・キーを含む。
【００８９】
アセット・データベース１０７は、アセット（例えば、フルソングや様々な楽器トラックを除去した歌を含む上記のＪａｍｔｒａｃｋｓのような楽曲およびオーディオ・ファイルに関連付けられたマルチメディア・プレゼンテーション）ならびにいかなる他の種類のデジタル・データ・アセットをも含んでいる。さらにアセット・データベース１０７は、アセットごとに（例えば、オーディオ・ファイルごとに）一意のアセット暗号キーを含む。また、アセット・データベース１０７は、購入または借りてコンピュータ・ネットワーク１０５を介してコンピューティング・デバイス１０２にダウンロードすることのできるいかなる他のアセットをも含むことができるということを理解されたい。
【００９０】
コンピューティング・デバイス１０２を詳細に見ると、コンピューティング・デバイス１０２は、具体的にはアプリケーション・ソフトウェア・モジュール４０２とセキュリティ・ソフトウェア・モジュール４０８を含む。セキュリティ・ソフトウェア・モジュール４０８は、後で検討するように、アセットを暗号化し解読するために標準の暗号化と解読ルーチンを含む。データによって擬似乱数をＸＯＲするために擬似乱数ジェネレータを使用するいかなる適切なブロック・モード暗号でも使用することができる。一部の例としては、データ暗号化標準規格（ＤＥＳ）、国際日付暗号化アルゴリズム（ＩＤＥＡ）などがある。さらに、セキュリティ・ソフトウェア・モジュール４０８は、後で検討するように、コンピューティング・デバイス１０２がサーバ１０４とセキュリティ・デバイス１１０の間の対話のコンジットとして使用され、特にサービス・デバイス１１０を認証することができる。しかし、アプリケーション・ソフトウェア・モジュール４０２とセキュリティ・ソフトウェア・モジュール４０８はセキュリティ保護された動作環境で実行するものとは仮定されない。
【００９１】
セキュリティ・ハードウェア・インターフェース・ソフトウェア７０４は、コンピューティング・デバイス１０２とセキュリティ・デバイス１１０の間に標準入出力インターフェース（例えば、ＵＳＢインターフェース）を提供する。さらに、コンピューティング・デバイスは、アプリケーション・ソフトウェア・モジュール４０２がコンピューティング・デバイス１０２とセキュリティ・デバイス１１０の間の対話の日付と時刻を正確に判定することができる標準クロック／カレンダ（すなわち、ほとんどすべてのコンピューティング・デバイスに共通の）を使用する。
【００９２】
セキュリティ・デバイス１１０を詳細に見ながら次に図７ｂを参照する。図７ｂは、本発明の一実施形態による、セキュリティ・デバイス１１０の付属セキュリティ構成要素７１０を示している。図７ｂに示すように、セキュリティ・デバイス１１０は、マイクロプロセッサ３４０、セキュリティ論理３８０を有するセキュリティ保護されたメモリ３７９、セキュリティ・ファームウェア３８３を記憶するプログラム・ストレージ３８２、および不揮発性メモリ３８４（例えば、ＥＥＰＲＯＭ）を含む。また、Ｉ／Ｏコントローラ７１６は、シリアルＩ／Ｏリンク１１４にそってコンピューティング・デバイス１０２への／からのデジタル・データのフローを制御する。一実施形態では、シリアルＩ／Ｏコントローラ７１６はＵＳＢコントローラであってよく、シリアルＩ／Ｏリンク１１４はＵＳＢリンクであってよい。シリアルＩ／Ｏコントローラ７１６によって制御されるデジタル・データには、後で検討するようにキー、アセット情報、その他のデータを含めることができる。
【００９３】
一般に、セキュリティ・ファームウェア３８３はセキュリティ保護されたメモリ３７９および不揮発性メモリ３８４と共にマイクロプロセッサ３４０によって実行された場合、サーバ１０４がセキュリティ・デバイス１１０を一意に識別することを可能にし、またコンピューティング・デバイス１０２がセキュリティ・デバイス１１０と共に、許可されたコンピューティング・デバイス１０２に結合されているコンピューティング・デバイス１０２が使用するために特に暗号化されたアセットを解読することができるセキュリティ保護されたオペレーションを提供する。セキュリティ保護されたメモリ３７９は、ハードウェアで実装されるセキュリティ論理３８０を使用して読み取り、書き込むためにロックし、ロック解除することのできる読み取り専用メモリ（ＲＯＭ）と書き込み可能メモリの両方を含む。
【００９４】
セキュリティ・デバイス１１０のシリアル番号３８６に関連付けられたユーザ・キー３８７は、サーバ１０４に対してセキュリティ・デバイス１１０を認証するためにセキュリティ論理３８０によって使用される。また、メモリ・キー３８９は、セキュリティ保護されたメモリ３７９を最初にロック解除するためにセキュリティ論理３８０によって使用される。シリアル番号３８６、ユーザ・キー３８７、およびメモリ・キー３８９は製造過程でセキュリティ保護されたメモリ３７９に封印され、セキュリティ保護されたメモリ３７９が一度封印されたらその後は二度と書き込むことはできない。シリアル番号３８６、ユーザ・キー３８７、およびメモリ・キー３８９はサーバのユーザ情報データベース１０９にも記憶することができる。したがって、サーバ１０４は、以下でより詳細に検討するように、セキュリティ・デバイス１１０を一意に認証するために最初に要請と応答を生成し、セキュリティ保護されたメモリ３７９と不揮発性メモリ３８４を開き、ロックすることができる。
【００９５】
不揮発性メモリ３８４はセキュリティ保護されたメモリ３７９に対する拡張として使用される。セキュリティ保護されたメモリ３７９も既にロック解除されていない限り、ファームウェア３８３は不揮発性メモリ３８４へのアクセスを阻止する。不揮発性メモリ３８４は、ファームウェア３８３によって制御されるハードウェア書き込み保護を有する。不揮発性メモリ３８４は、特定の購入されたアセット（例えば、オーディオ・ファイル）に関連付けられたアセット暗号キー（例えば、オーディオ・ファイル・キー）のようなキー３８８、現在の日付とあるアセット３９０の購入申込日、およびアセット情報（例えば、アセットに関する情報）３９２を記憶する。シリアル番号３８６、ユーザ・キー３８７、メモリ・キー３８９、キー３８８、日付３９０、アセット情報３９２、また場合によってはファームウェア３８３もセキュリティ・デバイスのメモリのどれにでも、すなわちプログラム・ストレージ３８２、セキュリティ保護されたメモリ３７９、または不揮発性メモリ３８４のどれにでも置かれ、または同一場所に置くことができるが、この具体的な構成は一例に過ぎないといことを理解されたい。
【００９６】
さらに、後で検討するように、サーバ１０４のセキュリティ・ソフトウェア、コンピューティング・デバイス１０２、およびセキュリティ・デバイス１１０のファームウェアは、アセット、キー、日付、およびこれらのデバイスの間で送信される他のデータを暗号化し、解読するために標準の暗号化と解読ルーチンを含む。データによって擬似乱数をＸＯＲするために擬似乱数ジェネレータを使用するいかなる適切なブロック・モード暗号でも使用することができる。一部の例としては、データ暗号化標準規格（ＤＥＳ）、国際日付暗号化アルゴリズム（ＩＤＥＡ）などがある。
【００９７】
サーバ１０４、コンピューティング・デバイス１０２、およびセキュリティ・デバイス１１０の組み合わせによって実施される様々なセキュリティ機能を、次に図８ａ〜８ｉの流れ図を参照して検討する。
【００９８】
実行されるべきセキュリティ機能の１つは、セキュリティ・デバイス１１０に結合されているコンピューティング・デバイス１０２がサーバ１０４とその多くの機能（例えば、一実施形態ではＧＵＩＴＡＲＰＯＲＴウェブサイト）にアクセスすることが許可されることを保証するために、サーバ１０４がセキュリティ・デバイス１１０を一意に識別することである。さらに、サーバ１０４は、サーバ１０４とそのアセット（例えば、オーディオ・ファイル）への無許可のアクセスを防止するために、セキュリティ・デバイス１１０の信頼性を判定する。これは、ユーザが最初にサーバ１０４へのログオンを試みた際に行われ、以後、定期的に実行することができる。この認証プロセスは、サーバ１０４が、サーバ１０４のセキュリティ・ソフトウェア・モジュール４２２によって実行されるスクリプト記述言語によってセキュリティ・デバイスにコード化された要請を発行することを含む。セキュリティ・デバイス１１０のファームウェア３８３は応答を生成するためにプログラムを実行する。許可されたセキュリティ・デバイス１１０は独自の応答を返し、セキュリティ・ソフトウェア・モジュール４２２を使用するサーバ１０４はその応答を妥当性検査する。応答が特定のセキュリティ・デバイス１１０に対して有効である場合、そのセッションは続けられる。応答が有効でない場合、そのセッションは終了する。
【００９９】
図８ａを参照する。図８ａは、本発明の一実施形態による、サーバ１０４がセキュリティ・デバイス１１０を認証するためのプロセス８００を示す流れ図である。これらのプロセス・ステップ８００は、一般に、サーバで他のソフトウェア・モジュールと共にサーバ１０４のセキュリティ・ソフトウェア・モジュール４２２によって実施される。まずサーバ１０４は、セキュリティ・デバイス１１０に対してセキュリティ・デバイス１１０のセキュリティ保護されたメモリ３７９に記憶されているシリアル番号３８６を要求する（ブロック８０２）。受信したシリアル番号に応じて、ブロック８０３ではサーバがそのシリアル番号がユーザ情報データベース１０９にあるか否かを判定する。ない場合、そのセッションは終了される（ブロック８０５）。しかし、シリアル番号がユーザ情報データベース１０９にある場合、サーバ１０４はユーザ情報データベース１０９からそのシリアル番号に対するユーザ・キーを入手する（ブロック８０６）。上記のように、ユーザ情報データベース１０９は各セキュリティ・デバイス１１０に関連付けられたシリアル番号ごとに一意のユーザ・キーを記憶する。サーバ１０４は、サーバ１０４のクロック／カレンダから時刻と日付も入手するが、これらは後で購入期限が切れているか否かを確認するために使用される（ブロック８０８）。
【０１００】
次に、サーバ１０４は、要請（ブロック８１０）と、セキュリティ・デバイス１１０からの予想される応答（ブロック８１２）とを計算する。要請は、基本的にセキュリティ・デバイス１１０が適切な応答を送信することによってそれ自体を正確に識別するための要求である。要請は、セキュリティ・デバイス１１０に関連付けられたユーザ・キー３８７に対して数学的変換を実行することによりサーバ１０４で作成される。セキュリティ・デバイス１１０で生成された応答がサーバ１０４で作成された応答と同じであるように（それが実際にはユーザに対するシリアル番号に関連付けられたセキュリティ・デバイスであると仮定して）、サーバ１０４とセキュリティ・デバイス１１０はどちらも同じ数学的変換を使用し、同じユーザ・キー３８７を有する。一実施形態では、サーバ１０４とセキュリティ・デバイス１１０に共通した数学的変換はいかなる適切な一方向ハッシング関数であってもよい。
【０１０１】
次いで要請がサーバ１０４からセキュリティ・デバイス１１０に送信される（ブロック８１４）。次いでサーバ１０４はセキュリティ・デバイス１１０からの応答を待つ（ブロック８１６）。所定の期間が経過すると、プロセス８００はタイムアウトし、セッションは終了する（ブロック８１７）。しかし、応答が所定期間内に受信された場合、サーバ１０４は、セキュリティ・デバイス１１０からの応答が予想される応答と一致するか否かを判定する（ブロック８１８）。一致しない場合、そのセッションは終了する（ブロック８１９）。一致した場合、ユーザはサーバ１０４へのログオンを許可され、プロセス８００は完了する（ブロック８２１）。例えば、ユーザは上記のようにＧＵＩＴＡＲＰＯＲＴウェブサイトにアクセスすることができる。
【０１０２】
次に図８ｂを参照する。図８ｂは、本発明の一実施形態による、セキュリティ・デバイス１１０がサーバ１０４からの認証要請に応答するプロセス８２２を示す流れ図である。これらのプロセス・ステップ８２２は、一般にセキュリティ・デバイス１１０のファームウェア３８３の制御下で実施される。まず、ユーザ・キー３８９がセキュリティ保護されたメモリ３７９から入手される（ブロック８２４）。次に、ブロック８２６で、要請への応答が計算される。上記のように、応答は、通常、ユーザ・キー３８９の（これもサーバ１０４とセキュリティ・デバイス１１０に共通の）、サーバ１０４とセキュリティ・デバイス１１０の両方に共通の数学的変換である（例えば、一方向ハッシング関数）。次いでこの要請への応答がサーバ１０４に送信される（ブロック８２８）。次いでプロセス８２２は完了する（ブロック８３０）。
【０１０３】
サーバ１０４、コンピューティング・デバイス１０２、およびセキュリティ・デバイス１１０の組み合わせによって実現される他のセキュリティ機能は、セキュリティ・デバイス１１０に記憶されている現在の日付および購入期限日の更新に関する。現在の日付と購入期限日３９０はセキュリティ・デバイス１１０の不揮発性メモリ３８４に記憶されている。サーバ１０４はセキュリティ・デバイス１１０の購入期限日と現在の日付３９０の両方を更新する。しかし、コンピューティング・デバイス１０２のアプリケーション・ソフトウェア・モジュール４０２は、サーバ１０４に接続していない場合でも現在の日付３９０を更新する。アプリケーション・ソフトウェア・モジュール４０２は安全であるとは見られないので、サーバ１０４は接続された際にセキュリティ保全のため購入期限日と現在の日付３９０を更新する。
【０１０４】
図８ｃを参照する。図８ｃは、本発明の一実施形態による、サーバ１０４が現在の日付と購入期限日とともにセキュリティ・デバイス１１０を更新するプロセス８３２を示す流れ図である。これらのプロセス・ステップ８３２は、一般に、サーバ１０４で他のソフトウェア・モジュールと共にサーバ１０４のセキュリティ・ソフトウェア・モジュール４２２によって実施される。まず、ユーザ情報データベース１０９からの購入期限日がユーザに対して入手される（ブロック８３４）。次に、サーバ１０４のクロック／カレンダからの現在の日付が入手される（ブロック８３６）。次いで購入期限日と現在の日付が暗号化される（ブロック８３８）。さらに、サーバ１０４は、セキュリティ・デバイス・メモリ７２１を不揮発性メモリ３８４を含めてロック解除するためのコマンドをセキュリティ・デバイス１１０に送信する（ブロック８４０）。図８ｄは、後で検討するように、セキュリティ・デバイス・メモリ７２１をロック解除するプロセスを示している。セキュリティ・デバイス・メモリ７２１が既に正常にロック解除されているか否かに関するセキュリティ・デバイス１１０からの応答に基づいて、サーバ１０４はロック解除オペレーションが成功したか否かを判定する（ブロック８４２）。セキュリティ・デバイス・メモリ７２１が正常にロック解除されなかった場合、プロセス８３２は失敗する（ブロック８４４）。
【０１０５】
しかし、セキュリティ・デバイス・メモリ７２１が正常にロック解除された場合、サーバ１０４は暗号化された購入期限日と現在の日付をセキュリティ・デバイス１１０に送信し、そこでセキュリティ・デバイス１１０は日付を更新する（ブロック８４６）。後で検討するように、図８ｅは、セキュリティ・デバイス１１０が日付を更新するプロセスを示している。次いでサーバは、セキュリティ・デバイス・メモリ７２１をロックするためにコマンドをセキュリティ・デバイスに送信する（ブロック８４８）。図８ｆと８ｇは、後で検討するように、セキュリティ・デバイス・メモリ７２１をロックするプロセスを示している。次いでプロセス８３２は完了する（ブロック８５０）。
【０１０６】
図８ｄを参照する。図８ｄは、本発明の一実施形態による、サーバ１０４がセキュリティ・デバイス１１０のセキュリティ・デバイス・メモリ７２１をロック解除するプロセス８５２を示す流れ図である。ブロック８５４で、サーバ１０４はセキュリティ・デバイス１１０からシリアル番号３８６を入手する。次に、ブロック８５６で、サーバは、ユーザ情報データベース１０９からユーザに関するシリアル番号に関連付けられたメモリ・キー３８９を入手する。次いでサーバ１０４は、サーバ１０４のクロック／カレンダから現在の時刻と日付を入手する（ブロック８５８）。次いでサーバはセキュリティ・デバイス１１０から現在の暗号文を入手する（ブロック８６０）。現在の暗号文は、セキュリティ・デバイス１１０がサーバ１０４によって認証されるたびにセキュリティ・デバイス１１０によって生成される乱数である。
【０１０７】
次にサーバ１０４は、セキュリティ・デバイス・メモリ７２１をロック解除するためのロック解除メッセージと、セキュリティ・デバイス１１０からの適切な予想される応答値とを計算する（ブロック８６２）。次いでサーバ１０４はメモリ・ロック解除メッセージをセキュリティ・デバイス１１０に送信する（ブロック８６４）。
【０１０８】
ロック解除メッセージが有効である場合、すなわちそのセキュリティ・デバイス・メモリ３７１をロック解除するようセキュリティ・デバイス１１０に適切に命令するためにセキュリティ・デバイス１１０によって解読可能である場合（したがって、セキュリティ・デバイスとサーバのどちらも許可された参加者である）、セキュリティ・デバイス１１０はサーバ１０４に予想される応答を送り返す。サーバ１０４は、セキュリティ・デバイス１１０から返された適切な予想される応答が、それが許可されたセキュリティ・デバイス１１０であり、したがってセキュリティ・デバイス・メモリ３７１がロック解除されるということを検証するよう要求する。反対に、セキュリティ・デバイス１１０は、ロック解除メッセージに基づいてそのセキュリティ・デバイス・メモリ３７１をロック解除するようセキュリティ・デバイスに命令することがサーバ１０４に許可されていることを検証することができる。一実施形態では、メモリ・キー３８９と暗号文を使用するサーバ１０４で生成された系統的な予想された応答とセキュリティ・デバイス１１０で生成された応答は、ＥＬＶＡ社製の、同社がライセンスを有する独自開発の通信傍受防止アルゴリズムに基づくことができる。しかし、２人の関係者を正確に認証することができる適切な任意のゼロナリッジ・プルーフ・アルゴリズムを使用することができる。さらに、一実施形態では、ＥＬＶＡ通信傍受防止アルゴリズムを実施するセキュリティ論理３８０はＡＴＭＥＬ社製の暗号デバイスであってよい。
【０１０９】
この例を続けると、サーバ１０４はセキュリティ・デバイス１１０からの適切な応答を所定期間だけ待つ（ブロック８６６）。セキュリティ・デバイス１１０が所定期間で応答しなかった場合、プロセス８５２は失敗する（ブロック８６８）。サーバ１０４が時間内にセキュリティ・デバイス１１０から応答を受信した場合、ブロック８７０で、サーバ１０４はセキュリティ・デバイス１１０から予想される応答を既に受信しているか否かを判定する。受信していない場合、プロセス８５２は失敗する（ブロック８７２）。サーバ１０４がセキュリティ・デバイス１１０から予想される応答を受信した場合、サーバ１０４はセキュリティ・デバイス１１０のセキュリティ・デバイス・メモリ７２１が既にロック解除されていることを認識している。したがって、図８ｅを参照しながら後で検証するように、セキュリティ・デバイスがサーバ１０４から受信した現在および購入期限の日付を更新することができるようメモリがロック解除される。次いでプロセス８５２は完了する（ブロック８７３）。さらに、後で検証するように、アセット情報３９２、アセット・キー３９１などを記憶するなど多くの他の機能を実行するためにセキュリティ・デバイス・メモリ７２１をロック解除することができるということを理解されたい。
【０１１０】
図８ｅを参照する。図８ｅは、本発明の一実施形態による、セキュリティ・デバイス１１０がサーバ１０４から受信した現在の日付と購入期限の日付を更新するプロセス８７４を示す流れ図である。ここでもまた、セキュリティ・デバイスは、その機能を実行するためにファームウェア３８３制御下で動作する。ブロック８７６で、セキュリティ・デバイス１１０は、サーバ１０４から受信した現在の日付と購入期限日を解読する。次に、ブロック８７８で、セキュリティ・デバイス１１０は、不揮発性メモリ３８４に現在の日付と購入期限日３９０とを記憶する。次いでプロセス８７４が完了する（ブロック８８０）。
【０１１１】
図８ｆを参照する。図８ｆは、本発明の一実施形態による、サーバ１０４がセキュリティ・デバイス１１０のセキュリティ・デバイス・メモリ７２１の不揮発性メモリ３８４をロックするプロセス８８２を示す流れ図である。これを達成するために、サーバ１０４はセキュリティ・デバイス１１０にメモリ・ロック・コマンドを送信するだけである（ブロック８８４）。次いでプロセス８８２は完了する（ブロック８８６）。
【０１１２】
サーバ１０４が不揮発性メモリ３８４をロックするためにメモリ・ロック・コマンドを送信した後、セキュリティ・デバイス１１０はセキュリティ保護されたメモリ３７９をロックすることができる。次に図８ｇを参照する。図８ｇは、本発明の一実施形態による、セキュリティ・デバイス１１０がセキュリティ保護されたメモリ３７９をロックするプロセス８８８を示す流れ図である。ブロック８９０で、セキュリティ・デバイス１１０はセキュリティ保護されたメモリ３７９がロック解除されているか否かを判定する。ロック解除されていない場合、すなわちセキュリティ保護されたメモリ３７９が既にロックされていることが示されている場合、プロセス８８８は完了する（ブロック８９９）。セキュリティ保護されたメモリ３７９がロック解除されている場合、セキュリティ・デバイス１１０はロック・メモリ・コマンドが既に受信されているか否かをチェックする（ブロック８９２）。受信されている場合、セキュリティ・デバイス１１０はセキュリティ保護されたメモリ３７９とセキュリティ論理３８０をロックし（ブロック８９４）、不揮発性メモリ３８４へのアクセスをディセーブルする（ブロック８９８）。次いでプログラム８８８は完了する（ブロック８９９）。
【０１１３】
しかし、ブロック８９２でロック・メモリ・コマンドがまだ受信されていない場合、セキュリティ・デバイス１１０はメモリ・ロック解除時間が既に経過しているか否かをチェックする。経過していない場合、プロセス８８８は完了し、セキュリティ・デバイス１１０は後でセキュリティ・デバイス・メモリ７２１をロックすることができる（ブロック８９９）。一方、メモリ・ロック解除時間が既に経過している場合、セキュリティ・デバイス１１０はセキュリティ保護されたメモリ３７９とセキュリティ論理３８０をロックし（ブロック８９４）、不揮発性メモリ３８４へのアクセスをディセーブルする（ブロック８９８）。したがって、次いでプロセス８８８は完了する（ブロック８９９）。したがって、セキュリティ保護されたメモリ３７９が不揮発性メモリ３８４と同様に一度ロックされると、セキュリティ・デバイス・メモリ全体７２１がロックされる。したがって、アセット情報３９２、アセット・キー３９１などを記憶するために現在の日付と購入期限日を更新するようにセキュリティ・デバイス・メモリ７２１が既にロック解除された後で、これを再びロックすることができる。
【０１１４】
上記のように、セキュリティ・デバイス１１０で現在の日付と時刻を更新するためにコンピューティング・デバイス１０２のアプリケーション・ソフトウェア・モジュール４０２とセキュリティ・ソフトウェア・モジュール４０８を使用することができる。しかし、これは安全ではなく、上記のように、これらの日付と時刻はサーバ１０４から受信した日付と時刻に対して常に詳細に調べられる。
【０１１５】
次に図８ｈを参照する。図は、本発明の一実施形態による、コンピューティング・デバイス１０２のアプリケーション・ソフトウェア・モジュール４０２が他のソフトウェア・モジュールと共にセキュリティ・デバイス１１０で現在の日付を更新するプロセス８０１を示す流れ図である。ブロック８０５で、コンピューティング・デバイス１０２はセキュリティ・デバイス１１０が日付と時刻を要求しているか否かを判定する。要求していない場合、プロセス８０１は完了する（ブロック８０７）。しかし、セキュリティ・デバイス１１０が日付と時刻を要求している場合、コンピューティング・デバイス１０２はコンピューティング・デバイス１０２のクロック／カレンダから日付と時刻を入手する（ブロック８０９）。次いでコンピューティング・デバイス１０２はセキュリティ・デバイス１１０に日付と時刻を送信する（ブロック８１１）。次いでプロセス８０１は完了する（ブロック８１３）。
【０１１６】
次に図８ｉを参照する。図８ｉは、本発明の一実施形態による、セキュリティ・デバイス１１０がコンピューティング・デバイス１０２から受信した現在の日付と時刻を更新するプロセス８１５を示す流れ図である。ブロック８２３で、セキュリティ・デバイス１１０は受信した現在の日付が購入期限日を経過しているか否かを判定する。経過している場合、セキュリティ・デバイス１１０は購入期限切れを（例えば、不揮発性メモリ３８４に）記録する（ブロック８２５）。次いでプロセス８１５は完了する（ブロック８２７）。次いでセキュリティ・デバイス１１０は、ユーザの購入期限が切れたことをユーザに表示するようコンピューティング・デバイス１０２に指示し、サーバ１０４は次の接続で購入を更新するようユーザに指示する。
【０１１７】
一方、現在の日付が購入期限日を経過していない場合、セキュリティ・デバイス１１０は、コンピューティング・デバイス１０２のアプリケーション・ソフトウェア・モジュール４０２から受信した日付が最後の更新からサーバ１０４から受信した信頼ある日付と時刻に比較して有効か否かを判定する（ブロック８２９）。有効でない場合、セキュリティ・デバイス１１０はセキュリティ違反があったとものと見なし、購入期限切れを記録する（ブロック８２５）。次いでプロセス８１５は完了する（ブロック８２７）。ここでもまた、セキュリティ・デバイス１１０は、ユーザの購入期限が切れていることをユーザに表示するようコンピューティング・デバイス１０２に指示することができ、サーバ１０４は次の接続で購入を更新するようユーザに指示する。しかし、コンピューティング・デバイス１０２のアプリケーション・ソフトウェア・モジュール４０２からの日付がセキュリティ・デバイス１１０によって有効であると判定された場合、セキュリティ・デバイスは不揮発性メモリ３８４に日付と時刻３９０を記憶する（ブロック８３１）。次いでプロセス８１５は完了する（ブロック８３３）。
【０１１８】
サーバ１０４と共にセキュリティ・デバイス１１０によって実行される別のセキュリティ・デバイス７０６は、適切に許可されたセキュリティ・デバイス１１０に結合されているコンピューティング・デバイス１０２だけがアセットを受信し、使用するためにデジタル・アセット（例えば、オーディオ・ファイル）が適切に暗号化され、解読されることを保証する。上記のように、アセット・データベース１０７は、アセット（例えば、楽曲に関連付けられたマルチメディア・プレゼンテーション、オーディオ・ファイル（例えば、フルソングや様々な楽器のトラックを除去した歌を含む上記のＪａｍｔｒａｃｋｓのような））ならびに他のデジタル・データ・アセットを含んでいる。さらにアセット・データベース１０７は、アセットごとに（例えば、オーディオ・ファイルごとに）一意のアセット暗号キーを含む。さらに、アセット・データベース１０７は、購入または借りて、コンピュータ・ネットワーク１０５を介して許可されたセキュリティ・デバイス１１０に結合されているコンピューティング・デバイス１０２にダウンロードすることのできるいかなる他のタイプのデジタル・データ・アセット（例えば、マルチメディア・データ、ビデオ・データ、ボイス・データ、ソフトウェア、データの他の一般的な形式など）でも含むことができることを理解されたい。したがって、以下で使用されるように「アセット」という用語は、具体的にはオーディオ・ファイル（例えば、ＧＵＩＴＡＲＰＯＲＴウェブサイトに関して上記で述べたＪａｍｔｒａｃｋｓなど）を含むが、いかなる他の種類のデジタル・アセットをもさらに含む。
【０１１９】
本発明の実施形態はセキュリティ保護されたアセット配信システムをさらに提供する。認可された素材の無許可の複製から保護するために、アセットはセキュリティ・システム７００により暗号化される（再び図７ａも参照して）。各アセットはサーバ１０４のアセット・データベース１０７に記憶され、特別にそのアセットに対して異なる一意のアセット・キーで暗号化される。各アセットは、他のソフトウェア・モジュールと共にサーバ１０４のセキュリティ・ソフトウェア・モジュール４２２を使用して一意に暗号化される。それぞれの暗号化されたアセットが要求側のコンピューティング・デバイス１０２にストリーミングされる際、暗号化されたアセットがコンピューティング・デバイス１０２のアセット・ストレージ７１２に記憶される。さらに、そのアセット用のアセット・キーは、要求側のコンピューティング・デバイス１０２の関連するセキュリティ・デバイス１００のユーザ・キーを使用して暗号化され、暗号化されたアセット・キーは要求側コンピューティング・デバイス１０２にもストリーミングされ、そこでコンピューティング・デバイス１０２のアセット・ストレージ７１２に記憶される。上記のように、各ユーザ・キー３８９は各ユーザのセキュリティ・デバイス１１０に対して一意であり、各ユーザ・キー３８９はセキュリティ・デバイス１１０とサーバ１０４のユーザ情報データベース１０９の両方に記憶される。
【０１２０】
コンピューティング・デバイス１０２でアセットにアクセスする時、例えば、ダウンロードしたオーディオ・ファイル・アセット（例えば、ギターの学習を容易にするためにＪａｍｔｒａｃｋに対するマルチメディア・プレゼンテーションの一部として）をユーザが再生することを希望した時には、セキュリティ・ソフトウェア・モジュール４０８はアプリケーション・ソフトウェア・モジュール４０２とコンピューティング・デバイス１０２の他のソフトウェア・モジュールと共に、暗号化されたアセット・キーを解読するためにセキュリティ・デバイス１１０に送信する。次いで解読されたアセット・キーがセキュリティ・デバイス１１０からコンピューティング・デバイス１１０に返送され、そこでコンピューティング・デバイス１０２によって使用され、そのアセット（例えば、オーディオ・ファイル）を解読してメモリに入れるためにアプリケーション・ソフトウェア・モジュール４０２や他のソフトウェア・モジュールと共にセキュリティ・ソフトウェア・モジュール４０８で再び動作する。次いで解読されたアセットが使用される。例えば、解読されたオーディオ・ファイルは再生するために圧縮解除することができる。
【０１２１】
次に図９を参照する。図９は、本発明の一実施形態による、上記のようなセキュリティ保護されたアセット配信システム９００の一例を示している。ブロック９０２で、アセット（Ａ）９０４はアセット・キー（ＡＫ）９０６で暗号化される。暗号化されたアセット９０５（例えば、（ＥAK（Ａ）））が次いでコンピューティング・デバイス１０２に送信され、そこでメモリ（例えば、アセット・ストレージ７１２）に記憶される（ブロック９１０）。また、ブロック９２０でアセット・キー（ＡＫ）９０６はユーザのユーザ・キー（ＵＫ）３８９で暗号化される。暗号化されたアセット・キー９０９（例えば、（ＥUK（ＡＫ）））が次いでコンピューティング・デバイス１０２に送信され、そこでメモリに記憶される（ブロック９２４）。ブロック９３０で、セキュリティ・デバイス１１０は、アセット・キー９０６（ＡＫ）を得るために、暗号化されたアセット・キー９０９をユーザの一意のユーザ・キー（ＵＫ）３８９（例えば、ＤUK［ＥUK（ＡＫ）］）で解読し、そのアセット・キー９０６（ＡＫ）は次いでコンピューティング・デバイス１０２に転送される。次いでブロック９３２で、コンピューティング・デバイス１０２は、アセット（Ａ）を得るために、暗号化されたアセット９０５をアセット・キー（ＡＫ）９０６（例えば、ＤAK［ＥAK（Ａ）］）で解読することができる。次いでこのアセットはコンピューティング・デバイス１０２のアプリケーション・ソフトウェア・モジュール４０２によって使用される。例えばアセットがオーディオ・ファイルである場合、そのオーディオ・ファイルは、ギターの学習を容易にするためにＪａｍｔｒａｃｋのマルチメディア・プレゼンテーションの一部として再生するために圧縮解除することができる。暗号化と解読アルゴリズムは当技術分野では周知であり、様々なタイプの暗号化と解読アルゴリズムがサーバ１０４、コンピューティング・デバイス１０２、およびセキュリティ・デバイス１１０によって使用することができることを理解されたい。
【０１２２】
サーバ１０４のセキュリティ・ソフトウェア、コンピューティング・デバイス１０２、およびセキュリティ・デバイス１１０のファームウェアは、アセット、キー、日付、およびこれらのデバイス間で送信された他のデータを暗号化し、解読するために標準の暗号化と解読ルーチンを含む。データによって擬似乱数をＸＯＲするために擬似乱数ジェネレータを使用するいかなる適切なブロック・モード暗号でも使用することができる。一部の例としては、データ暗号化標準規格（ＤＥＳ）、国際日付暗号化アルゴリズム（ＩＤＥＡ）などがある。
【０１２３】
次に、本発明の一実施形態による、セキュリティ保護されたアセット配信システム９００のさらに詳細な実施形態を検討する。上記のように、サーバ１０４はユーザに送信された各アセットを一意のアセット・キーで暗号化する。さらに、サーバ１０４は、そのアセットがユーザに貸されるのか所有されるのかに関する指示も送信する。貸されたアセットは、ユーザの購入期限が切れた時に期限切れとなり、購入後に使用することはできない。ユーザが所有しているアセットはユーザの購入期限が切れた後でも期限切れにはならない。サーバ１０４はさらに、アセットを解読するために要求される一意のアセット・キーを暗号化された形式でユーザに送信する。この場合、アセット・キーはユーザのためにセキュリティ・デバイス１１０のユーザ・キー３８９で暗号化されており、したがって、セキュリティ・デバイス１１０は暗号化されたアセット・キーを解読することができ、次いでコンピューティング・デバイス１０２はアセットへのユーザ・アクセスを提供するために解読されたアセット・キーでそのアセットを解読することができる。したがって、アセットは、特定のセキュリティ・デバイスを有する特定のユーザに安全に配信することができる。
【０１２４】
コンピューティング・デバイス１０２は、アプリケーション・ソフトウェア・モジュール４０２、セキュリティ・ソフトウェア・モジュール４０８、その他のソフトウェア・モジュールと共に動作して、上記のようにアセットを解読し、アクセスすることに関する多くの機能を実行する。コンピューティング・デバイス１０２は、暗号化されたアセットと暗号化されたアセット・キーをローカル・メモリ（例えば、アセット・ストレージ７１２）で受信し、記憶する。コンピューティング・デバイス１０２は暗号化されたアセット・キー（また、アセットが借りられているか所有されているかの指示）をセキュリティ・デバイス１１０に送信する。ファームウェア３８３の制御下にあるセキュリティ・デバイス１１０は、アセット・キーを解読し、購入が期限切れになっているためにアセットが期限切れになっているか否かを判定する。アセットが期限切れになっていない場合、セキュリティ・デバイス１１０は解読されたアセット・キーをコンピューティング・デバイス１０２に送信し、したがってアセットはコンピューティング・デバイスによって解読し、次いで使用することができる。上記のように、コンピューティング・デバイス１０２は、アセットを得るためにアセットをアセット・キーで解読する。
【０１２５】
一方、購入期限が切れている場合、セキュリティ・デバイス１１０はコンピューティング・デバイス１０２に通知し、コンピューティング・デバイス１０２は購入期限が切れていることをユーザに通知する。この機能を実現するための具体的なプロセス・ステップを次に検討する。
【０１２６】
図１０ａを参照する。図１０ａは、本発明の一実施形態による、サーバ１０４がアセットを暗号化するプロセス１０００を示す流れ図である。サーバ１０４は、後で検討するように、これらプロセスの機能を実現するために、アプリケーション・ソフトウェア・モジュール４１６、セキュリティ・ソフトウェア・モジュール４２２、その他のソフトウェア・モジュールの制御下で動作する。ブロック１００２で、サーバ１０４はサーバ１０４のクロック／カレンダから時刻と日付を入手する。次にサーバ１０４は暗号キーを生成する（ブロック１００４）。次いでサーバ１０４は一意のアセット・キーでアセットを暗号化する（ブロック１００６）。次いでサーバ１０４は暗号化されたアセットとアセット・キーをアセット・データベース１０７に記憶する（ブロック１００８）。次いでプロセス１０００は完了する（ブロック１０１０）。
【０１２７】
次に図１０ｂを参照する。図１０ｂは、本発明の一実施形態による、サーバ１０４がアセットを配信するプロセス１０１２を示す流れ図である。ブロック１０１４で、サーバ１０４は、アセット・データベース１０７からアセット、アセット・キー、およびアセットが所有されているか借りられているかの状態指示を入手する。状態指示は、レンタル・フラグとして実施することができる。例えばセットされたレンタル・フラグはユーザが借りているアセットに対応し、セットされていないレンタル・フラグはユーザが所有または購入したアセットに対応する。さらに、サーバ１０４はユーザ情報データベース１０９からユーザに対するユーザ・キー３８９を入手する（ユーザのセキュリティ・デバイス１１０に対応する）（ブロック１０１６）。次にサーバ１０４は、ユーザのユーザ・キー３８９を使用してアセット・キーおよびレンタル・フラグを暗号化する（ブロック１０１８）。次いでサーバ１０４は、暗号化されたアセット・キーとレンタル・フラグをコンピューティング・デバイス１０２に送信する（ブロック１０２０）。さらに、サーバ１０４は暗号化されたアセットをコンピューティング・デバイス１０２に送信する（ブロック１０２２）。次いでこのプロセス１０１２は完了する（ブロック１０２４）。
【０１２８】
次に図１０ｃを参照する。図１０ｃは、本発明の一実施形態による、コンピューティング・デバイス１０２がセキュリティ・デバイス１１０からアセット・キーを抽出する機能を実行するプロセス１０２６を示す流れ図である。コンピューティング・デバイス１０２は、後で検討するように、これらプロセスの機能を実現するために、アプリケーション・ソフトウェア・モジュール４０２、セキュリティ・ソフトウェア・モジュール４０８、その他のソフトウェア・モジュールの制御下で動作する。ブロック１０２８で、コンピューティング・デバイス１０２は、サーバ１０４から受信した暗号化されたアセット・キーとレンタル・フラグをセキュリティ・デバイス１１０に送信する。次に、コンピューティング・デバイス１０２はセキュリティ保護されたデバイス１１０から応答を入手する（ブロック１０３０）。応答はアセットが期限切れになっているか否かに関する通知を含んでおり、アセットが期限切れになっていない場合は解読されたアセット・キーも含む。セキュリティ・デバイス１１０での応答の生成については、図１０ｅを参照して後で検討する。
【０１２９】
ブロック１０３２で、コンピューティング・デバイス１０２は、セキュリティ・デバイス１１０からの応答に基づいて、アセットへのアクセスが期限切れになっているか否かを判定する（ブロック１０３２）。例えば、アセットが借りられており、購入が期限切れになっている場合（すなわち、現在の日付がそのアセットの購入期限日を経過している場合）、アセットへのアクセスは既に期限切れになっている。したがって、アセットへのアクセスが期限切れになっている場合、ブロック１０３４で、コンピューティング・デバイス１０２はそのアセットへのアクセスが既に期限切れになっている旨をユーザに通知する。アセットへのアクセスがまだ期限切れになっていない場合（すなわち、アセットが所有されているか、または購入期限日が過ぎていない場合）、コンピューティング・デバイスはセキュリティ・デバイス応答からアセット・キーを抽出する（ブロック１０３６）。次いでプロセス１０２６は完了する（ブロック１０３８）。
【０１３０】
次に図１０ｄを参照する。図１０ｄは、本発明の一実施形態による、コンピューティング・デバイス１０２がアセットを解読する機能を実行するプロセス１０４０を示す流れ図である。ブロック１０４２で、コンピューティング・デバイス１０２は、セキュリティ・デバイス１１０から受信したアセット・キーで解読アルゴリズムを初期化する。次に、コンピューティング・デバイス１０２は暗号化されたアセットをメモリにロードする（ブロック１０４４）。次いでコンピューティング・デバイス１０２は、暗号化されたアセット（すなわち、アセット・キーで暗号化されている暗号化されたアセット）を解読するために、セキュリティ・デバイス１１０から受信したアセット・キーを使用して暗号化されたアセットのメモリ・コピーを解読する（ブロック１０４６）。したがって、コンピューティング・デバイス１０２によって使用するためにアセットがコンピューティング・デバイス１０２に得られる。次いでアセットはコンピューティング・デバイス１０２のアプリケーションによって使用することができる。例えば、アセットがオーディオ・ファイルである場合、そのオーディオ・ファイルは、上記のように、ギターの学習を容易にするようにＪａｍｔｒａｃｋのマルチメディア・プレゼンテーションの一部として再生するために圧縮解除することができる。
【０１３１】
次に図１０ｅを参照する。図１０ｅは、本発明の一実施形態による、セキュリティ・デバイス１１０がアセット・キーを抽出するプロセス１０５０を示す流れ図である。上記のように、セキュリティ・デバイス１１０はファームウェア３８３の制御下で動作する。ブロック１０５２で、セキュリティ・デバイス１１０はコンピューティング・デバイス１０２から暗号化されたアセット・キーとレンタル・フラグを受信する。暗号化されたアセット・キーとレンタル・フラグはユーザ・キーで暗号化されている。次いでセキュリティ・デバイス１１０は不揮発性メモリ３８４からユーザ・キー３８９を入手する（ブロック１０５４）。次に、セキュリティ・デバイス１１０は、ユーザ・キー３８９でアセット・キーとレンタル・フラグを解読する（ブロック１０５６）。
【０１３２】
次いでセキュリティ・デバイスはアセットが借りられているか否かを判定する（ブロック１０５８）。借りられていない場合（すなわち、所有されている場合）、セキュリティ・デバイス１１０は解読されたアセット・キーをコンピューティング・デバイス１０２に返し（ブロック１０６０）、プロセス１０５０は完了する（ブロック１０６８）。しかし、アセットが借りられている場合、セキュリティ・デバイス１１０は購入が既に期限切れになっているか否か（すなわち、現在の日付がアセットに対する購入期限日を経過しているか否か）を判定する（ブロック１０６２）。期限切れになっていない場合、セキュリティ・デバイス１１０は解読されたアセット・キーをコンピューティング・デバイス１０２に返し（ブロック１０６０）、プロセス１０５０は完了する（ブロック１０６８）。しかし、購入が期限切れになっている場合、セキュリティ・デバイス１１０は購入が期限切れになっているという指示と共に応答をコンピューティング・デバイス１０２に返す（ブロック１０６４）。次いでプロセス１０５０は完了する（ブロック１０６８）。
【０１３３】
サーバ１０４のセキュリティ・ソフトウェア、コンピューティング・デバイス１０２、およびセキュリティ・デバイス１１０のファームウェアは、上記のように、アセット、キー、日付、およびこれらのデバイス間で送信された他のデータを暗号化し解読するために標準の暗号化と解読ルーチンを使用するということを理解されたい。データによって擬似乱数をＸＯＲするために擬似乱数ジェネレータを使用する任意の適切なブロック・モード暗号でも使用することができる。一部の例としては、データ暗号化標準規格（ＤＥＳ）、国際日付暗号化アルゴリズム（ＩＤＥＡ）などがある。
【０１３４】
したがって、上記のように、セキュリティ保護されたアセット配信システムは、特定のユーザ／購入者に関連付けられた適切に許可されたセキュリティ・デバイスに結合されたコンピューティング・デバイスだけがアセットを受信し、使用することができるようにデジタル・アセットが暗号化され、解読されることを保証する。本発明の実施形態は、セキュリティ保護されたアセット配信システムであって、デジタル・アセットはセキュリティ保護されたサーバ１０４によって適切に暗号化されており、適切に許可されたセキュリティ・デバイス１１０に結合されているコンピューティング・デバイス１０２によってのみ解読することができるシステムを提供する。この結果、この適切に許可されたコンピューティング・デバイス１０２だけがアセットを受信し、使用することができ、したがって、認可された素材の無許可の複製から保護される。上記のように、一実施形態では、アセット・データベース１０７は、アセット（例えば、楽曲に関連付けられたマルチメディア・プレゼンテーション、フルソングや様々な楽器のトラックを除去した歌を含むＪａｍｔｒａｃｋｓのようなオーディオ・ファイル）、ならびに他のデジタル・アセットを含んでいる。例えば、一実施形態では、アセットがオーディオ・ファイルである場合、上記のようにオーディオ・ファイルはギターの学習を容易にするために、Ｊａｍｔｒａｃｋのマルチメディア・プレゼンテーションの一部として再生するために圧縮解除することができる。さらに、アセット・データベース１０７は、購入または借りられて、コンピュータ・ネットワーク１０５を介してコンピューティング・デバイス１０２にダウンロードすることのできるいかなる他のデジタル・アセット（例えば、マルチメディア、ビデオ、ムービー、ボイス、サウンド録音、ソフトウェア、データの他の一般的な形式など）を含むことができるということを理解されたい。
【０１３５】
上記の機能を実行するために上記本発明の様々な形態を１つまたは複数の命令（例えば、ソフトウェア・モジュール、プログラム、コード・セグメントなど）として実装することができる。プロセッサによって読み取られ、実行された場合にこの命令は、本発明の実施形態を実施し、かつ／または使用するために必要なオペレーションをプロセッサに実行させる。一般に、この命令は、機械可読媒体、デバイス、またはメモリ、データ・ストレージ・デバイスおよび／または遠隔デバイスのような担体の形式で有形に実装され、かつ／またはこれらから読み取り可能である。命令は、動作中に使用するために、メモリ、データ・ストレージ・デバイス、および／または遠隔デバイスからコンピューティング・デバイス１０２、サーバ１０４、およびインターフェース・デバイス１０６のメモリにロードすることができる。命令をプログラムした汎用プロセッサまたは専用プロセッサに本発明のステップを実行させるために命令を使用することができる。あるいは、本発明の特徴またはステップは、ステップを実行するためのハードワイヤード論理を含んでいる特定ハードウェア構成要素により、またはプログラムされたコンピュータ構成要素と特定用途向けハードウェア構成要素のいかなる組み合わせにより実行することができる。以上、本発明の実施形態をワールドワイドウェブの参照により説明したが、本明細書に記載した方法、システム、および装置は、他のネットワーク基盤または他のデータ通信システムにも同様に適用可能である。
【０１３６】
以上、本発明およびその様々な機能上の構成要素を具体的な実施形態で説明したが、本発明の実施形態はハードウェア、ソフトウェア、ファームウェア、ミドルウェア、またはこれらの組み合わせで実現することができ、システム、サブシステム、コンポーネント、またはこれらのサブコンポーネントで使用することができるということを理解されたい。ソフトウェアで（例えば、ソフトウェア・モジュールとして）実施される場合、本発明の要素は必須のタスクを実行するための命令／コード・セグメントである。プログラムまたはコード・セグメントは、プロセッサ可読媒体またはコンピュータ・プログラム製品のような機械可読媒体に記憶しても、搬送波形式で実施されるコンピュータ・データ信号または搬送波によって変調された信号により伝送媒体または通信リンクを介して送信してもよい。機械可読媒体またはプロセッサ可読媒体は、機械（例えば、プロセッサ、コンピュータなど）により可読であり実効可能な形式で情報を記憶または転送することができる任意の媒体を含むことができる。機械／プロセッサ可読媒体の例としては、電気回路、半導体メモリ・デバイス、ＲＯＭ、フラッシュ・メモリ、消去可能なプログラム可能ＲＯＭ（ＥＰＲＯＭ）、フロッピー・ディスケット、コンパクト・ディスクＣＤ−ＲＯＭ、光ディスク、ハードディスク、光ファイバ媒体、無線周波数（ＲＦ）リンクなどが含まれる。コンピュータ・データ信号は、電子ネットワーク・チャネル、光ファイバ、空中、電磁気、ＲＦリンクなどのような伝送媒体を介して伝播することのできるいかなる信号でも含むことができる。コード・セグメントは、インターネット、イントラネットなどのようなコンピュータ・ネットワークを介してダウンロードすることができる。
【０１３７】
以上、本発明を例示の実施形態を参照しながら説明したが、この説明は限定的な意味で解釈されることを意図するものではない。本発明に関係する当業者には明白な、例示の実施形態の様々な修正形態ならびに本発明の他の実施形態は、本発明の趣旨および範囲に含まれるものと見なされる。
【図面の簡単な説明】
【０１３８】
【図１】本発明の一実施形態による、オーディオ・ファイルのマルチメディア・プレゼンテーションをコンピューティング・デバイスに配信するためのシステム例を示すブロック図である。
【図２ａ】本発明の複数の実施形態で使用可能な従来型のデータ処理またはコンピュータ・システムを示す図である。
【図２ｂ】図２ａに示す従来型のデータ処理またはコンピュータ・システムの典型的なアーキテクチャを示す図である。
【図３ａ】本発明の一実施形態によるインターフェース・デバイスの平面図である。
【図３ｂ】本発明の一実施形態によるインターフェース・デバイスの正面図である。
【図３ｃ】本発明の一実施形態によるインターフェース・デバイスの背面図である。
【図３ｄ−１】本発明の一実施形態によるインターフェース・デバイスの内部構成要素の略図である。
【図３ｄ−２】本発明の一実施形態によるインターフェース・デバイスの内部構成要素の略図である。
【図４】本発明の一実施形態による、使用される典型的なソフトウェア・モジュールを示す、図１のコンピューティング・デバイスにオーディオ・ファイルのマルチメディア・プレゼンテーションを配信するためのシステム例のさらに詳細な図を示すブロック図である。
【図５ａ】本発明の一実施形態による、ユーザにマルチメディア・プレゼンテーションを配信するための方法を説明する流れ図である。
【図５ｂ】本発明の一実施形態による、ユーザにトーンを提供する方法を示す流れ図である。
【図５ｃ】本発明の一実施形態による、ユーザに楽曲を提供する方法を示す流れ図である。
【図５ｄ】本発明の一実施形態による、セッション・ファイルのコンテンツを示す図である。
【図６ａ】本発明の一実施形態による、ギター用コントロール・パネル・グラフィカル・インターフェース（例えば、楽器がギターの実施形態の場合）を具体的に示すスクリーンショットである。
【図６ｂ−１】本発明の一実施形態による、ユーザがサーバに正常にログオンした際にユーザに示される表示のスクリーンショットである。
【図６ｂ−２】本発明の一実施形態による、ユーザがサーバに正常にログオンした際にユーザに示される表示のスクリーンショットである。
【図６ｃ−１】本発明の一実施形態による、ユーザが楽曲（例えば、Ｊａｍｔｒａｃｋ）を選択した際にユーザに示される表示を示すスクリーンショットであり、マルチメディア・プレゼンテーションに合わせてユーザがユーザ自身のギターを演奏できるように、選択された楽曲に対するマルチメディア・プレゼンテーション（例えば、楽譜付き）を具体的に示すスクリーンショットである。
【図６ｃ−２】本発明の一実施形態による、ユーザが楽曲（例えば、Ｊａｍｔｒａｃｋ）を選択した際にユーザに示される表示を示すスクリーンショットであり、マルチメディア・プレゼンテーションに合わせてユーザがユーザ自身のギターを演奏できるように、選択された楽曲に対するマルチメディア・プレゼンテーション（例えば、楽譜付き）を具体的に示すスクリーンショットである。
【図７ａ】本発明の一実施形態によるセキュリティ・システムを示す図である。
【図７ｂ】本発明の一実施形態による、セキュリティ・システムで使用されるセキュリティ・デバイスの付属セキュリティ構成要素を示す図である。
【図８ａ】本発明の一実施形態による、サーバがセキュリティ・デバイスを認証するためのプロセスを示す流れ図である。
【図８ｂ】本発明の一実施形態による、セキュリティ・デバイスがサーバからの認証要請に応答するプロセスを示す流れ図である。
【図８ｃ】本発明の一実施形態による、サーバが現在の日付と購入満了日でセキュリティ・デバイスを更新するプロセスを示す流れ図である。
【図８ｄ】本発明の一実施形態による、サーバがセキュリティ・デバイスのセキュリティ・デバイス・メモリをロック解除するプロセスを示す流れ図である。
【図８ｅ】本発明の一実施形態による、セキュリティ・デバイスがサーバから受信した現在および購入満了の日付を更新するプロセスを示す流れ図である。
【図８ｆ】本発明の一実施形態による、サーバがセキュリティ・デバイスのセキュリティ・デバイス・メモリの不揮発性メモリをロックするプロセスを示す流れ図である。
【図８ｇ】本発明の一実施形態による、セキュリティ・デバイスがセキュリティ・デバイス・メモリをロックするプロセスを示す流れ図である。
【図８ｈ】本発明の一実施形態による、コンピューティング・デバイスがセキュリティ・デバイスで現在の日付を更新するプロセスを示す流れ図である。
【図８ｉ】本発明の一実施形態による、セキュリティ・デバイスがコンピューティング・デバイスから受信した現在の日付および時刻を更新するプロセスを示す流れ図である。
【図９】本発明の一実施形態によるセキュリティ保護されたアセット配信システムの一例を示す図である。
【図１０ａ】本発明の一実施形態による、サーバがアセットを暗号化するプロセスを示す流れ図である。
【図１０ｂ】本発明の一実施形態による、サーバがアセットを配信するプロセスを示す流れ図である。
【図１０ｃ】本発明の一実施形態による、コンピューティング・デバイスがセキュリティ・デバイスからアセット・キーを抽出する機能を実行するプロセスを示す流れ図である。
【図１０ｄ】本発明の一実施形態による、コンピューティング・デバイスがアセットを解読する機能を実行するプロセスを示す流れ図である。
【図１０ｅ】本発明の一実施形態による、セキュリティ・デバイスがアセット・キーを抽出するプロセスを示す流れ図である。
【図１】
2005510763.tif 000003
【図２ａ】
2005510763.tif 000004
【図２ｂ】
2005510763.tif 000005
【図３ａ】
2005510763.tif 000006
【図３ｂ】
2005510763.tif 000007
【図３ｃ】
2005510763.tif 000008
【図３ｄ−１】
2005510763.tif 000009
【図３ｄ−２】
2005510763.tif 000010
【図４】
2005510763.tif 000011
【図５ａ】
2005510763.tif 000012
【図５ｂ】
2005510763.tif 000013
【図５ｃ】
2005510763.tif 000014
【図５ｄ】
2005510763.tif 000015
【図６ａ】
2005510763.tif 000016
【図６ｂ−１】
2005510763.tif 000017
【図６ｂ−２】
2005510763.tif 000018
【図６ｃ−１】
2005510763.tif 000019
【図６ｃ−２】
2005510763.tif 000020
【図７ａ】
2005510763.tif 000021
【図７ｂ】
2005510763.tif 000022
【図８ａ】
2005510763.tif 000023
【図８ｂ】
2005510763.tif 000024
【図８ｃ】
2005510763.tif 000025
【図８ｄ】
2005510763.tif 000026
【図８ｅ】
2005510763.tif 000027
【図８ｆ】
2005510763.tif 000028
【図８ｇ】
2005510763.tif 000029
【図８ｈ】
2005510763.tif 000030
【図８ｉ】
2005510763.tif 000031
【図９】
2005510763.tif 000032
【図１０ａ】
2005510763.tif 000033
【図１０ｂ】
2005510763.tif 000034
【図１０ｃ】
2005510763.tif 000035
【図１０ｄ】
2005510763.tif 000036
【図１０ｅ】
2005510763.tif 000037
【国際調査報告】
2005510763.tif 000038