(57)【要約】電子デバイス（１００）に記憶された電子データへの無許可アクセスを防止するためのシステムおよび方法を提供する。ポータブル・ライセンシング媒体は、ライセンス・データを記憶するために電子デバイスと通信するように構成される。ライセンス・データは、電子データへのアクセスを許可するかどうかを決定するために用いられる。登録機関（１０）は、電子デバイスと通信する。登録機関（１１０）は、ライセンシング媒体に記憶されたライセンス・データを確認するための確認データのデータベースを有しかつ更新されたライセンス・データをライセンシング媒体に供給する。
2004507847.tif 000002
【特許請求の範囲】
【請求項１】
電子デバイスの電子データへの無許可アクセスを防止するシステムであって、
前記電子デバイスと通信しかつ前記電子データへのアクセスを許可するかどうかを決定するために前記電子デバイスによって用いられるように構成されたライセンス・データを記憶するように構成されたポータブル・ライセンシング媒体と、
前記ライセンシング媒体に記憶された前記ライセンス・データを確認するための確認データを有し、前記電子デバイスと通信するように構成された登録機関とを備え、
前記登録機関は、前記ライセンシング媒体に対して更新されたライセンス・データを供給することを特徴とする、システム。
【請求項２】
前記電子デバイスは、前記ライセンス・データを前記確認データと比較することによって前記ライセンシング媒体の妥当性を確認するように構成されることを特徴とする請求項１に記載のシステム。
【請求項３】
前記ライセンシング媒体は、前記ライセンス・データのハッシュを実行することによって生成されたライセンス・データ・メッセージ・ダイジェストを記憶するように構成されることを特徴とする請求項１に記載のシステム。
【請求項４】
前記確認データは、前記ライセンス・データ・メッセージ・ダイジェストのコピーを備えていることを特徴とする請求項３に記載のシステム。
【請求項５】
前記電子デバイスは、前記ライセンス・データ・メッセージ・ダイジェストを前記確認データの前記ライセンス・データ・メッセージ・ダイジェストの前記コピーと比較することによって前記ライセンシング媒体の妥当性を確認するように構成されることを特徴とする請求項４に記載のシステム。
【請求項６】
前記ライセンス・データ・メッセージ・ダイジェストは、前記登録機関に関連付けられた専用キーで暗号化されることを特徴とする請求項３に記載のシステム。
【請求項７】
前記専用キーは、前記登録機関に関連付けられた複数の専用キーの一つであることを特徴とする請求項６に記載のシステム。
【請求項８】
前記確認データは、前記暗号化されたライセンス・データ・メッセージ・ダイジェストのコピーを備えていることを特徴とする請求項６に記載のシステム。
【請求項９】
前記電子デバイスは、前記暗号化されたライセンス・データ・メッセージ・ダイジェストを前記確認データの前記暗号化されたライセンス・データ・メッセージ・ダイジェストの前記コピーと比較することによって前記ライセンシング媒体の妥当性を確認するように構成される請求項８に記載のシステム。
【請求項１０】
前記電子デバイスは、
前記登録機関に関連付けられた公開キーを用いて前記ライセンシング媒体から読み出した前記ライセンス・データ・メッセージ・ダイジェストを解読し、
前記ライセンシング媒体から読み出した前記ライセンス・データにハッシュを実行することによってメッセージ・ダイジェストを生成し、
前記解読したメッセージ・ダイジェストを前記生成したメッセージ・ダイジェストと比較することによって、前記ライセンシング媒体の妥当性を確認するように構成されることを特徴とする請求項６に記載のシステム。
【請求項１１】
前記電子デバイスは、登録情報を前記登録機関に送るように構成されることを特徴とする請求項１に記載のシステム。
【請求項１２】
前記登録情報は、前記電子データに関連付けられたランダム識別子を備えていることを特徴とする請求項１１に記載のシステム。
【請求項１３】
前記確認データは、前記電子データへのアクセスを許可する許可識別子のリストを備えていることを特徴とする請求項１２に記載のシステム。
【請求項１４】
前記登録機関は、前記登録情報と一緒に送られた前記識別子が前記許可識別子の一つに対応するときに更新されたライセンス・データを前記ライセンシング媒体に供給するように構成されることを特徴とする請求項１３に記載のシステム。
【請求項１５】
前記ライセンシング媒体は、メモリを有しているスマート・カードを備えていることを特徴とする請求項１に記載のシステム。
【請求項１６】
前記スマート・カードは、マイクロプロセッサを有することを特徴とする請求項１５に記載のシステム。
【請求項１７】
前記スマート・カードは、前記登録機関に関連付けられた公開キーを用いて前記登録機関から受け取った第１のメッセージ・ダイジェストを解読し、前記登録機関から受け取った更新されたライセンス・データにハッシュを実行することによって第２のメッセージ・ダイジェストを生成し、前記第１のメッセージ・ダイジェストを前記第２のメッセージ・ダイジェストと比較するように構成されることを特徴とする請求項１５に記載のシステム。
【請求項１８】
前記ライセンス・データは、前記スマート・カードがアクセスされる回数を前記登記機関に許可するシーケンス番号を備えていることを特徴とする請求項１５に記載のシステム。
【請求項１９】
前記ライセンシング媒体は、メモリ・スティックであることを特徴する請求項１に記載のシステム。
【請求項２０】
前記ライセンシング媒体は、ランダム・アクセス・メモリであることを特徴とする請求項１に記載のシステム。
【請求項２１】
前記ライセンシング媒体は、携帯電話にインストールされたメモリを備えていることを特徴とする請求項１に記載のシステム。
【請求項２２】
前記ライセンシング媒体は、前記携帯電話から取り外しできないことを特徴とする請求項２１に記載のシステム。
【請求項２３】
前記ライセンシング媒体は、コンピュータ・ディスクであることを特徴とする請求項１に記載のシステム。
【請求項２４】
前記コンピュータ・ディスクは、光ディスクであることを特徴とする請求項２３に記載のシステム。
【請求項２５】
前記コンピュータ・ディスクは、磁気ディスクであることを特徴とする請求項２３に記載のシステム。
【請求項２６】
前記コンピュータ・ディスクは、電子ディスクであることを特徴とする請求項２３に記載のシステム。
【請求項２７】
前記ライセンス・データは、ライセンシング媒体が有効である設定可能な期間によって決定されたライセンシング媒体満了日を備えていることを特徴とする請求項１に記載のシステム。
【請求項２８】
前記ライセンス・データは、前記電子データへのアクセスが許可される設定可能な期間によって決定されたソフトウェア・ライセンス満了日を備えていることを特徴とする請求項１に記載のシステム。
【請求項２９】
前記ライセンシング媒体満了期間は、前記ライセンス・データの最短ソフトウェア・ライセンス満了期間に設定されることを特徴とする請求項２７または２８に記載のシステム。
【請求項３０】
前記ライセンス・データは、前記電子データへのアクセスが許可される設定可能な期間によって決定されたソフトウェア・セキュリティ満了日を備えていることを特徴とする請求項１に記載のシステム。
【請求項３１】
前記ライセンシング媒体は、有線接続を通して前記電子デバイスと通信するように構成されることを特徴とする請求項１に記載のシステム。
【請求項３２】
前記ライセンシング媒体は、無線接続を通して前記電子デバイスと通信するように構成されることを特徴とする請求項１に記載のシステム。
【請求項３３】
前記ライセンシング媒体は、ネットワークを通して前記電子デバイスと通信するように構成されることを特徴とする請求項１に記載のシステム。
【請求項３４】
前記ネットワークは、インターネットであることを特徴とする請求項３３に記載のシステム。
【請求項３５】
電子デバイスの電子データへの無許可アクセスを防止するシステムであって、
電子デバイスと通信するように構成されたライセンス・データ記憶手段であって、前記ライセンス・データが電子データへのアクセスを許可するかどうかを決定するために前記電子デバイスによって用いられるように構成されたライセンス・データ記憶手段と、
前記ライセンス・データ記憶手段に記憶されたライセンス・データを確認するための確認手段を有し、前記電子デバイスと通信するように構成された登録許可手段と
を備え、
前記登録許可手段は、ライセンス・データ記憶手段に対して更新されたライセンス・データを供給するように構成されることを特徴とするシステム。
【請求項３６】
電子デバイスの電子データへの無許可アクセスを防止するシステムであって、
前記電子デバイスと通信するように構成されかつライセンス・データを記憶するように構成されたスマート・カードであって、前記ライセンス・データが前記電子データへのアクセスを許可するかどうかを決定するために前記電子デバイスによって用いられるように構成されたスマート・カードと、
前記スマート・カードに記憶された前記ライセンス・データを確認するための確認データを有し、前記電子デバイスと通信するように構成された登録サーバとを備え、
前記登録サーバは、前記スマート・カードに更新されたライセンス・データを供給するように構成されることを特徴とするシステム。
【請求項３７】
電子デバイスの電子データへの無許可アクセスを防止するための登録機関であって、
前記電子デバイスと通信する手段と、
前記電子デバイスと通信するように構成されたポータブル・ライセンシング媒体に記憶されたライセンス・データを確認するための確認データと
を備え、
前記ライセンス・データは、前記電子データへのアクセスを許可するかどうかを決定するために前記電子デバイスによって用いられ、
前記登録機関は、更新されたライセンス・データを前記ライセンシング媒体に供給するように構成されることを特徴とする登録機関。
【請求項３８】
電子デバイスの電子データへの無許可アクセスを防止するためのスマート・カードであって、
前記電子デバイスと通信する手段と、
前記通信する手段から受け取ったデータを記憶するメモリと、
前記メモリに記憶されたライセンス・データであって、前記電子データへのアクセスを許可するかどうかを決定するために前記電子デバイスによって用いられるように構成されるライセンス・データと
を備え、
前記ライセンス・データは、前記電子デバイスに通信するように構成される登録サーバに記憶された確認データによって確認され、
前記スマート・カードは、前記登録サーバからの更新されたライセンス・データを受け取る／供給するように構成されることを特徴とするスマート・カード。
【請求項３９】
電子デバイスの電子データへの無許可アクセスを防止するためのシステムであって、
前記電子デバイスと通信するように構成されかつライセンス・データを記憶するように構成されたポータブル・ライセンシング媒体であって、前記ライセンス・データが前記電子データへのアクセスを許可するかどうかを決定するために用いられるように構成されるポータブル・ライセンシング媒体と、
第２の確認データベースに記憶されたライセンス・データを確認するための第１の確認データベースを有している登録機関と、
前記ライセンシング媒体に記憶された前記ライセンス・データを確認するための前記第２の確認データベースを有し、前記電子デバイスおよび前記登録機関と通信するように構成されたライセンス・マネージャと
を備え、
前記登録機関は、前記ライセンス・マネージャの前記第２の確認データベースに対して更新された確認データを供給するように構成され、
前記ライセンス・マネージャは、前記ライセンシング媒体に前記更新されたライセンス・データを供給するように構成されることを特徴とするシステム。
【請求項４０】
前記電子デバイスは、前記ライセンス・データを前記第２の確認データベースと比較することによって前記ライセンシング媒体の妥当性を確認するように構成されることを特徴とする請求項３９に記載のシステム。
【請求項４１】
前記ライセンス・マネージャは、前記第２の確認データベースを前記第１の確認データベースと比較することによって前記第２の確認データベースの妥当性を確認するように構成されることを特徴とする請求項３９に記載のシステム。
【請求項４２】
前記ライセンシング媒体は、前記ライセンス・データのハッシュを実行することによって生成されたライセンス・データ・メッセージ・ダイジェストを記憶するように構成される請求項３９に記載のシステム。
【請求項４３】
前記第２の確認データベースは、前記ライセンス・データ・メッセージ・ダイジェストのコピーを備えていることを特徴とする請求項４２に記載のシステム。
【請求項４４】
前記電子デバイスは、前記ライセンス・データ・メッセージ・ダイジェストを前記第２の確認データベースの前記ライセンス・データ・メッセージ・ダイジェストの前記コピーと比較することによって前記ライセンシング媒体の妥当性を確認するように構成されることを特徴とする請求項４３に記載のシステム。
【請求項４５】
前記ライセンス・データ・メッセージ・ダイジェストは、前記登録機関または前記ライセンス・マネージャに関連付けられた専用キーにより暗号化されることを特徴とする請求項４２に記載のシステム。
【請求項４６】
前記専用キーは、前記登録機関または前記ライセンス・マネージャに関連付けられた複数の専用キーの一つであることを特徴とする請求項４５に記載のシステム。
【請求項４７】
前記第２の確認データベースは、前記暗号化されたライセンス・データ・メッセージ・ダイジェストのコピーを備えていることを特徴とする請求項４５に記載のシステム。
【請求項４８】
前記電子デバイスは、前記暗号化されたライセンス・データ・メッセージ・ダイジェストを前記第２の確認データベースの前記暗号化されたライセンス・データ・メッセージ・ダイジェストの前記コピーと比較することによって前記ライセンシング媒体の妥当性を確認するように構成されることを特徴とする請求項４７に記載のシステム。
【請求項４９】
前記電子デバイスは、
前記登録機関に関連付けられた公開キーを用いて前記ライセンシング媒体から読み出された前記ライセンス・データ・メッセージ・ダイジェストを解読し、
前記ライセンシング媒体から読み出された前記ライセンス・データにハッシュを実行することによってメッセージ・ダイジェストを生成し、
前記解読されたメッセージ・ダイジェストを前記生成されたメッセージ・ダイジェストと比較することによって前記ライセンシング媒体の妥当性を確認するように構成されることを特徴とする請求項４７に記載のシステム。
【請求項５０】
前記ライセンス・マネージャは、前記登録機関にサイト・ライセンス登録情報を送るように構成されることを特徴とする請求項３９に記載のシステム。
【請求項５１】
前記サイト・ライセンス登録情報は、前記電子データに関連付けられたランダム識別子を備えていることを特徴とする請求項５０に記載のシステム。
【請求項５２】
前記第１の確認データベースは、前記電子データへのアクセスを許可する許可識別子のリストを備えていることを特徴とする請求項５１に記載のシステム。
【請求項５３】
前記登録機関は、前記登録情報と一緒に送られた前記識別子が前記許可識別子の一つに対応するときに前記ライセンス・マネージャに更新された確認データを供給するように構成されることを特徴とする請求項５２に記載のシステム。
【請求項５４】
前記ライセンス・マネージャは、前記第２の確認データベースが前記第１の確認データベースに対応するということを確認するために前記登録機関と通信するように構成されることを特徴とする請求項３９に記載のシステム。
【請求項５５】
前記ライセンス・データは、前記ライセンシング媒体が有効である設定可能な期間によって決定されたライセンシング媒体満了日を備えていることを特徴とする請求項３９に記載のシステム。
【請求項５６】
前記ライセンス・データは、前記電子データへのアクセスが許可される設定可能な期間によって決定されたソフトウェア・ライセンス満了日を備えていることを特徴とする請求項３９に記載のシステム。
【請求項５７】
前記ライセンシング媒体満了期間は、前記ライセンス・データの最短ソフトウェア・ライセンス満了期間に設定されることを特徴とする請求項５５または５６に記載のシステム。
【請求項５８】
前記ライセンス・データは、前記電子データへのアクセスが許可される設定可能な期間によって決定されたソフトウェア・セキュリティ満了日を備えていることを特徴とする請求項３９に記載のシステム。
【請求項５９】
前記ライセンシング媒体は、有線接続を通して前記電子デバイスと通信するように構成されることを特徴とする請求項３９に記載のシステム。
【請求項６０】
前記ライセンシング媒体は、無線接続を通して前記電子デバイスと通信するように構成されることを特徴とする請求項３９に記載のシステム。
【請求項６１】
前記ライセンシング媒体は、ネットワークを通して前記電子デバイスと通信するように構成されることを特徴とする請求項３９に記載のシステム。
【請求項６２】
前記ネットワークは、インターネットであることを特徴とする請求項６１に記載のシステム。
【請求項６３】
電子デバイスの電子データへの無許可アクセスを防止するためのシステムであって、
前記電子デバイスと通信するように構成されたライセンス・データ記憶手段であり、前記ライセンス・データが前記電子データへのアクセスを許可するかどうかを決定するために用いられる、前記ライセンス・データ記憶手段と、
第２の確認手段によって供給されたライセンス・データを確認するための第１の確認手段を有している登録許可手段と、
前記ライセンス・データ記憶手段に記憶された前記ライセンス・データを確認するための前記第２の確認手段を有し、前記電子デバイスおよび前記登録許可手段と通信するように構成されたライセンス管理手段と
を備え、
前記登録許可手段は、前記ライセンス管理手段の前記第２の確認データベースに対して更新された確認データを供給するように構成され、
前記ライセンス管理手段は、前記ライセンス・データ記憶手段に更新されたライセンス・データを供給するように構成されることを特徴とするシステム。
【請求項６４】
電子デバイスの電子データへの無許可アクセスを防止するためのシステムであって、
電子デバイスと通信するように構成されかつライセンス・データを記憶するように構成されたスマート・カードであり、前記ライセンス・データが前記電子データへのアクセスを許可するかどうかを決定するために用いられる、スマート・カードと、
第２の確認データベースに記憶されたライセンス・データを確認するための第１の確認データベースを有している登録サーバと、
前記スマート・カードに記憶された前記ライセンス・データを確認するための前記第２の確認データベースを有し、前記電子デバイスおよび前記登録サーバと通信するように構成されたライセンス管理サーバと
を備え、
前記登録サーバは、前記ライセンス管理サーバの前記第２の確認データベースに対して更新された確認データを供給するように構成され、
前記ライセンス管理サーバは、前記スマート・カードに更新されたライセンス・データを供給するように構成されることを特徴とするシステム。
【請求項６５】
電子デバイスの電子データへの無許可アクセスを防止するための登録機関であって、
ライセンス・マネージャと通信する手段と、
前記電子デバイスと通信するように構成されたライセンス・マネージャの第２の確認データベースに記憶されたライセンス・データを確認するための第１の確認データベースと、
を備え、
前記第２の確認データベースは、前記電子デバイスと通信するように構成されるポータブル・ライセンシング媒体に記憶されたライセンス・データを確認するように構成され、
前記ライセンス・データは、前記電子データへのアクセスを許可するかどうかを決定するために用いられるように構成され、
前記登録機関は、更新された確認データを前記ライセンス・マネージャの前記第２の確認データベースに供給するように構成されることを特徴とする登録機関。
【請求項６６】
電子デバイスの電子データへの無許可アクセスを防止するためのスマート・カードであって、
前記電子デバイスと通信する手段と、
前記通信する手段から受け取ったデータを記憶するメモリと、
前記メモリに記憶されたライセンス・データであり、前記電子データへのアクセスを許可するかどうかを決定するために前記電子デバイスによって用いられるように構成されるライセンス・データとを備え、
前記ライセンス・データは、前記電子デバイスおよび登録サーバと通信するように構成されるライセンス管理サーバに記憶されたライセンス管理確認データベースによって確認され、かつ前記ライセンス管理確認データベースは、前記登録サーバに記憶された登録データベースによって確認され、
前記スマート・カードは、前記ライセンス管理サーバからの更新されたライセンス・データを受け取るように構成されることを特徴とするスマート・カード。
【請求項６７】
電子デバイスの電子データへの無許可アクセスを防止する方法であって、
前記電子デバイスと通信するように構成されたポータブル・ライセンシング媒体にライセンス・データを記憶するステップと、
前記ライセンス・データに基づき前記電子データへのアクセスを許可するかどうかを決定するステップと、
確認データを有しかつ前記電子デバイスと通信するように構成される登録機関を用いて前記ライセンシング媒体に記憶された前記ライセンス・データを確認するステップと、
前記登録機関を用いて前記ライセンシング媒体に前記更新されたライセンス・データを供給するステップとを有してなることを特徴とする方法。
【請求項６８】
前記確認するステップの間、前記電子デバイスは、前記ライセンシング媒体に記憶された前記ライセンス・データを前記確認データと比較することを特徴とする請求項６７に記載の方法。
【請求項６９】
前記ライセンシング媒体は、前記ライセンス・データのハッシュを実行することによって生成されたライセンス・データ・メッセージ・ダイジェストを記憶することを特徴とする請求項６７に記載の方法。
【請求項７０】
前記確認データは、前記ライセンス・データ・メッセージ・ダイジェストのコピーを備えていることを特徴とする請求項６９に記載の方法。
【請求項７１】
前記確認するステップにおいて、前記電子デバイスは、前記ライセンシング媒体に記憶された前記ライセンス・データ・メッセージ・ダイジェストを前記確認データの前記ライセンス・データ・メッセージ・ダイジェストの前記コピーと比較することを特徴とする請求項７０に記載の方法。
【請求項７２】
前記ライセンス・データ・メッセージ・ダイジェストは、前記登録機関に関連付けられた専用キーで暗号化されることを特徴とする請求項６９に記載の方法。
【請求項７３】
前記専用キーは、前記登録機関に関連付けられた複数の専用キーの一つであることを特徴とする請求項７２に記載の方法。
【請求項７４】
前記確認データは、前記暗号化されたライセンス・データ・メッセージ・ダイジェストのコピーを備えていることを特徴とする請求項７２に記載の方法。
【請求項７５】
前記確認するステップにおいて、前記電子デバイスは、前記ライセンシング媒体に記憶された前記暗号化されたライセンス・データ・メッセージ・ダイジェストを前記確認データの前記暗号化されたライセンス・データ・メッセージ・ダイジェストの前記コピーと比較することを特徴とする請求項７４に記載の方法。
【請求項７６】
前記電子デバイスを用いて前記ライセンシング媒体から前記暗号化されたライセンス・データを読み出すステップと、
前記登録機関に関連付けられた公開キーを用いて前記ライセンス・データ・メッセージ・ダイジェストを解読するステップと、
前記ライセンシング媒体から読み出した前記ライセンス・データにハッシュを実行することによってメッセージ・ダイジェストを生成するステップと、
前記解読したメッセージ・ダイジェストを前記生成したメッセージ・ダイジェストと比較するステップとを更に含むことを特徴とする請求項７２に記載の方法。
【請求項７７】
前記電子デバイスを用いて登録情報を前記登録機関に送るステップを更に含むことを特徴とする請求項６７に記載の方法。
【請求項７８】
前記登録情報は、前記電子データに関連付けられたランダム識別子を備えていることを特徴とする請求項７７に記載の方法。
【請求項７９】
前記確認データは、前記電子データへのアクセスを許可する許可識別子のリストを備えていることを特徴とする請求項７８に記載の方法。
【請求項８０】
前記登録機関は、前記登録情報と一緒に送られた前記識別子が前記許可識別子の一つに対応するときに更新されたライセンス・データを前記ライセンシング媒体に供給することを特徴とする請求項７９に記載の方法。
【請求項８１】
前記ライセンシング媒体は、マイクロプロセッサおよびメモリを有しているスマート・カードを備えていることを特徴とする請求項６７に記載の方法。
【請求項８２】
前記スマート・カードは、
前記登録機関に関連付けられた公開キーを用いて前記登録機関から受け取った第１のメッセージ・ダイジェストを解読するステップと、
前記登録機関から受け取った更新されたライセンス・データでハッシュを実行することによって第２のメッセージ・ダイジェストを生成するステップと、
前記第１のメッセージ・ダイジェストを前記第２のメッセージ・ダイジェストと比較するステップとを実行することを特徴とする請求項８１に記載の方法。
【請求項８３】
前記ライセンス・データは、前記ライセンシング媒体が有効である設定可能な期間によって決定されたライセンシング媒体満了日を備えていることを特徴とする請求項６７に記載の方法。
【請求項８４】
前記ライセンス・データは、前記電子データへのアクセスが許可される設定可能な期間によって決定されるソフトウェア・ライセンス満了日を備えていることを特徴とする請求項６７に記載の方法。
【請求項８５】
前記ライセンシング媒体満了期間は、前記ライセンス・データの最短ソフトウェア・ライセンス満了期間に設定されることを特徴とする請求項８３または８４に記載の方法。
【請求項８６】
前記ライセンス・データは、前記電子データへのアクセスが許可される設定可能な期間によって決定されたソフトウェア・セキュリティ満了日を備えていることを特徴とする請求項６７に記載の方法。
【請求項８７】
電子デバイスの記憶された電子データへの無許可アクセスを防止する方法であって、
前記電子デバイスと通信するように構成されたポータブル・ライセンシング媒体にライセンス・データを記憶するステップと、
前記ライセンス・データに基づき前記電子データへのアクセスを許可するかどうかを決定するステップと、
第１の確認データベースを有している登録機関を用いて、第２の確認データベースに記憶された前記ライセンス・データを確認するステップと、
前記第２の確認データベースを有しているライセンス・マネージャを用いて前記ライセンシング媒体に記憶されかつ前記電子デバイスおよび前記登録機関と通信するように構成された前記ライセンス・データを確認するステップと、
前記登録機関を用いて、前記ライセンス・マネージャの前記第２の確認データベースに対して更新された確認データを供給するステップと、
前記ライセンス・マネージャを用いて前記ライセンシング媒体に前記ライセンス・データを供給するステップとを有してなることを特徴とする方法。
【請求項８８】
前記電子デバイスは、前記ライセンス・データを前記第２の確認データベースと比較することによって前記ライセンシング媒体の妥当性を確認することを特徴とする請求項８７に記載の方法。
【請求項８９】
前記ライセンス・マネージャは、前記第２の確認データベースを前記第１の確認データベースと比較することによって前記第２の確認データベースの妥当性を確認することを特徴とする請求項８７に記載の方法。
【請求項９０】
前記ライセンシング媒体は、前記ライセンス・データのハッシュを実行することによって生成されたライセンス・データ・メッセージ・ダイジェストを記憶することを特徴とする請求項８７に記載の方法。
【請求項９１】
前記第２の確認データベースは、前記ライセンス・データ・メッセージ・ダイジェストのコピーを備えていることを特徴とする請求項９０に記載の方法。
【請求項９２】
前記電子デバイスは、前記ライセンス・データ・メッセージ・ダイジェストを前記第２の確認データベースの前記ライセンス・データ・メッセージ・ダイジェストの前記コピーと比較することによって前記ライセンシング媒体の妥当性を確認することを特徴とする請求項９１に記載の方法。
【請求項９３】
前記ライセンス・データ・メッセージ・ダイジェストは、前記登録機関または前記ライセンス・マネージャに関連付けられた専用キーで暗号化されることを特徴とする請求項９０に記載の方法。
【請求項９４】
前記専用キーは、前記登録機関または前記ライセンス・マネージャに関連付けられた複数の専用キーの一つであることを特徴とする請求項９３に記載の方法。
【請求項９５】
前記第２の確認データベースは、前記暗号化されたライセンス・データ・メッセージ・ダイジェストのコピーを備えていることを特徴とする請求項９３に記載の方法。
【請求項９６】
前記電子デバイスは、前記暗号化されたライセンス・データ・メッセージ・ダイジェストを前記第２の確認データベースの前記暗号化されたライセンス・データ・メッセージ・ダイジェストの前記コピーと比較することによって前記ライセンシング媒体の妥当性を確認することを特徴とする請求項９５に記載の方法。
【請求項９７】
前記電子デバイスは、
前記登録機関に関連付けられた公開キーを用いて前記ライセンシング媒体から読み出した前記ライセンス・データ・メッセージ・ダイジェストを解読し、
前記ライセンシング媒体から読み出した前記ライセンス・データにハッシュを実行することによってメッセージ・ダイジェストを生成し、
前記解読したメッセージ・ダイジェストを前記生成したメッセージ・ダイジェストと比較することによって
前記ライセンシング媒体の妥当性を確認することを特徴とする請求項９５に記載の方法。
【請求項９８】
前記ライセンス・マネージャは、サイト・ライセンス登録情報を前記登録機関に送ることを特徴とする請求項８７に記載の方法。
【請求項９９】
前記サイト・ライセンス登録情報は、前記電子データに関連付けられたランダム識別子を備えていることを特徴とする請求項９８に記載の方法。
【請求項１００】
前記第１の確認データベースは、前記電子データへのアクセスを許可する許可識別子のリストを備えていることを特徴とする請求項９９に記載の方法。
【請求項１０１】
前記登録機関は、前記登録情報と一緒に送られた前記識別子が前記許可識別子の一つに対応するときに更新された確認データを前記ライセンシンス・マネージャに供給することを特徴とする請求項１００に記載の方法。
【請求項１０２】
前記ライセンス・マネージャは、前記第２の確認データベースが前記第１の確認データベースに対応することを確認するために前記登録機関と通信することを特徴とする請求項８７に記載の方法。
【請求項１０３】
前記ライセンス・データは、ライセンシング媒体が有効である設定可能な期間によって決定されたライセンシング媒体満了日を備えていることを特徴とする請求項８７に記載の方法。
【請求項１０４】
前記ライセンス・データは、前記電子データへのアクセスが許可される設定可能な期間によって決定されたソフトウェア・ライセンス満了日を備えていることを特徴とする請求項８７に記載の方法。
【請求項１０５】
前記ライセンシング媒体満了期間は、前記ライセンス・データの最短ソフトウェア・ライセンス満了期間に設定されることを特徴とする請求項１０３または１０４に記載の方法。
【請求項１０６】
前記ライセンス・データは、前記電子データへのアクセスが許可される設定可能な期間によって決定されたソフトウェア・セキュリティ満了日を備えていることを特徴とする請求項８７に記載の方法。
【請求項１０７】
電子デバイスに記憶された電子データへの無許可アクセスを防止するために電子デバイスで実行可能なコンピュータ・コードであって、
前記電子デバイスと通信するように構成されたポータブル・ライセンシング媒体にライセンス・データを記憶するためのコードと、
前記ライセンス・データに基づき前記電子データへのアクセスを許可するかどうかを決定するためのコードと、
確認データを有している登録機関と通信することによって前記ライセンシング媒体に記憶された前記ライセンス・データを確認するためのコードと、
前記登録機関から受け取った更新されたライセンス・データを前記ライセンシング媒体に供給するためのコードと
を備えていることを特徴とするコンピュータ・コード。
【請求項１０８】
電子デバイスに記憶された電子データへのアクセスを提供するために電子デバイスで実行可能なコンピュータ・プログラムであって、
電子データへのアクセスを供給するためのコードと、
前記電子データへの無許可アクセスを防止するためのサブプログラムとを備え、前記サブプログラムは、
前記電子デバイスと通信するように構成されたポータブル・ライセンシング媒体にライセンス・データを記憶するためのコードと、
前記ライセンス・データに基づき前記電子データへのアクセスを許可するかどうかを決定するためのコードと、
確認データを有している登録機関と通信することによって前記ライセンシング媒体に記憶された前記ライセンス・データを確認するためのコードと、
前記登録機関から受け取った更新されたライセンス・データを前記ライセンシング媒体に供給するためのコードと
含んでいることを特徴とするコンピュータ・プログラム。
【請求項１０９】
電子デバイスに記憶された電子データへの無許可アクセスを防止するために電子デバイスで実行可能なコンピュータ・コードであって、
前記電子デバイスと通信するように構成されたポータブル・ライセンシング媒体にライセンス・データを記憶するためのコードと、
前記ライセンス・データに基づき前記電子データへのアクセスを許可するかどうかを決定するためのコードと、
第１の確認データベースを有している登録機関と通信することによって、第２の確認データベースに記憶された前記ライセンス・データを確認するためのコードと、
前記第２の確認データベースを有しかつ前記電子デバイスおよび前記登録機関と通信するように構成されているライセンス・マネージャと通信することによって前記ライセンシング媒体に記憶された前記ライセンス・データを確認するためのコードと、
前記登録機関から受け取った更新された確認データを前記ライセンス・マネージャの前記第２の確認データベースに供給するためのコードと、
前記ライセンス・マネージャから受け取った前記ライセンス・データを前記ライセンシング媒体に供給するためのコードと
を備えていることを特徴とするコンピュータ・コード。
【請求項１１０】
電子デバイスに記憶された電子データへのアクセスを提供するために電子デバイスで実行可能なコンピュータ・プログラムであって、
前記電子データへのアクセスを供給するためのコードと、
前記電子データへの無許可アクセスを防止するためのサブプログラムとを備え、前記サブプログラムは、
前記電子デバイスと通信するように構成されたポータブル・ライセンシング媒体にライセンス・データを記憶するためのコードと、
前記ライセンス・データに基づき前記電子データへのアクセスを許可するかどうかを決定するためのコードと、
第１の確認データベースを有している登録機関と通信することによって、第２の確認データベースに記憶された前記ライセンス・データを確認するためのコードと、
前記第２の確認データベースを有しかつ前記電子デバイスおよび前記登録機関と通信するように構成されているライセンス・マネージャと通信することによって前記ライセンシング媒体に記憶された前記ライセンス・データを確認するためのコードと、
前記登録機関から受け取った更新された確認データを前記ライセンス・マネージャの前記第２の確認データベースに供給するためのコードと、
前記ライセンス・マネージャから受け取った前記ライセンス・データを前記ライセンシング媒体に供給するためのコードとを含んでいることを特徴とするコンピュータ・プログラム。
【発明の詳細な説明】
【０００１】
発明の背景
発明の分野
本発明は、概して、例えば、コンピュータ・ソフトウェア、音楽、映画、電子ブック等のような電子データへの無許可アクセスを防止することに関する。さらに詳細には、本発明は、クライアント電子装置が、ユーザがそれへのアクセスを有することを許可される電子データを識別するライセンス・データを記憶するライセンシング媒体と通信するアクセス許可システムおよび方法に関する。クライアント電子装置は、ライセンス・データを確認するために用いられるデータベースを含む中央登録機関とも通信する。
【０００２】
関連技術
パーソナル・コンピュータ、ハンドヘルド・コンピューティング・デバイス、パーソナル・データ・アシスタント、携帯電話およびＣＤおよびＤＶＤプレーヤーのような、有線および無線の両方の電子デバイスは至るところにある。これらのデバイスは、ほんのいくつか挙げてみると、ビジネス、娯楽および教育の種類の機能を含んでいる、増加する機能のアレイを実行する。これらの電子デバイス間の共通リンクは、電子デバイスの各々の機能を実行するための電子データの電子デバイスの使用である。電子データは、例えば、データがコンピュータ・ソフトウェア・プログラムを備えるときに、デバイス自体を制御するために用いることができる。あるいは、電子データは、例えば、データが、特権が与えられ、著作権保護されたプロプラエタリであるか、またはそれ以外ならば無許可アクセスから保護される、音楽、映画、電子ブック、データベース情報、またはその他の形式のデータを備えるときに、これらのデバイスによって操作される知的コンテントである場合がある。
【０００３】
いずれの場合においても、電子データは、それらの生成において費やされた時間および努力により、価値がある。例えば、コンピュータ・ソフトウェア・プログラムは、一般的に、ほんのいくつか挙げてみると、ソフトウェア・エンジニア、プログラマ、アーティストおよびマーケティング担当者を含む労働集約型開発による製品である。同様に、音楽、映画、電子ブックは、一般的に、アーティストおよび作者の創造的努力による製品である。更に、これらの形式の電子データの全ての創造は、非常に費用がかかる製作およびマーケティング努力を含みうる。
【０００４】
対照的に、かかる電子データをコピーすることは、一般的に、ほんの少しの時間、努力および金銭を必要とするだけである。その結果、電子データの無許可の複写および配布が手がつけられないほど盛んである。例えば、パーソナル・コンピュータ・ソフトウェアに関して、米国で使用されるソフトウェアの３０％がライセンスされておらず従って無許可であると推定されている。
【０００５】
ある外国においては、使用されているソフトウェア・プログラムの９５％超が無許可のコピーであり、それらは、米国またはその他の国で創作されかつその米国の市場価格のほんの数分の一で販売されている。これら外国のある国では、ソフトウェア盗用は、大きな産業になっている。ソフトウェアおよびその他の電子データのこの広範囲に及ぶ無許可使用は、ソフトウェアおよびその他の電子データを創造したアーティスト、個人事業家およびその他に対して潜在的に恐るべき影響力を有する。
【０００６】
勿論、法律は、かかる盗用を防止または思いとどまらせるためのある機構を提供する。例えば、著作権保護は、電子データを保護する最も一般的な法律的手段の一つである。また、特許保護もある電子データ、特にコンピュータ・ソフトウェアの様々な態様を保護するためにますます頻繁に用いられている。ライセンスのような、契約条項は、その他の形式の保護への付属物として広く用いられる。
【０００７】
ライセンス契約によるソフトウェアを使用する権利は、一人のユーザまたは一つのコンピュータに制限することができる。ローカル・エリア・ネットワーク（ＬＡＮ）におけるような、二つ以上のコンピュータでの使用が予想されるところでは、ライセンスは、多数のコンピュータでの使用を許可することができる。この種の多重コンピュータ・ライセンスは、それが特定のサイトにおけるいくつかのコンピュータにライセンスされたソフトウェアを実行させるために一般的に実現されるので、サイト・ライセンスとしばしば呼ばれる。
【０００８】
しかしながら、これら法律および契約の措置の効果は、不十分であった。従って、電子データのベンダは、彼らの知的コンテントを保護する技術的手段にその考えを方向転換した。
【０００９】
例えば、コンピュータ・ソフトウェアのような、ライセンスされた電子データは、ライセンスされたソフトウェアをベンダに登録することをユーザに要求する保護スキームを用いることによって無許可の使用および／または複写から保護することができる。一般的に、かかる保護スキームは、ソフトウェアと一緒に含まれかつソフトウェアのインストレーションにより実行する登録プログラムを用いる。
【００１０】
登録プログラムは、ソフトウェアと一緒にベンダによって供給された、例えば、ＣＤ−ＲＯＭケースに印刷されたコード・シーケンスを入力することをユーザに要求する。コード・シーケンスは、それが有効かどうかを決定するために登録プログラムによってチェックされる。有効である場合、登録プログラムは、ユーザがソフトウェアを使用できるようにする。
【００１１】
通常の登録プログラムは、数学的アルゴリズムを用いてコード・シーケンスの有効性を決定する。一般的に、かかるアルゴリズムは、単に、ソフトウェアと一緒に配布される一組の有効コード・シーケンスを生成するためにベンダによって初めに用いられたアルゴリズムの逆である。
【００１２】
かかる通常のスキームは、セキュリティの基礎的な措置を供給するが、それらは、どこにも破られないものからはほど遠い。事実、かかるセキュリティ・システムは、彼らが生成するコード・シーケンスを分析することによって有効性を決定するアルゴリズムを突きとめる侵害者によって時々妨げられる。一度アルゴリズムが突きとめられた場合、それは、ライセンスされたソフトウェアに対する有効コード・シーケンスを生成するために無許可ユーザによって用いられうる。キージェンとして知られる、これらの有効コード・シーケンスまたはアルゴリズム自体は、かなり多数の無許可ユーザに広く配布されうる。事実、多くの商業的に成功しているライセンスされたソフトウェア製品に対するキージェンがインターネット上で自由に入手可能である。
【００１３】
あるベンダは、ユーザ名および電話番号のような、一定の個人情報を入力することをユーザに要求することによってコード・シーケンス保護スキームを改良することを試みた。この情報は、ベンダに送信され、ベーダでコード化されかつコード・シーケンス生成処理に用いられる。コード・シーケンスは、ユーザに送り戻され、ユーザは、ソフトウェアをロック解除するためにそれを用いる。しかしながら、このアプローチもまた、上記したコード・シーケンス・アプローチと同様に、突きとめることが可能な数学的アルゴリズムに基づくものであり従ってまた同じ理由で挫折しうる。
【００１４】
ライセンスされたソフトウェアへの無許可アクセスを防止するための別のアプローチは、ライセンスされたソフトウェアを使用するためにユーザのコンピュータに接続された、ドングルと呼ばれる、ハードウェア・キーを有することをユーザに要求することである。一般的に、ドングルは、コンピュータの入力／出力（Ｉ／Ｏ）ポートに接続される。
【００１５】
ドングルの使用において非常に多くの欠点が存在する。例えば、ライセンスされたソフトウェアの各部分は、別々のドングルを必要とするが、コンピュータは、一般的に限られた数のＩ／Ｏポートを有する。その結果、ライセンスされたソフトウェアのいくつかの部分が用いられる場合、多数のドングルは、一つのＩ／Ｏポートに接続されなければならないであろう。これは、装着されたドングル間にインターフェアランスを結果としてもたらしうるし、インターフェアランスは、ドングルまたは関連ソフトウェアに障害をもたらしうる。別の欠点は、ドングルズが容易に紛失するかまたは盗まれうるということである。ソフトウェア・ライセンサーは、一般的に紛失したかまたは盗まれたドングルをほんのわずかの料金で置換え、無許可の使用者にドングルを容易に取得させることができる。
【００１６】
ライセンスされたソフトウェアの無許可の使用および／または複写を防止するための別のアプローチは、ライセンスされたソフトウェアを使用するためにユーザのネットワークに接続されたライセンシング・モジュールを有することをユーザに要求することである。このアプローチは、米国特許第６，１０１，６０６号（Ｄｉｅｒｓｃｈら）に記載されている。モジュールは、識別コードおよびその他のライセンシング情報を含むことができる。ライセンスされたソフトウェアは、ネットワーク・サーバのライセンス管理ソフトウェアと定期的に通信する。ライセンス管理ソフトウェアは、次いで、有効のモジュールがネットワークに接続されているかどうかを決定するためにライセンシング・モジュールと通信する。
【００１７】
ライセンシング・モジュール・アプローチにいくつかの欠点がある。ライセンシング・モジュールは、モジュールの分析を通して突きとめることができる一定の識別コードを含む。識別コードを突きとめることによって、無許可のユーザにモジュールを複製することができる。ライセンシング・モジュール・アプローチの別の欠点は、ライセンシング・モジュールが改ざんされ易いということである。例えば、ユーザは、モジュールに記憶されたライセンシング・データを変更することによってサイト・ライセンシングに対して許可されたユーザの数を増加しようとすることができる。
【００１８】
ライセンシング・モジュール・アプローチの更に別の欠点は、許可されたユーザが、一つの、一定のネットワークに接続されていないコンピュータ上でライセンスされたソフトウェアを使用することができないということである。例えば、許可されたユーザは、ラップトップ・コンピュータ、パーソナル・デジタル・アシスタントまたはその他の種類のモバイル・コンピューティング・デバイスでライセンスされたソフトウェアを使用することができないであろう。
【００１９】
ライセンスされたソフトウェアの無許可の使用および／または複写を防止する別のアプローチは、米国特許第６，０４９，７８９号（Ｆｒｉｓｏｎら）に記載されたような、ユーザのサーバにインストールされるライセンス管理ソフトウェアを提供することである。管理ソフトウェアは、ライセンスされたソフトウェアに対するペイ・パー・ユーズ要求を中央ライセンス管理システムに送信する。中央ライセンス管理システムは、これらの要求を受け取ってペイ・パー・ユーズ・ライセンスをユーザに認可しかつ請求書作成記録を維持する。
【００２０】
しかしながら、このアプローチは、ペイ・パー・ユーズ・ライセンスが認可されるためにユーザが中央ライセンス管理システムに接続されなければならないという欠点を被る。その結果、ライセンス・モジュールの場合におけるように、ソフトウェアは、ラップトップまたはパーソナル・データ・アシストのようなモバイル電子デバイスで容易に用いることができない。
【００２１】
従って、全く新しいアプローチを取りかつ通常の技法の欠点を克服する電子データへの無許可アクセスを防止するシステムおよび方法に対する必要性が存在する。
【００２２】
発明の概要
本発明は、電子データへの無許可アクセスを防止するための新規なシステムおよび方法を概して提供する。
【００２３】
本発明の一形態は、電子デバイスに記憶された電子データへの無許可アクセスを防止するためのシステムおよび方法を提供する。ポータブル・ライセンシング媒体は、ライセンス・データを記憶するために電子デバイスと通信するように構成されている。ライセンス・データは、電子データへのアクセスを許可するかどうかを決定するために電子デバイスによって用いられる。登録機関は、電子デバイスと通信するように構成される。登録機関は、ライセンシング媒体に記憶されたライセンス・データを確認するための確認データを有する。登録機関は、更新されたライセンス・データをライセンシング媒体に供給する。
【００２４】
本発明の実施形態は、以下の特徴の一つ以上を含むことができる。電子デバイスは、ライセンス・データを登録機関の確認データと比較することによってライセンシング媒体の妥当性を確認することができる。
【００２５】
ライセンシング媒体は、ライセンス・データのハッシュを実行することによって生成されたライセンス・データ・メッセージ・ダイジェストを記憶することができる。確認データは、ライセンス・データ・メッセージ・ダイジェストのコピーを含むことができる。電子デバイスは、ライセンス・データ・メッセージ・ダイジェストを登録機関の確認データのライセンス・データ・メッセージ・ダイジェストのコピーと比較することによってライセンシング媒体の妥当性を確認することができる。
【００２６】
ライセンス・データ・メッセージ・ダイジェストは、登録機関に関連付けられた専用キーで暗号化することができる。専用キーは、登録機関に関連付けられた多数の専用キーの一つでありうる。確認データは、暗号化されたライセンス・データ・メッセージ・ダイジェストのコピーを含むことができる。電子デバイスは、暗号化されたライセンス・データ・メッセージ・ダイジェストを、登録機関の確認データの暗号化されたライセンス・データ・メッセージ・ダイジェストのコピーと比較することによって、ライセンシング媒体の妥当性を確認することができる。
【００２７】
電子デバイスは、登録機関に関連付けられた公開キーを用いてライセンシング媒体から読み出したライセンス・データ・メッセージ・ダイジェストを解読し、ライセンシング媒体から読み出したライセンス・データにハッシュを実行することによってメッセージ・ダイジェストを生成し、解読したメッセージ・ダイジェストを、生成したメッセージ・ダイジェストと比較することによって、ライセンシング媒体の妥当性を確認することができる。
【００２８】
電子デバイスは、登録機関に登録情報を送ることができる。登録情報は、電子データに関連付けられたランダム識別子を含むことができる。登録機関データベースに記憶された確認データは、電子データへのアクセスを許可される許可識別子のリストを含むことができる。登録機関は、登録情報と一緒に送られた識別子が許可識別子の一つに対応するときにライセンシング媒体に更新されたライセンス・データを供給することができる。
【００２９】
ライセンシング媒体は、メモリを有しているスマート・カードでありうる。また、スマート・カードは、マイクロプロセッサを有することができる。スマート・カードは、登録機関に関連付けられた公開キーを用いて登録機関から受け取った第１のメッセージ・ダイジェストを解読し、登録機関から受け取った更新されたライセンス・データにハッシュを実行することによって第２のメッセージ・ダイジェストを生成し、第１のメッセージ・ダイジェストを第２のメッセージ・ダイジェストと比較することができる。ライセンシング媒体は、メモリ・スティック、ランダム・アクセス・メモリ、またはコンピュータ・ディスク（例えば、光、磁気、または電子）でありうる。ライセンシング媒体は、取外しできるかまたは取外しできない携帯電話にインストールされたメモリでありうる。
【００３０】
ライセンス・データは、ライセンシング媒体が有効である設定可能な期間によって決定されたライセンシング媒体満了日を含むことができる。ライセンシング媒体満了期間は、例えば、３０日でありうる。
【００３１】
ライセンス・データは、電子データへのアクセスが許可される設定可能な期間によって決定されたソフトウェア・ライセンス満了日を含むことができる。ソフトウェア・ライセンス満了期間は、例えば一日または３０日でありうる。
【００３２】
ライセンス・データは、電子データへのアクセスが許可される設定可能な期間によって決定されたソフトウェア・セキュリティ満了日を含むことができる。ソフトウェア・セキュリティ満了期間は、例えば一日または３０日でありうる。
【００３３】
本発明の別の形態は、電子デバイスに記憶された電子データへの無許可アクセスを防止するためのシステムおよび方法を提供する。ポータブル・ライセンシング媒体は、ライセンス・データを記憶するために電子デバイスと通信するように構成される。ライセンス・データは、電子データへのアクセスを許可するかどうかを決定するために用いられる。登録機関は、電子デバイスと通信するように構成される。登録機関は、第２の確認データベースに記憶されたライセンス・データを確認するための確認データの第１のデータベースを有する。ライセンス・マネージャは、電子デバイスおよび登録機関と通信するように構成される。ライセンス・マネージャは、ライセンシング媒体に記憶されたライセンス・データを確認するための確認データの第２のデータベースを有する。ライセンス・マネージャは、更新されたライセンス・データをライセンシング媒体に供給する。
【００３４】
本発明の実施形態は、以下の特徴の一つ以上を含むことができる。電子デバイスは、ライセンス・データを、ライセンス・マネージャの確認データの第２のデータベースと比較することによって、ライセンシング媒体の妥当性を確認することができる。ライセンス・マネージャは、第２のデータベースを、登録機関の確認データの第１のデータベースと比較することによって、確認データの第２のデータベースの妥当性を確認することができる。
【００３５】
ライセンシング媒体は、ライセンス・データのハッシュを実行することによって生成されたライセンス・データ・メッセージ・ダイジェストを記憶することができる。確認データの第２のデータベースは、ライセンス・データ・メッセージ・ダイジェストのコピーを含むことができる。電子デバイスは、ライセンス・データ・メッセージ・ダイジェストを、ライセンス・マネージャの確認データの第２のデータベースのライセンス・データ・メッセージ・ダイジェストのコピーと比較することによって、ライセンシング媒体の妥当性を確認することができる。
【００３６】
ライセンス・データ・メッセージ・ダイジェストは、登録機関またはライセンス・マネージャに関連付けられた専用キーで暗号化することができる。専用キーは、登録機関またはライセンス・マネージャに関連付けられた多数の専用キーの一つでありうる。確認データの第２のデータベースは、暗号化されたライセンス・データ・メッセージ・ダイジェストのコピーを含むことができる。
【００３７】
電子デバイスは、暗号化されたライセンス・データ・メッセージ・ダイジェストを、ライセンス・マネージャの確認データの第２のデータベースの暗号化されたライセンス・データ・メッセージ・ダイジェストのコピーと比較することによって、ライセンシング媒体の妥当性を確認することができる。
【００３８】
電子デバイスは、登録機関に関連付けられた公開キーを用いてライセンシング媒体から読み出したライセンス・データ・メッセージ・ダイジェストを解読し、ライセンシング媒体から読み出したライセンス・データにハッシュを実行することによってメッセージ・ダイジェストを生成し、解読したメッセージ・ダイジェストを、生成したメッセージ・ダイジェストと比較することによって、ライセンシング媒体の妥当性を確認することができる。
【００３９】
ライセンス・マネージャは、サイト・ライセンス登録情報を登録機関に送ることができる。サイト・ライセンス登録情報は、電子データに関連付けられたランダム識別子を含むことができる。登録機関データベースに記憶された確認データは、電子データへのアクセスを許可する許可識別子のリストを含むことができる。登録機関は、登録情報と一緒に送られた識別子が許可識別子の一つと対応するときにライセンス・マネージャに更新された確認データを供給することができる。
【００４０】
ライセンス・マネージャは、ライセンス・マネージャによって記憶された確認データが登録機関によって記憶された確認データに対応するということを確認するために登録機関と通信することができる。
【００４１】
これらおよびその他の目的、特徴および利点は、本発明の好適な実施形態の以下の説明から明らかであろう。
【００４２】
本発明は、以下の図面と共に採り入れられた好適な実施形態の詳細な説明からより容易に理解されるであろう。
【００４３】
好適な実施形態の詳細な説明
図１は、本発明の実施形態を一般的な用語で示すブロック図を示す。図１において、クライアント・コンピュータと呼ばれる、パーソナル・コンピュータ１００は、サードパーティ・ベンダによって供給されるライセンスされたコンピュータ・ソフトウェアを用いるように構成することができる。
【００４４】
勿論、本発明は、パーソナル・コンピュータのコンピュータ・ソフトウェアへの無許可アクセスを防止することに限定されない。ライセンスされた電子データを用いる電子デバイスのその他の例は、ＤＶＤプレーヤー、ハンドヘルド・コンピューティング・デバイス、パーソナル・データ・アシスタント（ＰＤＡ）、セルラーまたはパーソナル通信システム（ＰＣＳ）電話、インテリジェント・アプライアンス（例えば、冷蔵庫および冷暖房システム）、インターネット・アプライアンス、等を含む。ライセンスされた電子データのその他の例は、コンピュータ・ソフトウェア、音楽、映画、電子ブック、芸術作品、（データベース、特権出版物および通信のような）特権データ、等を含む。更に両方のその他の例も同様に存在する。
【００４５】
一般的な用語では、本発明の保護システムは、所与のユーザが電子データの所与の部分へのアクセスを有することを認可されるかどうかを決定する登録機関１１０を用いる。本明細書で用いられるように、語句「電子データへのアクセス」およびその派生語（例えば、「電子データにアクセスする」）は、（それらに限定されないが）インストールすること、用いること、複写すること、入力すること、出力すること、読出すこと、書込むこと、削除すること、見ること、プレーすること、記憶すること、移動すること、処理すること、等を含んでいる、電子データのあらゆる種類の操作を広義に示す。登録機関１１０は、ソフトウェア保護アドミニストレータの制御下で動作される、ネットワークのサーバとして実施することができる。ソフトウェア保護アドミニストレータは、電子データのベンダと協同して登録機関１１０を維持する。
【００４６】
かかる保護システムの一部として、ベンダは、ソフトウェア保護アドミニストレータによって供給されるクライアント・プログラムをインストールすることをユーザに要求することができる。クライアント・コンピュータ１００にインストールされたクライアント・プログラムは、ライセンシング媒体と呼ばれる、ライセンシング情報記憶媒体１２０、および登録機関１１０と通信する。あるいは、クライアント・プログラムは、電子データに埋め込むことができかつユーザによって別々にインストールされるよりも、電子データにアクセス中に実行することができる。登録機関１１０は、次いで、ベンダ１３０と通信し、電子データに対して発行された有効ライセンスのデータベースを維持する。
【００４７】
ライセンシング媒体１２０は、ユーザがアクセスすることを認可されるソフトウェアまたはその他のライセンスされた電子データに関する情報を含むポータブル・コンポーネントである。ユーザが電子データの販売された部分にアクセスすることを求めるときに、クライアント・プログラムは、ユーザが電子データにアクセスすることを認可されていることを確認するためにライセインシング媒体１２０と通信する。
【００４８】
一般的に、ライセンシング媒体１２０は、独自の、変更できないシリアル番号または電子的に送信することができるその他の形式の識別を有するあらゆる種類のポータブル電子データ記憶媒体でありうる。例は、スマート・カード、メモリ・スティック、磁気ストリップ・カード、フロッピ・ディスクおよびその他の着脱可能なコンピュータ記憶媒体を含む。ライセンシング媒体１２０およびライセンスされた電子データを用いる電子デバイスは、有線接続を有する必要がない。無線接続、例えば、赤外または無線周波数（ＲＦ）リンクを用いることができる。
【００４９】
一定の種類の電子デバイスでは、ライセンシング媒体１２０は、例えば、一定の種類の携帯電話、ハンドヘルド・コンピューティング・デバイス、またはケーブル・テレビジョン制御ボックスのような、着脱可能ではないように構成することができる。例えば、ライセンシング媒体は、携帯電話にインストールされた内部ランダム・アクセス・メモリ（ＲＡＭ）でありうる。本発明は、例えば、取り外しできないライセンシング媒体を有する、冷蔵庫またはその他の家庭用電化製品のような定常デバイスを含むことができるものとしても考えられる。
【００５０】
図１の例では、ライセンシング媒体としてスマート・カードが採用される。図２に示すように、スマート・カード１２０は、マイクロチップ３００を含んでいるプラスチック・カードである。マイクロチップ３００に対するコンタクト３０５は、データ入力および出力および電源入力を供給するためにカード１２０の表面に形成される。
【００５１】
図３に示すように、マイクロチップ３００は、ＣＰＵなしのスマート・カードを用いることもできるが、関連ランダム・アクセス・メモリ（ＲＡＭ）３１５を有する中央処理装置（ＣＰＵ）３１０を含む。ＲＡＭ３１５は、電源がカードに供給されている間、処理中に情報を一時的に記憶するために用いられる。読出し専用メモリ（ＲＯＭ）３２０は、マイクロチップ・オペレーティング・システムを永久的に記憶する。消去可能プログラム可能読出し専用メモリ（ＥＰＲＯＭ）３２５は、上述したライセンシング情報のような、アプリケーション・コードおよびデータを記憶する。
【００５２】
図１を再び参照すると、クライアント・プログラムは、クライアント・コンピュータ１００に接続されたスマート・カード・リーダー１４０を用いてスマート・カード１２０にアクセスする。スマート・カード１２０は、ユーザがアクセスすることを認可されたソフトウェアがどれであるかをクライアント・プログラムに示すライセンシング情報を含む。ライセンシング情報は、同様に、例えば、各許可されたソフトウェアに対するライセンスがいつ期限切れになるかを示すタイム−スタンプスのような、その他の情報を含むことができる。
【００５３】
スマート・カードは、ライセンシング媒体としての使用のために特に設けられる専用スマート・カードでありうる。あるいは、その他の機能を有している汎用スマート・カード、例えば、クレジット・カードは、ライセンシング媒体として用いられるように構成することができる。かかる場合には、スマート・カードは、最初の目的のためにおよびライセンシング媒体として両方で機能する。
【００５４】
登録機関１１０は、ソフトウェア保護アドミニストレータによって許可されたライセンシング媒体１２０の全ておよびソフトウェア・ベンダ１３０によって許可されたソフトウェア・ライセンスの全てに対する情報を含んでいるライセンシング・データベースを維持するリモート・サーバである。クライアント・プログラムは、保護システムの動作に関連付けられた多数の機能を実行するために登録機関１１０と通信する。クライアント・プログラムは、例えば、インターネット１５０を用いて、登録機関１１０と通信することができる。
【００５５】
例えば、クライアント・プログラムは、登録機関１１０と通信することによってスマート・カード１２０の有効性を確認することができる。更なる例として、クライアント・プログラムは、ソフトウェアへのユーザのアクセスを追加、除去、または変更するためにスマート・カード１２０のコンテンツを変更するために登録機関１１０と通信する。また、スマート・カード１２０のコンテンツは、一つのスマート・カードから別のスマート・カードにソフトウェアにアクセスするためのライセンスを転送するためにまたはソフトウェアまたはライセンシング媒体自体を使用するための許可が期限切れになるときを示すタイム−スタンプスを更新するために変更することができる。
【００５６】
図４に示すように、ライセンシング媒体および電子デバイスは、一緒に配置される必要がない。例えば、ライセンシング媒体、例えば、スマート・カード１２０は、ユーザのコンピュータ１６０に接続することができ、ユーザのコンピュータ１６０は、次いで、インターネット１５０を介してクライアント・デバイス１００に接続される。クライアント・デバイス１００は、ライセンスされたソフトウェアを実行するかまたはユーザがアクセスすることを許可されるプロプラエタリーまたは商用データベースをホストするリモート・サーバでありうる。
【００５７】
更なる例として、クライアント・デバイス１００は、ビルディング建設計画のような、コンピュータ援用ドラフティング（ＣＡＤ）ファイルを含んでいるリモート・インターネット・ウェブ・サーバでありうる。かかる場合には、スマート・カード１２０は、許可されたユーザ、例えば、建築技師、建設者、および請負業者に建築計画へのアクセスを可能にさせるゲートキーパーとして有効に動作する。
【００５８】
図５に示すように、ソフトウェアは、サイト・ライセンスに応じるユーザにライセンスすることができ、ライセンスされた人の場所における多数のユーザにソフトウェアを使用させる。サイト・ライセンスは、ローカル・エリア・ネットワーク（ＬＡＮ）に接続された多数のユーザを有する会社によって一般的に購入される。サイト・ライセンス構成では、クライアント・プログラムは、ユーザのＬＡＮのサーバに設けられたライセンシング・マネージャ２００と通信する。ライセンシング・マネージャ２００は、次いで、インターネット１５０上で登録機関１１０と通信する。冗長ライセンシング・マネージャ２１０は、向上した信頼度に対して供給されうる。
【００５９】
上述したクライアント・コンピュータ１００のクライアント・プログラムとライセンシング媒体１２０および登録機関１１０との間の通信に加えて、保護システムもライセンシング媒体１２０とソフトウェアとの間の通信を用いる。
【００６０】
ソフトウェアは、スマート・カードがリーダーにインストールされることを確実にするためにソフトウェアにスマート・カードに定期的にアクセスさせるアプリケーション・プログラミング・インタフェース（ＡＰＩ）を含む。ソフトウェアは、ユーザのライセンスが有効でありかつ有効期限が切れていないかまたは無効にされていないことを確実にするためにスマート・カードに含まれたライセンシング情報を読み出す。ユーザが有効なライセンスを有していないということをソフトウェアが決定した場合、ソフトウェアは、動作を中断または停止し、状況をユーザに知らせ、状況を修正するための機会をユーザに与え、および／またはベンダによってソフトウェアに含まれた命令によりその他のステップを取ることができる。
【００６１】
上述したように、ユーザは、保護されたソフトウェアをインストールしかつ登録するためにソフトウェア保護アドミニストレータによって供給されたクライアント・プログラムをインストールすることを要求されうる。これは、ソフトウェア保護アドミニストレータ、即ち、ソフトウェアインストール処理を制御するプログラムによって供給されたインストールウィザードを用いて行うことができる。インストールウィザードは、コンパクト・ディスク読出し専用メモリ（ＣＤ−ＲＯＭ）上のベンダのソフトウェアに含まれうるか、または先のソフトウェアインストール中にクライアント・コンピュータに既にインストールされうる。インストールウィザードは、クライアント・コンピュータにクライアント・プログラムをインストールする。
【００６２】
一度クライアント・プログラムがインストールされると、保護されたソフトウェアのインストールおよび登録は、図６に示すように進行する。保護されたソフトウェアは、クライアント・コンピュータにインストールされ、ユーザは、インストールされたソフトウェアを登録機関に登録するように促される。
【００６３】
ソフトウェアを登録するために、ユーザは、コンピュータに接続されたリーダーにスマート・カードを挿入しなければならないしかつインターネット接続またはモデムを有していなければならない。接続のこれらの手段が存在しないかまたはユーザがインストール時にソフトウェアを登録することを望まない場合、ユーザは、ベンダのライセンシング・ポリシーに従ってトライアル・モードで限定された時間に対してソフトウェアを使用することを許可されうる。
【００６４】
クライアント・プログラムは、スマート・カードからデータを読み出しかつ一組の登録情報と一緒にそれを登録機関に送信する。登録機関は、スマート・カードが有効であることを確認するためにデータベースに記憶された対応するデータとスマート・カード・データとをまず比較する。次いで、登録機関は、新しいソフトウェア登録が許可されることを確認するためにデータベースに記憶された対応するデータと登録情報とを比較する。
【００６５】
登録機関に送られたスマート・カード・データは、スマート・カード・データにハッシュ関数を実行することによって生成されたメッセージ・ダイジェストを含む。ハッシュ関数は、任意の長さのデータ・ストリームを取り、かつメッセージ・ダイジェストまたはハッシュと呼ばれる、一定長のコードを生成する。登録機関は、スマート・カードが有効であることを確認するためにデータベースの対応するエントリとメッセージ・ダイジェストとを比較する。
【００６６】
以下の特性を有しているハッシュ関数は、暗号化に最適、即ち安全であると一般的に考えられる。第１に、ハッシュ関数は、本質的に一方向関数でなければならないので、メッセージ・ダイジェストを与えることにより、元のデータ・ストリームを決定することは、ほとんど不可能である。第２に、ハッシュ関数は、実際に独自のメッセージ・ダイジェストを生成しなければならないので、同じメッセージ・ダイジェストを生成する二つのメッセージを見出すことはほとんど不可能である。一般的に用いられるハッシュ関数は、Ｍｅｓｓａｇｅ　Ｄｉｇｅｓｔ２（ＭＤ２）、Ｍｅｓｓａｇｅ　Ｄｉｇｅｓｔ４（ＭＤ４）、Ｍｅｓｓａｇｅ　Ｄｉｇｅｓｔ５（ＭＤ５）、Ｓｅｃｕｒｅ　Ｈａｓｈ　Ａｌｇｏｒｉｔｈｍ（ＳＨＡ）、およびＳｅｃｕｒｅ　Ｈａｓｈ　Ａｌｇｏｒｉｔｈｍ２（ＳＨＡ−２）を含む。
【００６７】
登録機関に送られた登録情報は、登録されるソフトウェアの独自の識別子を含む。識別子は、無許可ユーザがシリアル番号を推測することを防止するためにシリアル番号と、パスワードまたはパスフレーズとで構成することができる。シリアル番号およびパスワードは、ソフトウェアが配布されるＣＤ−ＲＯＭケースに印刷される。あるいは、識別子は、二つの無関係なコンポーネント、例えば、辞書からランダムに選択された二つの語から生成することができる。登録機関は、登録情報により受け取った識別子をソフトウェア・ベンダによって供給された有効識別子のデータベースと比較する。
【００６８】
また、登録機関に送られた登録情報は、登録されるソフトウェアに対する製造番号、独自のスマート・カードシリアル番号、スマート・カード・シーケンス番号のような、その他の情報も含む。登録情報は、以下に更に説明するように、スマート・カードおよびソフトウェア・ライセンスに対する満了期間も含む。
【００６９】
登録情報が登録機関によって確認された場合、新しい登録エントリが、ソフトウェアの新たに認可または更新されたライセンスに対して生成される。登録機関は、これらの変更を反映している新しいスマート・カード・データを生成しかつスマート・カードに記憶されるためにクライアント・コンピュータに新しいデータを送り戻す。
【００７０】
登録機関は、新しいスマート・カード・データのハッシュをクライアント・コンピュータに送る。ハッシュは、ソフトウェア保護アドミニストレータに属している専用キーで暗号化される。暗号化されたハッシュは、対応している公開キーを有しているいずれかの人によって解読することができる。しかしながら、ソフトウェア保護アドミニストレータだけが、かかる暗号化されたハッシュを生成することができる。事実上、暗号化されたハッシュは、ソフトウェア保護アドミニストレータのデジタル署名になる。
【００７１】
ソフトウェア保護アドミニストレータによって用いられる専用キーは、一組の専用キー、例えば、一組の１００のキー、の一つでありうる。専用キーの多数の組を用いることは、異なるキーを各更新に対して用いることができるので、組の特定のキーをクラックすることをより困難にする。
【００７２】
クライアント・プログラムは、新しいデータおよび暗号化されたハッシュを受け取りかつそれをスマート・カードに記憶する。このようにしてスマート・カードがアクセスされる毎に、スマート・カードは、スマート・カード・データへの無許可の変更を防止するためにその内部プロセッサを用いてハッシュ比較を実行する。
【００７３】
ハッシュ比較を実行するために、スマート・カード・プロセッサは、公開キーを用いて登録機関から受け取ったハッシュを解読する。次いで、スマート・カードは、新しいデータに対するハッシュを生成する。生成されたハッシュおよび解読されたハッシュは、新しいデータが登録機関から送られてきたということを確認するために比較される。
【００７４】
登録機関によって送られた新しいスマート・カード・データは、新しいスマート・カード・シーケンス番号、スマート・カードに対する新しい満了日、ソフトウェア・ライセンス満了日、およびソフトウェア・セキュリティ満了日も含む。
【００７５】
スマート・カード・シーケンス番号は、登録機関に、スマート・カードに対する更新を追跡させる。例えば、シーケンス番号は、スマート・カードが更新される毎に増分されるｎビット（ｎが整数）の語でありうる。この特徴は、登録機関にスマート・カードへの無許可アクセスを検出させる。
【００７６】
ソフトウェア・ライセンス満了日は、その間ユーザとのライセンス契約に基づきライセンスが有効である設定可能な期間によって決定される。例えば、ソフトウェア・ライセンス満了期間は、一時間、一日、３０日、一年、または同意したあらゆる期間でありうる。
【００７７】
各ソフトウェア・ライセンスは、その期間内にユーザがソフトウェア・ライセンスを更新するために登録機関に再接続しなければならない設定可能な期間によって決定される対応するソフトウェア・セキュリティ満了日を有することができる。ソフトウェア・セキュリティ満了期間は、セキュリティ考慮に基づきベンダによって決定することができるしかつあらゆる所望の時間長でありうる。
【００７８】
スマート・カード満了日は、その期間中にスマート・カードが動作する設定可能な期間によって決定される。スマート・カード満了期間は、セキュリティまたはその他の考慮に基づきソフトウェア保護アドミニストレータによって決定することができかつ例えば３０日のような、あらゆる所望の時間長でありうる。スマート・カード満了期間は、カードに記憶された最短ソフトウェア・セキュリティ満了期間に等しくなるように設定することができる。
【００７９】
スマート・カードは、ユーザがソフトウェアの連続する使用を有するためにスマート・カード満了およびソフトウェア・セキュリティ満了期間内に登録機関によって更新されなければならない。その結果、スマート・カードを紛失したりまたは盗まれたりした場合、無許可のユーザは、これらの満了期間の最短の残りに対してスマート・カードを用いることができるのみである。更に、失われたりまたは盗まれたりしたスマート・カードは、次に電子デバイスが登録機関と通信するときに、使用不能にすることができる。
【００８０】
登録機関によって送られた新しいスマート・カード・データは、ソフトウェアに対する許可キー、例えば、製品満了日および製品番号のハッシュを含むことができる。許可キーは、ユーザがソフトウェアを使用することを許可されるということをスマート・カードに示す。あるいは、記憶空間または時間が少なくて貴重である場合、許可キーとしてバイナリー・フラグを用いることができる。
【００８１】
上述したように、スマート・カードに記憶された新しいデータは、ソフトウェア・ライセンスおよびソフトウェア・セキュリティ満了日によって示されるような、設定可能な期間、例えば、３０日、に対してソフトウェアをユーザに使用させる。ソフトウェアは、スマート・カードが提出されるという条件で、登録機関との更なる通信なしにこれらの期間中に使用することができる。
【００８２】
ソフトウェア・ライセンス満了期間は、短期ライセンスを実現するために用いることができる。例えば、ソフトウェア・ライセンスは、毎日購入することができる。かかる場合には、ユーザは、ユーザのコンピュータにソフトウェアをインストールしたままにしておけるが、ソフトウェアが必要なときにだけ登録機関と接続するようにする。登録機関への接続時に、ユーザは、一日のソフトウェア・ライセンス満了期間を有する、新しいスマート・カード・データを受け取る。
【００８３】
スマート・カードから登録されたソフトウェア製品を取外すために、ユーザは、取外しプログラム、例えば、ウィンドウズ（登録商標）制御パネル・アプレットを実行することができる。取外しプログラムは、登録機関に接続し、許可されたソフトウェア・ライセンスのデータベースを変更する。取外されたソフトウェアのシリアル番号は、別のユーザがそれを登録できるように許可されたシリアル番号のデータベースに戻すことができるか、またはシリアル番号は、それが再起動されるまで停止状態に置くことができる。
【００８４】
登録機関は、ソフトウェア・ライセンスの取外しを反映しているユーザに新しいスマート・カード・データを送る。スマート・カードのエントリを削除するよりも、登録機関は、過ぎてしまった日にソフトウェア・ライセンス満了日を変更することができる。その結果、スマート・カード・データは、製品がスマート・カードにライセンスされていたが、もはや有効ではなかったということを示す。
【００８５】
ソフトウェア登録処理中に、ユーザは、インターネット接続が検出されるときにはいつでもスマート・カード・データの自動更新を許可するかどうか尋ねられる。ユーザが自動更新を許可する場合、デーモン（即ち、バックグラウンドで実行しかつ予め設定された時間にまたは一定の事象に応じて特定の動作を実行する処理）のような、ソフトウェア・モジュールは、インターネット接続を連続的に監視しかつバックグラウンドでスマート・カード・データを更新するために用いることができる。あるいは、クライアント・プログラムによって起動されたバックグラウンド・タスクは、マイクロソフト・クリティカル・アップデート・マネージャ（Ｍｉｃｒｏｓｏｆｔ　Ｃｒｉｔｉｃａｌ　Ｕｐｄａｔｅ　Ｍａｎａｇｅｒ）に類似する方法でこれらの機能を実行することができる。スマート・カード・データの自動更新は、ユーザに、ライセンスされたソフトウェアの全てにおいて、最大ソフトウェア・ライセンス満了期間、例えば、３０日、を維持させる。
【００８６】
スマート・カードの自動更新中に、スマート・カード・データおよびシーケンス番号の暗号化されたハッシュを含んでいる、スマート・カード・データは、登録機関に送信される。スマート・カード・データは、トライアル使用インストールのような、最後の更新以後にカードに追加されたあらゆる登録された製品も含む。新しい製品エントリは、ベンダが登録機関への接続なしに一時的な登録を許可する新しいソフトウェアインストールを含むこともできる。スマート・カードでの新しい製品の存在は、スマート・カードに記憶された最後に登録されたフィールドまたは各登録された製品に対するバイナリー・フィールドを調べることによって検出することができる。
【００８７】
スマート・カード・データを受け取ることにより、登録機関は、スマート・カード・データが有効であるということを確認するために確認データのデータベースをチェックする。例えば、データベースは、別々に記憶されるかまたは別の論理的または物理的データベースのその他のデータと一緒に記憶される論理的データベースでありうる。登録機関は、スマート・カード・シーケンス番号およびスマート・カード満了日のようなアイテムを確認する。更に、スマート・カード・データの暗号化されたハッシュは、公開キーを用いてそれを解読することによって確認される。
【００８８】
スマート・カード・データの確認に続いて、登録機関は、そのデータベースに新しいスマート・カード・データを記憶する。登録機関は、スマート・カードの満了日およびシーケンス番号を更新するために新しいスマート・カード・データを生成しかつこの新しいスマート・カード・データの新しく暗号化したハッシュを生成する。新しいスマート・カード・データは、カードに記憶されかつ確認応答が登録機関に送られる。
【００８９】
上述したように、ユーザがインターネット接続またはモデムを有していないかまたはインストール時にソフトウェアを登録することを欲していない場合、ユーザは、ベンダーのライセンシング・ポリシーに従ってトライアル・モードにおいて限られた時間に対してソフトウェアを使用することを許可されうる。
【００９０】
ベンダー・ライセンシング・ポリシーがトライアル使用を許可する場合、クライアント・プログラムは、ユーザに対してトライアル使用を確立するように構成される。クライアント・プログラムは、対象となるソフトウェアに対してトライアル・エントリが既に存在するかどうかを決定するためにインストールされたスマート・カードをまずチェックする。ユーザがソフトウェアに対するトライアル使用をまず認可されたときにトライアル・エントリがスマート・カードになされかつ無期限にスマート・カードに記憶される。従って、クライアント・プログラムは、ユーザがトライアル使用を前に認可されていたかどうかを決定することができ、トライアル使用を前に認可されていた場合、クライアント・プログラムは、連続的にトライアル使用を認可しないことができる。
【００９１】
トライアル・エントリが行われるときに、新しいハッシュがトライアル・エントリを含んでいる新しいスマート・カード・データで実行されかつスマート・カードに記憶される。その結果、トライアル・エントリは、スマート・カードを無効することなく削除することができない。
【００９２】
ユーザがソフトウェアに対するトライアルを前に認可されていない場合、トライアル・エントリがスマート・カードで行われる。トライアル・エントリは、トライアル使用に対する設定可能なタイムリミット、例えば、３０日を含む。次いで、ユーザは、トライアル期間に対してソフトウェアを使用することができる。
【００９３】
ユーザがインターネット接続に後でアクセスした場合、トライアル・バージョンは、適切な登録手続が実行されるかまたは登録機関がベンダから許可を受け取った場合フル・ライセンスに変換することができる。上述したように、ソフトウェアもまたインターネット接続の検出により自動更新が望ましいかどうかをユーザに尋ねるように構成することができる。
【００９４】
登録されたソフトウェアを用いるために、ユーザは、有効ライセンス情報を含んでいるスマート・カード、即ち、上述したように準備されたスマート・カードを、クライアント・コンピュータのスマート・カード・リーダーに挿入しなければならない。図７に示すように、ユーザがソフトウェアを起動しようとするときに、クライアント・コンピュータは、スマート・カードが挿入されているかどうかを見るためにチェックする。挿入されていない場合、ユーザは、スマート・カードを挿入することを促される。
【００９５】
クライアント・プログラムは、スマート・カードのコンテンツを読み出しかつそれが改ざんされていないことを確認する。次いで、クライアント・プログラムは、特定のソフトウェアに対するライセンシング情報を検索する。ライセンシング情報は、クライアント・プログラムにユーザがソフトウェアを使用することを許可されているかどうかおよび使用またはトライアル使用の許可された期間の期限が切れていないかどうかを決定させる。
【００９６】
クライアント・プログラムは、スマート・カードが変更されたかどうかを検出するために暗号化されたハッシュを使用することができる。クライアント・プログラムは、公開キーを用いてスマート・カードに記憶されたメッセージ・ダイジェストを解読する。次いで、クライアント・プログラムは、ハッシュ関数を用いてスマート・カード・データに対するメッセージ・ダイジェストを生成する。次いで、クライアント・プログラムは、生成されたメッセージ・ダイジェストを解読されたメッセージ・ダイジェストと比較する。これらのメッセージ・ダイジェストが一致する場合、スマート・カードは、変更されていない。この手順は、登録機関と通信することなくクライアント・プログラムにスマート・カードの妥当性を確認させる。
【００９７】
一度確認が完了したならば、クライアント・プログラムは、ソフトウェアを使用させる。使用中に、ソフトウェアは、ソフトウェア・ベンダによって決定された間隔でアプリケーション・プログラミング・インタフェース（ＡＰＩ）を用いてい有効スマート・カードの存在を定期的にチェックする。ＡＰＩは、ソフトウェア保護アドミニストレータによって供給されかつ動的にリンクされたライブラリ（ＤＬＬ）として実現することができる。
【００９８】
改ざんを防止するために、ＤＬＬは、それらを確認することができるように署名することができる。モジュールが改ざんされているということが決定された場合、ソフトウェアは、かかるモジュールが置換えられるまで機能することを停止する。
【００９９】
タイム・スタンプスは、それがＡＰＩにチェックされるときにスマート・カードに記憶することができる。タイム・スタンプスは、ソフトウェア・ライセンス満了日を超えて登録を維持するためにユーザがシステム・クロックを再設定することを防止するために用いられる。
【０１００】
図５を再び参照すると、サイト・ライセンスは、ＬＡＮで多数のユーザにソフトウェアを使用させるために会社により購入することができる。ユーザの数は、購入時に決定される。サイト−ライセンス−ホルダーＬＡＮは、ＬＡＮに対するサーバでもありうるライセンス・マネージャ２００を含む。
【０１０１】
ライセンス・マネージャ２００は、クライアント・コンピュータ１００と登録機関１１０との間の仲介として動作する。例えば、ライセンス・マネージャ２００は、サイト・ライセンスを登録するために登録機関１１０と通信する。一般的に、サイト・ライセンスのベンダ１３０は、登録の前に登録機関１１０に新しいサイト・ライセンスに関する情報を送信する。ライセンス・マネージャ２００は、ソフトウェアにより供給されるシリアル番号／パスワードを登録機関１１０に送信することによってサイト・ライセンスを登録する。
【０１０２】
あるいは、登録は、上述したシングル・ユーザインストールに類似した方法で続けられる。かかる場合には、通常ＬＡＮのアドミニストレータである、会社のライセンス・アドミニストレータは、サイト・ライセンス・ソフトウェアをインストールする。インストールウィザードは、挿入されたスマート・カード１２０の妥当性を確認するライセンス・マネージャ・プログラムをインストールする。ライセンス・マネージャ・プログラムは、スマート・カード１２０のコンテンツを確認しかつサイト・ライセンスを登録するために登録機関１１０と通信する。
【０１０３】
ライセンス・マネージャ１２０は、ＬＡＮにインストールされたサイト・ライセンスソフトウェアの全てのデータベースを維持する。サイト・ライセンス・データベースは、登録機関１１０の対応しているデータベースと定期的に同期される。サイト・ライセンス・データベースは、固定ノードおよび浮動ライセンスの数に関する情報を含む。
【０１０４】
固定ノード・ライセンスは、特定の個人、例えば、サイト・ライセンスを保持する会社の使用者、に割当てられる。一度固定ノード・ライセンスが割当てられたならば、一つ少ないライセンスが会社にとって利用可能である。ライセンス・マネージャは、割当てられた固定ノード・ライセンスの各々に対してサイト・ライセンス・データベースにエントリを維持する。
【０１０５】
浮動ライセンスは、一定数の使用者にソフトウェアを同時に使用させる。使用者がソフトウェアの使用をやめた場合、更なるライセンスがその他の使用者にとって利用可能になる。ライセンス・マネージャは、同時ユーザの数が浮動ライセンスの合計数を超えないことを確実にするために現在のユーザのリストを連続的に維持する。
【０１０６】
上述したように、ライセンス・マネージャ２００は、サイト・ライセンス・ソフトウェアを登録するために登録機関１１０と通信しかつサイト・ライセンス・データベースを維持する。更に、図８に示すように、ライセンス・マネージャは、各使用者に発行されるスマート・カードを生成しかつ変更するために会社のライセンス・アドミニストレータによって用いられる。スマート・カードは、どのサイト・ライセンス・ソフトウェアに使用者がアクセスすることを許可されているかを示す暗号化されたライセンシング情報によりプログラムされる。
【０１０７】
ライセンス・アドミニストレータは、新しいまたは既存のスマート・カード１２０を、ＬＡＮサーバ／ライセンス・マネージャ２００に接続された、ライセンス・アドミニストレータのコンピュータ１００に接続されたスマート・カード・リーダー１４０に挿入する。ライセンス・アドミニストレータのコンピュータ１００は、対応している記憶されたデータを探索するかまたは新しいエントリを追加するためにライセンス・マネージャ２００と通信する。
【０１０８】
スマート・カード１２０が選択された既存の使用者に対するものである場合、ライセンス・マネージャ２００は、スマート・カード１２０のコンテンツを確認しかつスマート・カード１２０が選択された使用者に属するということを確認する。次いで、ライセンス・マネージャ２００は、登録機関データベースに記憶された対応しているデータを用いてスマート・カード１２０の妥当性を確認するために登録機関１１０と通信する。
【０１０９】
一度スマート・カード１２０の妥当性が確認されたならば、ライセンス・アドミニストレータは、使用者のカード１２０に追加するために利用可能なサイト・ライセンスから新しいライセンスを選択することができる。ライセンス・マネージャ２００は、スマート・カード１２０に対して新しいライセンシング情報を生成しかつそれを登録機関１１０に送信する。登録機関１１０は、スマート・カード１２０に対して新しいコンテンツを送り戻し、新しいコンテンツは、スマート・カード・リーダー１４０によってカード１２０に書込まれる。
【０１１０】
登録されたソフトウェアを使用するために、ユーザは、有効ライセンス情報を含んでいるスマート・カード１２０、即ち、上述したように準備されたスマート・カードを、クライアント・コンピュータ１００のスマート・カード・リーダー１４０に挿入しなければならない。図９に示すように、固定ノード・サイト・ライセンスを有しているユーザがソフトウェアを起動しようとするときに、クライアント・コンピュータ１００は、スマート・カード１２０が挿入されているかどうかを見るためにチェックする。挿入されていない場合、ユーザは、スマート・カード１２０を挿入するように促される。
【０１１１】
クライアント・コンピュータ１００のクライアント・プログラムは、それが改ざんされていないということを確実にするためにスマート・カード１２０の妥当性を読出しかつ確認する。確認処理は、以下により詳細に説明される。次いで、クライアント・プログラムは、特定のソフトウェアに対するライセンシング情報を検索する。ライセンシング情報は、クライアント・プログラムに、ユーザがソフトウェアを使用することを許可されておりかつ使用またはトライアル使用の許可された期間が期限切れになっていないということを確認させる。
【０１１２】
次いで、クライアント・コンピュータ１００のクライアント・プログラムは、ユーザが有効固定ノード・ライセンスを有するということを確認するためにライセンス・マネージャ２００と通信する。ユーザが、ライセンス・マネージャ２００によって記憶されたサイト・ライセンス・データベースに固定ノード・ライセンス・エントリを有していない場合、ライセンス・マネージャ２００は、以下に更に詳細に説明するように、利用可能な浮動ライセンスに対してチェックすることができる。固定ノードまたは浮動ライセンスのいずれも利用可能でない場合、ユーザは確認されない。この構成は、登録機関１１０に接続することなくライセンス・マネージャ２００に固定ノード・ライセンスの割り当てを制御させる。
【０１１３】
一度確認が完了したならば、クライアント・プログラムは、ソフトウェアを使用させる。使用中にソフトウェアは、ソフトウェア・ベンダによって決定された間隔でＡＰＩを用いてスマート・カードを定期的に再確認することができる。
【０１１４】
同様に、図１０に示すように、浮動サイト・ライセンスを有しているユーザがソフトウェアを起動しようとするときに、クライアント・コンピュータ１００は、スマート・カード１２０が挿入されているかどうかを見るためにチェックする。挿入されていない場合、ユーザは、スマート・カード１２０を挿入するように促される。
【０１１５】
クライアント・コンピュータ１００のクライアント・プログラムは、それが改ざんされていないということを確実にするためにスマート・カード１２０のコンテンツの妥当性を読み出しかつ確認する。次いでクライアント・プログラムは、特定のソフトウェアに対してライセンシング情報を検索する。
【０１１６】
次いで、クライアント・コンピュータ１００のクライアント・プログラムは、浮動ライセンスが利用可能であるかどうかを決定するためにライセンス・マネージャ２００と通信する。浮動ライセンスが利用可能である場合、それは、ユーザのために確保される、即ち、利用可能なライセンスの数が一つだけ減少される。この構成は、登録機関１１０に接続することなしにライセンス・マネージャ２００に浮動ライセンスの割り当てを制御させる。
【０１１７】
一度確認が完了したならば、クライアント・プログラムは、ソフトウェアを使用させる。使用中に、ソフトウェアは、ソフトウェア・ベンダによって決定された間隔でＡＰＩを用いてスマート・カードを定期的に再確認することができる。ユーザがソフトウェアを終了するときに、クライアント・コンピュータは、ライセンス・マネージャに浮動ライセンスをその他のユーザに対して解放させる。
【０１１８】
使用者は、ＬＡＮに接続されていないコンピュータ、例えば、ラップトップまたはホーム・コンピュータで、登録されたソフトウェアを使用することを望むことができる。かかる場合には、クライアント・プログラムは、上述したように、ユーザが有効な固定ノード・ライセンスを有するということまたは浮動ライセンスが利用可能であるということを確認するためにライセンス・マネージャと通信することができない。従って、使用者のスマート・カードは、登録されたソフトウェアのオフ−サイト使用を許容するためにライセンス・マネージャによって変更されなければならない。
【０１１９】
固定ノード・ライセンスに対して、ライセンス・マネージャは、ライセンス期間、例えば、３０日に対してソフトウェアの使用を許容するに使用者のスマート・カードにエントリを生成する。この期間中に、使用者は、確認のためにライセンス・マネージャに接続することなくソフトウェアを使用することができる。
【０１２０】
浮動ライセンスに対して、ライセンス・マネージャは、ライセンス期間、例えば、３０日に対してソフトウェアの使用を許容するに使用者のスマート・カードにエントリを生成し、かつ浮動ライセンスを確保する。この期間中に、使用者は、確認のためにライセンス・マネージャに接続することなくソフトウェアを使用することができる。しかしながら、その他の使用者は、浮動ライセンスがオフ−サイト使用者によって実際に使用されるかどうかに係わりなくこの期間中に予約された浮動ライセンスにアクセスすることができない。
【０１２１】
使用者は、例えば、電子メールをチェックするために、オフ−サイドの間ＬＡＮに接続することができる。ＬＡＮに接続することにより、ライセンス・マネージャは、ライセンス期間を再開始するために使用者のスマート・カードを自動的に更新することができる。このため、使用者がライセンス期間よりもさらに頻繁にチェックする場合、ソフトウェアをオフ−サイトで無期限に用いることができる。
【０１２２】
ユーザが新しいスマート・カードを取得するときに、それは、ライセンシング情報がそれに記憶される前に登録機関に登録されなければならない。登録は、クライアント・コンピュータにインストールされた登録ウィザードを用いて行われる。
【０１２３】
登録ウィザードは、上述したクライアント・プログラムのインストールに類似する方法で最初の保護ソフトウェア製品のインストール中に自動的にインストールすることができる。あるいは、登録ウィザードは、インターネットからダウンロードされて、スマート・カード・リーダーと込みで、またはオペレーティング・システムに含まれうる。
【０１２４】
スマート・カードの登録中に、登録ウィザードは、ユーザだけが知っているような多数の質問および回答をエンターすることをユーザに促す。これらの質問および回答は、専用キーを用いて暗号化されかつカード・シリアル番号と一緒に登録機関に送られる。この情報は、ユーザがスマート・カードの実際の所有者であるということを確認するためにソフトウェア登録および使用中に用いることができる。
【０１２５】
スマート・カード・シリアル番号は、クライアント・コンピュータ、例えば、レジストリに記憶することができる。ユーザがシリアル番号を忘れたかまたは紛失した場合、ユーザは、レジストリからスマート・カード・シリア番号を検索するためにアプレットを実行することができる。アプレットは、スマート・カードに登録されるソフトウェア製品を示すこともできる。
【０１２６】
ユーザは、カードが紛失され、破損され、または盗まれた場合置換えを容易にするために安全な場所にスマート・カード・シリアル番号を保持するように指示される。ユーザがスマート・カードのシリアル番号を知らないかまたはクライアント・コンピュータへのアクセスを有していない場合、ユーザは、スマート・カードにライセンスされたソフトウェア製品の一つのベンダにコンタクトすることができる。ベンダは、ソフトウェアのシリアル番号を供給することができ、シリアル番号は、スマート・カード・シリアル番号を探索するために登録機関によって用いられることができる。
【０１２７】
カードが紛失され、破損され、または盗まれた場合、ユーザは、新しいカードに転送された、トライアル・ライセンスを含んでいる、古いカードに記憶されたランセンスを有すべく登録機関またはベンダに必要な情報を提出するためにトール・フリー番号に電話をかけるかまたはインターネットを用いることができる。次いで、この古いカードは、登録機関データベースで使用不可能にされる。
【０１２８】
無許可ユーザが登録機関に接続することによって古いスマート・カードのライセンスを更新しようとする場合、古いスマート・カードは、使用不可能にされる。古いスマート・カードが最近発行されたということが決定された場合、ソフトウェア製品に対するライセンシング期間は、繰返しスマート・カード置換えを防止するために新しいスマート・カードで短縮されうる。
【０１２９】
上述したこれらの実施形態の各々は、本発明の上述した目的を達成する電子データへの無許可アクセスを防止するための新規なシステムおよび方法を提供するということが理解されるであろう。
【０１３０】
ライセンシング媒体が複数のベンダからのライセンスを含むことができるので、システムは、複数のキーまたはアクセス・デバイスの必要性なしにユーザに複数のベンダからデータをアクセスさせることができるということも理解されるであろう。
【０１３１】
ライセンシング媒体が、特定の電子デバイスよりも、特定のユーザに関連付けられるので、ユーザは、多数の異なる電子デバイス、例えば、ホーム・コンピュータおよびラップトップを用いてライセンスされた電子データにアクセスすることができるということも理解されるであろう。
【０１３２】
ライセンシング媒体が、多数のベンダからの電子データに対してライセンス・データを記憶することができるので、ユーザは、一つのライセンシング媒体を用いてユーザがライセンスされるデータの全てに都合よくアクセスすることができるということも理解されるであろう。
【０１３３】
ライセンシング媒体がポータブルなので、システムは、ライセンシング媒体を読み出すことができるように構成されたあらゆるコンピュータで用いることができるということも理解されるであろう。このため、保護電子データは、ホーム・コンピュータ、ラップトップ・コンピュータ、ハンドヘルド・コンピュータ、等のライセンシング媒体のホルダーによってアクセスすることができる。
【０１３４】
ライセンシング媒体が設定可能な期間に対して保護電子データへのアクセスを許容するので、ユーザは、期間中に登録機関に接続することなくデータにアクセスすることができるということも理解されるであろう。その結果、登録機関またはインターネットへの固定接続は必要ない。
【０１３５】
ライセンシング媒体が設定可能な期間に対して保護電子データへのアクセスを許容するので、ベンダは、短期ライセンス、例えば、毎週、毎日、毎時間、等を提供することができるということも理解されるであろう。
【０１３６】
スマート・カードが内部プロセッサを有するので、それは、暗号化、解読、およびハッシュ関数を実行することができるということも理解されるであろう。その結果、スマート・カードは、受け取ったハッシュを解読しかつそれをスマート・カード・データの内部的に生成されたハッシュと比較することができる。この比較は、スマート・カードに、受け取った新しいデータが許可されたソースからかどうかを決定させそれによりスマート・カード・データの無許可の変更を防止する。
【０１３７】
本発明は、現在好適な実施形態と考えられるものに関して説明してきたが、本発明は、開示した実施形態に限定されないということを理解されるべきである。対照的に、本発明は、添付した特許請求の範囲の精神および適用範囲内に含まれる様々な変更および同等な構成を包含することを意図するものである。
【図面の簡単な説明】
【図１】クライアント・コンピュータによって用いられるライセンスされた電子データを防止するシステムのブロック図である。
【図２】表面コンタクトを有するスマート・カードを示す図である。
【図３】スマート・カードの内部マイクロチップのブロック図である。
【図４】リモート・クライアント・コンピュータによって用いられるライセンスされた電子データを保護するシステムのブロック図である。
【図５】クライアント・コンピュータ・ネットワークによって用いられるライセンスされた電子データを保護するシステムのブロック図である。
【図６】単一ユーザ・システムに対するソフトウェア登録の図である。
【図７】単一ユーザ・システムに対するソフトウェア起動の図である。
【図８】多重ユーザ・システムにおける使用者スマート・カードにソフトウェア・ライセンスを追加する図である。
【図９】多重ユーザ・システムにおける固定ノード・ライセンスに対するソフトウェア起動の図である。
【図１０】多重ユーザ・システムにおける浮動ライセンスに対するソフトウェア起動の図である。
【図１】
2004507847.tif 000003
【図３】
2004507847.tif 000004
【図４】
2004507847.tif 000005
【図５】
2004507847.tif 000006
【図６】
2004507847.tif 000007
【図７】
2004507847.tif 000008
【図８】
2004507847.tif 000009
【図９】
2004507847.tif 000010
【図１０】
2004507847.tif 000011
【国際公開パンフレット】
2004507847.tif 000012
2004507847.tif 000013
2004507847.tif 000014
2004507847.tif 000015
2004507847.tif 000016
2004507847.tif 000017
2004507847.tif 000018
2004507847.tif 000019
2004507847.tif 000020
2004507847.tif 000021
2004507847.tif 000022
2004507847.tif 000023
2004507847.tif 000024
2004507847.tif 000025
2004507847.tif 000026
2004507847.tif 000027
2004507847.tif 000028
2004507847.tif 000029
2004507847.tif 000030
2004507847.tif 000031
2004507847.tif 000032
2004507847.tif 000033
2004507847.tif 000034
2004507847.tif 000035
2004507847.tif 000036
2004507847.tif 000037
2004507847.tif 000038
2004507847.tif 000039
2004507847.tif 000040
2004507847.tif 000041
2004507847.tif 000042
2004507847.tif 000043
2004507847.tif 000044
2004507847.tif 000045
2004507847.tif 000046
2004507847.tif 000047
2004507847.tif 000048
2004507847.tif 000049
2004507847.tif 000050
2004507847.tif 000051
2004507847.tif 000052
2004507847.tif 000053
2004507847.tif 000054
2004507847.tif 000055
2004507847.tif 000056
2004507847.tif 000057
2004507847.tif 000058
2004507847.tif 000059
2004507847.tif 000060
2004507847.tif 000061
2004507847.tif 000062
2004507847.tif 000063
2004507847.tif 000064
2004507847.tif 000065
2004507847.tif 000066
2004507847.tif 000067
2004507847.tif 000068
2004507847.tif 000069
2004507847.tif 000070
2004507847.tif 000071
2004507847.tif 000072
2004507847.tif 000073
2004507847.tif 000074
2004507847.tif 000075
2004507847.tif 000076
2004507847.tif 000077
2004507847.tif 000078
【国際調査報告】
2004507847.tif 000079