(57)【要約】【課題】組込み機器用に内蔵されているプログラムやデータの安全な更新を実現する。【解決手段】ＣＰＵ４０２と内部メモリ４０４を持つ組込み機器４０１において、外部インタフェース４０８及び外部インタフェース制御装置４０９から入力された暗号化プログラムやデータを復号化キー４０７を使用して復号化装置４０６において復号化し、復号化されたプログラムやデータを内部バス４０５及び内部メモリ制御装置４０３を経由して内部メモリ４０４に格納する。【効果】以上の解決手段により、暗号化されたプログラムやデータのみ組込み機器が受け付けるため不正な改造を防止でき、かつ安全な更新手段を提供することで正規のプログラム更新をユーザ側に任せることも可能となる。【選択図】  図１
2004259077.tif 000002
【特許請求の範囲】
【請求項１】
プログラムやデータを更新可能な内部記憶装置を持つ組込み機器において、外部インタフェースと内部の記憶装置との間に復号化または認証処理を行う装置を備え、上記外部インタフェースからの入力される暗号化または認証情報が付加された更新プログラムやデータを復号化または認証処理を行って上記内部記憶上に格納する手段を備えることを特徴とする組込み機器プログラム更新方法。
【請求項２】
請求項１に記載の組込み機器プログラム更新方法において、組込み機器内にあらかじめ機器固有の識別情報を備え、更新プログラムやデータを動的に提供する装置が接続された通信手段を利用し、更新プログラム・データを取得するに際に機器固有の識別情報から適切な更新プログラム・データを上記装置から取得する手段を備えることを特徴とする組込み機器プログラム更新方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＣＰＵ、主記憶、プログラム・データ格納用の内容が更新可能な内部記憶装置、及び外部から記憶装置の内容を更新できる機能を持つコンピュータ組込み機器に係り、特に製造時以降に変更された本組込み機器用の制御プログラムやデータを外部から更新する方法に関するものである。
【０００２】
【従来の技術】
従来、組込み機器のプログラムを更新する際には、その組込み機器が持つ外部インタフェースを用いて、組込み機器が持つ更新可能な内部記憶装置にプログラムやデータを格納する方法がとられている。この更新可能な内部記憶装置として、電気的に内容の消去と再書き込みができるフラッシュメモリを用いて、プログラムや初期値データなどはここに格納されて主記憶の一部としてそのまま実行する場合が一般的である。また外部インタフェースとしてはシリアルインタフェースや、フラッシュメモリなどを外部記憶装置として用いるためのメモリインタフェースなどが一般的である。この方式においては、主記憶上に展開されたフラッシュメモリなどの内部記憶装置の書換えプログラムが外部インタフェースから入力される更新プログラムまたはデータを受信して、内部記憶装置上の元のプログラムやデータを更新する。例えば特開平９−６９０４３号公報に示された「マイクロコンピュータ組込み制御装置」がこれに相当する。また、この例では更新プログラムを固定の位置にしか配置できないため、任意の位置に配置できるような他の方法が「内蔵プログラム更新メモリ」と題する特開２００２−１６９７００号公報に示されている。
【０００３】
上記の「内蔵プログラム更新メモリ」を従来例として示すと、特開２００２−１６９７００号の明細書の図１によれば、例えばＣＰＵと主メモリとを持つクライアント側の組込み制御装置１００において、制御装置を動かすシステムプログラム１０と、組込み制御装置１００の立ち上がり時にシステムプログラムを主メモリにロードするブートローダ・プログラムと１１、内蔵プログラムの更新を行う更新プログラム１２とを内蔵する内蔵プログラムメモリ１０４を備え、また更新プログラムに配置情報解析手段１４を設けて、更新が必要な部分プログラムには配置情報を付加して提供を受けて、この供給を受けた部分プログラムに記載の配置情報に基づいて内蔵プログラムメモリの上記配置情報アドレスに書き込みを行うようにしている。この発明によれば、内蔵プログラムの任意位置に部分プログラムが書き込めてプログラム更新処理の柔軟性が高まる効果があることが示されている。また更に、配置情報テーブル、またはプログラム待避領域を設けたので、内蔵プログラムの更新が安全に行える効果があることも示されている。
【０００４】
【特許文献１】
特開平９−６９０４３号公報
【特許文献２】
特開２００２−１６９７００号公報
【０００５】
【発明が解決しようとする課題】
従来の内蔵プログラム更新の方法は上記のように構成されており、内蔵プログラムの更新に自由度があるものの、特に民生向け組込み機器の場合には逆に悪意のあるプログラムやデータを自由に書き込む手段を提供することになり、製造者にとっては都合が悪い場合が多い。例えば、携帯電話機などの組込み機器では他人の携帯電話番号に書き換えることで自分には通話料金がかからないようにすることも技術的には可能である。使用者による勝手なプログラムやデータの更新を防止するために、外部からこれらを更新する手段を物理的に排除することも一つの解決法ではあるが、こうした場合、製造・販売後に発見された制御プログラムやデータの修正を製造者が行う必要が生じた際に、まず外部から更新情報を内部記憶装置に格納するための物理的な手段が必要になり多くの工数が必要となってしまう。このように従来の方法においては、製造者によるプログラム更新の工数削減と第三者によるプログラム・データ更新を制限することを両立させることができないという問題があった。
【０００６】
また、製造者にとっては出荷後のプログラム修正に対し、個々の機器の更新状況を把握しておきたい場合が多い。例えば、オンラインサービスを提供するにあたって、プログラム修正を行っていない組込み機器を利用すると問題が起きるような場合にあらかじめその組込み機器からの要求を遮断したり、プログラム修正を促したい場合がある。
【０００７】
また、同じ型番の組込み機器製品でも出荷時期によって制御プログラムやデータが異なる場合も多く、そのような場合に個々の組込み機器に応じた適切なプログラムやデータを更新する必要がある。
【０００８】
本発明の目的は、上記のようなプログラム更新の際に生じる問題点に対し、使用者によるプログラム更新に制限をかけながら、製造者によるプログラム更新を容易に行える手段を提供することにある。
【０００９】
【課題を解決するための手段】
本発明においては上記課題を解決するために以下のことを特徴とする。
【００１０】
本発明の第１の特徴は、外部インターフェースと、プログラム・データ格納用の内部記憶装置との間に復号化装置または認証装置を備え、外部インタフェースから内部記憶装置にプログラムまたはデータを格納する際には暗号化または認証情報が付加されたプログラムまたはデータのみ受け付け、内部記憶装置には復号化された、または認証情報が除去されたプログラムまたはデータが格納される組込み機器プログラム更新方法であることを特徴とする。
【００１１】
本発明の第２の特徴は、組込み機器に固有な識別情報を備え、外部インタフェースに接続された外部の記憶装置から更新プログラムやデータを取得する前に、外部の記憶装置に自分の識別情報を送信し、その識別情報に応じたプログラムを取得できる組込み機器プログラム更新方法であることを特徴とする。
【００１２】
したがって本発明の上記第１の特徴構成においては、外部インタフェースと内蔵記憶装置の間に復号化装置または認証装置を備えたことにより、内蔵記憶装置へのプログラムやデータの格納には指定の暗号化を施す必要があり、これにより第三者や使用者による独自に作成したプログラムへの更新を制限することができる反面、出荷後に製造者によって作成された更新プログラムに限っては組込み機器内のプログラムを更新することができる。またプログラムやデータが暗号化されているため、第三者がその内容を不正に解析することを制限することができる。
【００１３】
また本発明の上記第２の特徴構成においては、上記第１の特徴構成に加えて機器固有の識別情報を付加し、更新プログラム取得時に製造者に通知することによって、同じ名称・型番を持つが出荷時期に応じて仕様が異なるような製品であった場合においても、それぞれの機器に応じた更新プログラムを使用者に提供することが可能となる。また、製造者に通知することによって各機器のプログラム更新状況などを製造者側で把握することも可能となる。
【００１４】
【発明の実施の形態】
以下、本発明の実施の形態を図面を用いて説明する。
【００１５】
図２は本発明の実施の形態１を示すブロック図である。５０１は組込み機器である携帯情報端末、５０５は組込み機器５０１の内部を示したもので、外部インタフェースとしてシリアルインタフェース５０６、外部インタフェース制御装置５０７、復号化装置５０８、復号化キー４０７、内部バス４０５、メモリ制御装置４０３、メモリ４０４、ＣＰＵ４０２を備えている。またこの携帯情報端末５０１にはシリアルインタフェース５０５に接続されたプログラム更新用コンピュータ５０２が接続されており、暗号化された更新プログラム５０４を格納したＣＤ−ＲＯＭ５０３を読み取って携帯情報端末５０１に送信することができる。
【００１６】
携帯情報端末５０１のプログラムを更新する必要が生じた際に、携帯情報端末５０１の製造者が製造者固有の暗号化キーで暗号化されたプログラム５０４を格納したＣＤ−ＲＯＭ５０３を使用者に配布する。使用者は配布されたＣＤ−ＲＯＭ５０３上の暗号化されたプログラム５０４を使用者のコンピュータ５０２で読み取り、シリアルインタフェース５０５経由で暗号化されたプログラム５０４を携帯情報端末５０１に送信する。送信された暗号化済みプログラム５０４は外部インタフェース制御装置５０７を経由して復号化装置５０８に送られる。復号化装置５０８は携帯情報端末５０１にあらかじめ組み込まれていた復号化キー４０７を用いて暗号化されたプログラム５０４を復号化し、内部バス４０５、メモリ制御装置４０３を経由して非暗号化された元のプログラム５１３としてメモリ４０４内に格納しプログラムの更新が終了する。
【００１７】
なお、本実施例では製造者から配布されるプログラムは暗号化されているが、復号化装置５０８と復号化キー４０７をそれぞれ認証確認装置と認証情報に変更し、暗号化プログラム５０４の代わりに製造者の認証情報を付加した更新プログラムを配布する方法も可能である。
【００１８】
本実施例により、第三者や使用者による独自に作成したプログラムへの更新を制限しつつ、出荷後に製造者によって更新されたプログラムに限り組込み機器内のプログラムを更新することができる。またプログラムやデータが暗号化されているため、第三者がその内容を不正に解析することを制限することができる。
【００１９】
また図３は本発明の実施の形態２を示すブロック図である。本発明の実施の形態１の構成のプログラム更新方法のうち、更新プログラムの配布方法としてＣＤ−ＲＯＭ５０３の代わりにインターネット６１８を利用し、さらに更新プログラムの暗号化にもう一つの暗号化キー６１０を付加したものである。組込み機器６０１の内部を示したものが６０８で、内部バス４０５、メモリ制御装置４０３、メモリ４０４、ＣＰＵ４０２、外部インタフェースとしてシリアルインタフェース５０６、外部インタフェース制御装置６１１、復号化装置６１２、復号化キー４０７を備えている点は実施の形態１と同様である。本実施の形態２では、さらに機器に固有の暗号化キー６１０と対応する復号化キー６１３を備え、またＣＤ−ＲＯＭ５０３の代わりにインターネット６１８に接続可能なクライアントコンピュータ６０２と更新プログラムを保存できる記憶装置６０３を備えている。インターネット６１８上には、製造者固有の暗号化キーで暗号化された更新プログラム５０４を格納した記憶装置６０５が接続されたサーバコンピュータ６０４が存在し、６０６はサーバコンピュータ６０４の内部を示している。サーバコンピュータ６０６の内部には暗号化装置６０７が備わっている。
【００２０】
携帯情報端末６０１のプログラムを更新する必要が生じた際に、携帯情報端末６０１の製造者が製造者固有の暗号化キーで暗号化されたプログラム６２０をインターネット６１８上のサーバ６０４に接続された記憶装置６０５上に格納して、携帯情報端末の使用者にプログラムが更新されたことを郵便や電子メールなどで通知する。通知を受けた使用者はクライアントコンピュータ６０２と携帯情報端末６０１を接続し、さらにインターネット６１８に接続してクライアントコンピュータ上で携帯情報端末６０１用プログラム更新のためのプログラムを実行する。このプログラムはまず携帯情報端末６０１の各機器に固有な暗号化キー６１０を外部インタフェース制御装置６１１及びシリアルインタフェース５０６を経由してクライアントコンピュータ６０２上に取得し、さらにその暗号化キー６１０をインターネット６１８を経由してサーバ６０４に送信する。サーバ６０４では要求のあった携帯情報端末用プログラムの暗号化された更新プログラム６２０を記憶装置６０５から取り出し、インターネット６１８経由で送られてきた暗号化キー６１０を用いて、暗号化装置６０７でさらに暗号化する。この二重に暗号化されたプログラムはサーバ６０４によりインターネット６１８を経由してクライアントコンピュータ６０２に送信される。二重に暗号化されたプログラムを受信したクライアントコンピュータ６０２は一旦記憶装置６０３上に格納し、すべて受信が終わった時点でこの二重に暗号化されたプログラム６１９を携帯情報端末６０１に送信する。シリアルインターフェース５０６及び外部インタフェース制御装置６１１を経由して送信された二重に暗号化されたプログラム６１９は、復号化装置６１２内で、製造者固有の復号化キー４０７及び機器固有の復号化キー６１３を用いて復号化され、内部バス４０５、メモリ制御装置４０３を経由して復号化されたプログラム５１３としてメモリ４０４上に格納され、プログラムの更新が終了する。
【００２１】
本実施例のように、製造者固有の暗号化に加えて組込み機器固有の暗号化を行うことで、同じ名称・型番を持つが出荷時期に応じて仕様が異なるような製品であった場合においても、それぞれの機器に応じた更新プログラムを使用者に提供することが可能となる。また、クライアントコンピュータ６０２からの要求をサーバ６０４などで記録しておくことによって、各機器のプログラム更新状況などを製造者側で把握することも可能となる。
【００２２】
図４は本発明の実施の形態３を示すブロック図である。本発明の実施の形態２の構成のプログラム更新方法のうち、クライアントコンピュータ６０２の代わりに、外部インタフェース制御装置７１１に接続された無線送受信装置７１０を持ち自らインターネットに接続可能な組込み機器である携帯電話７０１に変え、さらにクライアントコンピュータ６０２に接続されていた記憶装置６０３の代わりに、外部メモリ７１３とのインタフェースである外部メモリ用スロット７１２を外部インタフェース制御装置７１１に付加したものである。
【００２３】
本発明の実施の形態２と同様に、携帯電話７０１用のプログラムの更新要求を通知された使用者は、プログラム更新用のプログラムを携帯電話７０１上で実行し、携帯電話７０１の無線通信を用いたインターネット接続機能を用いて、インターネット６１８に接続したのち、機器固有の暗号化キー６１０をインターネット６１８経由でサーバ６０４に送信する。サーバ６０４は本発明の実施の形態２と同様の手順で二重に暗号化されたプログラム６１９を生成し、インターネット６１８経由で携帯電話７０１に送信する。二重に暗号化されたプログラム６１９を受信した携帯電話７０１は無線送受信装置７１０を経由して外部インタフェース制御装置７１１に該当プログラムを送信し、外部メモリ用スロット７１２を経由して二重に暗号化されたままのプログラム６１９が外部メモリ７１３上に格納される。プログラム更新用のプログラムは、すべての受信が終了した後に、外部メモリ７１３上に格納された二重に暗号化されたプログラム６１９を外部メモリ用スロット７１２、外部インタフェース制御装置７１１を経由して復号化装置６１２に転送され、以降は本発明の実施の形態２と同様に非暗号化プログラムがメモリ４０４上に格納され、プログラムの更新が終了する。
【００２４】
本実施例により、通信機能を持つ組込み機器を用いることで、クライアントコンピュータなどを別に用意することなく、容易かつ安全に組み込み機器のプログラムの更新を行うことができる。本実施例及び実施の形態２では、二重に暗号化されたものを一旦外部メモリ７１３やクライアントコンピュータ６０２に接続された記憶装置６０３に保存したが、これはインターネット６１８との接続が途中で切断される可能性を考慮したためで、インターネットやその他の通信手段の通信品質が保証される場合には、これらの一時的な記憶用の装置は不要で、直接暗号化されたプログラムを復号化装置に転送して復号化し、内部記憶装置に格納することも可能である。
【００２５】
また本発明の実施の形態１では更新プログラムの配布にＣＤ−ＲＯＭを利用したが、実施の形態２や形態３のようにインターネットなどのネットワークを利用することも可能である。
【００２６】
【発明の効果】
以上述べたように、本発明においては組込み機器の外部インタフェースと内部記憶装置の間に復号化装置や認証装置を備えたことにより、製造者固有のキーで暗号化された、または認証情報が付加された正規のプログラムやデータを使用者が外部インタフェース経由で容易に組込み機器の内部記憶装置に格納することを可能にしつつ、製造者固有のキーで暗号化されていない、または認証情報が付加されていない例えば第三者により不正に作成されたプログラムやデータが内蔵記憶装置の内容を更新することを制限することが可能となる。また同時に、プログラムやデータを暗号化することによって、第三者がその内容を不正に解析することを制限することが可能となる。
【００２７】
さらに、上記構成に機器固有の暗号化キーおよび、そのための復号化装置を付加し動的に更新プログラムを暗号化したものを取得することで、機器固有のプログラム更新及び製造者による各使用者の組込み機器のプログラム・データ更新状況の把握が可能となる。
【図面の簡単な説明】
【図１】請求項１に記載した本発明の実施形態の一例の組込み機器プログラム更新方法を示す図。
【図２】本発明の実施の形態１の組込み機器プログラム更新方法を示す図。
【図３】本発明の実施の形態２の組込み機器プログラム更新方法を示す図。
【図４】本発明の実施の形態３の組込み機器プログラム更新方法を示す図。
【符号の説明】
４０１…組込み機器、４０２…ＣＰＵ、４０３…内部記憶装置コントローラ、４０４…内部記憶装置、４０５…内部装置用バス、４０６…復号化装置、４０７…復号化キー、４０８…外部インタフェース、４０９…外部インタフェース制御装置、５０１…携帯情報端末、５０２…携帯情報端末プログラム更新用コンピュータ、５０３…更新プログラム格納用ＣＤ−ＲＯＭ、５０４…暗号化された更新プログラム、５０５…携帯情報端末（内部）、５０６…シリアルインタフェース、５０７…外部インタフェース制御装置、５０８…復号化装置、５１３…復号化されたプログラム、６０１…携帯情報端末、６０２…携帯情報端末プログラム更新用コンピュータ、６０３…携帯情報端末プログラム更新用コンピュータ用記憶装置、６０４…暗号化プログラム配信用サーバコンピュータ、６０５…暗号化プログラム配信用サーバコンピュータ用記憶装置、６０６…暗号化プログラム配信用サーバコンピュータ（内部）、６０７…暗号化装置、６０８…携帯情報端末（内部）、６１０…機器固有暗号化キー、６１１…外部インタフェース制御装置、６１２…復号化装置、６１３…機器固有復号化キー、６１８…インターネット、６１９…二重暗号化されたプログラム、７０１…携帯電話、７０８…携帯電話（内部）、７１０…無線送受信装置、７１１…外部インタフェース制御装置、７１２…外部メモリ用スロット、７１３…携帯電話用外部メモリ。
【図１】
2004259077.tif 000003
【図２】
2004259077.tif 000004
【図３】
2004259077.tif 000005
【図４】
2004259077.tif 000006