(57)【要約】【課題】  携帯電話のような組み込みシステムのＱＲコード認識機能を利用して、ネットワークに接続することなくプログラムをインストールすることの可能なプログラム導入方法、携帯端末、組み込みシステムおよびプログラムを提供する。【解決手段】  バーコードまたは二次元コードを認識する機能を備えたコンピュータにプログラムを導入する方法は、前記コンピュータで実行可能なプログラムをエンコードしたバーコードまたは二次元コードを、当該所定のコンピュータに認識させるステップと、前記バーコードまたは二次元コードを認識することにより得られたプログラムを前記コンピュータに導入するステップとを有する。【選択図】  図３
2009134351.tif 000002
【特許請求の範囲】
【請求項１】
バーコードまたは二次元コードを認識する機能を備えたコンピュータにプログラムを導入する方法であって、
前記コンピュータで実行可能なプログラムをエンコードしたバーコードまたは二次元コードを、当該コンピュータに認識させるステップと、
前記バーコードまたは二次元コードを認識することにより得られたプログラムを前記コンピュータに導入するステップと、を有することを特徴とするプログラム導入方法。
【請求項２】
バーコードまたは二次元コードを認識する機能を備え、プログラムを実行する機能を備えた組み込みシステムにプログラムを導入する方法であって、
前記組み込みシステムで実行可能なプログラムをエンコードしたバーコードまたは二次元コードを、当該ポータブル機器に認識させるステップと、
前記バーコードまたは二次元コードを認識することにより得られたプログラムを、前記組み込みシステムに導入するステップと、を有することを特徴とするプログラム導入方法。
【請求項３】
バーコードまたは二次元コードを認識する機能を備え、プログラムを実行する機能を備えた携帯端末にプログラムを導入する方法であって、
前記携帯端末で実行可能なプログラムをエンコードしたバーコードまたは二次元コードを、当該携帯端末に認識させるステップと、
前記バーコードまたは二次元コードを認識することにより得られたプログラムを、前記携帯端末に導入するステップと、を有することを特徴とするプログラム導入方法。
【請求項４】
被写体の画像データを取得するカメラ部と、
前記カメラ部の取得した画像データに含まれるバーコードまたは二次元コードを認識するコード認識部と、
前記カメラ部および前記コード認識部を制御するとともに、プログラムを実行する機能を有する制御部とを備え、
前記カメラ部の撮影したバーコードまたは二次元コードの画像を認識することにより得られたプログラムを当該制御部に導入する機能を有することを特徴とする組み込みシステム。
【請求項５】
前記制御部は、Ｊａｖａ（登録商標）プログラムを実行する機能を有し、バーコードまたは二次元コードの画像を認識することによりＪａｖａ（登録商標）プログラムを導入する機能を有することを特徴とする請求項４に記載の組み込みシステム。
【請求項６】
被写体の画像データを取得するカメラ部と、
前記カメラ部の取得した画像データに含まれるバーコードまたは二次元コードを認識するコード認識部と、
前記カメラ部および前記コード認識部を制御するとともに、プログラムを実行する機能を有する制御部とを備えた携帯端末であって、
前記制御部は、前記カメラ部の取得したバーコードまたは二次元コードの画像を認識することにより得られたプログラムを当該制御部で実行できるように導入することを特徴とする携帯端末。
【請求項７】
前記制御部は、Ｊａｖａ（登録商標）プログラムを実行する機能を有し、バーコードまたは二次元コードの画像を認識することによりＪａｖａ（登録商標）プログラムを導入する機能を有することを特徴とする請求項６に記載の携帯端末。
【請求項８】
Ｊａｖａ（登録商標）プログラムを実行する機能をコンピュータに実現させるＪａｖａ（登録商標）実行環境プログラムであって、
Ｊａｖａ（登録商標）プログラムをエンコードしたバーコードまたは二次元コードを認識する機能と、
バーコードまたは二次元コードを認識することによって得られたＪａｖａ（登録商標）プログラムを保存する機能と、
保存されているＪａｖａ（登録商標）プログラムをロードする機能と、
ロードされたＪａｖａ（登録商標）プログラムを実行する機能と、をコンピュータに実現させることを特徴とするプログラム。
【請求項９】
Ｊａｖａ（登録商標）プログラムを実行する機能をコンピュータに実現させるＪａｖａ（登録商標）実行環境プログラムであって、
暗号化されたＪａｖａ（登録商標）プログラムをエンコードしたバーコードまたは二次元コードを認識する機能と、
バーコードまたは二次元コードを認識することによって得られた暗号化されたＪａｖａ（登録商標）プログラムを保存する機能と、
保存されている暗号化されたＪａｖａ（登録商標）プログラムを復号化してロードする機能と、
ロードされたＪａｖａ（登録商標）プログラムを実行する機能と、をコンピュータに実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム導入方法、組み込みシステム、携帯端末およびプログラムに関するものである。
【背景技術】
【０００２】
近時における携帯電話やＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）のような携帯端末は、プログラムを実行することによって様々な機能を実現することの可能な構成をとっており、このような携帯端末に後からプログラムを追加する方法としては、ネットワーク経由でダウンロードする方法がＪａｖａ（登録商標）プログラム等の分野で広く行われている。また、一部の携帯端末においては製品に添付されたディスクから追加する方法等も提供されている。
【０００３】
一方、一部の携帯端末には、内蔵カメラによりバーコードや２次元コード（２次元バーコード）の画像を取得して解読する機能を備えたものが登場している。例えば、２００７年９月の時点において日本国内で販売されている携帯電話の大部分は２次元コードの一種であるＱＲコードに対応しており、内蔵カメラをコードリーダーとして起動してＱＲコードを撮影し、撮影されたＱＲコードを解読することで種々の処理を行うサービスが実現されている。
【０００４】
ＱＲコードを利用した既存のサービスとしては、電話帳登録機能、メール連係機能、ブックマーク登録機能を挙げることができる。これらの機能は、ＱＲコードを解読することで得られたデータ中に各機能に対応した識別子が含まれている場合に実行される。例えば、電話帳登録機能は、電話帳登録機能に対応した識別子とともに、名前、電話番号、メールアドレス、住所等のデータをＱＲコードにエンコードし、これを携帯端末の内蔵カメラで撮影して解読することにより名前、電話番号、メールアドレスおよび住所等を認識するとともに、アドレス帳のプログラムを起動して認識されたデータを登録するものである。
【０００５】
また、メール連係機能は、宛先、標題、本文等のデータをＱＲコードにエンコードし、これを携帯端末で認識することにより宛先、標題、本文等の内容を認識するとともに、メーラーを起動して認識されたデータに沿ってメールを作成するものである。さらに、ブックマーク登録機能は、サイト名とタイトルを同じくＱＲコードにエンコードして、これを認識した携帯端末がブラウザを起動してブックマークに登録するものである。
【０００６】
さらに、特開２００３−３３０８３１公報には、Ｊａｖａ（登録商標）プログラム（Ｊａｖａ（登録商標）アプリ）をダウンロードするページのＵＲＬを２次元コードにコード化し、これを２次元コード認識機能を備えた携帯端末に読み込むことで、長いＵＲＬを入力したり複雑なリンクを辿ることなく所定のＪａｖａ（登録商標）プログラムをネットワークからダウンロードしてインストールする技術が開示されている。
【特許文献１】特開２００３−３３０８３１
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、特開２００３−３３０８３１公報に記載されているようにネットワークを介してダウンロードを行う場合、セキュリティの観点、また通信量に応じて課金を行う都合上、ユーザにネットワーク接続の可否およびダウンロードの可否を問い合わせる必要が生じるため煩雑であるという問題がある。また、国や地域によっては携帯端末の接続する移動体通信網が十分整っていなかったり、通信コストが高くユーザがネットワークに接続してダウンロードすることを好まない場合もあり、そのような場合には上記のようにしてプログラムをダウンロードするサービスは拡がりがたい。
【０００８】
そこで本発明は、携帯電話のような組み込みシステムのＱＲコード認識機能を利用して、ネットワークに接続することなくプログラムをインストールすることの可能なプログラム導入方法、携帯端末、組み込みシステムおよびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、本発明の第１の観点は、バーコードまたは二次元コードを認識する機能を備えたコンピュータにプログラムを導入する方法であって、
前記コンピュータで実行可能なプログラムをエンコードしたバーコードまたは二次元コードを、当該所定のコンピュータに認識させるステップと、
前記バーコードまたは二次元コードを認識することにより得られたプログラムを前記コンピュータに導入するステップと、を有することを特徴とするプログラム導入方法を提供する。
【００１０】
また、本発明の第２の観点は、バーコードまたは二次元コードを認識する機能を備え、プログラムを実行する機能を備えた組み込みシステムにプログラムを導入する方法であって、
前記組み込みシステムで実行可能なプログラムをエンコードしたバーコードまたは二次元コードを、当該組み込みシステムに認識させるステップと、
前記バーコードまたは二次元コードを認識することにより得られたプログラムを、前記組み込みシステムに導入するステップと、を有することを特徴とするプログラム導入方法を提供する。
【００１１】
さらに本発明の第３の観点は、バーコードまたは二次元コードを認識する機能を備え、プログラムを実行する機能を備えた携帯端末にプログラムを導入する方法であって、
前記携帯端末で実行可能なプログラムをエンコードしたバーコードまたは二次元コードを、当該携帯端末に認識させるステップと、
前記バーコードまたは二次元コードを認識することにより得られたプログラムを、前記携帯端末に導入するステップと、を有することを特徴とするプログラム導入方法を提供する。
【００１２】
さらにまた、本発明の第４の観点は、被写体の画像データを取得するカメラ部と、
前記カメラ部の取得した画像データに含まれるバーコードまたは二次元コードを認識するコード認識部と、
前記カメラ部および前記コード認識部を制御するとともに、プログラムを実行する機能を有する制御部とを備え、
前記カメラ部の取得したバーコードまたは二次元コードの画像を認識することにより得られたプログラムを当該制御部に導入する機能を有することを特徴とする組み込みシステムを提供する。
【００１３】
さらにまた、本発明の第５の観点は、被写体の画像データを取得するカメラ部と、
前記カメラ部の取得した画像データに含まれるバーコードまたは二次元コードを認識するコード認識部と、
前記カメラ部および前記コード認識部を制御するとともに、プログラムを実行する機能を有する制御部とを備えた携帯端末であって、
前記制御部は、前記カメラ部の取得したバーコードまたは二次元コードの画像を認識することにより得られたプログラムを当該制御部で実行できるように導入することを特徴とする携帯端末を提供する。
【００１４】
本発明の第４および第５の観点においては、前記制御部は、Ｊａｖａ（登録商標）プログラムを実行する機能を有し、バーコードまたは二次元コードの画像を認識することによりＪａｖａ（登録商標）プログラムを導入する機能を有するものとすることができる。
【００１５】
さらにまた、本発明の第６の観点は、Ｊａｖａ（登録商標）プログラムを実行する機能をコンピュータに実現させるＪａｖａ（登録商標）実行環境プログラムであって、
Ｊａｖａ（登録商標）プログラムをエンコードしたバーコードまたは二次元コードを認識する機能と、
バーコードまたは二次元コードを認識することによって得られたＪａｖａ（登録商標）プログラムを保存する機能と、
保存されているＪａｖａ（登録商標）プログラムをロードする機能と、
ロードされたＪａｖａ（登録商標）プログラムを実行する機能とをコンピュータに実現させることを特徴とするプログラムを提供する。
【００１６】
さらにまた、本発明の第７の観点は、Ｊａｖａ（登録商標）プログラムを実行する機能をコンピュータに実現させるＪａｖａ（登録商標）実行環境プログラムであって、
暗号化されたＪａｖａ（登録商標）プログラムをエンコードしたバーコードまたは二次元コードを認識する機能と、
バーコードまたは二次元コードを認識することによって得られた暗号化されたＪａｖａ（登録商標）プログラムを保存する機能と、
保存されている暗号化されたＪａｖａ（登録商標）プログラムを復号化してロードする機能と、
ロードされたＪａｖａ（登録商標）プログラムを実行する機能とをコンピュータに実現させることを特徴とするプログラムを提供する。
【発明の効果】
【００１７】
本発明は、実行可能なプログラムをエンコードしたバーコードまたは二次元コードを認識することにより得られたプログラムを、コンピュータ、組み込みシステムまたは携帯端末に導入するので、バーコードまたは二次元コードを認識するだけでネットワークに接続することなくプログラムを導入することができる。したがって、ユーザにネットワーク接続やダウンロードの可否を問い合わせることなく、煩雑さを感じさせずにプログラムを導入させることが可能となる。
【００１８】
また、上記のようにプログラムを導入する機能を携帯端末または組み込みシステムに搭載する場合には、コンピュータ、組み込みシステムまたは携帯端末にＪａｖａ（登録商標）プログラムを実行する機能を設け、バーコードまたは二次元コードの画像を認識することによりＪａｖａ（登録商標）プログラムを導入することが好適である。Ｊａｖａ（登録商標）プログラムは、仕様によりセキュリティ機構を内包したＪａｖａ（登録商標）実行環境で実行されるので、このようにすることでバーコードまたは二次元コードから悪意あるプログラムが導入されて、携帯端末または組み込みシステムに危険を及ぼしたり、ユーザに損害を与えたりすることを適切に防止することができる。
【００１９】
さらに、Ｊａｖａ（登録商標）プログラムを実行する機能をコンピュータに実現させるＪａｖａ（登録商標）実行環境プログラムに本発明を適用する場合には、Ｊａｖａ（登録商標）プログラムをエンコードしたバーコードまたは二次元コードを認識する機能と、バーコードまたは二次元コードを認識することによって得られたＪａｖａ（登録商標）プログラムを保存する機能と、保存されているＪａｖａ（登録商標）プログラムをロードする機能と、ロードされたＪａｖａ（登録商標）プログラムを実行する機能とをコンピュータに実現させる。このようにすることで、Ｊａｖａ（登録商標）実行環境プログラムによって、Ｊａｖａ（登録商標）プログラムをエンコードしたバーコードまたは二次元コードを認識し、得られたＪａｖａ（登録商標）プログラムを保存してロードおよび実行することが可能となる。ここで、プログラムの改竄による問題の発生を抑制する観点からは、バーコードまたは二次元コードにエンコードするＪａｖａ（登録商標）プログラムを暗号化し、ロードする際にはじめて復号化する構成とすることが有効である。
【発明を実施するための最良の形態】
【００２０】
以下、本発明を実施するための最良の形態について説明する。図１は、本発明にかかる携帯端末および組み込みシステムの一実施形態としての携帯電話１００の機能ブロック図である。図１に示すように、この携帯電話１００は、主として、カメラ部１０１と、コード認識部１０２と、表示部１０３と、キー入力部１０４と、制御部１０５と、通信部１０６と、記憶部１０７とから構成されている。
【００２１】
カメラ部１０１は、所定の光学系および受像素子を有し、携帯電話１００にデジタル画像を撮影する機能を提供する。携帯電話１００でデジタル画像を撮影する際には、ユーザがキー入力部１０４で所定の操作を行うことに応じて制御部１０５によってカメラ部１０１が起動される。起動されたカメラ部１０１は、光学系の取得した被写体像から所定露光時間で受像素子が得たデータを制御部１０５へ返す処理を所定時間間隔で繰り返し、当該データを制御部１０５が表示部１０３に表示することによりライブビュー機能を実現する。そして、その状態でユーザがさらにキー入力部２０７で所定の操作を行うことにより、カメラ部１０１は光学系の取得した被写体像から設定された撮影条件で画像データを生成し、生成された画像データは制御部１０５によって記憶部１０７に保存される。また、カメラ部１０１には、取得された画像データをコード認識部１０２に認識させるコードリーダとして動作するモードを持っていても良い。そのようなモードでは、起動されたカメラ部１０１に前述のライブビュー機能を実現させつつ、制御部１０５はカメラ部１０１から受け取った画像データを後述するコード認識部１０２に逐次的に引き渡し、コード認識部１０２にて画像データのデコードを試みて、デコードできた場合には得られたデータを制御部１０５に引き渡す処理を行う
コード認識部１０２は、カメラ部１０１によって取得された２次元コードの画像データを認識してデコードし、２次元コードにエンコードされている元のデータを得る機能を提供する。コード認識部１０２が対応する２次元コードについて特に制限はないが、ここでは図２に示すようなＱＲコード１１０に対応している場合を示す。このようなコード認識部１０２は、後述する制御部１０５上で所定のプログラムを実行することにより仮想的に構成することができるが、機能の一部または全部をハードウェアによって構成することも可能である。
【００２２】
表示部１０３は、液晶表示装置または有機液晶表示装置であって、携帯電話１００の動作状態、携帯電話１００を操作するためのユーザインターフェイス等を制御部１０５の制御下で表示するものである。
【００２３】
キー入力部１０４は、携帯電話１００の筐体に設けられたキーパッド、ならびにその他ボタン等の入力装置であり、ユーザが操作することにより各キーまたはボタンに応じた信号であるキーイベントが制御部１０５に通知され、種々の操作ないしは制御に利用される。
【００２４】
制御部１０５は、不図示のＣＰＵ上で所定のプログラムを実行することにより仮想的に構成される機能ブロックであって、携帯電話１００のカメラ部１０１、コード認識部１０２、表示部１０３、キー入力部１０４、通信部１０６および記憶部１０７といった各機能ブロックとの間でデータおよび制御信号をやり取りすることにより、携帯電話１００の各種機能を実現するものである。また、制御部１０５は、Ｊａｖａ（登録商標）言語で作成されたＪａｖａ（登録商標）プログラムを実行する機能を有している。このような機能は、前述のＣＰＵでＪａｖａ（登録商標）実行環境プログラムを実行することによって構成される。さらに、制御部１０５は所定のアルゴリズムにかかる暗号化機能を有しており、携帯電話１００に割り当てられた暗号鍵を利用してデータの暗号化および復号化を行うことが可能となっている。
【００２５】
通信部１０６は、制御部１０５の制御下で動作することにより、移動体通信網と接続し、別のノードとの通信を行う機能を提供する。ここでの通信としては、例えば、他の携帯電話や固定電話と通信接続して行う回線交換型通信、他の携帯電話またはサーバと接続して行うパケット交換型通信等が挙げられる。
【００２６】
記憶部１０７は、所定の情報を後述する制御部１０５の制御下で記憶し、また制御部１０５に記憶している情報を提供するための読み書き可能なメモリである。記憶部１０７には、制御部１０５のＪａｖａ（登録商標）プログラム実行機能でＪａｖａ（登録商標）プログラムを実行する際にオブジェクトが配置されるメモリ領域であるＪａｖａ（登録商標）ヒープ１０８と、後述する動作によりＱＲコードから得られたＪａｖａ（登録商標）アプリ（Ｊａｖａ（登録商標）プログラム）を保存するＱＲアプリ記憶部１０９とを含んでいる。ここで、Ｊａｖａ（登録商標）ヒープ１０８は、制御部１０５がＪａｖａ（登録商標）プログラムを実行する機能を実現する際に、記憶部１０７から動的に割り当てられる構成とすることができる。これに対して、ＱＲアプリ記憶部１０９は同じく動的な構成としてもよいが、Ｊａｖａ（登録商標）アプリを実行する場合の永続的なメモリ領域として記憶部１０７の所定領域を割り当てる構成としてもよい。後者の場合には、制御部１０５のＣＰＵがＪａｖａ（登録商標）実行環境プログラムの実行を一旦終了して再開した場合に、前回の実行時にＱＲコードから取得して保存したＪａｖａ（登録商標）アプリを再度利用することが可能となる。
【００２７】
ここで、本発明で利用するＱＲコードについて説明する（図２参照）。ＱＲコード１１０はＪＩＳ  Ｘ５０１０規格に沿って作成されたものを使用することができるが、本実施形態ではＪａｖａ（登録商標）アプリのコードをエンコードするため、「型番４０」の１７７×１７７モジュール（バイナリ（８ビット）最大２，９５３バイト）を使用することがデータ容量の観点から望ましい。ＱＲコード１１０にエンコードするＪａｖａ（登録商標）アプリの形態は、ソースコードをコンパイルして得られたクラスファイルと画像等のリソースを一つにまとめてＺＩＰ形式で圧縮したＪＡＲの形式とすることができる。また、本発明では、Ｊａｖａ（登録商標）アプリのＪＡＲを暗号化した後にＱＲコード１１０にエンコードする。暗号の形式は共通鍵方式として、予め携帯電話１００に持たせてある暗号鍵およびアルゴリズムを使用するものとする。なお、より大容量のアプリをＱＲコードにエンコードするためには、複数のＱＲコードを並べて連続して認識させ、得られたデータを結合するように構成しても良い。
【００２８】
次に、以上のような携帯電話１００で本発明にかかるプログラム導入方法を実施する動作について、図３のフローチャートを参照しながら説明する。この動作は制御部１０５が携帯電話１００の機能ブロックをそれぞれ所定に制御することによって行われるが、このような制御部１０５の機能はＣＰＵが本発明にかかるプログラムを実行することにより実現されるものである。ここでは、Ｊａｖａ（登録商標）実行環境プログラムと、予めインストールされた所定のＪａｖａ（登録商標）アプリ（以下、「ＱＲアプリランチャー」と称する）との組み合わせを本発明にかかるプログラムとする場合を示す。また、この動作では、Ｊａｖａ（登録商標）言語で作成されたプログラム（Ｊａｖａ（登録商標）プログラム、Ｊａｖａ（登録商標）アプリ）を暗号化してＱＲコードにエンコードし、これを認識することにより当該Ｊａｖａ（登録商標）アプリを携帯電話１００に導入し、実行する。
【００２９】
最初に、表示部１０３にＪａｖａ（登録商標）アプリの選択画面を表示した状態からユーザがキー入力部１０４を操作して「ＱＲアプリランチャー」を選択すること等をトリガーとして、制御部１０５がＱＲアプリランチャーを起動する（ＳＴ１０１）。ここで、ＱＲアプリランチャーはＪａｖａ（登録商標）アプリとして構成されているので、制御部１０５はまずＣＰＵでＪａｖａ（登録商標）実行環境プログラムを実行し、Ｊａｖａ（登録商標）実行環境プログラムの機能によってＱＲアプリランチャーを起動する。起動されたＱＲアプリランチャーは、表示部１０３にメニューを表示する（ＳＴ１０２）。次いで、メニューから「ＱＲアプリ取り込み」が選択されたかの判断を行い（ＳＴ１０３）、「ＱＲアプリ取り込み」が選択されたと判断した場合には、ＳＴ１０４以下の処理を行う。「ＱＲアプリ取り込み」が選択されなかった場合の処理については説明を省略する。
【００３０】
「ＱＲアプリ取り込み」が選択されると、まず暗号化されたＪａｖａ（登録商標）アプリをエンコードしたＱＲコードの画像データをカメラ部１０１で取得し（ＳＴ１０４）、取得された画像データをコード認識部１０２でエンコードし、暗号化されたＪａｖａ（登録商標）アプリを取得する（ＳＴ１０５）。ここで、ＳＴ１０４およびＳＴ１０５については、カメラ部１０１をバーコードリーダーモードで起動して行うようにしても良い。その後、暗号化されたＪａｖａ（登録商標）アプリをＱＲアプリ記憶部１０９に保存する（ＳＴ１０６）。
【００３１】
続いて、ＱＲアプリ記憶部１０９に格納されている暗号化されたＪａｖａ（登録商標）アプリを復号化するとともに、Ｊａｖａ（登録商標）ヒープにロードする（ＳＴ１０７）。ここでの復号化は、予め携帯電話１００に持たせてある暗号鍵を使用して行うことができ、暗号を復号する機能は所定の暗号アルゴリズムを実装したプログラムをＣＰＵで実行することにより制御部１０５で実現する。復号化により得られたＪＡＲ形式のＪａｖａ（登録商標）アプリをロードする機能は、既存のＪａｖａ（登録商標）実行環境で通常のＪａｖａ（登録商標）アプリをロードする場合の処理と同様にして行うことができる。
【００３２】
次に、ロードされたコードがＪａｖａ（登録商標）実行環境で実行できるか否かを判断する（ＳＴ１０８）。このような判断は、ロードされたコードが所定のフォーマットを満たしているか否かを判断することにより行うことができ、例えば、既存のＪａｖａ（登録商標）実行環境で通常のＪａｖａ（登録商標）アプリのコードをベリファイする場合の処理と同様に、またはこれを一部簡略化して行うことができる。ＳＴ１０８でＪａｖａ（登録商標）実行環境で実行できると判断された場合には、ロードされたＪａｖａ（登録商標）アプリを実行し（ＳＴ１０９）、ロードされたＪａｖａ（登録商標）アプリの実行が完了すると一連の動作を終了する。一方、ＳＴ１０８でＪａｖａ（登録商標）実行環境で実行できると判断されなかった場合には、Ｊａｖａ（登録商標）アプリを実行することなく一連の動作を終了する。
【００３３】
以上のような動作によれば、カメラ部１０１を備えた携帯電話１００のコード認識部１０１の機能を利用して、ネットワークに接続することなくプログラムをインストールすることが可能である。したがって、ユーザにネットワーク接続やダウンロードの可否を問い合わせることなく、煩雑さを感じさせずにプログラムを導入させることができる。また、このような動作によれば、ネットワークに接続しがたい事情のある国や地域であっても、携帯電話１００のプログラムをユーザに追加させる方法を提供することが可能である。
【００３４】
また、本実施形態では、ＱＲコードを認識することにより導入されるプログラムをＪａｖａ（登録商標）プログラムとしているので、セキュリティ的に問題のあるプログラムがＱＲコードを認識することにより携帯電話１００に導入されても、Ｊａｖａ（登録商標）実行環境のセキュリティ機構によって、導入されたプログラムが携帯電話１００にシステム的な危険を及ぼしたり、ユーザに損害を与えたりすることを防止することができる。
【００３５】
さらに、本実施形態では、Ｊａｖａ（登録商標）プログラムを暗号化してからＱＲコードにエンコードし、当該ＱＲコードを認識した携帯電話１００はＪａｖａ（登録商標）プログラムを暗号化されたままで保存し、ロードする際にはじめて復号化する構成としたので、プログラムの改竄による問題の発生を抑制することが可能である。
【００３６】
以上、本発明の実施の形態について説明したが、本発明はこれに限定されることなく、その趣旨を逸脱しない範囲で種々の改良・変更が可能であることは勿論である。
【００３７】
例えば、上記実施形態においては、本発明を携帯電話１００に適用した場合を示したが、本発明は各種コンピュータ一に適用することも可能であり、ＰＤＡ、デジタルテレビ、セットトップボックス、ＡＶ機器、家電機器、ゲーム機器等といった各種電子機器の組み込みシステム等に広く適用することも可能である。また、上記実施形態では、プログラムをエンコードするバーコードまたは二次元コードとしてＱＲコードを利用する場合を示したが、ＱＲコード以外のコードを利用することも可能である。
【００３８】
さらに、上記実施形態ではＱＲコードを認識することにより取得されたプログラムを直ちに起動する場合について示したが、これに限るものではない。例えば、取得されたプログラムをＱＲアプリ記憶部１０９に保存してから、ＱＲアプリ記憶部１０９に保存されているアプリを選択するためのメニュー画面を表示するようにしても構わない。さらにまた、プログラムの暗号化は必須ではなく、Ｊａｖａ（登録商標）プログラム以外のプログラムをＱＲコードにエンコードするようにしても構わない。
【図面の簡単な説明】
【００３９】
【図１】本実施形態における携帯電話１００の機能ブロック図。
【図２】本実施形態における２次元コードの一例を示す図。
【図３】本実施形態における動作のフローチャートを示す図。
【符号の説明】
【００４０】
１００  携帯電話
１０１  カメラ部
１０２  コード認識部
１０３  表示部
１０４  キー入力部
１０５  制御部
１０６  通信部
１０７  記憶部
１０８  Ｊａｖａ（登録商標）ヒープ
１０９  ＱＲアプリ記憶部
【図１】
2009134351.tif 000003
【図２】
2009134351.tif 000004
【図３】
2009134351.tif 000005