(57)【要約】本発明は電子装置（１）の信頼性を保証する方法に関する。少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２の（Ｓ２、ＰＫ２）チェックアップデータが電子装置（１）に格納される。本方法では、ブートプログラムが起動され（５０１）、このブートプログラムで、少なくとも第１（Ｐ１）と第２の（Ｐ２）ブートステップが実行される。第１のブートステップでは、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性がチェックされ、その場合、このチェックアップによって、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）が信頼できることが証明されれば、少なくとも上記第２のブートステップに関連する前記第２のチェックアップデータ（Ｓ２、ＰＫ２）がチェックされ、上記第２のブートステップの信頼性が確認される。上記チェックアップにより、上記第２のブートステップに関連する少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）が信頼できるものであることが証明されれば、前記第１のブートステップ（Ｐ１）後、前記第２のブートステップ（Ｐ２）が実行される。
2004530235.tif 000002
【特許請求の範囲】
【請求項１】
電子装置（１）の信頼性を保証する方法であって、少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２のチェックアップデータ（Ｓ２、ＰＫ２）とを前記電子装置（１）に格納し、ブートプログラムの起動（５０１）を行う方法において、上記ブートプログラムで、少なくとも第１のブートステップ（Ｐ１）と第２のブートステップ（Ｐ２）とを実行し、上記第１のブートステップで、少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性をチェックして、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）が信頼できるものであることが上記チェックアップにより証明された場合、上記ブートステップに関連する少なくとも前記第２のチェックアップデータ（Ｓ２、ＰＫ２）をチェックし、上記第２のブートステップの信頼性を確認して、上記第２のブートステップに関連する前記少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）が信頼性の高いものであることが上記チェックアップにより証明された場合、前記第１のブートステップ（Ｐ１）後に前記第２の起動ステップ（Ｐ２）を実行することを特徴とする方法。
【請求項２】
請求項１に記載の方法において、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に、前記第１のブートステップのプログラムコマンドの少なくとも一部を使用することを特徴とする方法。
【請求項３】
請求項１または２に記載の方法において、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に、上記電子装置（１）に格納された上記電子装置の装置識別子（ＤＩＤ）の少なくとも一部を使用することを特徴とする方法。
【請求項４】
請求項３に記載の方法において、上記電子装置の前記装置識別子（ＤＩＤ）が、上記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に使用した装置識別子と一致しなかった場合、上記電子装置（１）の正常な作動が妨げられることを特徴とする方法。
【請求項５】
請求項１乃至４のいずれか一項に記載の方法において、秘密鍵を用いたデジタル署名（Ｓ１）により、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）を形成すること、上記秘密鍵に対応する公開鍵（ＰＫ１）に関連する情報を上記電子装置（１）に格納すること、及び、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の確認時に、上記電子装置（１）に格納された前記公開鍵（ＰＫ１）に関連する情報を利用することを特徴とする方法。
【請求項６】
請求項５に記載の方法において、上記公開鍵（ＰＫ１）に関連する情報がワンタイムプログラマブルリードオンリーメモリ（２ｅ）に格納されたものであること、及び、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）が上記電子装置（１）の外部格納装置に格納されたものであることを特徴とする方法。
【請求項７】
請求項１乃至６のいずれか一項に記載の方法において、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の形成時に、前記第２のブートステップのプログラムコマンドの少なくとも一部を使用することを特徴とする方法。
【請求項８】
請求項１乃至７のいずれか一項に記載の方法において、少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）がリードオンリーメモリ（２ｅ）に格納されたものであることを特徴とする方法。
【請求項９】
請求項１乃至８のいずれか一項に記載の方法において、少なくとも前記第１のブートステップ（Ｐ１）のプログラムコマンドの一部がリードオンリーメモリ（２ｅ）に格納されたものであることを特徴とする方法。
【請求項１０】
請求項１乃至９のいずれか一項に記載の方法において、前記第１のブートステップ（Ｐ１）のプログラムコマンドと前記第２のブートステップ（Ｐ２）のプログラムコマンドとが異なるメモリ（２ｄ、２ｅ、３）に格納されたものであることを特徴とする方法。
【請求項１１】
請求項９または１０に記載の方法において、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）が、前記第２のブートステップ（Ｐ２）のプログラムコマンドが格納されているのと同じメモリに格納されることを特徴とする方法。
【請求項１２】
請求項１乃至１１のいずれか一項に記載の方法において、秘密鍵を用いたデジタル署名（Ｓ２）により、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）を形成すること、上記秘密鍵に対応する公開鍵（ＰＫ２）を上記電子装置（１）に格納すること、及び、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の確認時に、上記電子装置（１）に格納された前記公開鍵（ＰＫ２）を使用することを特徴とする方法。
【請求項１３】
請求項１２に記載の方法において、上記デジタル署名（Ｓ２）を形成するために１組のデータを選択すること、圧縮（Ｈ）を形成するために上記選択された組のデータを圧縮すること、及び、前記圧縮（Ｈ）に基づいて上記デジタル署名（Ｓ２）を形成することを特徴とする方法。
【請求項１４】
請求項１乃至１３のいずれか一項に記載の方法において、上記電子装置（１）で、少なくとも１つのプログラム（ＰＧ１、ＰＧ２、ＰＧ３）を実行し、上記第２のブートステップ（Ｐ２）で上記プログラムの起動を実行し、上記少なくとも１つのプログラム（ＰＧ１、ＰＧ２、ＰＧ３）に少なくとも第３のチェックアップデータを与え、前記プログラム（ＰＧ１、ＰＧ２、ＰＧ３）の起動前に、前記第３のチェックアップデータをチェックして、前記プログラム（ＰＧ１、ＰＧ２、ＰＧ３）の信頼性を保証し、その場合、前記プログラム（ＰＧ１、ＰＧ２、ＰＧ３）の信頼性のチェックアップによって、前記プログラム（ＰＧ１、ＰＧ２、ＰＧ３）が信頼性の高いものであることが証明された場合、少なくとも１つのプログラム（ＰＧ１、ＰＧ２、ＰＧ３）を起動することを特徴とする方法。
【請求項１５】
請求項１乃至１４のいずれか一項に記載の方法において、リードオンリーメモリに格納された前記ブートプログラムで、前記第１のブートステップ（Ｐ１）の実行前に、上記第１のブートステップ（Ｐ１）の信頼性をチェックすることを特徴とする方法。
【請求項１６】
電子装置（１）の信頼性を保証するシステムであって、少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２のチェックアップデータ（Ｓ２、ＰＫ２）とを前記電子装置（１）に格納し、上記電子装置（１）がブートプログラムを起動する手段（２）を備えるシステムにおいて、少なくとも第１のブートステップ（Ｐ１）と第２のブートステップ（Ｐ２）で上記ブートプログラムを実行する手段（２）を備え、前記第１のブートステップ（Ｐ１）で少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性をチェックする手段と、少なくとも第２の起動ステップに関連する前記第２のチェックアップデータ（Ｓ２、ＰＫ２）をチェックして、上記第２のブートステップの信頼性を確認するように為す手段とを備え、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と、上記第２のブートステップに関連する前記少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）とが前記チェックアップに基づいて信頼性の高いものであれば、前記第１のブートステップ（Ｐ１）後に、前記第２のブートステップ（Ｐ２）を実行するように構成されることを特徴とするシステム。
【請求項１７】
請求項１６に記載のシステムにおいて、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に、前記第１のブートステップのプログラムコマンドの少なくとも一部を使用することを特徴とするシステム。
【請求項１８】
請求項１６または１７に記載のシステムにおいて、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に、上記電子装置（１）に格納された上記電子装置の装置識別子（ＤＩＤ）を使用することを特徴とするシステム。
【請求項１９】
請求項１８に記載のシステムにおいて、前記電子装置（１）に格納された上記電子装置の装置識別子（ＤＩＤ）と、上記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に使用した装置識別子との同値性を比較する手段を備え、上記電子装置の前記装置識別子（ＤＩＤ）が、上記チェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に使用した前記装置識別子に一致しなかった場合、上記ブートプログラムを停止する手段を備えることを特徴とするシステム。
【請求項２０】
請求項１６乃至１９のいずれか一項に記載のシステムにおいて、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）を秘密鍵を用いたデジタル署名（Ｓ１）と共に形成する手段と、上記電子装置（１）内の上記秘密鍵に対応する上記公開鍵（ＰＫ１）に関連する情報を格納する手段と、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の確認時に、前記電子装置（１）に格納された公開鍵（ＰＫ１）を利用する手段とを備えることを特徴とするシステム。
【請求項２１】
請求項１６乃至２０のいずれか一項に記載のシステムにおいて、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の形成時に、前記第２のブートステップのプログラムコマンドの少なくとも一部を使用することを特徴とするシステム。
【請求項２２】
請求項１６乃至２１のいずれか一項に記載のシステムにおいて、少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）が格納されるワンタイムプログラマブルリードオンリーメモリ（２ｅ）を備えることを特徴とするシステム。
【請求項２３】
請求項２２に記載のシステムにおいて、少なくとも前記第１のブートステップ（Ｐ１）のプログラムコマンドの一部がリードオンリーメモリ（２ｅ）に格納されたものであることを特徴とするシステム。
【請求項２４】
請求項２３に記載のシステムにおいて、前記第２のブートアップステップ（Ｐ２）のプログラムコマンドが格納されたのと同じメモリに前記第２のチェックアップデータ（Ｓ２、ＰＫ２）が格納されることを特徴とするシステム。
【請求項２５】
請求項１６乃至２４のいずれか一項に記載のシステムにおいて、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）を秘密鍵を用いたデジタル署名（Ｓ２）と共に形成する手段と、上記電子装置（１）内の上記秘密鍵に対応する上記公開鍵（ＰＫ１）を格納する手段と、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の確認時に、前記電子装置（１）に格納された公開鍵（ＰＫ２）を利用する手段とを備えることを特徴とするシステム。
【請求項２６】
請求項１６乃至２５のいずれか一項に記載のシステムにおいて、少なくとも第３のチェックアップデータが設けられたプログラムを電子装置（１）で実行する手段（２）と、前記プログラムの信頼性を確認する前記第３のチェックアップデータをチェックする手段と、上記プログラムの信頼性の前記チェックアップにより前記プログラムが信頼性の高いものであることが証明された場合、前記第２の起動ステップ（Ｐ２）で前記プログラムを起動する手段とを備えることを特徴とするシステム。
【請求項２７】
請求項１６乃至２６のいずれか一項に記載のシステムにおいて、ロードするためのプログラムを格納するプログラムロードシステム（ＡＳ）と、電子装置（１）から上記プログラムロードシステム（ＡＳ）へ第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）を伝送する手段（９）と、上記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）を確認する手段（４０２、ＣＤＢ）と、上記電子装置（１）にロードする対象プログラムに上記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）を付加する手段（４０２）と、上記電子装置（１）へ上記プログラムを伝送する手段（４０４、ＡＳ）とを備えることを特徴とするシステム。
【請求項２８】
少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２のチェックアップデータ（Ｓ２、ＰＫ２）とが格納される電子装置（１）の信頼性を保証する手段を備える電子装置（１）であって、ブートプログラムを起動する手段（２）も備える電子装置（１）において、少なくとも第１のブートステップ（Ｐ１）と第２のブートステップ（Ｐ２）で上記ブートプログラムを実行する手段（２）を備え、前記第１のブートステップ（Ｐ１）で少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性をチェックする手段と、少なくとも第２のブートステップに関連する前記第２のチェックアップデータ（Ｓ２、ＰＫ２）をチェックして、上記第２のブートステップの信頼性を確認するように為す手段とを備え、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と、上記第２のブートステップに関連する前記少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）とが前記チェックアップに基づいて信頼性の高いものであれば、前記第１のブートステップ（Ｐ１）後に、前記第２のブートステップ（Ｐ２）を実行するように構成されることを特徴とする電子装置。
【請求項２９】
請求項２８に記載の電子装置において、移動局機能を実行する手段（９）を備えることを特徴とする電子装置。
【請求項３０】
請求項２９に記載の電子装置 において、移動局ネットワークを介してプログラムをダウンロードする手段（９）を備えることを特徴とする電子装置。
【請求項３１】
少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２のチェックアップデータ（Ｓ２、ＰＫ２）とが格納された電子装置（１）の信頼性を保証するプログラムであって、ブートプログラム（５０１）の起動を実行するプログラムコマンドを含むプログラムにおいて、さらに、上記ブートプログラム内の少なくとも第１のブートステップ（Ｐ１）と第２のブートステップ（Ｐ２）とを実行するプログラムコマンドと、少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性を上記第１のブートステップ時にチェックするプログラムコマンドと、上記第２の起動ステップに関連する少なくとも前記第２のチェックアップデータ（Ｓ２、ＰＫ２）をチェックして上記第２のブートステップの信頼性を保証するように為すプログラムコマンドと、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と、上記第２のブートステップに関連する前記少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）とが前記チェックアップに基づいて信頼性の高いものであれば、前記第１のブートステップ（Ｐ１）後に前記第２のブートステップ（Ｐ２）を実行するプログラムコマンドを含むことを特徴とするプログラム。
【請求項３２】
少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２のチェックアップデータ（Ｓ２、ＰＫ２）とが格納された電子装置（１）の信頼性を保証するために使用されるプログラムを格納する格納手段（２ｄ、２ｅ）であって、上記プログラムが、ブートプログラムの起動（５０１）を実行するプログラムコマンドを含む格納手段（２ｄ、２ｅ）において、上記格納手段に格納されたプログラムが、さらに、上記ブートプログラム内の少なくとも第１のブートステップ（Ｐ１）と第２のブートステップ（Ｐ２）とを実行するプログラムコマンドと、少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性を上記第１のブートステップ時にチェックするプログラムコマンドと、上記第２のブートステップに関連する少なくとも前記第２のチェックアップデータ（Ｓ２、ＰＫ２）をチェックして上記第２のブートステップの信頼性を保証するように為すプログラムコマンドと、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と、上記第２のブートステップに関連する前記少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）とが前記チェックアップに基づいて信頼性の高いものであれば、前記第１のブートステップ（Ｐ１）後に前記第２の起動ステップ（Ｐ２）を実行するプログラムコマンドを含むことを特徴とする格納手段。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は添付の請求項１の前文に記載の電子装置の安全性を保証する方法に関する。本発明はまた添付の請求項１６の前文に記載のシステムにも関する。本発明はさらに添付の請求項２８の前文に記載の電子装置に関する。本発明はまた添付の請求項３１の前文に記載のプログラム、並びに、添付の請求項３２の前文に記載の格納手段にも関する。
【背景技術】
【０００２】
種々様々な電子装置が、マイクロプロセッサ、マイクロコントローラ、プログラマブル論理回路および／または特定用途向けプログラマブル集積回路などのプログラマブル制御手段を利用している。このような電子装置には、電子装置の作動に必要なプログラムコマンドなどを含む１以上のプログラムから構成される格納済みのソフトウェアが含まれる。このようなソフトウェアの格納時にメモリが用いられ、このメモリの少なくとも一部は、たとえメモリの動作電圧が切断されてもそのメモリの内容が保持される不揮発性メモリである。このようなメモリには，例えば、リードオンリーメモリ（ＲＯＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）及び電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）などが含まれる。少なくともメモリの一部は通常電子装置内に組み込まれているが、さらに、多くのアプリケーションでは、例えばメモリ拡張ボードなどによってメモリの増設を行うことが可能である。このような１つのメモリ拡張ボードとしていわゆるフラッシュメモリカードがある。フラッシュメモリは一種のＥＥＰＲＯＭタイプのメモリであり、電気的プログラミングによりそのメモリ内容を変えることが可能である。フラッシュメモリの内容は動作電圧の切断後も保持される。このような拡張メモリによって、新しいソフトウェアや、例えば、デジタルカメラに写真などを格納するための、移動局などにアクセス権を設定するための、メモリ容量を電子装置に設けることが簡単になる。ディスケット、ＣＤ−ＲＯＭまたはＤＶＤなどの別の格納手段を用いて、周知の方法で電子装置内にソフトウェアのインストールを行うことも可能である。
【０００３】
格納手段に格納されたソフトウェアをコピーすることは比較的簡単であり、コピーされたソフトウェアの使用を妨げる種々の方法がソフトウェアプロバイダにより開発されている。そのような１つの方法として製品ＩＤまたはその類似物を利用する方法がある。これによって、プログラムの起動時、プログラムが利用できるようになる前に、ユーザはこの製品ＩＤを電子装置に入力しなければならない。しかし、このような構成に関する問題点として、プログラムのコピーと関連して、元のソフトウェアの所有者からユーザがこの製品ＩＤを取得している可能性があること、また、その場合、コピーされたプログラムをユーザが使用できるという点が挙げられる。その一方で、たとえコピーされたソフトウェアのユーザが製品ＩＤを知らなかった場合でも、ユーザが、例えばリバースエンジニアリングやデバッギングによってプログラムプロテクトの構造を見つけ出そうと試みることも考えられる。その場合プログラムのオブジェクトコードがソースコードへ変換される。このようにして、例えば、コピーのプロテクトを外したり、ユーザがオブジェクトコードに基づいて必要な製品ＩＤを解析したりして、コピープロテクトの解読とプログラムの変更にユーザが成功する可能性がある。このような可能性をさらに困難にするために、プログラムの実行中、プログラムが改竄されていないことを間隔をおいてチェックするプログラムが開発された。これによって、ユーザがこのようなコピープロテクトの構造を確定する能力を持っていなければ、ブート時のコピープロテクトの単なる解読によっては、コピーされたソフトウェアの長期にわたる使用が必ずしもできないものになる。
【０００４】
所定のプログラムを所定の装置と明確に接続して別の装置では使用できないようにする方法が知られている。例えば、ハードウェア独自のシリアル番号に基づいてソフトウェアを変更することにより、あるいは、ハードウェア独自のシリアル番号に基づいて１つの装置の中でしか機能できないインストールプログラムを供給することにより上記方法を実行することができる。上記解決方法には、ソフトウェアかハードウェアのいずれかを改変することによりこのプロテクトを破ることが可能であるという欠点がある。
【０００５】
デバッギングを悪化させるために、少なくともコピープロテクト部分および／または製品ＩＤの格納部分をプログラムコードと関連して複雑にする試みを行うことができる。その場合、コピープロテクトを破ることは一層困難になる。このような１つの解決方法が例えば国際特許出願ＷＯ００／７７５９７に記載されている。
【０００６】
米国特許第５，１３１，０９１号には、ＸＯＲ演算を用いてプログラムコードの内容にスクランブリングを行うことによりメモリカードに格納されたプログラムをプロテクトする方法が提示されている。このスクランブリングでは、不揮発性メモリに格納された暗号化ビット列を用いて、可能な限りこのビット列の発見が困難となるようにしている。異なるユーザへ供給されるメモリカードで異なる暗号化ビット列が使用される。
【０００７】
合法的にソフトウェアを取得したユーザに対して、ソフトウェアの出所を保証する必要がある場合がある。なぜなら、場合によっては、第三者が、オリジナルのプログラムからつくった改変バージョンの供給を試み、改変バージョンをオリジナルのプログラムとして市場に出すことも考えられるからである。このようなソフトウェアには、例えば付加されたウィルスなどが含まれている場合もあれば、改変ソフトウェアのソフトウェアメーカーが、この改変ソフトウェアをインストールした会社のローカルエリアネットワークへアクセスすることさえ可能ないわゆるバックドア（back door）が設けられている場合もある。場合によっては、この改変ソフトウェアに、例えば、インターネットなどのようなデータネットワークを介してユーザが電子装置で入力するユーザＩＤとパスワードを、ユーザに気づかれることなく、改変ソフトウェアのメーカーへ伝送する特性を備えているものもある。ソフトウェアの出所を保証するために、プログラムにデジタル署名を設けることが可能であり、このデジタル署名に基づいてユーザはオリジナルのソフトウェアの真正性を確証することが可能となる。
【０００８】
プログラムのコピープロテクトの他に、電子装置と関連して格納された別の情報をプロテクトして誤用を防ぐようにする必要性も存在する。例えば、ある電子装置に関連して、ある単数または複数の特定ユーザへのアクセス権の制限が設定され、それによって、ユーザが個人用スマートカードを持つことができるようになっている。その場合、ユーザは、電子装置に設けられたカードコネクタの中にスマートカードを挿入して電子装置を使用する。補助的認証としてユーザＩＤの利用も可能である。その場合、電子装置にスイッチを入れるとき、電子装置の使用が可能となる前に、ユーザはこのユーザＩＤを入力しなければならない。このような構成は、ＧＳＭ移動通信ネットワークやＵＭＴＳ移動通信ネットワークなどの多くの移動通信ネットワークで利用されている。このような移動通信ネットワークで使用される移動局において、ＧＳＭシステムではＳＩＭ（加入者識別モジュール）、ＵＭＴＳシステムではＵＳＩＭ（ユニバーサル加入者識別モジュール）と呼ばれるスマートカードが挿入される。このようなスマートカードでは、移動通信ネットワークのサービスプロバイダによって国際移動加入者識別子（ＩＭＳＩ）のような或る加入者仕様が予め設定されている。ユーザＩＤはこのスマートカードにも格納されている。その場合、移動局にスイッチが入ると、スマートカードによりユーザＩＤのチェックが行われる。
【０００９】
しかし、如上の解決方法は、第三者がソフトウェアを改変して、別の装置でのソフトウェアの使用を可能にしたり、この装置でプログラムの動作を変えたりすることができるという問題を解決するものではない。このような問題は、例えば移動局と関連して生じており、移動局のコピーを行うことにより、料金を払わず移動通信ネットワークのサービスにアクセスすることが可能となっている。コピーされた移動局のソフトウェアと国際移動局装置識別子（ＩＭＥＩ）はオリジナルの移動局の識別情報と同一である。スマートカードのコピーも行われ、コピーされた移動局の中にインストールされる。したがって、移動体交換センタも、オリジナルの移動局とコピーされた移動局との識別を行うことが不可能である。
【００１０】
従来技術によるソフトウェア及びその他のデータの暗号化による解決方法のさらに別の欠点として、大量の情報の暗号化を行うために同じ暗号化鍵を使用する場合、このような暗号化情報の解析により暗号化鍵の解読が成功する可能性があるという点が挙げられる。
【００１１】
携帯用装置のデータ処理能力の上昇に伴い、やはり極秘情報である場合があるさらに多くの情報や、部外者に明らかにしてはならないような情報を携帯用装置に格納することが可能である。しかし、携帯用装置を持ち運ぶことにより、携帯用装置を紛失したり、盗まれたりするリスクが増加する。その場合、暗号化方式によって携帯用装置に格納された情報をプロテクトする試みを行う必要がある。携帯用装置の場合、装置が正常に使用できるようになるまでに、ユーザが、スイッチオンの段階で装置に入力しなければならないパスワードの決定が一般に可能である。しかし、このようなプロテクトは比較的簡単に破られる。なぜなら、使用されるパスワードが通常比較的短く、一般に１０文字未満の長さしかないからである。一方で、たとえパスワードを見つけ出す試みが行われなかった場合でも、例えば、固定ディスクのような格納手段を別の装置の中へ移動することにより、装置に含まれる情報にアクセスすることが可能となる。格納手段に含まれる情報が暗号化された形で格納されていない場合、格納手段に格納された情報は簡単に見つけ出すことができる。
【００１２】
ユーザまたは装置が必要とする情報を１つの鍵で暗号化することが可能であり、暗号化情報を装置のメモリに格納することが可能で、別の鍵でこの情報の解読が可能であることは周知の事柄である。非対称な暗号化で使用される鍵は解読時に使用される鍵とは異なる鍵である。これに対して、対称な暗号化で使用される鍵は解読時に使用される鍵である。非対称な暗号化では、これらの鍵は通常公開鍵とパーソナル鍵と呼ばれる。公開鍵は暗号化用として意図されたものであり、パーソナル鍵は解読用として意図されたものである。公開鍵は共通に知られているものではあるが、公開鍵に対応するパーソナル鍵を簡単に確定するために、公開鍵を使用することは通常できないので、この場合、部外者がこの公開鍵を使って暗号化した情報を見つけ出すことは非常に困難である。このような公開鍵とパーソナル鍵の使用に基づくシステムの一例として、ＰＧＰ（Pretty Good Privacy）システムがある。この場合、ユーザは、伝送対象情報を受け手の公開鍵で暗号化し、次いで、受け手は送り手であるユーザのパーソナル鍵でこの暗号化情報を開く。しかし、従来技術のシステムにはいくつかの顕著な欠点が存在する。効果的な対称鍵が約１００ビットから構成されるのに対して、非対称鍵は約１０００〜２０００ビットあるいは４０００ビットに達するようなビットから構成される。鍵文字列が短すぎる場合、総当たり攻撃（brute force attack）と呼ばれる最新のデータ処理装置を使って暗号を破ることは比較的簡単である。この問題は、処理能力が限定されていること起因して長い鍵の使用が許されない携帯用のデータ処理装置や通信装置では特に重要である。
【発明の開示】
【課題を解決するための手段】
【００１３】
所定のプログラムが所定の電子装置のみで機能するように設定して、電子装置の安全性を保証する改善方法を提供することが本発明の目的である。本発明は、少なくとも２つのステップから構成されるようにブートアップ設定を行い、第１のステップで、第１のチェックアップデータを検証し、第１のチェックアップデータが正しければ、第２のブートステップと関連する第２のチェックアップデータを検証し、第２のチェックアップデータが正しければ、第２のブートステップの起動が可能となるようにするという着想に基づくものである。さらに正確に述べれば、本発明に準拠する方法は添付の請求項１の特徴記載部分に記載の内容を主たる特徴とするものである。本発明に準拠するシステムは、添付の請求項１６の特徴記載部分に記載の内容を主たる特徴とするものである。本発明に準拠する電子装置は添付の請求項２８の特徴記載部分に記載の内容を主たる特徴とするものである。さらに、本発明に準拠するソフトウェアは添付の請求項３１の特徴記載部分に記載の内容を主たる特徴とするものである。さらに、本発明に準拠する格納手段は添付の請求項３２の特徴記載部分に記載の内容を主たる特徴とするものである。
【００１４】
本発明は従来技術の解決方法と比較して顕著な利点を示すものである。本発明に準拠する電子装置では、可能な限り改変を困難にしたメモリに機器識別子が格納される。さらに、１つの好適な実施形態では、機器識別子がデジタル署名で検証され、その場合、検証で使用する公開鍵や何らかの鍵識別情報が電子装置に格納される。したがって、デジタル署名をチェックすることにより、デジタル署名が電子装置の機器識別子に対応するかどうかの検証を高い確率で行うことが可能となる。１つの機器識別子が装置内に永久的に設定され、別の機器識別子が証明書と呼ばれる署名済みのデータの中に設定される。これで、上記署名のチェックを行うことにより、この証明書の真正性と作者（author）を認知することが可能となる。このようにして、装置の永久的機器識別子と、証明書に含まれている機器識別子とが同一であることが検証される。本発明に準拠する方法により、所定のプログラムのみがある特定の電子装置で作動することを保証することが可能となる。これによって、ソフトウェアのコピーによって生じるプログラム供給者の経済的損失を大幅に減らすことが可能となる。電子装置のユーザの地位の改善も可能となる。なぜなら、本発明の解決方法により、海賊版の電子装置とソフトウェアの動作を著しく困難にすることが可能となるからである。したがって、アクセス権限が与えられたユーザには、当該ユーザの電子装置に対応するようなコピーされた電子装置の使用に対してコストがかかることはまったくない。本発明の方法により、ソフトウェアの出所の検証が可能となり、その場合、ソフトウェアのユーザは、当該ソフトウェアの出所が示された出所に対応すること、及び、当該ソフトウェアが、ウィルス、バックドア（back door）あるいはそれに類するものを一切含んでいないことを相対的に確信することが可能となる。また本発明によって、認証されていない方法で電子装置のソフトウェアの改変を行って、改変後にソフトウェアが機能するようにすることは不可能となる。
【００１５】
本発明に準拠する電子装置では、回路内部のリードオンリーメモリのサイズを比較的小さいものにすることが可能である。なぜなら、外部格納装置（フラッシュメモリや何らかの別のタイプのメモリ）に格納されたプログラムの完全性をチップの内部で検証することが可能となるからである。これによって、電子装置の製造後に電子装置のプログラムの大部分の交換が可能となり、またプログラムの計画がさらに簡単になる。
【００１６】
本発明の好適な実施形態では、プログラムのアクセス権の制御時に用いる機器識別子は電子装置の可能なＩＭＥＩコードとは無関係である。したがって、装置メーカーは、必要に応じてＩＭＥＩコードの変更を行うことが可能となる。さらに、機器識別子の長さをＩＭＥＩよりも短くすることが可能となり、機器識別子の格納時に、従来技術の解決方法を利用する場合よりも小量の高価な所要メモリ容量で済むことになる。
【００１７】
以下、添付図面を参照して本発明についてさらに詳細に説明する。
【発明を実施するための最良の形態】
【００１８】
以下は、本発明の方法と関連して本発明の好適な実施形態に準拠する電子装置１の処理に関する説明である。使用する電子装置１は、プログラムの実行手段を備えた任意の電子装置であってもよい。好適には、電子装置１がオペレーティングシステムソフトウェアまたはそれと類似のソフトウェアを有し、このソフトウェアによって、電子装置の本質的機能が制御され、さらに、電子装置１においてその他のプログラム（アプリケーション）の実行が制御可能であることが望ましい。この文脈で言及できるこのような電子装置１の非限定的な例として、移動局とコンピュータとが挙げられる。
【００１９】
図１に図示の本発明の好適な実施形態に準拠する電子装置１には、プログラムの実行手段２ａを備えた制御ブロック２が含まれる。これらの手段は、例えばマイクロ制御ユニットＭＣＵとデジタル信号処理ユニットＤＳＰとを備えるものである。さらに、制御ブロック２は特定用途向け集積回路ＡＳＩＣを備え、例えば、電子装置の論理機能の少なくとも一部を実装することが可能であることが望ましい。さらに、図１に図示の電子装置１の制御ブロック２は、リードオンリーメモリ２ｄを備え、少なくともその一部がワンタイムプログラマブルＲＯＭ（ＯＴＰＲＯＭ）２ｅとランダムアクセスメモリ２ｆとであることが望ましい。しかし、制御ブロック２から独立したメモリとして、これらのメモリ２ｄ、２ｅ、２ｆの実装が可能であることは言うまでもない。上記電子装置は、制御ブロックの外側にもメモリ手段３を備え、少なくともリードオンリーメモリ３ａ、プログラマブルリードオンリーメモリ３ｂ及びランダムアクセスメモリ３ｃを備えることが望ましい。少なくともリードオンリーメモリ３ａの一部は、ユーザがその内容を変更できないように実装される。メモリ接続手段５にメモリ拡張ブロック４を配置することにより、拡張メモリを図１の電子装置１と接続することも可能である。例えば、メモリ拡張ブロック４としてフラッシュメモリカードなどがあるが、本発明と関連して別のメモリ拡張手段の利用も可能である。ディスプレイ６、キーボード７、並びに、イヤホン／スピーカ及びマイクなどのオーディオ手段８を備えたユーザインタフェースＵＩを電子装置１に設けることが望ましい。本発明の好適な実施形態に準拠する図１に図示の電子装置１は、例えばＧＳＭ移動局および／またはＵＭＴＳ移動局などの移動局機能を実現する手段９も備えるものである。さらに、電子装置１は、ＳＩＭカードおよび／またはＵＳＩＭカードなどのようなＩＤカード１１と電子装置１とを接続する手段１０を備えることが望ましい。
【００２０】
図２は、本発明の好適な実施形態に準拠する方法を利用する電子装置１のブートプログラムの構造を示す。上記ブートプログラムは、少なくとも２つのブートブロックＰ１、Ｐ２に分けられ、このうち、第１のブートブロックＰ１は第１のステップの最初のブート処理を実行する。第２のブートブロックＰ２は、起動を阻止するエラーが第１のブートブロックで検出されなかった状況で別のチェックアップを実行するものである。
【００２１】
少なくとも２つのステップから構成される本発明に準拠するセキュリティ方法は以下のように機能する。この処理は図５のフローチャートに示されている。電子装置１の起動時に、制御ブロック２により、ブートプログラムの実行が開始される（図５のブロック５０１）。これは、最初に実行される当該ブートプログラムのプログラムコマンドを含む所定の初期アドレスに制御ブロック２のアドレスレジスタを設定することにより周知の方法で実行される。このプログラムコマンドは第１のブートブロックＰ１に置かれる。この後、装置の初期化のための必要ステップを行うことにより、プログラムの実行を継続することが望ましい。この初期化ステップはいずれの当業者も周知の従来技術であり、この文脈で解説する必要はない。第１のブートブロックＰ１には、第１のチェックアップデータ（第１のセキュリティデータ）をチェックする第１のチェックアップステップが含まれる。第１のチェックアップステップでは、ワンタイムプログラマブルＲＯＭ２ｄに格納された装置ＩＤまたはそれに類似したＩＤがチェックされる（ブロック５０２）。この装置ＩＤは図２の参照符号ＤＩＤにより示されている。さらに、第１のブートブロックＰ１のプログラムコードが改変されていないことをチェックすることが可能である。このチェックは、少なくとも前記装置識別子ＤＩＤを用いて、さらに、リードオンリーメモリ２ｄ、２ｅに格納されたブートプログラムの少なくとも一部も場合には用いてデジタル署名の演算を行うことにより制御ブロック２で行われることが望ましい。デジタル署名の演算時に、本説明で以下記載するように、電子装置１の製造と関連して装置メーカーの秘密鍵によってデジタル署名の演算を行ったのと同じアルゴリズムと同じデータが使用される。このデジタル署名（図２の参照符号Ｓ１で示す）は、プログラマブルリードオンリーメモリ３ｂに格納されるのが望ましいが、例えば、装置識別子ＤＩＤが格納されているのと同じリードオンリーメモリ２ｄ、２ｅにこのデジタル署名を格納してもよいことは言うまでもない。この署名で使用される秘密鍵に対応し、リードオンリーメモリ２ｄ、２ｅに格納された公開鍵ＰＫ１を用いてデジタル署名の検証を行うことも可能である。デジタル署名の演算後、制御ブロック２で演算されたデジタル署名と、ワンタイムプログラマブルリードオンリーメモリ２ｄ、２ｅに格納されたデジタル署名Ｓ１との比較が行われる（ブロック５０３）。上記比較によりこれらのデジタル署名の一致が示されれば、ブートの継続が可能となる。デジタル署名が一致しなければ、電子装置１および／または電子装置１に含まれる識別子データＤＩＤおよび／またはブートプログラムを改変する試みが行われたことは明らかであり、その結果装置の正常な作動が、例えば、電子装置のスイッチをオフにすることにより阻止される（ブロック５０４）。チェックを行うブートプログラムの当該部分は、電子装置１の作動を中断せずに変えることができないように電子装置１のメモリに格納される。１つの有効な解決方法として、制御ブロック２を格納するための内部ワンタイムプログラマブルリードオンリーメモリ２ｅがある。
【００２２】
ブートを継続する場合、次のステップとして、他の任意のプログラムＰＧ１、ＰＧ２、ＰＧ３の起動前に、ブートプログラムの第２のチェックアップを行うステップがある。第２のチェックアップステップに対応するプログラムコードは第１のブートブロックＰ１の中に存在する。第２のチェックアップステップで、ブートプログラムの第２のブートブロックＰ２の真正性がチェックされる。ブートプログラムの第２のブートブロックＰ２は、フラッシュメモリのような電気的に消去可能なプログラマブルリードオンリーメモリ（ＥＥＰＲＯＭ）３ｂなどに格納されることが望ましい。リードオンリーメモリ３ａ、３ｂに格納されたブートプログラムの少なくとも一部を用いてデジタル署名の演算が行われる（ブロック５０５）。またブートプログラムの第２のブートブロックのデジタル署名Ｓ２が同じメモリ３ｂに格納される。このデジタル署名Ｓ２の演算時に、ブートプログラムの第２のブートブロックのプログラムコードの一部並びに電子装置１のメーカーの秘密鍵などの検証可能ないくつかのデータが利用される。この秘密鍵に対応する公開鍵ＰＫ２もメモリ３ｂに格納されている。演算されたデジタル署名は、メモリ３ｂに格納されたデジタル署名と比較され（ブロック５０６）、署名が一致すれば、電子装置１のブートをさらに継続することが可能となる。これに対して、署名が一致しなければ、例えば電子装置の停止などにより装置の正常な作動が妨げられる。
【００２３】
第２のチェックアップステップでチェックの対象となるデータ（第２のチェックアップデータ、第２のセキュリティデータ）は、例えば、プログラマブルリードオンリーメモリ３ｂに格納されたプログラムＰＧ１、ＰＧ２、ＰＧ３、パラメータ、装置識別子ＤＩＤ、ＩＭＥＩまたはこれらと類似のものから、（ハッシュ関数などにより）圧縮データＨを計算することにより予め作成されていてもよい。この圧縮データＨは秘密鍵を用いて署名され、プログラマブルリードオンリーメモリ３ｂに格納される。その場合、この署名の真正性を検証することによりチェックが行われる。
【００２４】
本発明の好適な実施形態では、第２のブートステップと公開鍵ＰＫ２で用いられるチェックアッププログラムのロケーションに関する情報が、第１のブートステップから、第２のブートステップを実行するプログラムへ伝送される。
【００２５】
如上の第２のチェックアップステップの成功後、メモリ３ｂに格納されたブートプログラムの第２のブートブロックＰ２の実行が可能となる。ブートプログラムのこの第２のブートブロックＰ２では、リードオンリーメモリ３ｂに格納された別の何らかのデータなどが、１以上のデジタル署名の演算（ブロック５０７）、及び、リードオンリーメモリに格納された対応するデジタル署名と上記演算されたデジタル署名との比較により、如上の原理に基づいて検証される（ブロック５０８）。検証の対象となるこのようなデータには、例えば、装置識別子ＤＩＤ、国際移動局装置識別子ＩＭＥＩなどの装置固有の情報、並びに、ＳＩＭロックＳＬのようなサービスプロバイダ固有の情報などが含まれ、これにより、唯一のまたはそれ以上の固有のＳＩＭ／ＵＳＩＭカードおよび／または通信事業者のロックを用いて作動するように移動局を設定することが可能となる。これにより、ある特定の移動電話通信事業者のＳＩＭ／ＵＳＩＭカードだけによって作動するように電子装置１の設定が行われる。署名及びその他のおそらく実行可能な別の検証が順調に行われれば、ブートプログラムの第２のブートブロックＰ２の実行を継続することが可能となる。アプリケーションによっては、国際移動局装置識別子ＩＭＥＩに基づいて上述の装置識別子ＤＩＤを作成することも可能であるが、これらの識別子は互いに独立のものにしておいてもよい旨を述べておくべきであろう。
【００２６】
次に、プログラムＰＧ１、ＰＧ２、ＰＧ３のプログラムコードのまだ検証されていない部分、または、少なくともそのうちの若干をチェックする少なくとももう一つのチェックアップステップを実行すべきである（ブロック５０９）。このチェックアップステップでは、如上の原理の適用が可能であり、その場合、少なくとも別のデジタル署名とその検証に必要な情報がメモリ３ｂに格納される。
【００２７】
電子装置１を起動するための所定のすべての検証の実行後、他のプログラムＰＧ１、ＰＧ２、ＰＧ３のブートが可能となり（ブロック５１０）、その後、電子装置１の正常な使用が可能となる。
【００２８】
デジタル署名（＝証明書）を用いて如上の公開鍵の検証を行い、公開鍵の出所についてさらに大きな確信を得るようにすることも可能である。その場合、公開鍵だけでなく、対応するデジタル署名もメモリ２ｄ、２ｅ、３ｂに格納され、別のチェックアップ処理用としてこれらの公開鍵と対応するデジタル署名とを利用する前にこれらの鍵と署名の検証が行われる。
【００２９】
上記説明では、第１のＰ１ブートブロックと第２のＰ２ブートブロックだけにブートプログラムを分けたが、本発明と関連して、このブートプログラムを２個のブートブロックＰ１、Ｐ２より細かく分けることも可能であることは言うまでもない。したがって、個々のブートブロックは、次のブートブロックへ処理が進む前に、少なくとも次のブートブロックの検証を必要とすることになる。検証時に情報が用いられるが、少なくともその情報の一部は次の順序の上記ブートブロックの中に格納されている情報である。
【００３０】
上記記載の検証は、ブート後の電子装置１の正常な作動中に行うことも可能である。この検証を行う目的は、例えば、ブート後に、当該スマートカードが、前記電子装置１内で使用することが認証されていないスマートカードと交換されることを防止したり、改変されたプログラムコードを含むメモリが外部格納装置３ｂと交換されるのを防止したりすることである。
【００３１】
本発明に準拠する電子装置１の製造段階で、および／または、ソフトウェアの更新段階で、必要なチェックアップデータとプログラムとが以下の方法でメモリ２ｄ、２ｅ、３ａ、３ｂの中に形成されることが望ましい。検証時に必要なプログラムコードが制御ブロック２に格納され、このブロックには、ブートプログラムの第１のブートブロックＰ１と、デジタル署名の演算用プログラムと、暗号化用及び解読用の単複のアルゴリズムとが含まれる。このステップが図３のブロック３０１に表されている。メーカーも、ワンタイムプログラマブルメモリ２ｅ内の装置識別子ＤＩＤの少なくとも一部を制御ブロックに格納する（ブロック３０３）。さらに、第１のブートブロックＰ１と装置識別子の検証に必要なメーカーの公開鍵ＰＫ１とデジタル署名Ｓ１とは、ワンタイムプログラマブルメモリ２ｅに格納される。ワンタイムプログラマブルメモリ２ｅに必要な格納を実行した後、必要に応じて、このワンタイムプログラマブルメモリ２ｅはメモリの変更ができない状態に設定される。この設定を行う目的は、例えば、装置識別子ＤＩＤ内の単一ビットの変更を防止したり、ワンタイムプログラマブルリードオンリーメモリ２ｅの別の部分内の単一ビットの変更を防止したりすることである。部品の組み立て段階（ブロック３０２）で、ワンタイムプログラマブルメモリ２ｅを含む制御ブロック２が電子装置（図示せず）の回路基板内にインストールされる。メーカーは、プログラマブルメモリ３ｂおよび／またはワンタイムプログラマブルメモリ３ａ内などのブートプログラムと可能なアプリケーションプログラムからなる別のブロックＰ２を格納する（ブロック３０４と３０５）。また、ブートプログラムの第２のブートブロックＰ２のチェックに使用されるメーカーの公開鍵ＰＫ２と、デジタル署名Ｓ２並びに可能な証明書がメモリ３ｂに格納される。この後、移動電話通信事業者などのディーラやサービスプロバイダへの電子装置１の引き渡しが可能となる。したがって、電子装置１の購入者がサービスプロバイダとの加入者契約を行うとき、ＳＩＭカードやいずれかのサービスプロバイダの任意のスマートカードのような１以上のスマートカード１１で機能するように電子装置１の設定を行うことができる。このようにして、サービスプロバイダや販売業者は、ＳＩＭロックＳＬやこれと類似のロック並びに電子装置１内の装置識別子ＩＭＥＩの設定を行う。必要に応じて、証明書データベースＣＤＢから証明書が検索され、この証明書を用いて、本解説で上述した電子装置１のブートと関連してデータの真正性が検証される。これらの設定は、メモリ３に、好適にはプログラマブルメモリ３ｂに格納される。この後、電子装置１の使用準備ができる。装置メーカーや、装置メーカーによりアクセス権限が与えられたサービス会社が、上記ディーラ／サービスプロバイダにより提供される処理を行うことができることは言うまでもない。このようにしてサービスプロバイダと購入者に関するデータが、データの格納を行う企業へ伝送される。
【００３２】
上述の確認データに基づいて、サービスプロバイダは、本発明に準拠する電子装置１がサービスプロバイダのサービスと接続され、実際に、識別子コードが電子装置１に格納されている装置であることを確認することが可能となる。さらに、電子装置１とその中に含まれているデータが、認証を受けていない改変の対象とされたものではないことが保証される。
【００３３】
本発明はソフトウェア及び電子装置１内のその他のデータの更新にも適用することが可能である。この更新は、例えば、図４に図示の実施構成を用いてディーラおよび／またはサービス会社により実施することが可能である。例えば、ユーザが、電子装置１に新しいバージョンのオペレーティングシステムのインストールを行うことを望む場合がある。新しいオペレーティングシステムのバージョンは、オペレーティングシステムの供給者により前記企業ＡＳへ供給されたり、オペレーティングシステムの供給者からデータネットワークを介してダウンロードされたりするものである。ダウンロードと関連して、好適には装置識別子ＤＩＤが、また、可能であればサービスプロバイダの識別子が与えられることが望ましい（図４のブロック４０１）。オペレーティングシステムのダウンロード時に、その受け手が実際にダウンロードを行うアクセス権限が与えられていること、及び、当該ユーザがその電子装置で新しいバージョンのオペレーティングシステムを受け取る権限が与えられていることを示すための必要な検証が行われる（ブロック４０２）。ダウンロードの対象となるオペレーティングシステムに、今度は装置識別子ＤＩＤに関するデータと、プログラムプロバイダの公開鍵および／またはデジタル署名とを与える（矢印４０３）ことが可能であり、それによって、前記電子装置１のみにオペレーティングシステムのバージョンの実行を限定することが可能となる。したがって、別段のコピープロテクトを行う必要がなくなる。新しいオペレーティングシステムのバージョンが電子装置１へ伝送され（矢印４０４）、周知の方法によりプログラマブルメモリ３ｂに格納される（ブロック４０５）。
【００３４】
本発明と関連して適用可能な複数の周知の暗号化方式が存在する。この文脈で述べる対称な暗号化方式には、データ暗号化規格（ＤＥＳ）、高度暗号化規格（ＡＥＳ）及びRivestの暗号２（ＲＣ２）が含まれる。１つの非対称な暗号化方式としてRivest、Shamir、Adleman（ＲＳＡ）法がある。また、非対称な暗号化方式と対称な暗号化方式の双方を用いる、いわゆるハイブリッド型システムが開発されている。このようなシステムでは、対称な暗号化方式で用いる暗号化鍵を受け手へ伝送するとき、通常非対称な暗号化方式が用いられ、実際の情報の暗号化を行う際には対称な暗号化鍵が用いられる。
【００３５】
非対称な暗号化方式で使用する公開鍵を伝送する場合、公開鍵インフラストラクチャ（ＰＫＩ）と呼ばれるシステムが開発されている。このシステムは、公開鍵を格納するサーバを含み、鍵を必要とするユーザはこれらのサーバから鍵の検索を行うことができる。このようなシステムは、企業自体が、ある暗号化方式でその企業へ情報を伝送することを希望する誰にも企業の公開鍵の伝送を行う必要がない企業向けのシステムとして特に利用可能である。
【００３６】
デジタル署名の場合、ＲＳＡ、デジタル署名アルゴリズム（ＤＳＡ）、楕円曲線暗号法（ＥＣＣ）などのいくつかのシステムが使用されている。これらのシステムと関連して、署名のための情報圧縮アルゴリズムが使用され、このアルゴリズムにはこの文脈で言及するセキュアハッシュアルゴリズム（ＳＨＡ-１）とメッセージダイジェスト（ＭＤ５）が含まれる。図６はデジタル署名の形成ステップを原理図で示すものである。署名対象データ６０１がハッシュ関数（圧縮函数）の実行ブロック６０２へ導かれる。この後、ハッシュ関数により形成された圧縮データが秘密鍵ＳＫを用いて署名される（６０３）。署名６０４が署名対象データ６０１と関連づけられる。署名済みデータの検証段階で、署名によって確認されるデータは、ハッシュコード６０６を生成するハッシュ関数の実行ブロック６０５へ導かれる。この署名は、署名者の秘密鍵に対応する公開鍵ＰＫを用いることにより検証され（６０７）、その後ハッシュコード６０６は署名の検証６０７時に形成されたデータと比較される（６０８）。データが一致すれば、署名済みのデータは高い確率で信頼できるものとなる。
【００３７】
本発明に準拠するステップは、ソフトウェア実行手段２ａのプログラムコマンドによって電子装置１の制御ブロック２で広く実行することが可能である。
【００３８】
本発明は、例えば、電子装置１と関連するソフトウェアの言語バージョンの実施においても適用可能である。このようにして、個々の言語バージョンに対して、所望の言語設定を含む１組のプログラムが形成される。装置識別子は、このセットのプログラム内にデータとして設定され、その場合、当該プログラムを所定の装置のみで使用することが可能となる。このことを保証するために、本発明に準拠するメカニズムが適用される。一方、本発明の解決方法を利用して、電子装置１でどの単複の言語バージョンをインストールして、実行するかを前記電子装置１で確定できるようにすることも可能である。
【００３９】
本発明が、如上の実施形態のみに限定されるものではなく、添付の請求項の範囲内で改変を行うことが可能であることは言うまでもない。
【図面の簡単な説明】
【００４０】
【図１】本発明の好ましい実施形態に準拠する電子装置を簡略なブロック図で示す。
【図２】本発明の好適な実施形態に準拠する方法が適用される電子装置内のブートプログラムの構造を示す。
【図３】ソフトウェアの制作、及び、本発明の好適な実施形態に準拠するセキュリティシステムによる電子装置へのソフトウェアの転送を示す。
【図４】ソフトウェアの制作、及び、本発明の別の好適な実施形態に準拠するセキュリティシステムによる電子装置へのソフトウェアの転送を示す。
【図５】本発明の好ましい実施形態に準拠するブートプログラムの処理をフローチャートで示す。
【図６】デジタル署名の形成に関する周知の原理を示す。
【図１】
2004530235.tif 000003
【図２】
2004530235.tif 000004
【図３】
2004530235.tif 000005
【図４】
2004530235.tif 000006
【図５】
2004530235.tif 000007
【図６】
2004530235.tif 000008
【国際公開パンフレット】
2004530235.tif 000009
2004530235.tif 000010
2004530235.tif 000011
2004530235.tif 000012
2004530235.tif 000013
2004530235.tif 000014
2004530235.tif 000015
2004530235.tif 000016
2004530235.tif 000017
2004530235.tif 000018
2004530235.tif 000019
2004530235.tif 000020
2004530235.tif 000021
2004530235.tif 000022
2004530235.tif 000023
2004530235.tif 000024
2004530235.tif 000025
2004530235.tif 000026
2004530235.tif 000027
2004530235.tif 000028
2004530235.tif 000029
2004530235.tif 000030
2004530235.tif 000031
2004530235.tif 000032
2004530235.tif 000033
2004530235.tif 000034
2004530235.tif 000035
2004530235.tif 000036
2004530235.tif 000037
2004530235.tif 000038
2004530235.tif 000039
2004530235.tif 000040
【手続補正書】
【提出日】平成15年9月16日(2003.9.16)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
電子装置（１）の信頼性を保証する方法であって、少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２のチェックアップデータ（Ｓ２、ＰＫ２）とを前記電子装置（１）に格納し、ブートプログラムの起動（５０１）を行う方法において、上記ブートプログラムで、少なくとも第１のブートステップ（Ｐ１）と第２のブートステップ（Ｐ２）とを実行し、上記第１のブートステップで、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に前記第１のブートステップのプログラムコマンドの少なくとも一部が使用され、次いで、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の形成時に前記第２のブートステップのプログラムコマンドの少なくとも一部が使用され、少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性をチェックして、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）が信頼できるものであることが上記チェックアップにより証明された場合、上記ブートステップに関連する少なくとも前記第２のチェックアップデータ（Ｓ２、ＰＫ２）をチェックし、上記第２のブートステップの信頼性を確認して、上記第２のブートステップに関連する前記少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）が信頼性の高いものであることが上記チェックアップにより証明された場合、前記第１のブートステップ（Ｐ１）後に前記第２の起動ステップ（Ｐ２）を実行することを特徴とする方法。
【請求項２】
請求項１に記載の方法において、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に上記電子装置（１）に格納された上記電子装置の装置識別子（ＤＩＤ）の少なくとも一部を使用することを特徴とする方法。
【請求項３】
請求項２に記載の方法において、上記電子装置の前記装置識別子（ＤＩＤ）が、上記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に使用した装置識別子と一致しなかった場合、上記電子装置（１）の正常な作動が妨げられることを特徴とする方法。
【請求項４】
請求項１乃至３のいずれか一項に記載の方法において、秘密鍵を用いたデジタル署名（Ｓ１）により、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）を形成すること、上記秘密鍵に対応する公開鍵（ＰＫ１）に関連する情報を上記電子装置（１）に格納すること、及び、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の確認時に、上記電子装置（１）に格納された前記公開鍵（ＰＫ１）に関連する情報を利用することを特徴とする方法。
【請求項５】
請求項４に記載の方法において、上記公開鍵（ＰＫ１）に関連する情報がワンタイムプログラマブルリードオンリーメモリ（２ｅ）に格納されたものであること、及び、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）が上記電子装置（１）の外部格納装置に格納されたものであることを特徴とする方法。
【請求項６】
請求項１乃至５のいずれか一項に記載の方法において、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の形成時に、前記第２のブートステップのプログラムコマンドの少なくとも一部を使用することを特徴とする方法。
【請求項７】
請求項１乃至６のいずれか一項に記載の方法において、少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）がリードオンリーメモリ（２ｅ）に格納されたものであることを特徴とする方法。
【請求項８】
請求項１乃至７のいずれか一項に記載の方法において、少なくとも前記第１のブートステップ（Ｐ１）のプログラムコマンドの一部がリードオンリーメモリ（２ｅ）に格納されたものであることを特徴とする方法。
【請求項９】
請求項１乃至８のいずれか一項に記載の方法において、前記第１のブートステップ（Ｐ１）のプログラムコマンドと前記第２のブートステップ（Ｐ２）のプログラムコマンドとが異なるメモリ（２ｄ、２ｅ、３）に格納されたものであることを特徴とする方法。
【請求項１０】
請求項８または９に記載の方法において、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）が、前記第２のブートステップ（Ｐ２）のプログラムコマンドが格納されているのと同じメモリに格納されることを特徴とする方法。
【請求項１１】
請求項１乃至１０のいずれか一項に記載の方法において、秘密鍵を用いたデジタル署名（Ｓ２）により、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）を形成すること、上記秘密鍵に対応する公開鍵（ＰＫ２）を上記電子装置（１）に格納すること、及び、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の確認時に、上記電子装置（１）に格納された前記公開鍵（ＰＫ２）を使用することを特徴とする方法。
【請求項１２】
請求項１１に記載の方法において、上記デジタル署名（Ｓ２）を形成するために１組のデータを選択すること、圧縮（Ｈ）を形成するために上記選択された組のデータを圧縮すること、及び、前記圧縮（Ｈ）に基づいて上記デジタル署名（Ｓ２）を形成することを特徴とする方法。
【請求項１３】
請求項１乃至１２のいずれか一項に記載の方法において、上記電子装置（１）で、少なくとも１つのプログラム（ＰＧ１、ＰＧ２、ＰＧ３）を実行し、上記第２のブートステップ（Ｐ２）で上記プログラムの起動を実行し、上記少なくとも１つのプログラム（ＰＧ１、ＰＧ２、ＰＧ３）に少なくとも第３のチェックアップデータを与え、前記プログラム（ＰＧ１、ＰＧ２、ＰＧ３）の起動前に、前記第３のチェックアップデータをチェックして、前記プログラム（ＰＧ１、ＰＧ２、ＰＧ３）の信頼性を保証し、その場合、前記プログラム（ＰＧ１、ＰＧ２、ＰＧ３）の信頼性のチェックアップによって、前記プログラム（ＰＧ１、ＰＧ２、ＰＧ３）が信頼性の高いものであることが証明された場合、少なくとも１つのプログラム（ＰＧ１、ＰＧ２、ＰＧ３）を起動することを特徴とする方法。
【請求項１４】
請求項１乃至１３のいずれか一項に記載の方法において、リードオンリーメモリに格納された前記ブートプログラムで、前記第１のブートステップ（Ｐ１）の実行前に、上記第１のブートステップ（Ｐ１）の信頼性をチェックすることを特徴とする方法。
【請求項１５】
電子装置（１）の信頼性を保証するシステムであって、少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２のチェックアップデータ（Ｓ２、ＰＫ２）とを前記電子装置（１）に格納し、上記電子装置（１）がブートプログラムを起動する手段（２）を備えるシステムにおいて、少なくとも第１のブートステップ（Ｐ１）と第２のブートステップ（Ｐ２）で上記ブートプログラムを実行する手段（２）を備え、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に前記第１のブートステップのプログラムコマンドの少なくとも一部が使用され、次いで、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の形成時に前記第２のブートステップのプログラムコマンドの少なくとも一部が用され、さらに、ブートステップ（Ｐ１）で少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性をチェックする手段と、少なくとも第２の起動ステップに関連する前記第２のチェックアップデータ（Ｓ２、ＰＫ２）をチェックして、上記第２のブートステップの信頼性を確認するように為す手段とを備え、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と、上記第２のブートステップに関連する前記少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）とが前記チェックアップに基づいて信頼性の高いものであれば、前記第１のブートステップ（Ｐ１）後に、前記第２のブートステップ（Ｐ２）を実行するように構成されることを特徴とするシステム。
【請求項１６】
請求項１５に記載のシステムにおいて、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に、上記電子装置（１）に格納された上記電子装置の装置識別子（ＤＩＤ）を使用することを特徴とするシステム。
【請求項１７】
請求項１６に記載のシステムにおいて、前記電子装置（１）に格納された上記電子装置の装置識別子（ＤＩＤ）と、上記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に使用した装置識別子との同値性を比較する手段を備え、上記電子装置の前記装置識別子（ＤＩＤ）が、上記チェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に使用した前記装置識別子に一致しなかった場合、上記ブートプログラムを停止する手段を備えることを特徴とするシステム。
【請求項１８】
請求項１５乃至１７のいずれか一項に記載のシステムにおいて、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）を秘密鍵を用いたデジタル署名（Ｓ１）と共に形成する手段と、上記電子装置（１）内の上記秘密鍵に対応する上記公開鍵（ＰＫ１）に関連する情報を格納する手段と、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の確認時に、前記電子装置（１）に格納された公開鍵（ＰＫ１）を利用する手段とを備えることを特徴とするシステム。
【請求項１９】
請求項１５乃至１８のいずれか一項に記載のシステムにおいて、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の形成時に、前記第２のブートステップのプログラムコマンドの少なくとも一部を使用することを特徴とするシステム。
【請求項２０】
請求項１５乃至１９のいずれか一項に記載のシステムにおいて、少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）が格納されるワンタイムプログラマブルリードオンリーメモリ（２ｅ）を備えることを特徴とするシステム。
【請求項２１】
請求項２０に記載のシステムにおいて、少なくとも前記第１のブートステップ（Ｐ１）のプログラムコマンドの一部がリードオンリーメモリ（２ｅ）に格納されたものであることを特徴とするシステム。
【請求項２２】
請求項２１に記載のシステムにおいて、前記第２のブートアップステップ（Ｐ２）のプログラムコマンドが格納されたのと同じメモリに前記第２のチェックアップデータ（Ｓ２、ＰＫ２）が格納されることを特徴とするシステム。
【請求項２３】
請求項１５乃至２２のいずれか一項に記載のシステムにおいて、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）を秘密鍵を用いたデジタル署名（Ｓ２）と共に形成する手段と、上記電子装置（１）内の上記秘密鍵に対応する上記公開鍵（ＰＫ１）を格納する手段と、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の確認時に、前記電子装置（１）に格納された公開鍵（ＰＫ２）を利用する手段とを備えることを特徴とするシステム。
【請求項２４】
請求項１５乃至２３のいずれか一項に記載のシステムにおいて、少なくとも第３のチェックアップデータが設けられたプログラムを電子装置（１）で実行する手段（２）と、前記プログラムの信頼性を確認する前記第３のチェックアップデータをチェックする手段と、上記プログラムの信頼性の前記チェックアップにより前記プログラムが信頼性の高いものであることが証明された場合、前記第２の起動ステップ（Ｐ２）で前記プログラムを起動する手段とを備えることを特徴とするシステム。
【請求項２５】
請求項１５乃至２４のいずれか一項に記載のシステムにおいて、ロードするためのプログラムを格納するプログラムロードシステム（ＡＳ）と、電子装置（１）から上記プログラムロードシステム（ＡＳ）へ第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）を伝送する手段（９）と、上記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）を確認する手段（４０２、ＣＤＢ）と、上記電子装置（１）にロードする対象プログラムに上記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）を付加する手段（４０２）と、上記電子装置（１）へ上記プログラムを伝送する手段（４０４、ＡＳ）とを備えることを特徴とするシステム。
【請求項２６】
少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２のチェックアップデータ（Ｓ２、ＰＫ２）とが格納される電子装置（１）の信頼性を保証する手段を備える電子装置（１）であって、ブートプログラムを起動する手段（２）も備える電子装置（１）において、少なくとも第１のブートステップ（Ｐ１）と第２のブートステップ（Ｐ２）で上記ブートプログラムを実行する手段（２）を備え、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に前記第１のブートステップのプログラムコマンドの少なくとも一部が使用され、次いで、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の形成時に前記第２のブートステップのプログラムコマンドの少なくとも一部が用され、さらに、前記第１のブートステップ（Ｐ１）で少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性をチェックする手段と、少なくとも第２のブートステップに関連する前記第２のチェックアップデータ（Ｓ２、ＰＫ２）をチェックして、上記第２のブートステップの信頼性を確認するように為す手段とを備え、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と、上記第２のブートステップに関連する前記少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）とが前記チェックアップに基づいて信頼性の高いものであれば、前記第１のブートステップ（Ｐ１）後に、前記第２のブートステップ（Ｐ２）を実行するように構成されることを特徴とする電子装置。
【請求項２７】
請求項２６に記載の電子装置において、移動局機能を実行する手段（９）を備えることを特徴とする電子装置。
【請求項２８】
請求項２７記載の電子装置 において、移動局ネットワークを介してプログラムをダウンロードする手段（９）を備えることを特徴とする電子装置。
【請求項２９】
少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２のチェックアップデータ（Ｓ２、ＰＫ２）とが格納された電子装置（１）の信頼性を保証するプログラムであって、ブートプログラム（５０１）の起動を実行するプログラムコマンドを含むプログラムにおいて、さらに、上記ブートプログラム内の少なくとも第１のブートステップ（Ｐ１）と第２のブートステップ（Ｐ２）とを実行するプログラムコマンドであって、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に前記第１のブートステップのプログラムコマンドの少なくとも一部が使用され、次いで、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の形成時に前記第２のブートステップのプログラムコマンドの少なくとも一部が使用されるプログラムコマンドと、少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性を上記第１のブートステップ時にチェックするプログラムコマンドと、上記第２の起動ステップに関連する少なくとも前記第２のチェックアップデータ（Ｓ２、ＰＫ２）をチェックして上記第２のブートステップの信頼性を保証するように為すプログラムコマンドと、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と、上記第２のブートステップに関連する前記少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）とが前記チェックアップに基づいて信頼性の高いものであれば、前記第１のブートステップ（Ｐ１）後に前記第２のブートステップ（Ｐ２）を実行するプログラムコマンドを含むことを特徴とするプログラム。
【請求項３０】
少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と第２のチェックアップデータ（Ｓ２、ＰＫ２）とが格納された電子装置（１）の信頼性を保証するために使用されるプログラムを格納する格納手段（２ｄ、２ｅ）であって、上記プログラムが、ブートプログラムの起動（５０１）を実行するプログラムコマンドを含む格納手段（２ｄ、２ｅ）において、上記格納手段に格納されたプログラムが、さらに、上記ブートプログラム内の少なくとも第１のブートステップ（Ｐ１）と第２のブートステップ（Ｐ２）とを実行するプログラムコマンドであって、前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の形成時に前記第１のブートステップのプログラムコマンドの少なくとも一部が使用され、次いで、前記第２のチェックアップデータ（Ｓ２、ＰＫ２）の形成時に前記第２のブートステップのプログラムコマンドの少なくとも一部が使用されるプログラムコマンドと、少なくとも前記第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）の信頼性を上記第１のブートステップ時にチェックするプログラムコマンドと、上記第２のブートステップに関連する少なくとも前記第２のチェックアップデータ（Ｓ２、ＰＫ２）をチェックして上記第２のブートステップの信頼性を保証するように為すプログラムコマンドと、前記少なくとも第１のチェックアップデータ（ＤＩＤ、Ｓ１、ＰＫ１）と、上記第２のブートステップに関連する前記少なくとも１つの第２のチェックアップデータ（Ｓ２、ＰＫ２）とが前記チェックアップに基づいて信頼性の高いものであれば、前記第１のブートステップ（Ｐ１）後に前記第２の起動ステップ（Ｐ２）を実行するプログラムコマンドを含むことを特徴とする格納手段。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は添付の請求項１の前文に記載の電子装置の安全性を保証する方法に関する。本発明はまた添付の請求項１５の前文に記載のシステムにも関する。本発明はさらに添付の請求項２６の前文に記載の電子装置に関する。本発明はまた添付の請求項２９の前文に記載のプログラム、並びに、添付の請求項３０の前文に記載の格納手段にも関する。


【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
所定のプログラムが所定の電子装置のみで機能するように設定して、電子装置の安全性を保証する改善方法を提供することが本発明の目的である。本発明は、少なくとも２つのステップから構成されるようにブートアップ設定を行い、第１のステップで、第１のチェックアップデータを検証し、第１のチェックアップデータが正しければ、第２のブートステップと関連する第２のチェックアップデータを検証し、第２のチェックアップデータが正しければ、第２のブートステップの起動が可能となるようにするという着想に基づくものである。さらに正確に述べれば、本発明に準拠する方法は添付の請求項１の特徴記載部分に記載の内容を主たる特徴とするものである。本発明に準拠するシステムは、添付の請求項１５の特徴記載部分に記載の内容を主たる特徴とするものである。本発明に準拠する電子装置は添付の請求項２６の特徴記載部分に記載の内容を主たる特徴とするものである。さらに、本発明に準拠するソフトウェアは添付の請求項２９の特徴記載部分に記載の内容を主たる特徴とするものである。さらに、本発明に準拠する格納手段は添付の請求項３０の特徴記載部分に記載の内容を主たる特徴とするものである。




【国際調査報告】
2004530235.tif 000041
2004530235.tif 000042
2004530235.tif 000043