(57)【要約】  ＩＣカード（２００）は、本発明の半導体メモリの一例であり、複数のアプリケーションプログラムを実行可能であって、図書館ＡＰＬ（３０１）に関連するデータを記憶するメモリ領域（３３１）と、公共プールＡＰＬ（３０２）に関連するデータを記憶するメモリ領域（３３２）と、アプリケーションプログラムの、関連するデータに対するセキュリティレベルを特定するための基準に基づいて、図書館ＡＰＬ（３０１）および公共プールＡＰＬ（３０２）の、関連するデータに対するそれぞれのセキュリティレベルを特定するセキュリティレベル設定部（６０３）と、セキュリティレベル設定部（６０３）により特定された２つのセキュリティレベルの関係が所定の条件を満たす場合、メモリ領域（３３１）に記憶されているデータＡを半導体メモリ外部に出すことなく複製して、かつ、メモリ領域（３３２）に記憶させるデータ操作部（６０８）とを備える。
2007532984.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２つのアプリケーションプログラムを実行可能な半導体メモリであって、
第１のアプリケーションプログラムに関連するデータを記憶する第１記憶部と、
第２のアプリケーションプログラムに関連するデータを記憶する第２記憶部と、
アプリケーションプログラムの、関連するデータに対するセキュリティレベルを特定するための基準に基づいて、前記第１のアプリケーションプログラムおよび前記第２のアプリケーションプログラムの、関連するデータに対するそれぞれのセキュリティレベルを特定するレベル特定部と、
前記レベル特定部により特定された２つの前記セキュリティレベルの関係が所定の条件を満たす場合、前記第１記憶部に記憶されているデータを半導体メモリ外部に出すことなく複製して、かつ、前記第２記憶部に記憶させる複製部と
を備える半導体メモリ。
【請求項２】
更に、前記レベル特定部により特定された２つの前記セキュリティレベルを比較することにより前記関係を特定する比較部を備え、
前記複製部は、前記比較部により特定された前記関係が所定の条件を満たす場合、前記第１記憶部に記憶されているデータを複製して前記第２記憶部に記憶させる
請求項１記載の半導体メモリ。
【請求項３】
更に、前記レベル特定部により特定された２つの前記セキュリティレベルを比較することにより特定された前記関係を取得する取得部を備え、
前記複製部は、前記取得部により取得された前記関係が所定の条件を満たす場合、前記第１記憶部に記憶されているデータを複製して前記第２記憶部に記憶させる
請求項１記載の半導体メモリ。
【請求項４】
前記セキュリティレベルは、前記アプリケーションプログラムが利用する暗号の強度によって特定される値である
請求項１記載の半導体メモリ。
【請求項５】
前記暗号の強度は、前記暗号の暗号方式が複雑なほど強い
請求項４記載の半導体メモリ。
【請求項６】
前記暗号の強度は、暗号鍵のビット長が長いほど強い
請求項４記載の半導体メモリ。
【請求項７】
前記セキュリティレベルは、前記アプリケーションプログラムが使用するアプリケーションプロトコルのバージョン番号によって特定される値である
請求項１記載の半導体メモリ。
【請求項８】
前記セキュリティレベルは、前記アプリケーションプログラムのバージョン番号によって特定される値である
請求項１記載の半導体メモリ。
【請求項９】
少なくとも２つのアプリケーションプログラムを実行可能な半導体メモリにおけるデータ複製方法であって、
前記半導体メモリは、第１のアプリケーションプログラムに関連するデータを記憶する第１記憶部と、第２のアプリケーションプログラムに関連するデータを記憶する第２記憶部とが設けられており、
前記データ複製方法は、
アプリケーションプログラムの関連するデータに対するセキュリティレベルを特定するための基準に基づいて、前記第１のアプリケーションプログラムおよび前記第２のアプリケーションプログラムの、関連するデータに対するそれぞれのセキュリティレベルを特定する特定ステップと、
前記特定ステップにおいて特定された２つの前記セキュリティレベルの関係が所定の条件を満たす場合、前記第１記憶部に記憶されているデータを半導体メモリ外部に出すことなく複製して、かつ、前記第２記憶部に記憶させる複製ステップと
を含むデータ複製方法。
【請求項１０】
少なくとも２つのアプリケーションプログラムを実行可能な半導体メモリにおけるデータ複製のためのプログラムであって、
前記半導体メモリは、第１のアプリケーションプログラムに関連するデータを記憶する第１記憶部と、第２のアプリケーションプログラムに関連するデータを記憶する第２記憶部とが設けられており、
前記データ複製のためのプログラムは、
アプリケーションプログラムの関連するデータに対するセキュリティレベルを特定するための基準に基づいて、前記第１のアプリケーションプログラムおよび前記第２のアプリケーションプログラムの、関連するデータに対するそれぞれのセキュリティレベルを特定する特定ステップと、
前記特定ステップにおいて特定された２つの前記セキュリティレベルの関係が所定の条件を満たす場合、前記第１記憶部に記憶されているデータを半導体メモリ外部に出すことなく複製して、かつ、前記第２記憶部に記憶させる複製ステップと
をコンピュータに実行させるためのプログラム。
【請求項１１】
少なくとも２つのアプリケーションプログラムを実行可能な半導体メモリにおけるデータ複製のためのプログラムが格納された、コンピュータが読み取り可能な記録媒体であって、
前記半導体メモリは、第１のアプリケーションプログラムに関連するデータを記憶する第１記憶部と、第２のアプリケーションプログラムに関連するデータを記憶する第２記憶部とが設けられており、
前記記録媒体は、
アプリケーションプログラムの関連するデータに対するセキュリティレベルを特定するための基準に基づいて、前記第１のアプリケーションプログラムおよび前記第２のアプリケーションプログラムの、関連するデータに対するそれぞれのセキュリティレベルを特定する特定ステップと、
前記特定ステップにおいて特定された２つの前記セキュリティレベルの関係が所定の条件を満たす場合、前記第１記憶部に記憶されているデータを半導体メモリ外部に出すことなく複製して、かつ、前記第２記憶部に記憶させる複製ステップと
をコンピュータに実行させるためのプログラムが格納された記録媒体。
【請求項１２】
少なくとも２つのアプリケーションプログラムを実行可能な半導体メモリにおけるデータの複製を制御する集積回路であって、
前記半導体メモリは、第１のアプリケーションプログラムに関連するデータを記憶する第１記憶部と、第２のアプリケーションプログラムに関連するデータを記憶する第２記憶部とが設けられており、
前記集積回路は、
アプリケーションプログラムの関連するデータに対するセキュリティレベルを特定するための基準に基づいて、前記第１のアプリケーションプログラムおよび前記第２のアプリケーションプログラムの、関連するデータに対するそれぞれのセキュリティレベルを特定するレベル特定部と、
前記レベル特定部によって特定された２つの前記セキュリティレベルの関係が所定の条件を満たす場合、前記第１記憶部に記憶されているデータを半導体メモリ外部に出すことなく複製して、かつ、前記第２記憶部に記憶させる複製部と
を備える集積回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のアプリケーションプログラムを実行可能な半導体メモリに関する。
【背景技術】
【０００２】
現在、半導体メモリはマスメディアや金融機関、国、自治体など様々な分野から注目を集めている。その理由として、半導体メモリの持つ、格納データの保護機能が挙げられる。格納データの保護機能を持った半導体メモリとしてはＳＤメモリカードやＩＣカードがある。
【０００３】
図１は、一般的なＩＣカードの内部構造の概要を示す図である。図１に示すように、ＩＣカード２００は、アプリケーションプログラムを格納するＲＯＭ２０３と、アプリケーションプログラム実行の際に用いられるデータを一時的に格納するＲＡＭ２０２と、ＲＯＭ２０３に記憶されたアプリケーションプログラムに従って各種コマンド処理等の制御処理を行うＣＰＵ２０１と、外部からダウンロードされたアプリケーションプログラムを格納する書き換え可能なＥＥＰＲＯＭ２０４とを備える。
【０００４】
現在では、クレジットカードをはじめ多くの磁気カードがＩＣカードへ転換されてきている。ＩＣカードは磁気カードに比べて記憶容量が大きいことはもとより、格納される個人情報等の情報に対するセキュリティ機能の向上がなされていることが特徴として挙げられる。
【０００５】
以前は、ＩＣカードは通常一枚のカード内に電子マネー等の単一のアプリケーションプログラムのみが実行可能であった。しかしながら、近年では、ＩＣカードにおけるメモリの記憶容量やＣＰＵの処理速度向上にともない、一枚のＩＣカードに複数のアプリケーションプログラムを搭載し、実行することが可能となっている。これにより、利用者は、複数枚の異なるＩＣカードを所持する必要がなく、一枚のＩＣカードで異なる様々なアプリケーションプログラムを利用することが可能である。
【０００６】
このように、複数のアプリケーションプログラムを備え、それら複数のアプリケーションプログラムを実行可能なＩＣカードを、以下、マルチアプリケーション対応のＩＣカードという。また、以下の説明において、単にＩＣカードという場合はマルチアプリケーション対応のＩＣカードを意味する。
【０００７】
図２は、従来のＩＣカードにおけるソフトウエェアの構成を示す図である。ＩＣカードのソフトウェアはレイヤ構造をもち、このレイヤ構造では最下位層にアプリケーションプログラムが使用するメモリ領域３１０があり、この上位層にＯＳ３１１、最上位層に複数のアプリケーションプログラムが存在する。
【０００８】
図２に示すように、ＩＣカード２００は、第１クライアントＥＣアプリケーションプログラム（第１Ｃ＿Ｅ＿ＡＰＬ）３０１、第２クライアントＥＣアプリケーションプログラム（第２Ｃ＿Ｅ＿ＡＰＬ）３０２、およびクライアント公共アプリケーションプログラム（Ｃ＿Ｐ＿ＡＰＬ）３０３を含む、複数のアプリケーションプログラムを備えている。
【０００９】
このように、一枚のＩＣカードに複数のアプリケーションプログラムが備えられている場合、各アプリケーションプログラムはＯＳ３１１のファイヤウォール機能により、他のアプリケーションプログラムが使用するメモリ領域３１０を侵害することはないようになっている。つまり、それぞれのアプリケーションプログラムは、自身に関連するデータを保存するための専用のメモリ領域を有している。また、従来これらのアプリケーションプログラムは互いに独立しており、連携する手段も存在していない。
【００１０】
そのため、例えば、ある電子マネーのアプリケーションプログラムのメモリ領域３１０に保存されている個人情報を、異なるアプリケーションプログラムのメモリ領域３１０に複製する場合、ＩＣカード外のサーバのアプリケーションプログラムを利用し、そのサーバ経由でデータの複製を行う。
【００１１】
なお、以下、図および文中に記載されている「ＡＰＬ」はアプリケーションプログラムを意味する。また、「アプリケーションプログラムのデータ」とはそのアプリケーションプログラムに関連するデータであり、そのアプリケーションプログラム専用のメモリ領域に記憶されているデータを指す。また、「アプリケーションプログラムにデータを複製する」とはそのアプリケーションプログラム専用のメモリ領域にそのデータを複製することを意味する。
【００１２】
図３は、従来のＩＣカードにおいて、異なるアプリケーションプログラム間でデータの複製が行われる様子を示す概念図である。なお、ＩＣカード２００と、ＥＣサーバ１００とはリーダライタ１２１を介して通信を行う。
【００１３】
図３は、ＩＣカード２００において、第１Ｃ＿Ｅ＿ＡＰＬ３２１のメモリ領域に保存されているデータＡが、第２Ｃ＿Ｅ＿ＡＰＬ３２２のメモリ領域に複製される様子を示している。
【００１４】
また、データＡの複製に、電子商取引のサービスを提供するサーバであるＥＣサーバ１００が利用された場合を示している。
【００１５】
図３に示すように、第１Ｃ＿Ｅ＿ＡＰＬ３２１と第２Ｃ＿Ｅ＿ＡＰＬ３２２との間にはファイヤウォール３４０があり、ＩＣカード２００内で複製することはできない。そのため、ＥＣサーバ１００を経由しデータの複製を行う。複製の決定および、複製されるデータの選択は、ＥＣサーバ１００を利用するユーザにより行われる。
【００１６】
まず、ユーザにより、複製されるデータが選択され、複製実行の要求がＥＣサーバ１００になされる。ＥＣサーバ１００内の制御ＡＰＬ１０９はその選択と要求に基づき、読み出しＡＰＬ１０７およびＩＣカード２００内の第１Ｃ＿Ｅ＿ＡＰＬ３２１の認証を行う。更に、書き込みＡＰＬ１０８および第２Ｃ＿Ｅ＿ＡＰＬ３２２の認証を行う。
【００１７】
認証完了後、制御ＡＰＬ１０９は読み出しＡＰＬ１０７にデータの読み出しを要求する。読み出しＡＰＬ１０７はリーダライタ１２１を介してＩＣカード２００内の第１Ｃ＿Ｅ＿ＡＰＬ３２１のデータＡを読み出す。次に、制御ＡＰＬ１０９は書き込みＡＰＬ１０８にデータＡの書き込みを要求する。書き込みＡＰＬ１０８はリーダライタ１２１を介してＩＣカード２００内の第２Ｃ＿Ｅ＿ＡＰＬ３２２のメモリ領域にデータＡを書き込む。
【発明の開示】
【００１８】
上述のように、従来の技術では、異なるアプリケーションプログラム間でデータを複製する場合、ＩＣカード内の複製対象となるデータは、一旦ＩＣカードの外へ出される。これは、ＩＣカードのＯＳにより各アプリケーションプログラム専用のメモリ領域がファイヤウォールで保護されているためである。
【００１９】
つまり、上記従来の技術では、外部のサーバのアプリケーションプログラムがカード内のデータおよび、データの暗号情報を一旦カード外部へ読み出し、書き込みの処理を行う。そのため、暗号情報が外部に漏洩する危険性があり、さらに電子マネーなどの重要なデータであっても、外部への漏洩や、第三者による改竄といった危険にさらされるという課題を有している。
【００２０】
本発明は、前記従来の課題を解決するもので、複数のアプリケーションプログラムを実行可能な半導体メモリであって、異なるアプリケーションプログラム間で、重要なデータを安全に複製する半導体メモリを提供することを目的とする。
【００２１】
上記目的を達成するために、本発明の半導体メモリは、少なくとも２つのアプリケーションプログラムを実行可能な半導体メモリであって、第１のアプリケーションプログラムに関連するデータを記憶する第１記憶部と、第２のアプリケーションプログラムに関連するデータを記憶する第２記憶部と、アプリケーションプログラムの、関連するデータに対するセキュリティレベルを特定するための基準に基づいて、前記第１のアプリケーションプログラムおよび前記第２のアプリケーションプログラムの、関連するデータに対するそれぞれのセキュリティレベルを特定するレベル特定部と、前記レベル特定部により特定された２つの前記セキュリティレベルの関係が所定の条件を満たす場合、前記第１記憶部に記憶されているデータを半導体メモリ外部に出すことなく複製して、かつ、前記第２記憶部に記憶させる複製部とを備える。
【００２２】
本発明の半導体メモリは、更に、前記レベル特定部により特定された２つの前記セキュリティレベルを比較することにより前記関係を特定する比較部を備え、前記複製部は、前記比較部により特定された前記関係が所定の条件を満たす場合、前記第１記憶部に記憶されているデータを複製して前記第２記憶部に記憶させてもよい。
【００２３】
また、本発明の半導体メモリは、更に、前記レベル特定部により特定された２つの前記セキュリティレベルを比較することにより特定された前記関係を取得する取得部を備え、前記複製部は、前記取得部により取得された前記関係が所定の条件を満たす場合、前記第１記憶部に記憶されているデータを複製して前記第２記憶部に記憶させてもよい。
【００２４】
前記セキュリティレベルは、前記アプリケーションプログラムが利用する暗号の強度によって特定される値であってもよい。
【００２５】
前記暗号の強度は、前記暗号の暗号方式が複雑なほど強くてもよく、暗号鍵のビット長が長いほど強くてもよい。
【００２６】
また、前記セキュリティレベルは、前記アプリケーションプログラムが使用するアプリケーションプロトコルのバージョン番号によって特定される値であってもよい。
【００２７】
また、前記セキュリティレベルは、前記アプリケーションプログラムのバージョン番号によって特定される値であってもよい。
【００２８】
以上のように、本発明の半導体メモリは、レベル特定部を備えており、レベル特定部が、アプリケーションプログラムの関連するデータに対するセキュリティレベルを特定するための基準に基づいて、２つのアプリケーションプログラムの、関連するデータに対するセキュリティレベルを決定する。つまり、２つのセキュリティレベルは共通の基準で特定されるため、比較することができる。
【００２９】
複製部は、２つのセキュリティレベルの関係が所定の条件を満たす場合、第１記憶部に記憶されている第１のアプリケーションに関連するデータを複製し、第２のアプリケーションに関連するデータを記憶する第２記憶部へ記憶させる。つまり、半導体メモリ内で複製が行われる。これにより、異なるアプリケーションプログラム間で、データを安全に複製することができる。
【００３０】
複製先のアプリケーションプログラムが、複製元のアプリケーションプログラムと同等以上の強度を有するセキュリティ機能を備えている場合、そのデータは現状と同等以上に強固に保護されるデータである。つまり、そのデータは重要なデータであると考えられる。
【００３１】
このような場合、重要なデータを半導体メモリ内で複製することにより、重要なデータを、外部への漏洩や、第三者による改竄といった危険から守ることができる。その結果、ユーザは安心して半導体メモリを利用することができる。
【００３２】
また、本発明の半導体メモリは、２つのセキュリティレベルを比較することにより、その２つのセキュリティレベルの関係を特定する。これにより、セキュリティレベルも半導体メモリの外部に出されることがないため、セキュリティレベルを第三者に知られる危険がない。
【００３３】
また、本発明の半導体メモリは、２つのセキュリティレベルを比較することにより特定された、その２つのセキュリティレベルの関係を取得する。これにより、半導体メモリはセキュリティレベルを比較するため構成部を備える必要がなく、簡易な構成とすることができる。
【００３４】
また、本発明の半導体メモリは、アプリケーションプログラムが利用する暗号の強度によって特定される値をセキュリティレベルとして使用する。暗号の強度は、暗号方式が複雑なほど強い値であり、または、暗号鍵のビット長が長いほど強い値である。これにより、暗号が第三者に解読されにくいほど、セキュリティレベルの値が高いとすることができる。
【００３５】
また、本発明の半導体メモリは、アプリケーションプログラムが使用するアプリケーションプロトコルのバージョンにより特定される値をセキュリティレベルとして使用する。これにより、アプリケーションプロトコルのセキュリティ機能が向上し、プロトコルバージョンが上がるほど、セキュリティレベルの値が高いとすることができる。
【００３６】
また、本発明の半導体メモリは、アプリケーションプログラムのバージョンにより特定される値をセキュリティレベルとして使用する。これにより、アプリケーションプログラムのセキュリティ機能が向上し、そのバージョンが上がるほど、セキュリティレベルの値が高いとすることができる。
【００３７】
上述のように、セキュリティレベルを特定するための情報として、暗号の強度やプロトコルバージョンなどを用いることができるため、本発明の半導体メモリが使用される実情に沿った、セキュリティレベルの特定をすることができる。
【００３８】
このように、本発明は、複数のアプリケーションプログラムを実行可能な半導体メモリであって、異なるアプリケーションプログラム間で、重要なデータを安全に複製する半導体メモリを提供することができる。
【００３９】
更に、本発明は、本発明の半導体メモリの特徴的な構成部をステップとする方法として実現したり、それらのステップを含むプログラムとして実現したり、そのプログラムが格納された、ＣＤ−ＲＯＭ等の記録媒体として実現したり、集積回路として実現することもできる。プログラムは、通信ネットワーク等の伝送媒体を介して流通させることもできる。
【００４０】
本出願の技術的背景に関する追加情報として、明細書、図面、及び特許請求の範囲を含む２００４年４月８日にされた出願番号２００４−１１４３３０号の日本特許出願により開示されている事項は、そっくりそのまま引用されている。
【発明を実施するための最良の形態】
【００４１】
以下に、本発明を実施するための最良の形態を、図面を参照して説明する。実施の形態１〜３におけるＩＣカードは、本発明の半導体メモリの一例である。また、接触型ＩＣカードであり、耐タンパモジュール（ＴＲＭ）を内蔵している。なお、非接触型ＩＣカードとして本発明の半導体メモリを実現することも可能である。
【００４２】
なお、「複製」は、本発明の半導体メモリにおいて、複製後に元のデータを削除する「データの移動」も含む。
【００４３】
（実施の形態１）
まず、本発明の実施の形態におけるＩＣカードが使用される環境を図４を用いて説明する。
【００４４】
図４は、ＩＣカードが使用される環境を示す図である。図４に示すように、ＩＣカード２００が使用される環境は、ＥＣサーバ１００と、公共サービスサーバ１１０と、無線基地局１２０と、リーダライタ１２１と、ポータブルデバイス１２２と、ネットワーク１２３とから構成される。
【００４５】
ＥＣサーバ１００は、オンライン決済等の電子商取引のサービス（以下、「ＥＣサービス」という。）を提供するサーバである。ＥＣサーバ１００では、ｎ個のサービスに対応した、第１Ｅ＿ＡＰＬ１０１、第２Ｅ＿ＡＰＬ１０２、・・・、第ｎＥ＿ＡＰＬ１０３のｎ個のサーバアプリケーションプログラムが動作している。各サーバアプリケーションプログラムは固有のＥＣサービスをＩＣカード２００に提供する。
【００４６】
公共サービスサーバ１１０は、公共施設の利用申し込み等の公共サービスを提供するサーバである。公共サービスサーバ１１０ではｎ個のサービスに対応した、第１Ｐ＿ＡＰＬ１１１、第２Ｐ＿ＡＰＬ１１２、・・・、第ｎＰ＿ＡＰＬ１１３のｎ個のサーバアプリケーションプログラムが動作している。各サーバアプリケーションプログラムは固有の公共サービスをＩＣカード２００に提供する。
【００４７】
リーダライタ１２１は、ＩＣカード２００からのデータの読み出し、または、ＩＣカード２００へのデータの書き込みを行う装置である。例えば、クレジット会社のキャッシュディスペンサーにより実現される。リーダライタ１２１はネットワーク１２３と接続されており、このリーダライタ１２１を介することでＩＣカード２００は、ＥＣサーバ１００及び公共サービスサーバ１１０のサーバアプリケーションプログラムを利用することが可能である。
【００４８】
無線基地局１２０は、建物や電柱の屋上に備え付けられた機器でありポータブルデバイス１２２と無線によるデータのやり取りを行う。無線基地局１２０はネットワーク１２３と接続されており、ポータブルデバイス１２２は、この無線基地局１２０を介し、ＥＣサーバ１００及び公共サービスサーバ１１０と通信を行うことができる。
【００４９】
ポータブルデバイス１２２は、ＩＣカード２００と通信可能な、携帯電話型の機器であり、ＩＣカード２００を差し込むためのカードスロットを有している。つまり、ＩＣカード２００は、ポータブルデバイス１２２を介することでも、ＥＣサーバ１００及び公共サービスサーバ１１０のサーバアプリケーションプログラムを利用することが可能である。
【００５０】
ポータブルデバイス１２２にはブラウザソフトウェアがインストールされており、ユーザはこのブラウザソフトウェアのユーザインタフェースを介して、ＩＣカード２００内のデータにアクセスすることができる。
【００５１】
なお、ＩＣカード２００と、ＥＣサーバ１００または公共サービスサーバ１１０とが通信を行う際、リーダライタ１２１経由であっても、ポータブルデバイス１２２経由であっても、ＩＣカード２００、ＥＣサーバ１００および公共サービスサーバ１１０の動作は同じである。
【００５２】
図５は、図４に示す環境下において、ＩＣカード２００が公共サービスサーバ１１０と通信を行う場合のハードウェア構成の概観を示す図である。
【００５３】
図５に示すように、ＩＣカード２００には、公共サービスサーバ１１０を利用するためのアプリケーションプログラムである、図書館ＡＰＬ３０１と公共プールＡＰＬ３０２とが格納されている。
【００５４】
これら、アプリケーションプログラムは、公共サービスサーバ１１０からダウンロードされ、ＩＣカード２００内に格納されている。
【００５５】
図書館ＡＰＬ３０１は、図書館で本を借りるためのアプリケーションプログラムであり、公共サービスサーバ１１０と通信することにより、ユーザへの本の貸し出し状況の確認等を行える。また、図書館ＡＰＬ３０１専用のメモリ領域にユーザの名前のデータであるデータＡなどの個人情報が記憶されている。
【００５６】
公共プールＡＰＬ３０２は、公共プールがある施設に入館するためのアプリケーションプログラムであり、公共サービスサーバ１１０と通信することにより、ユーザの入館履歴の確認等を行える。また、公共プールＡＰＬ３０２はダウンロードされた直後であり、公共プールＡＰＬ専用のメモリ領域には、ユーザの個人情報は記憶されていない。
【００５７】
ユーザは、ＩＣカード２００を、パーソナルコンピュータ（以下、「ＰＣ」という。）に設置されたリーダライタ１２１のカードスロット１２１ａに挿入することで、ＩＣカード２００と公共サービスサーバ１１０との間で通信を行わせることができる。
【００５８】
また、ＰＣに接続されたディスプレイ１３０で、公共サービスサーバ１１０から送出される情報や、ＩＣカード２００内に記憶されているデータを閲覧することができる。また、ＰＣに備えられたキーボードおよびマウスを操作することで、公共サービスサーバ１１０およびＩＣカード２００へ指示を行うことができる。
【００５９】
図６は、図書館ＡＰＬ３０１のデータＡが公共プールＡＰＬ３０２のデータとして複製される状況を示す概念図である。図６を用いて、実施の形態１のＩＣカード２００におけるデータの複製の概要を説明する。
【００６０】
本発明の実施の形態１におけるＩＣカード２００は、ＩＣカード２００に格納されている各アプリケーションプログラムのセキュリティレベルを記憶している。セキュリティレベルとは、アプリケーションプログラムの、そのアプリケーションプログラムに関連するデータに対するセキュリティの強度を示す情報である。各アプリケーションプログラムのセキュリティレベルは同一の基準により特定されている。また、公共サービスサーバ１１０は、セキュリティレベルを比較する機能を有している。セキュリティレベルについては図８を用いて後述する。
【００６１】
公共サービスサーバ１１０におけるセキュリティレベルの比較により、複製先である公共プールＡＰＬ３０２のセキュリティレベルが、複製元の図書館ＡＰＬ３０１のセキュリティレベルと同等以上であると特定された場合、ＩＣカード２００のＯＳがアプリケーションプログラム間のファイヤウォール３４０を一時的もしくは部分的に解除する。これにより、図６に示すように、ＩＣカード２００内でデータＡが複製される。
【００６２】
つまり、データの複製を行う際、そのデータを必要とする複製先のアプリケーションプログラムが、複製元のアプリケーションプログラムと同等以上の強度を有するセキュリティ機能を備えているということは、そのデータは現状と同等以上に強固に保護されるデータである。つまり、そのデータは重要なデータであると考えられる。
【００６３】
従って、データＡをＩＣカード２００の外部に出すことなく、ＩＣカード２００内でデータＡの複製を行う。言い換えれば、ＩＣカード２００からそのデータが読み出されることなく複製が行われる。つまり、ＩＣカード２００に接続された外部機器を経由せずにデータの複製が行われる。これにより、重要なデータであるデータＡの安全を確保しつつ、データＡを複製することができる。
【００６４】
なお、データＡの複製先である公共プールＡＰＬ３０２のセキュリティ強度が、複製元の図書館ＡＰＬ３０１のセキュリティ強度より下であった場合、ファイヤウォール３４０は一時的もしくは部分的に解除されることはなく、公共サービスサーバ１１０を介してデータＡが複製される。具体的には、公共サービスサーバ１１０が備える、制御ＡＰＬ１１７の要求により、読み出しＡＰＬ１１５がリーダライタ１２１を介してデータＡを読み出す。読み出されるデータＡは書き込みＡＰＬ１１６の動作によりリーダライタ１２１を介してＩＣカード２００内の公共プールＡＰＬ専用のメモリ領域に書き込まれる。
【００６５】
上述の、データの複製の際のＩＣカード２００および公共サービスサーバ１１０の動作の詳細は、図１２〜１５を用いて後述する。
【００６６】
次に、実施の形態１におけるＩＣカード２００および公共サービスサーバ１１０の構成を図７〜１１を用いて説明する。なお、ＩＣカード２００のハードウェア構成は一般的なＩＣカードのハードウェア構成（図１参照）と変わりない。
【００６７】
図７は、実施の形態１のＩＣカード２００および公共サービスサーバ１１０におけるソフトウェアの機能的な構成を示す機能ブロック図である。
【００６８】
図７に示すように、ＩＣカード２００は、図書館ＡＰＬ３０１と、公共プールＡＰＬ３０２と、セキュリティレベル設定部６０３と、セキュリティレベル取得部６０４と、セキュリティレベル出力部６０５と、セキュリティレベル管理部６０２と、セキュリティ情報記憶部６１０と、データ操作部６０８と、メモリ領域３１０とを備える。
【００６９】
なお、ＩＣカード２００と公共サービスサーバ１１０との通信を中継するリーダライタ１２１、および、ＩＣカード２００と公共サービスサーバ１１０が本来備えるＯＳ等についての図示および説明は省略し、実施の形態１におけるデータの複製に特徴的な事項についてのみ説明する。
【００７０】
図書館ＡＰＬ３０１は、上述のように、図書館で本を借りるためのアプリケーションプログラムであり、公共サービスサーバ１１０と通信することにより、ユーザへの本の貸し出し状況の確認等を行える。
【００７１】
公共プールＡＰＬ３０２は、上述のように、公共プールがある施設に入館するためのアプリケーションプログラムであり、公共サービスサーバ１１０と通信することにより、ユーザの入館履歴の確認等を行える。
【００７２】
セキュリティレベル設定部６０３は、本発明の半導体メモリにおけるレベル特定部の一例であり、ダウンロードしたアプリケーションプログラムのセキュリティレベルを特定する処理部である。セキュリティレベル取得部６０４は、セキュリティ情報記憶部６１０のＡＰＬ情報テーブル６０１に保存されているセキュリティレベルを取得する処理部である。セキュリティレベル出力部６０５は、セキュリティレベル設定部６０３が取得したセキュリティレベルを公共サービスサーバ１１０へ出力する処理部である。
【００７３】
セキュリティ情報記憶部６１０は、セキュリティレベルテーブル６００と、方式テーブル６０９と、ＡＰＬ情報テーブル６０１とを記憶するための記憶領域である。
【００７４】
セキュリティレベルテーブル６００は、各アプリケーションプログラムが利用する暗号方式から各アプリケーションプログラムのセキュリティレベルを特定するためのテーブルである。方式テーブル６０９は、各アプリケーションプログラムが用いる暗号方式を特定するためのテーブルである。ＡＰＬ情報テーブル６０１は、各アプリケーションプログラムの属性情報が保存されているテーブルである。各テーブルの内容については図８〜図１１を用いて後述する。
【００７５】
セキュリティレベル管理部６０２は、セキュリティ情報記憶部６１０に記憶されている情報の入出力を行う処理部である。
【００７６】
メモリ領域３１０は、各アプリケーションプログラムに関連するデータを記憶する記憶領域であり、図書館ＡＰＬ３０１専用の領域であるメモリ領域３３１と、公共プールＡＰＬ３０２専用の領域であるメモリ領域３３２とが存在する。メモリ領域３３１は本発明の半導体メモリにおける第１記憶部の一例であり、メモリ領域３３２は本発明の半導体メモリにおける第２記憶部の一例である。メモリ領域３３１にはデータＡが記憶されている。
【００７７】
データ操作部６０８は、本発明の半導体メモリにおける複製部の一例であり、メモリ領域３１０に記憶されているデータの複製を行う処理部である。
【００７８】
公共サービスサーバ１１０は、上述のように、公共施設の利用申し込み等の公共サービスを提供するサーバであり、制御部１０５と比較部１０６とを備える。
【００７９】
制御部１０５は、ＩＣカード２００とのデータのやり取り、および比較部１０６の制御を行う処理部である。つまり、制御部１０５は、図６に示す、データの読み出し、書き込みのためのサーバアプリケーションプログラムである、読み出しＡＰＬ１１５、書き込みＡＰＬ１１６、および制御ＡＰＬ１１７の有する機能を発揮する処理部である。比較部１０６は、ＩＣカード２００から送信される２つのセキュリティレベルを比較することにより、その２つのセキュリティレベルの関係を特定する処理部である。例えば、公共プールＡＰＬ３０２のセキュリティレベルの方が、図書館ＡＰＬ３０１のセキュリティレベルより上であるという関係を特定する。
【００８０】
上述のように、本発明の実施の形態１におけるＩＣカード２００は、各アプリケーションプログラムのセキュリティレベルを特定するために、セキュリティレベルテーブル６００を有している。このセキュリティレベルテーブル６００は、複数のアプリケーションプログラムに共通して適用される。つまり、各アプリケーションプログラムのセキュリティレベルは共通の基準で特定されるため、その比較を行うことができる。
【００８１】
図８は、セキュリティ情報記憶部６１０に記憶されているセキュリティレベルテーブル６００のデータ構成の一例を示す図である。
【００８２】
各アプリケーションプログラムが利用する暗号方式とその強弱を示す値とが関連付けられている。
【００８３】
図８に示すように、暗号方式がＴｒｉｐｌｅ−ＤＥＳ暗号方式である場合、セキュリティレベルは“強”であり、値は０３ｈである。また、暗号方式がＤＥＳ方式である場合、セキュリティレベルは“中”であり、値は０２ｈである。また、暗号方式がＡＥＳ方式である場合、セキュリティレベルは“弱”であり、値は０１ｈである。さらに、暗号化しない場合、セキュリティレベルは“なし”であり、値は００ｈである。
【００８４】
図９は、セキュリティ情報記憶部６１０に記憶されている方式テーブル６０９のデータ構成の一例を示す図である。
【００８５】
各アプリケーションプログラムが利用する暗号方式とその暗号方式を示す番号（以下、「方式番号」という。）とが定義されている。
【００８６】
例えば、図９に示すように、方式番号が０であれば、その暗号方式はＴｒｉｐｌｅ−ＤＥＳ暗号方式であると特定される。
【００８７】
図１０は、セキュリティ情報記憶部６１０に記憶されているＡＰＬ情報テーブル６０１のデータ構成の一例を示す図である。ＡＰＬ情報テーブル６０１は、各アプリケーションプログラムの属性情報が保存されているテーブルであり、図書館ＡＰＬ３０１をはじめ、アプリケーションプログラムごとに、その属性情報が保存されている。なお、ＡＰＬ情報テーブル６０１内にある“電子マネーＡＰＬ情報”は、図５〜図７に図示していない電子マネーＡＰＬの属性情報である。電子マネーＡＰＬは、ユーザが電子マネーを使用するためのアプリケーションプログラムである。
【００８８】
図１０に示すように、ＡＰＬ情報テーブル６０１に含まれる各アプリケーションプログラムの属性情報には、アプリケーションプログラムを識別するためのアプリケーションＩＤ、セキュリティレベルテーブル６００に定義されている値であるセキュリティレベル、暗号鍵のビット長および暗号方式を示す値を含む暗号情報、暗号鍵のデータそのものである鍵情報、および、アプリケーションプロトコルのバージョン（以下、単に「プロトコルバージョン」という。）であるアプリケーションプロトコル情報が格納される。また、各属性情報のデータ長が規定されており、例えば、アプリケーションＩＤは２ｂｙｔｅである。
【００８９】
図１１は、ＡＰＬ情報テーブル６０１に保存されている属性情報の一例を示す図である。
【００９０】
図１１に示すように、ＡＰＬ情報テーブル６０１は、アプリケーションプログラムごとに属性情報が保存されており、例えば、図書館ＡＰＬ３０１は、アプリケーションＩＤが３４１２ｈであり、セキュリティレベルが０１ｈ（“弱”）である。このセキュリティレベルは、各アプリケーションプログラムがダウンロードされた時点で、セキュリティレベル設定部６０３によって特定され、付与される。
【００９１】
具体的には各アプリケーションプログラムがＩＣカード２００へダウンロードされた際、セキュリティレベル設定部６０３によって、各アプリケーションプログラムの属性情報が抽出される。抽出された属性情報はセキュリティレベル管理部６０２に送られる。
【００９２】
セキュリティレベル管理部６０２は、ＡＰＬ情報テーブル６０１に、セキュリティレベル以外の属性情報を書き込む。また、属性情報に含まれる方式番号と、上述の方式テーブル６０９とから、暗号方式を特定する。
【００９３】
セキュリティレベル設定部６０３は、セキュリティレベル管理部６０２によって特定された暗号方式と、上述のセキュリティレベルテーブル６００とから、セキュリティレベルを示す値を特定する。特定された値は、セキュリティレベル管理部６０２によってＡＰＬ情報テーブル６０１に書き込まれる。
【００９４】
つまり、ダウンロードされた各アプリケーションプログラムに対して、共通の基準となるセキュリティレベルテーブル６００に基づき、各アプリケーションプログラムのセキュリティレベルが特定されることとなる。
【００９５】
なお、暗号情報のフィールドには、左から、暗号鍵のビット長、方式番号の順に並べられており、例えば、図書館ＡＰＬ３０１は、暗号鍵のビット長が８０ｈ、方式番号が０２ｈである。つまり、暗号鍵のビット長は１２８ｂｉｔ（１６ｂｙｔｅ）、方式番号は２である。
【００９６】
方式番号２に対応する暗号方式はＡＥＳ暗号方式であり（図９参照）、ＡＥＳ暗号方式に対応する値は０１ｈである（図８参照）。従って、図書館ＡＰＬ３０１のセキュリティレベルは０１ｈ（“弱”）となっている。
【００９７】
また、鍵情報のフィールドには、１２８ｂｉｔ（１６ｂｙｔｅ）の暗号鍵が保存されており、プロトコルバージョンは０１ｈであることを示している。
【００９８】
同様に、公共プールＡＰＬ３０２は、アプリケーションＩＤが７８５６ｈ、セキュリティレベルが０３ｈ（“強”）である。また、暗号鍵ビット長がＣ０ｈ、方式番号は００ｈであり、つまり、暗号鍵のビット長が１９２ｂｉｔ（２４ｂｙｔｅ）、方式番号は０である。また、鍵情報のフィールドには、１９２ｂｉｔ（２４ｂｙｔｅ）の暗号鍵が保存されており、プロトコルバージョンは０５ｈであることを示している。
【００９９】
上述のように、図書館ＡＰＬ３０１のセキュリティレベルは０１ｈ（“弱”）であり、公共プールＡＰＬ３０２のセキュリティレベルは０３ｈ（“強”）である。つまり、図書館ＡＰＬ３０１より公共プールＡＰＬ３０２の方が、セキュリティレベルは上であり、より強固なセキュリティ機能を有していることがわかる。
【０１００】
次に、図１２〜図１５を用いてデータの複製の際のＩＣカード２００および公共サービスサーバ１１０の動作を説明する。
【０１０１】
図１２は、データの複製の際の、実施の形態１におけるＩＣカード２００および公共サービスサーバ１１０の動作の流れを示すフローチャートである。
【０１０２】
なお、図書館ＡＰＬ３０１専用のメモリ領域３３１に保存されているデータＡを、公共プールＡＰＬ３０２専用のメモリ領域３３２へ複製する場合について説明する。また、図５に示すハードウェア構成においてユーザがＩＣカード２００を使用する場合を想定する。
【０１０３】
また、ＩＣカード２００と、公共サービスサーバ１１０との間では、所定のプロトコルを使用してデータの送受信が行われる。
【０１０４】
まず、ユーザが、リーダライタ１２１のカードスロット１２１ａにＩＣカード２００を挿入し、リーダライタ１２１が設置されたＰＣに対し所定の操作を行う。この操作により、公共サービスサーバ１１０の制御部１０５が、データＡを有する第１のアプリケーションプログラムである図書館ＡＰＬ３０１を認証する（Ｓ９０１）。認証完了後、ＰＣに接続されたディスプレイ１３０に図１３に示す画面が表示される。
【０１０５】
図１３は、ユーザが複製先のアプリケーションプログラムを選択するための複製先選択画面の一例を示す図である。図１３に示すように、複製先選択画面には、複製元データ表示領域１３１と、複製先データ表示領域１３２とが表示される。なお、ディスプレイ１３０に表示される画面は、制御部１０５により生成され、表示されるデータはＩＣカード２００から出力される。
【０１０６】
複製元データ表示領域１３１には、“図書館カード”というタイトルで、図書館ＡＰＬ３０１に関連するデータである名前と住所とが、一部のみ読むことができる形式で表示される。また、複製先データ表示領域１３２には、複製先のアプリケーションプログラムを選択するための選択ボタン１３３が表示される。
【０１０７】
ユーザにより、“公共プールカード”と表示された選択ボタン１３３がクリックされると、公共サービスサーバ１１０の制御部１０５は、データの複製先となる第２のアプリケーションプログラムである公共プールＡＰＬ３０２の認証を行う（Ｓ９０２）。
【０１０８】
公共プールＡＰＬ３０２の認証完了後、ディスプレイ１３０に図１４に示す画面が表示される。
【０１０９】
図１４は、ユーザが複製の対象とするデータを選択するための複製データ選択画面の一例を示す図である。
【０１１０】
図１４は、複製元データ表示領域１３１において名前のチェックボックス１３４がユーザにより選択された状態を示している。また、画面中央に矢印ボタン１３５が表示されている。
【０１１１】
図１４に示すように、チェックボックス１３４が選択された状態で、矢印ボタン１３５がクリックされると、制御部１０５は、複製の対象となるデータとして名前のデータが選択されたことを受け付ける。つまり、図５および図７に示すデータＡが選択されたことを受け付ける（Ｓ９０３）。
【０１１２】
制御部１０５は、図書館ＡＰＬ３０１および公共プールＡＰＬ３０２のセキュリティレベルをＩＣカード２００に要求する。ＩＣカード２００のセキュリティレベル取得部６０４は、セキュリティレベル管理部６０２を介し、アプリケーションＩＤに基づいて、図書館ＡＰＬ３０１および公共プールＡＰＬ３０２のセキュリティレベルを取得する（Ｓ９０４）。
【０１１３】
セキュリティレベル出力部６０５は公共サービスサーバ１１０からの要求に対するレスポンスとして、取得した二つのセキュリティレベルを出力する（Ｓ９０５）。
【０１１４】
ＥＣサーバ１００の比較部１０６は、ＩＣカード２００から出力された２つのセキュリティレベル情報を比較する。ここで、図書館ＡＰＬ３０１のセキュリティレベルは“０１ｈ”であり、公共プールＡＰＬ３０２のセキュリティレベルは“０３ｈ”である（図１１参照）。
【０１１５】
つまり、比較部１０６は、データの複製先である公共プールＡＰＬ３０２のセキュリティレベルの方が、データの複製元である図書館ＡＰＬ３０１のセキュリティレベルより上であるとの関係を特定する（Ｓ９０６でＹ）。
【０１１６】
この特定された関係を示す情報はＩＣカードに送信される。ＩＣカード２００では、データ操作部６０８が、その情報に基づき、図書館ＡＰＬ３０１専用のメモリ領域３３１に保存されているデータＡを、公共プールＡＰＬ３０２専用のメモリ領域３３２に複製する処理を実行する（Ｓ９０７）。
【０１１７】
具体的には、公共サービスサーバ１１０から送信された情報に基づき、ＩＣカード２００のＯＳが、アプリケーションプログラム間のファイヤウォール３４０を一時的もしくは部分的に解除する。これにより、データ操作部６０８は、ＩＣカード２００内で、データＡの複製を行うことができる。
【０１１８】
ここで、複製先のアプリケーションプログラムのセキュリティレベルが、複製元のアプリケーションプログラムのセキュリティレベルより下であった場合（Ｓ９０６でＮ）、ファイヤウォール３４０は一時的もしくは部分的に解除されることはなく、公共サービスサーバ１１０を介して複製が実行される（Ｓ９０９）。
【０１１９】
複製完了後、ディスプレイ１３０に、図１５に示す、データの複製が完了したことを知らせる画面が表示される。
【０１２０】
図１５は、データの複製が完了したことをユーザに知らせるための完了通知画面の一例である。ユーザは、データの複製を続行する場合（Ｓ９０８でＹ）、例えば、住所のデータを複製したい場合は、図１５に示す完了通知画面において、住所の横のチェックボックスを選択することで、図１４に示した矢印ボタン１３５が表示される。その矢印ボタン１３５がユーザによりクリックされると、公共サービスサーバ１１０は、選択を受け付け（Ｓ９０３）、データの複製のための動作を行う。
【０１２１】
ＩＣカード２００および公共サービスサーバ１１０は、ユーザの所定の操作により、データの複製が終了（Ｓ９０８でＮ）されるまで上記動作を繰り返す。
【０１２２】
上述のように、本発明の実施の形態１におけるＩＣカード２００は、複数のアプリケーションプログラムに共通の基準であるセキュリティレベルテーブルを用いて、各アプリケーションプログラムのセキュリティレベルを特定している。
【０１２３】
つまり、共通の基準で特定されたセキュリティレベルにより、互いに異なる２つのアプリケーションプログラムのセキュリティの強度を比較することができる。この比較は、ＩＣカード２００と通信を行う公共サービスサーバ１１０の比較部１０６で行われる。
【０１２４】
この比較により、データを必要とする複製先のアプリケーションプログラムが、複製元と強度が同等、または、より強度の高いセキュリティ機能を備えていると特定された場合、そのデータは重要なデータであると考えられる。そのため、公共サービスサーバ１１０はＩＣカード２００に、ＩＣカード２００内で、そのデータの複製を行うよう要求する。
【０１２５】
図１６は、実施の形態１におけるセキュリティレベルとデータの複製の経路との関係を示す模式図である。第１ＡＰＬは複製元のアプリケーションプログラムであり、第２ＡＰＬは複製先のアプリケーションプログラムである。第１ＡＰＬと第２ＡＰＬはＩＣカード２００に格納されており、それぞれのアプリケーションプログラム専用のメモリ領域はファイヤウォールにより保護されている。また、ａ１、ａ２、ｂ１およびｂ２はそれぞれセキュリティレベルを表す。
【０１２６】
例えば、第１ＡＰＬのセキュリティレベルがａ１であり、第２ＡＰＬのセキュリティレベルがａ２である場合、複製先のセキュリティレベルの方が、複製元のセキュリティレベルよりも上である。つまり、複製の対象となっているデータは重要なデータであると考えられる。そのため、ＩＣカード２００内のファイヤウォールはデータ複製のために一時的もしくは部分的に解除され、ＩＣカードの中でデータの複製が行われる。
【０１２７】
また、第１ＡＰＬのセキュリティレベルがｂ１であり、第２ＡＰＬのセキュリティレベルがｂ２である場合、複製先のセキュリティレベルの方が、複製元のセキュリティレベルよりも下である。つまり、複製の対象となっているデータは重要なデータではないと考えられる。そのため、ファイヤウォールはデータ複製のために一時的もしくは部分的に解除されることはなく、サーバ経由でデータの複製が行われる。
【０１２８】
このように、重要なデータは、ＩＣカード２００内で複製される。つまり、ＩＣカード２００の外部に出ることがなく、漏洩、改竄といった危険にさらされることがない。結果として、異なるアプリケーションプログラム間で、安全に重要なデータを複製することができる。
【０１２９】
なお、実施の形態１の説明において、ＩＣカード２００が、公共サービスサーバ１１０と通信を行う場合を例にとり、ＩＣカード２００および、公共サービスサーバ１１０についての説明を行った。しかしながら、ＩＣカード２００が通信を行う相手は、公共サービスサーバ１１０でなくてもよく、図４に示したＥＣサーバ１００でもよい。また、その他のサーバでもよい。
【０１３０】
つまり、セキュリティレベルを比較する機能と、ＩＣカード２００に格納されたアプリケーションプログラムを認証する機能とを有するサーバであれば、ＩＣカード２００の通信相手は公共サービスサーバ１１０に限定されない。
【０１３１】
また、図１２に示したフローチャートにおいて、複製先のアプリケーションプログラムのセキュリティレベルが、複製元のアプリケーションプログラムのセキュリティレベルより下であった場合（Ｓ９０６でＮ）、公共サービスサーバ１１０を介して複製を実行する（Ｓ９０９）とした。しかしながら、この場合、ユーザから了解を取った上で複製を行ってもよく、また、複製を禁止してもよい。
【０１３２】
こうすることで、重要なデータではないと考えられるデータに対しても、その秘匿性を維持することが可能となる。また、このような構成であっても、ＩＣカード２００において、異なるアプリケーションプログラム間で、重要なデータを安全に複製することができることに変わりはない。
【０１３３】
また、ＩＣカード２００は、接触型ＩＣカードに限定されることはなく、非接触型ＩＣカードでもよい。非接触型ＩＣカードであっても、本発明の特徴であるセキュリティレベルの特定等の処理に影響はなく、重要なデータを安全に複製することができる。
【０１３４】
また、公共サービスサーバ１１０の比較部１０６が２つのセキュリティレベルを比較した結果に基づき、データの複製経路が決定されるとしたが、本発明はこれに限定されるものではない。例えば、比較した結果を所定の記憶領域に記憶させておき、その記憶された結果を利用し、その後に行われるデータの複製の経路を決定してもよい。
【０１３５】
こうすることで、セキュリティレベルの比較を、ＩＣカード２００からデータ複製の要求の度に行う必要が無く、処理時間の短縮を図ることが可能となる。
【０１３６】
また、ＩＣカード２００のハードウェア構成は、図１に示す、一般的なＩＣカードのハードウェア構成と同じであるとした。しかしながら、別のハードウェア構成でもよく、例えば、ＥＥＰＲＯＭ２０４の換わりにＦｅＲＡＭでもよい。また、不揮発性メモリであれば、別の記憶媒体でもよい。
【０１３７】
また、ＩＣカード２００が備える、セキュリティレベル管理部６０２、セキュリティレベル取得部６０４、セキュリティレベル出力部６０５およびデータ操作部６０８は、コンピュータプログラムとして実現される。当該プログラムは、ＲＯＭ２０３に格納され実行されるものと、外部よりダウンロードされ、不揮発性メモリであるＥＥＰＲＯＭ２０４に格納され実行されるものとがある。図書館ＡＰＬ３０１および公共プールＡＰＬ３０２は、ＲＯＭ２０３またはＥＥＰＲＯＭ２０４に格納される。セキュリティ情報記憶部６１０およびメモリ領域３１０は、それぞれＥＥＰＲＯＭ２０４内の別の領域として実現される。
【０１３８】
また、図７に示したＩＣカード２００の機能ブロックは、ＣＰＵ、ＲＡＭ、ＲＯＭ、不揮発性メモリ等のハードウェア資源との組み合わせにより、集積回路であるＬＳＩとして実現される場合がある。これらは、個別に１チップ化されても良いし、一部又はすべてを含むように１チップ化されても良い。
【０１３９】
図１７は、実施の形態１のＩＣカード２００における集積回路化の一例を示す図である。ＬＳＩ２０００は集積回路化の一例を示し、点線で囲まれた範囲は集積回路化する機能ブロックの範囲の例である。ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０１４０】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセサで実現してもよい。ＬＳＩ製作後にプログラムすることが可能なＦＰＧＡ(Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ)やＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
【０１４１】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然その技術を用いて機能ブロックの集積回路化を行ってもよい。例えば、バイオ技術を機能ブロックの集積回路化に適用してもよい。
【０１４２】
（実施の形態２）
上述の実施の形態１では、ＩＣカード２００の通信相手である公共サービスサーバ１１０の比較部１０６がセキュリティレベルの比較を行うとした。しかしながら、本発明はこれに限定されるものではなく、ＩＣカード２００内部でセキュリティレベルを比較する場合も考えられる。
【０１４３】
そこで、実施の形態２として、ＩＣカード２００内に備えられた比較部６０６でセキュリティレベルを比較する形態を説明する。
【０１４４】
なお、実施の形態２において、ＩＣカード２００が使用される環境は、実施の形態１の説明の中で参照した図４に示す環境と同じである。また、実施の形態１と同様に、ＩＣカード２００の通信相手は公共サービスサーバ１１０である場合を想定し、そのハードウェア構成の概観は図５に示すハードウェア構成の概観と同じである。
【０１４５】
まず、実施の形態２におけるＩＣカード２００および公共サービスサーバ１１０の構成を、図１８を用いて説明する。
【０１４６】
図１８は、実施の形態２におけるＩＣカード２００および公共サービスサーバ１１０のソフトウェアの機能的な構成を示す機能ブロック図である。
【０１４７】
図１８に示すように、実施の形態２におけるＩＣカード２００は、図７に示した実施の形態１におけるＩＣカード２００の構成に、比較部６０６を加えた構成である。また、実施の形態２における公共サービスサーバ１１０は、図７に示した実施の形態１における公共サービスサーバ１１０の構成から比較部１０６が削除された構成である。
【０１４８】
なお、実施の形態２のＩＣカード２００におけるデータ操作部６０８は、本発明の半導体メモリにおける複製部が有するデータの複製機能、および取得部が有する２つのセキュリティレベルの関係を取得する機能を実現する処理部の一例である。
【０１４９】
比較部６０６は、セキュリティレベル出力部６０５から送信される２つのセキュリティレベルの比較を行い、２つのセキュリティレベルの関係を特定する処理部である。
【０１５０】
また、比較部６０６以外の、ＩＣカード２００および公共サービスサーバ１１０の各構成部の処理内容は、実施の形態１のＩＣカード２００および公共サービスサーバ１１０における処理内容と同じである。
【０１５１】
しかしながら、実施の形態１ではＩＣカード２００のセキュリティレベル出力部６０５から公共サービスサーバ１１０へセキュリティレベルが送信されていたが、実施の形態２ではＩＣカード２００のセキュリティレベル出力部６０５から比較部６０６へセキュリティレベルが送信される。
【０１５２】
ＩＣカード２００内の比較部６０６は、セキュリティレベル出力部６０５から出力される図書館ＡＰＬ３０１のセキュリティレベルと、公共プールＡＰＬ３０２のセキュリティレベルとを受け取り、それら２つのセキュリティレベルの比較を行い、それら２つのセキュリティレベルの関係を特定する。
【０１５３】
次に、実施の形態２におけるＩＣカード２００および公共サービスサーバ１１０の動作を、図１９を用いて説明する。
【０１５４】
図１９は、データの複製の際の、実施の形態２におけるＩＣカード２００および公共サービスサーバ１１０の動作の流れを示すフローチャートである。
【０１５５】
なお、図書館ＡＰＬ３０１のデータであるデータＡを、公共プールＡＰＬ３０２専用のメモリ領域３３２へ複製する場合について説明する。また、実施の形態１と異なる動作を中心に説明する。
【０１５６】
まず、公共サービスサーバ１１０の制御部１０５が、データＡを有する第１のアプリケーションプログラムである図書館ＡＰＬ３０１と、データの複製先となる第２のアプリケーションプログラムである公共プールＡＰＬ３０２とを認証する（Ｓ１００１、Ｓ１００２）。
【０１５７】
認証完了後、制御部１０５は、データＡが、複製の対象となるデータとして選択されたことを受け付ける（Ｓ１００３）。
【０１５８】
以上の動作は、実施の形態１と同じであるが、以下に説明する動作は、実施の形態１におけるＩＣカード２００および公共サービスサーバ１１０の動作とは異なる動作である。
【０１５９】
公共サービスサーバ１１０の制御部１０５は、テータＡが複製の対象となるデータであることを受け付けると、ＩＣカード２００に、図書館ＡＰＬ３０１のセキュリティレベルと公共プールＡＰＬ３０２のセキュリティレベルとを比較するよう要求する。
【０１６０】
ＩＣカード２００では、上記要求を受け、セキュリティレベル取得部６０４が、セキュリティレベル管理部６０２を介し、アプリケーションＩＤに基づいて、図書館ＡＰＬ３０１および公共プールＡＰＬ３０２のセキュリティレベルを取得する（Ｓ１００４）。
【０１６１】
セキュリティレベル出力部６０５は、セキュリティレベル取得部６０４から２つのセキュリティレベルを受け取り、比較部６０６へ出力する。
【０１６２】
比較部６０６は、セキュリティレベル出力部６０５から出力された２つのセキュリティレベル情報を比較する。ここで、図書館ＡＰＬ３０１のセキュリティレベルは“０１ｈ”であり、公共プールＡＰＬ３０２のセキュリティレベルは“０３ｈ”である（図１１参照）。
【０１６３】
つまり、比較部６０６は、データの複製先である公共プールＡＰＬ３０２のセキュリティレベルの方が、データの複製元である図書館ＡＰＬ３０１のセキュリティレベルより上であるという関係を特定する（Ｓ１００５でＹ）。
【０１６４】
この特定された関係に基づき、ＩＣカード２００のＯＳは、データＡを複製するためにファイヤウォール３４０を一時的もしくは部分的に解除する。データ操作部６０８は、図書館ＡＰＬ３０１専用のメモリ領域３３１に保存されているデータＡを、公共プールＡＰＬ３０２専用のメモリ領域３３２に複製する処理を実行する（Ｓ１００６）。
【０１６５】
なお、複製先のアプリケーションプログラムのセキュリティレベルが、複製元のアプリケーションプログラムのセキュリティレベルより下であった場合（Ｓ１００５でＮ）、実施の形態１と同様に、ファイヤウォール３４０は一時的もしくは部分的に解除されることはなく、公共サービスサーバ１１０を介して複製が実行される（Ｓ１００７）。
【０１６６】
データの複製を続行する場合（Ｓ１００８でＹ）、選択の受け付け（Ｓ１００３）に戻る。
【０１６７】
ＩＣカード２００および公共サービスサーバ１１０は、ユーザの所定の操作によりデータの複製が終了（Ｓ１００８でＮ）されるまで上記動作を繰り返す。
【０１６８】
上述のように、実施の形態２におけるＩＣカード２００および公共サービスサーバ１１０の動作の基本的な流れは、実施の形態１における動作と変わりない。しかしながら、実施の形態２では、ＩＣカード２００が比較部６０６を備えることで、２つのセキュリティレベルを外部に出すことなく比較する（Ｓ１００５）ことが可能である。言い換えれば、ＩＣカード２００からそのデータが読み出されることなくセキュリティレベルの比較が行われる。つまり、ＩＣカード２００に接続された外部機器を経由せずにセキュリティレベルを比較することが可能である。
【０１６９】
つまり、重要なデータのみならず、アプリケーションプログラムのセキュリティレベルも外部に出すことがないため、ＩＣカード２００の内部に格納された情報の保護がより強固なものとなる。
【０１７０】
なお、実施の形態２においても、実施の形態１と同様、アプリケーションプログラムのセキュリティ強度の比較は、暗号方式よって特定されたセキュリティレベルを用いた。しかしながら、別の情報によって特定されたセキュリティレベルを用いてもよい。
【０１７１】
具体的には、実施の形態１では、各アプリケーションプログラムが採用する暗号方式により、それぞれのセキュリティ強度を、 “強”、“中”、“弱”、“なし”、のいずれかに特定し、それぞれ対応する値をセキュリティレベルとして特定していた。しかしながら、例えば、セキュリティレベルとして、各アプリケーションプログラムの、データを暗号化するための暗号化条件である、暗号鍵のビット長や暗号鍵データなどを用いてもよい。
【０１７２】
つまり、実施の形態２では、セキュリティレベルもＩＣカード２００の外部に出ることがないため、暗号化条件をセキュリティレベルとして使用しても、外部への漏洩等の危険性はない。従って、上記のような暗号化条件によって特定されるセキュリティレベルを使用し、異なるアプリケーションプログラムのセキュリティ強度の比較を行うことができる。
【０１７３】
また、更に、実施の形態１で用いた“強”、“中”、“弱”、“なし”の４段階のセキュリティレベルと、暗号化条件との２つの尺度で、異なるアプリケーションプログラムのセキュリティ強度の比較を行ってもよい。
【０１７４】
例えば、４段階のセキュリティレベルが同じであった場合、暗号鍵のビット長が長いほうが、よりセキュリティ強度が強いとしてもよい。
【０１７５】
こうすることで、実施の形態１では、４段階のセキュリティレベルで比較を行っていたが、より細分化された尺度でセキュリティレベルを比較することができる。
【０１７６】
また、実施の形態２におけるＩＣカード２００が備えている、セキュリティレベル管理部６０２、セキュリティレベル取得部６０４、セキュリティレベル出力部６０５、比較部６０６およびデータ操作部６０８は、コンピュータプログラムとして実現される。当該プログラムは、ＩＣカード内のＲＯＭに格納され実行されるものと、外部よりダウンロードされ、不揮発性メモリに格納され実行されるものとがある。図書館ＡＰＬ３０１および公共プールＡＰＬ３０２は、ＲＯＭ２０３またはＥＥＰＲＯＭ２０４に格納される。セキュリティ情報記憶部６１０およびメモリ領域３１０は、それぞれＥＥＰＲＯＭ２０４内の別の領域として実現される。
【０１７７】
また、図１８に示したＩＣカード２００の機能ブロックは、ＣＰＵ、ＲＡＭ、ＲＯＭ、不揮発性メモリ等のハードウェア資源との組み合わせにより、集積回路であるＬＳＩとして実現される場合がある。これらは、個別に１チップ化されても良いし、一部又はすべてを含むように１チップ化されても良い。
【０１７８】
図２０は、実施の形態２のＩＣカード２００における集積回路化の一例を示す図である。ＬＳＩ２０００は集積回路化の一例を示し、点線で囲まれた範囲は集積回路化する機能ブロックの範囲の例である。ここでは、ＬＳＩとしたが、集積度の違いにより、ＩＣ、システムＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩと呼称されることもある。
【０１７９】
また、集積回路化の手法はＬＳＩに限るものではなく、専用回路又は汎用プロセサで実現してもよい。ＬＳＩ製作後にプログラムすることが可能なＦＰＧＡ(Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ)やＬＳＩ内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
【０１８０】
さらには、半導体技術の進歩又は派生する別技術によりＬＳＩに置き換わる集積回路化の技術が登場すれば、当然その技術を用いて機能ブロックの集積回路化を行ってもよい。例えば、バイオ技術を機能ブロックの集積回路化に適用してもよい。
【０１８１】
（実施の形態３）
実施の形態２では、ＩＣカード２００に備えられた比較部６０６が、セキュリティレベルの比較を行うとした。これにより、セキュリティレベルがＩＣカード２００の外部に出ないため、暗号化条件をセキュリティレベルを特定するための情報として使用することができることを説明した。
【０１８２】
しかしながら、セキュリティレベルを特定するための情報は、実施の形態１で示した暗号方式、および、実施の形態２で示した暗号化条件以外の情報でもよい。例えば、アプリケーションプロトコルのバージョンである、プロトコルバージョンでもよい。
【０１８３】
そこで、実施の形態３として、プロトコルバージョンをセキュリティレベルとして使用する形態について説明する。
【０１８４】
また、従来、ＩＣカードと外部の機器との間では、接触型ＩＣカードの標準規格であるＩＳＯ７８１６で規定されているアプリケーションプロトコルデータユニット（ＡＰＤＵ）コマンドを使用してデータの送受信が行われている。上述の実施の形態１および２においても、ＩＣカード２００とＥＣサーバ１００、公共サービスサーバ１１０およびリーダライタ１２１との間では、ＡＰＤＵコマンドを使用してデータの送受信を行っている。
【０１８５】
ＡＰＤＵコマンドには、ホスト機器からＩＣカードに対してデータを送信するためのコマンドＡＰＤＵと、ＩＣカードからホスト機器に対してデータを送信するためのレスポンスＡＰＤＵとがある。
【０１８６】
そこで、実施の形態３では、アプリケーションプロトコルのバージョン番号を含んだＡＰＤＵコマンドが公共サービスサーバ１１０に送信される場合を説明する。つまり、実施の形態１のＩＣカード２００および公共サービスサーバ１１０において、セキュリティレベルとしてプロトコルバージョンを使用する場合を想定する。
【０１８７】
図２１は、コマンドＡＰＤＵのデータ構成を示す図である。図２１に示すように、コマンドＡＰＤＵは、必須ヘッダ部分と、条件により付加される本体部分とから構成される。必須ヘッダ部分には、それぞれ１ｂｙｔｅの制御パラメータであるＰ１とＰ２とが含まれている。
【０１８８】
公共サービスサーバ１１０は、例えば、この制御パラメータ（Ｐ１、Ｐ２）のデータ領域に、アプリケーションプロトコルのバージョン番号を含んだレスポンスＡＰＤＵを作成させる要求を含ませて、コマンドＡＰＤＵを送信することができる。
【０１８９】
ここで、一般に、アプリケーションプロトコルは機能拡張されるにしたがって、そのバージョン番号は上げられる。例えば、セキュリティの機能が拡張または改良された場合、バージョン番号は上げられる。つまり、アプリケーションプロトコルのバージョン番号を比較し、より大きなバージョン番号を有するアプリケーションプロトコルの方がセキュリティレベルが上であるといえる。
【０１９０】
図１１に示すように、ＡＰＬ情報テーブル６０１に各アプリケーションプログラムのアプリケーションプロトコルのバージョン番号が保存されている。従って、ＩＣカード２００は、例えば、図書館ＡＰＬ３０１と、公共プールＡＰＬ３０２のアプリケーションプロトコルのバージョン番号を含んだレスポンスＡＰＤＵを作成し、そのレスポンスＡＰＤＵを公共サービスサーバ１１０に送信することができる。これにより、公共サービスサーバ１１０の比較部１０６（図７参照）でバージョン番号を比較することができる。
【０１９１】
以下、図２２〜図２４を用いて、レスポンスＡＰＤＵでアプリケーションプロトコルのバージョン番号を送信する方法について説明する。
【０１９２】
図２２は、接触型ＩＣカードの標準規格であるＩＳＯ７８１６で規定されているコマンドの例を示す図である。また、図２３は、ＳＥＬＥＣＴコマンドにおける制御パラメータＰ１の内容を示す図である。
【０１９３】
例えば、ＳＥＬＥＣＴコマンドの場合、図２３に示すようにＰ１において未指定である値が存在する。この未指定の値の１つを使用しＩＣカード２００に対する要求を行うことが可能である。例えば公共サービスサーバ１１０が、ｂ８を“１”としたＳＥＬＥＣＴコマンド（ｂ８以外は図中の値のいずれか）をＩＣカード２００に送信する。これにより、ＩＣカード２００に、アプリケーションプロトコルのバージョン番号を含ませたレスポンスＡＰＤＵを作成させる要求を行うことが可能である。
【０１９４】
このようなＳＥＬＥＣＴコマンドをＩＣカード２００が受信した場合、図２４に示すレスポンスＡＰＤＵのデータ部にアプリケーションプロトコルのバージョン番号を含んだレスポンスＡＰＤＵを作成し、そのレスポンスＡＰＤＵを送信することが可能である。
【０１９５】
ここでは、ＳＥＬＥＣＴコマンドを例として挙げたが、本発明はこれに限定されるものではなく、未使用のビットが存在するコマンドＡＰＤＵであれば、ＩＣカード２００にアプリケーションプロトコルのバージョン番号を含ませたレスポンスＡＰＤＵを作成させる要求を行うことが可能である。
【０１９６】
また、例えば、公共サービスサーバ１１０が、ＩＣカード２００にアプリケーションプロトコルのバージョン番号を送信させるための独自のコマンドＡＰＤＵを作成することが可能である。
【０１９７】
図２５は、コマンドＡＰＤＵにおけるクラスバイト（ＣＬＡ）の内容を示す図である。図２５に示すように、ＣＬＡのｂ５〜ｂ８が０であれば、そのコマンドＡＰＤＵがＩＳＯ７８１６−４に準拠する共通コマンドであることを意味する。また、ＣＬＡのｂ８が１であれば、そのコマンドＡＰＤＵが独自のコマンドであることを意味する。つまり、ＣＬＡのｂ８を１に設定することで、アプリケーションプロトコルのバージョン番号を含んだレスポンスＡＰＤＵの作成とその送信とを要求するための、独自のコマンドＡＰＤＵを作成できる。
【０１９８】
上述のように、ＩＣカード２００は、アプリケーションプロトコルのバージョン番号をレスポンスＡＰＤＵに含ませて、公共サービスサーバ１１０に送信することが可能である。公共サービスサーバ１１０は、受け取った２つのバージョン番号を比較することにより、２つのアプリケーションプログラムのセキュリティレベルの関係を特定することができる。
【０１９９】
例えば、図書館ＡＰＬ３０１のデータを公共プールＡＰＬ３０２に複製したい場合、図書館ＡＰＬ３０１のバージョン番号は０１ｈであり、公共プールＡＰＬ３０２のバージョン番号は０５ｈである（図１１参照）。つまり、公共プールＡＰＬ３０２のセキュリティレベルの方が上であると特定される。
【０２００】
ＩＣカード２００は、公共サービスサーバ１１０から、公共プールＡＰＬ３０２のセキュリティレベルの方が上であるという情報を取得し、ＩＣカード２００内でデータの複製をする。これにより、重要なデータはＩＣカード２００内で複製される。
【０２０１】
上述のように、セキュリティレベルとして、アプリケーションプロトコルのバージョン番号を使用した場合においても、実施の形態１および２と同じく、重要なデータを安全に複製することができる。
【０２０２】
なお、複製先のプロトコルバージョンが複製元のプロトコルバージョンより古い、つまりバージョン番号が小さい場合は、通信のセキュリティが落ちると判断し、データの複製を不可としてもよい。こうすることで、データ漏洩の危険性がさらに減少することとなる。
【０２０３】
また、アプリケーションプロトコルのバージョン番号そのものをセキュリティレベルとして使用しなくてもよく、バージョン番号によって特定される値であればよい。
【０２０４】
また、アプリケーションプログラムも、機能拡張されるにしたがってその、バージョン番号は上げられる。例えば、セキュリティの機能が拡張または改良された場合、バージョン番号は上げられる。そこで、プロトコルバージョンではなく、アプリケーションプログラム自身のバージョン番号をセキュリティレベルとして使用してもよい。
【０２０５】
この場合、例えば、アプリケーションのバージョン番号を、プロトコルバージョンと同様の方法で、ＡＰＤＵコマンドに含ませて送信してもよい。また、異なるアプリケーションプログラムのバージョン番号から、セキュリティ強度を比較するために、一旦、各アプリケーションに共通するセキュリティ強度を示す値に変換し、送信してもよい。つまり、アプリケーションのバージョン番号によって特定される値であればセキュリティレベルとして使用してもよい。
【０２０６】
また、アプリケーションプロトコル、またはアプリケーションのバージョン番号は公共サービスサーバ１１０の比較部１０６で比較されるとした。しかしながら、バージョン番号の比較はＩＣカード２００内で行われてもよい。
【０２０７】
例えば、実施の形態２においてセキュリティレベルとしてアプリケーションプロトコルのバージョン番号を使用し、ＩＣカード２００が備える比較部６０６でバージョン番号の比較が行われてもよい。
【０２０８】
また、バージョン番号の比較をＩＣカード２００内部で行う場合でも、ＩＣカード２００の外部で行う場合でも、バージョン番号と、その他の基準、例えば、実施の形態１で用いた暗号方式や、実施の形態２の説明の中で述べた暗号化条件などの情報を組み合わせてセキュリティレベルを特定し、それら特定されたセキュリティレベルを用いアプリケーションプログラムのセキュリティ強度を比較してもよい。
【０２０９】
こうすることで、例えば、アプリケーションプログラムのセキュリティ強度の比較に最適な比較方法を採用することができる。
【０２１０】
また、実施の形態１〜３において、アプリケーションプログラムが利用する暗号方式やプロトコルバージョンなど、アプリケーションプログラムの属性情報を比較することにより、データの複製をＩＣカード２００の内部で行うか否かを決定した。しかしながら、別の方法により、データの複製をＩＣカード２００の内部で行うか否かの決定をしてもよい。
【０２１１】
例えば、複製の対象となるデータが保存されているメモリ領域と、複製先のメモリ領域とが、異なる不揮発性メモリに存在する場合、それら２つの不揮発性メモリのセキュリティの強度により、データの複製をＩＣカード２００の内部で行うか否かを決定してもよい。
【０２１２】
図２６（Ａ）は、３つの不揮発性メモリを備えたＩＣカード２００のハードウェア構成の一例を示す図である。図２６（Ａ）に示すように、ＩＣカード２００には、不揮発性メモリ群２０９が存在する。不揮発性メモリ群２０９は、ＴＲＭ領域内にあるＦｅＲＡＭ２０６と、セキュアフラッシュ２０７と、ＴＲＭ領域外にあるＦｌａｓｈメモリ２０８とから構成される。なお、セキュアフラッシュとは、ＴＲＭの機能を利用しセキュリティ強度を強めたフラッシュメモリのことである。
【０２１３】
図２６（Ｂ）は、３つの不揮発性メモリのセキュリティ強度を示す図である。図２６（Ｂ）に示すように、ＴＲＭ領域内にあるＦｅＲＡＭ２０６のセキュリティ強度が最も強く、セキュアフラッシュ２０７、Ｆｌａｓｈメモリ２０８の順にセキュリティ強度は弱くなっている。
【０２１４】
例えば、複製の対象となるデータが、セキュアフラッシュ２０７に存在し、複製先がＴＲＭ領域内にあるＦｅＲＡＭ２０６である場合を想定する。この場合、複製先のメモリの方がセキュリティ強度が強く、複製の対象となっているデータは重要なデータであると考えられる。従って、ＩＣカード２００内でデータを複製する。これにより、重要なデータを安全に複製することができる。なお、セキュリティ強度の比較はＩＣカードの内部で行われてもよく、また、外部で行われてもよい。
【産業上の利用可能性】
【０２１５】
本発明の半導体メモリは、複数のアプリケーションプログラムを格納し、それら各アプリケーションプログラム間でのデータの複製を半導体メモリ内で行うことが可能である。よって、重要なデータに対する強固な保護機能が要求されるＳＤメモリカード、ＩＣカード等として有用である。
【図面の簡単な説明】
【０２１６】
これら、並びに、発明の他の目的、効果、及び特徴は、発明の特定の実施の形態を説明する添付図面とともに行う説明から明らかである。
【図１】一般的なＩＣカードの内部構造の概要を示す図である。
【図２】ＩＣカードにおけるソフトウエェアの構成を示す図である。
【図３】従来のＩＣカードにおいて、異なるアプリケーションプログラム間でデータの複製が行われる様子を示す概念図である。
【図４】ＩＣカードが使用される環境を示す図である。
【図５】図４に示す環境下において、実施の形態１におけるＩＣカードが公共サービスサーバと通信を行う場合のハードウェア構成の概観を示す図である。
【図６】図書館ＡＰＬのデータが公共プールＡＰＬのデータとして複製される状況を示す概念図である。
【図７】実施の形態１のＩＣカードおよび公共サービスサーバにおけるソフトウェアの機能的な構成を示す機能ブロック図である。
【図８】セキュリティ情報記憶部に記憶されているセキュリティレベルテーブルのデータ構成の一例を示す図である。
【図９】セキュリティ情報記憶部に記憶されている方式テーブルのデータ構成の一例を示す図である。
【図１０】セキュリティ情報記憶部に記憶されているＡＰＬ情報テーブルのデータ構成の一例を示す図である。
【図１１】ＡＰＬ情報テーブルに保存されている属性情報の一例を示す図である。
【図１２】データの複製の際の、実施の形態１におけるＩＣカードおよび公共サービスサーバの動作の流れを示すフローチャートである。
【図１３】ユーザが複製先のアプリケーションプログラムを選択するための複製先選択画面の一例を示す図である。
【図１４】ユーザが複製の対象とするデータを選択するための複製データ選択画面の一例を示す図である。
【図１５】データの複製が完了したことをユーザに知らせるための完了通知画面の一例である。
【図１６】実施の形態１におけるセキュリティレベルとデータの複製の経路との関係を示す模式図である。
【図１７】実施の形態１のＩＣカードにおける集積回路化の一例を示す図である。
【図１８】実施の形態２におけるＩＣカードおよび公共サービスサーバのソフトウェアの機能的な構成を示す機能ブロック図である。
【図１９】データの複製の際の、実施の形態２におけるＩＣカードおよび公共サービスサーバの動作の流れを示すフローチャートである。
【図２０】実施の形態２のＩＣカードにおける集積回路化の一例を示す図である。
【図２１】コマンドＡＰＤＵのデータ構成を示す図である。
【図２２】接触型ＩＣカードの標準規格であるＩＳＯ７８１６で規定されているコマンドの例を示す図である。
【図２３】ＳＥＬＥＣＴコマンドにおける制御パラメータＰ１の内容を示す図である。
【図２４】レスポンスＡＰＤＵのデータ構成を示す図である。
【図２５】コマンドＡＰＤＵにおけるクラスバイト（ＣＬＡ）の内容を示す図である。
【図２６】（Ａ）は、３つの不揮発性メモリを備えたＩＣカードのハードウェア構成の一例を示す図であり、（Ｂ）は、３つの不揮発性メモリのセキュリティ強度を示す図である。
【図１】
2007532984.tif 000003
【図２】
2007532984.tif 000004
【図３】
2007532984.tif 000005
【図４】
2007532984.tif 000006
【図５】
2007532984.tif 000007
【図６】
2007532984.tif 000008
【図７】
2007532984.tif 000009
【図８】
2007532984.tif 000010
【図９】
2007532984.tif 000011
【図１０】
2007532984.tif 000012
【図１１】
2007532984.tif 000013
【図１２】
2007532984.tif 000014
【図１３】
2007532984.tif 000015
【図１４】
2007532984.tif 000016
【図１５】
2007532984.tif 000017
【図１６】
2007532984.tif 000018
【図１７】
2007532984.tif 000019
【図１８】
2007532984.tif 000020
【図１９】
2007532984.tif 000021
【図２０】
2007532984.tif 000022
【図２１】
2007532984.tif 000023
【図２２】
2007532984.tif 000024
【図２３】
2007532984.tif 000025
【図２４】
2007532984.tif 000026
【図２５】
2007532984.tif 000027
2007532984.tif 000028
【国際調査報告】
2007532984.tif 000029
2007532984.tif 000030
2007532984.tif 000031