(57)【特許請求の範囲】
【請求項１】
暗号データを生成し、認証対象の正当性の認証を行う暗号化装置であって、
前記認証対象に固有の識別データ、前記認証対象との前記認証のセキュリティレベルを示す識別データ、或いは、前記認証の処理負荷の制限を示す識別データの何れかである第１の識別データを基に、複数の異なる暗号化方法の中から暗号化方法を選択する第１の選択手段と、
前記認証対象を識別するシステムコードを含む第２の識別データを基に、複数の異なる暗号平文データの中から暗号化対象とする暗号平文データを選択する第２の選択手段と、
前記第２の選択手段が選択した前記暗号平文データを、前記第１の選択手段が選択した前記暗号化方法で暗号化した暗号データを取得し、当該暗号データを基に前記認証対象の認証を行う暗号化手段と、
を有する暗号化装置。
【請求項２】
前記第２の識別データは、前記認証対象が有するメモリ内に記憶された、前記認証装置により正当性が認証された場合に使用されるファイルデータが、前記メモリ内の階層構造を有するフォルダであるエリア内に記憶されている場合の、当該エリアを識別するエリアコード、及び前記ファイルデータを識別するためのサービスコードを含む
請求項１に記載の暗号化装置。
【請求項３】
前記第１の選択手段は、単数の前記暗号平文データの暗号化に用いる前記暗号化方法として、複数の前記暗号化方法およびその処理順序を選択し、
前記暗号化手段は、前記第１の選択手段が選択した前記複数の暗号化方法および処理順序で、前記第２の選択手段が選択した前記暗号平文データを順に暗号化する
請求項１に記載の暗号化装置。
【請求項４】
前記暗号化手段は、前記第２の選択手段が選択した前記暗号平文データを、前記第１の選択手段が選択した前記暗号化方法で暗号化して前記暗号データを生成する
請求項１に記載の暗号化装置。
【請求項５】
前記暗号化手段は、前記複数の異なる暗号化方法と前記複数の異なる暗号平文データとの全てまたは一部の組み合わせについて、当該組み合わせと当該組み合わせに対応する前記暗号データとを対応付けて示す対応データを参照して、前記第１の選択手段および前記第２の選択手段の選択結果に対応した前記組み合わせの前記暗号データを特定して取得する
請求項１に記載の暗号化装置。
【請求項６】
前記暗号化手段は、前記第１の選択手段および前記第２の選択手段の選択結果に対応した前記組み合わせの前記暗号データが前記対応データ内に存在しない場合に、当該組み合わせについて暗号化を行って前記暗号化データを生成する
請求項５に記載の暗号化装置。
【請求項７】
耐タンパ性の電子回路である
請求項１に記載の暗号化装置。
【請求項８】
第１の選択手段と、第２の選択手段と、暗号化手段と、を有し、暗号データを生成し、認証対象の正当性の認証を行うデータ処理装置のデータ処理方法であって、
前記第１の選択手段が、前記認証対象に固有の識別データ、前記認証対象との前記認証のセキュリティレベルを示す識別データ、或いは、前記認証の処理負荷の制限を示す識別データの何れかである第１の識別データを基に、複数の異なる暗号化方法の中から暗号化方法を選択する第１の工程と、
前記第２の選択手段が、前記認証対象を識別するシステムコードを含む第２の識別データを基に、複数の異なる暗号平文データの中から暗号化対象とする暗号平文データを選択する第２の工程と、
前記暗号化手段が、前記第２の選択手段が選択した前記暗号平文データを、前記第１の選択手段が選択した前記暗号化方法で暗号化した暗号データを取得する第３の工程と、
前記暗号化手段が、前記第３の工程で取得した前記暗号データを基に前記認証対象の認証を行う第４の工程と、
を有するデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号化データを生成する暗号化装置、そのプログラムおよびその方法に関する。
【背景技術】
【０００２】
例えば、認証システムは、暗号化装置が生成した暗号データを用いて認証を行う。
このような暗号化装置は、例えば、入力データと暗号平文データとの対応関係を示す対応表データを基に、入力データに対応する暗号平文データを特定し、当該特定した暗号平文データを暗号化して暗号データを生成する。
従来の暗号化装置は、上記特定した暗号平文データを予め決められた単数の暗号化方法で暗号化している。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述した従来の暗号化装置では、単数の暗号化方法のみを採用しているため、上記対応表データおよび暗号化方法が不正に取得されると、上記暗号データを不正に生成できる。
そのため、このような暗号化装置を用いた認証システムでは、暗号化データが不正に生成されることを回避し、認証の信頼性を高めたいという要請がある。
【０００４】
本発明はかかる事情に鑑みてなされたものであり、その目的は、暗号データが不正に生成されることを効果的に回避できる暗号装置、そのプログラムおよびそのデータ処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明の暗号化装置は、暗号データを生成し、認証対象の正当性の認証を行う暗号化装置であって、前記認証対象に固有の識別データ、前記認証対象との前記認証のセキュリティレベルを示す識別データ、或いは、前記認証の処理負荷の制限を示す識別データの何れかである第１の識別データを基に、複数の異なる暗号化方法の中から暗号化方法を選択する第１の選択手段と、前記認証対象を識別するシステムコードを含む第２の識別データを基に、複数の異なる暗号平文データの中から暗号化対象とする暗号平文データを選択する第２の選択手段と、前記第２の選択手段が選択した前記暗号平文データを、前記第１の選択手段が選択した前記暗号化方法で暗号化した暗号データを取得し、当該暗号データを基に前記認証対象の認証を行う暗号化手段と、を有する。
【０００７】
本発明のデータ処理方法は、第１の選択手段と、第２の選択手段と、暗号化手段と、を有し、暗号データを生成し、認証対象の正当性の認証を行うデータ処理装置のデータ処理方法であって、前記第１の選択手段が、前記認証対象に固有の識別データ、前記認証対象との前記認証のセキュリティレベルを示す識別データ、或いは、前記認証の処理負荷の制限を示す識別データの何れかである第１の識別データを基に、複数の異なる暗号化方法の中から暗号化方法を選択する第１の工程と、前記第２の選択手段が、前記認証対象を識別するシステムコードを含む第２の識別データを基に、複数の異なる暗号平文データの中から暗号化対象とする暗号平文データを選択する第２の工程と、前記暗号化手段が、前記第２の選択手段が選択した前記暗号平文データを、前記第１の選択手段が選択した前記暗号化方法で暗号化した暗号データを取得する第３の工程と、前記暗号化手段が、前記第３の工程で取得した前記暗号データを基に前記認証対象の認証を行う第４の工程と、を有する。
【発明の効果】
【００１１】
本発明によれば、暗号データが不正に生成されることを回避できる暗号装置、そのプログラムおよびそのデータ処理装置を提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施形態に係わるカードシステムについて説明する。
第１実施形態
図１は、本実施形態のカードシステム１の構成図である。
図１に示すように、カードシステム１は、例えば、コンピュータ１１を介してＩＣカード１０のＩＣ(Integrated Circuit)１５とＳＡＭ(Secure Application Module) １２とが認証を行った後に、連携して所定のサービスに関する処理を行う。
ここで、ＳＡＭ１２が本発明の暗号化装置に対応し、ＩＣ１５が本発明の出力元に対応している。
【００１３】
ＩＣ１５は、後述するように、ＳＡＭ１２を利用してＩＣ１５のユーザが受ける種々のサービスに関するデータおよびプログラムのファイルデータを記憶しており、当該ファイルデータを用いたサービスに利用権限が設定されている。
ＳＡＭ１２は、コンピュータ１１を介してＩＣ１５から、ＩＣ１５の固有の装置識別データＩＤＭ、並びに認証対象とするサービス（ＩＣ１５を用いて受けようとする指定されたサービス）などを識別するコードＣＯＤＥを入力する。
ＳＡＭ１２は、装置識別データＩＤＭを基に、複数の異なる暗号化方法のなかから暗号化方法を選択する。
また、ＳＡＭ１２は、コードＣＯＤＥを基に、複数の異なる暗号平文データのなかから暗号化対象とする暗号平文データを選択する。
そして、ＳＡＭ１２は、上記選択した暗号平文データを、上記選択した暗号化方法で暗号化した暗号データをＩＣ１５に出力する。
ＳＡＭ１２およびＩＣ１５は、上記暗号データを基に認証を行い、互いの正当性を確認したことを条件に、ＩＣ１５とＳＡＭ１２とが連携して上記サービスに係わる処理を行う。
【００１４】
以下、図１に示す各構成要素について説明する。
〔ＩＣ１５〕
図２は、図１に示すＩＣカード１０に内蔵されたＩＣ１５の構成図である。
図２に示すように、ＩＣ１５は、例えば、インタフェース２１、メモリ２２およびＣＰＵ２３を有し、これらが内部バス２０を介して接続されている。
ＩＣ１５は、例えば、耐タンパ性の電子回路であり、メモリ２２内に記憶されたデータ、並びにＣＰＵ２３による処理中のデータを外部から監視および改竄できない（困難な）構成を有している。
インタフェース２１は、コンピュータ１１を介してＳＡＭ１２との間でデータの入出力を行う。
【００１５】
メモリ２２は、図３に示すように、個々のＩＣカード１０に固有の装置識別データＩＤＭを記憶している。
また、メモリ２２は、ＳＡＭ１２を利用してＩＣ１５のユーザが受ける種々のサービスに関する処理に用いられるデータおよびプログラムのファイルデータを記憶している。
例えば、メモリ２２は、図３に示すように、システムコードＳＹＳ＿Ｃ、エリアコードＡＲ＿ＣおよびサービスコードＳＥＲ＿Ｃを記憶している。
システムコードＳＹＳ＿Ｃ、エリアコードＡＲ＿ＣおよびサービスコードＳＥＲ＿Ｃは、コードＣＯＤＥとしてコンピュータ１１を介してＳＡＭ１２に出力される。
本実施形態において、コードＣＯＤＥは、ユーザの指定されたサービスに応じた認証の対象を識別するために用いられる。
システムコードＳＹＳ＿Ｃは、同じシステムに属するＳＡＭ１２に共通して割り当てられた識別データであり、当該システムコードＳＹＳ＿Ｃおよびそれに対応付けられた鍵データを基にＩＣ１５とＳＡＭ１２とが相互認証を行い互いの正当性が確認されたことを条件にＳＡＭ１２によるＩＣ１５に対してのアクセスが許可される。
また、メモリ２２に記憶された種々のサービスのファイルデータは、それぞれ階層構造を有するフォルダであるエリア内に記憶されている。
また、各エリアには、当該エリアを識別するためのエリアコードＡＲ＿Ｃ、並びに鍵データが対応付けられている。
本実施形態では、エリアコードＡＲ＿Ｃおよびそれに対応付けられた鍵データを基にＩＣ１５とＳＡＭ１２とが相互認証を行い互いの正当性が確認されたことを条件にＳＡＭ１２による当該エリアに対してのアクセスが許可される。
また、エリア内に記憶された各種のサービスを提供するためのファイルデータには、当該ファイルデータを識別するためのサービスコードＳＥＲ＿Ｃ、並びに鍵データが対応付けられている。
本実施形態では、サービスコードＳＥＲ＿Ｃおよびそれに対応付けられた鍵データをＩＣ１５とＳＡＭ１２とが基に相互認証を行い、互いの正当性が認められたことを条件にＳＡＭ１２による当該ファイルデータに対してのアクセスが許可される。
【００１６】
ＣＰＵ２３は、メモリ２２から読み出したプログラム、並びに鍵データを基に、インタフェース２１およびコンピュータ１１を介して、ＳＡＭ１２とデータの授受を行ってＳＡＭ１２と相互認証を行う。
また、ＣＰＵ２３は、上記相互認証で互いの正当性を確認すると、ＳＡＭ１２と連携して、相互認証で用いた鍵データに対応付けられたサービスに関する処理を実行する。
【００１７】
〔コンピュータ１１〕
コンピュータ１１は、例えば、図示しない操作部を介してＩＣカード１０のユーザからサービスの指示を受けると、ＩＣカード１０のＩＣ１５から装置識別データＩＤＭおよびコードＣＯＤＥを読み出し、これをＳＡＭ１２に出力する。
当該コードＣＯＤＥは、システムコードＳＹＳ＿Ｃ、上記指示を受けたサービスに対応するエリアコードＡＲ＿ＣおよびサービスコードＳＥＲ＿Ｃである。
本実施形態では、ユーザによるコンピュータ１１の操作に応じて、所定のサービスが指定されると、コンピュータ１１は、例えば、ＩＣ１５のシステムコードＳＹＳ＿ＣをコードＣＯＤＥとしてＩＣ１５から入力し、これをＳＡＭ１２に出力する。
そして、ＩＣ１５とＳＡＭ１２との間で当該システムコードＳＹＳ＿Ｃを用いた相互認証で互いの正当性が確認されると、続いて、コンピュータ１１は、上記指定されたサービスに関するファイルデータが記憶されているエリアを特定し、当該特定したエリアのエリアコードＡＲ＿ＣをＩＣ１５から入力する。
そして、ＩＣ１５とＳＡＭ１２との間で当該エリアコードＡＲ＿Ｃを用いた相互認証で互いの正当性が確認されると、続いて、コンピュータ１１は、上記指定されたサービスに関するファイルデータに対応付けられたサービスコードＳＥＲ＿ＣをＩＣ１５から入力する。
そして、ＩＣ１５とＳＡＭ１２との間で当該サービスコードＳＥＲ＿Ｃを用いた相互認証で互いの正当性が確認されると、当該ファイルデータを基にＩＣ１５とＳＡＭ１２との間で連携して所定のサービスに関する処理が行われる。
【００１８】
〔ＳＡＭ１２〕
図４は、図１に示すＳＡＭ１２の構成図である。
図４に示すように、ＳＡＭ１２は、例えば、インタフェース３０、暗号化方法選択部３１、暗号平文選択部３２および暗号化部３３を有する。
本実施形態において、インタフェース３０、暗号化方法選択部３１、暗号平文選択部３２および暗号化部３３は、例えば、電子回路によって実現される。
ここで、暗号化方法選択部３１が第１の発明の第１の選択手段に対応し、暗号平文選択部３２が第２の発明の第２の選択手段に対応し、暗号化部３３が第１の発明の暗号化手段に対応している。
ＳＡＭ１２は、例えば、耐タンパ性の電子回路であり、ＳＡＭ１２内に記憶されたデータ、並びに処理中のデータを外部から監視および改竄できない（困難な）構成を有している。
【００１９】
インタフェース３０は、コンピュータ１１から入力した装置識別データＩＤＭ（本発明の第１の識別データ）を、暗号化方法選択部３１に出力する。
また、インタフェース３０は、コンピュータ１１から入力したコードＣＯＤＥ（本発明の第２の識別データ）を暗号平文選択部３２に出力する。
また、インタフェース３０は、暗号化部３３から入力した暗号データＥＤをコンピュータ１１に出力する。
【００２０】
暗号化方法選択部３１は、図５（Ａ）に示すように、複数の装置識別データＩＤＭ１〜ＩＤＭｎの各々について、それに対応する暗号化方法Ｍ１〜Ｍｎを示す対応表データＴＤＡを有する。
暗号化方法選択部３１は、図５（Ａ）に示す対応表データＴＤＡを基に、インタフェース３０から入力した装置識別データＩＤＭに対応する単数または複数の暗号化方法Ｍ１〜Ｍｎを選択し、当該選択した暗号化方法を示す選択データＳ３１を暗号化部３３に出力する。
上記暗号化方法Ｍ１〜Ｍｎの全てまたは一部は、相互に異なる暗号化方法であり、例えば、公開鍵暗号方式および共通鍵暗号化方法である。
また、上記暗号化方法Ｍ１〜Ｍｎの全てまたは一部は、例えば、暗号化強度や暗号化処理量（負担）が相互に異なる。このような相違は、例えば、異なるデータ長の鍵データを暗号化に用いることによって実現される。
一例としては、無線通信を行う携帯電話装置などに組み込まれたＩＣ１５の装置識別データＩＤＭに対しては、狭帯域性が要求されるため共通鍵暗号化方法を暗号化方法として対応付けている。
また、決済などを行うＩＣカード１０に組み込まれたＩＣ１５の装置識別データＩＤＭに対しては、高セキュリティを実現することが優先されるため、公開鍵暗号方式を暗号化方法として対応付けている。
なお、本実施形態の暗号化方法は、秘密鍵データ、公開鍵データや共通鍵データなどを基に行う暗号処理の他、暗号平文データＰに編集を施す処理を行うものであってもよい。
【００２１】
暗号平文選択部３２は、図５（Ｂ）に示すように、複数のコードＣＯＤＥの各々について、それに対応する暗号平文データＰ１〜Ｐｍを示す対応表データＴＤＢを有する。
暗号平文データＰ１〜Ｐｍは、例えば、相互に異なるデータである。
暗号平文選択部３２は、図５（Ｂ）に示す対応表データＴＤＢを基に、インタフェース３０から入力したコードＣＯＤＥに対応する暗号平文データＰ１〜Ｐｍを選択し、当該選択した暗号平文データＰを暗号化部３３に出力する。
【００２２】
暗号化部３３は、暗号平文選択部３２から入力した暗号平文データＰを、暗号化方法選択部３１から入力した選択データＳ３１が示す暗号化方法で暗号化して暗号データＥＤを生成し、これをインタフェース３０に出力する。
【００２３】
以下、図１に示すカードシステム１の動作例を説明する。
ステップＳＴ１：
ＩＣカード１０のユーザが、コンピュータ１１の図示しない操作部を介してＩＣカード１０を用いて受けようとするサービスの指示を入力する。
ステップＳＴ２：
コンピュータ１１は、ステップＳＴ１で入力した指示に応じて、図２に示すＩＣカード１０のＩＣ１５のメモリ２２から装置識別データＩＤＭおよび当該指示に対応するコードＣＯＤＥを読み出し、これをＳＡＭ１２に出力する。
ＳＡＭ１２は、図４に示すインタフェース３０を介して入力した装置識別データＩＤＭを暗号化方法選択部３１に出力する。
また、ＳＡＭ１２は、インタフェース３０を介して入力したコードＣＯＤＥを暗号平文選択部３２に出力する。
【００２４】
ステップＳＴ３：
暗号化方法選択部３１は、図５（Ａ）に示す対応表データＴＤＡを基に、ステップＳＴ２で入力した装置識別データＩＤＭに対応する暗号化方法Ｍ１〜Ｍｎを選択し、当該選択した暗号化方法を示す選択データＳ３１を暗号化部３３に出力する。
ステップＳＴ４：
暗号平文選択部３２は、図５（Ｂ）に示す対応表データＴＤＢを基に、ステップＳＴ２で入力したコードＣＯＤＥに対応する暗号平文データＰ１〜Ｐｍを選択し、当該選択した暗号平文データＰを暗号化部３３に出力する。
【００２５】
ステップＳＴ５：
暗号化部３３は、ステップＳＴ４で暗号平文選択部３２から入力した暗号平文データＰを、ステップＳＴ３で暗号化方法選択部３１から入力した選択データＳ３１が示す暗号化方法で暗号化して暗号データＥＤを生成する。
ステップＳＴ６：
暗号化部３３は、ステップＳＴ５で生成した暗号データＥＤを、インタフェース３０を介してコンピュータ１１に出力する。
コンピュータ１１は、当該入力した暗号データＥＤをＩＣ１５に出力する。
ステップＳＴ７：
ＩＣ１５のＣＰＵ２３は、ステップＳＴ６で入力した暗号データＥＤを、それに対応する鍵データで復号して復号データを生成する。
また、ＣＰＵ２３は、当該復号データを、所定の鍵データを基に暗号化して暗号化データを生成する。
ＣＰＵ２３は、当該暗号化データをインタフェース２１およびコンピュータ１１を介してＳＡＭ１２に出力する。
ステップＳＴ８：
ＳＡＭ１２は、ステップＳＴ７でＩＣ１５から入力した暗号データを基に、ＩＣ１５の正当性を認証する。
【００２６】
以上説明したように、ＳＡＭ１２によれば、図４および図５で説明したように、各コードＣＯＤＥに対応する暗号平文データＰ１〜Ｐｍを選択することに加えて、各装置識別データＩＤＭに対応する暗号化方法Ｍ１〜Ｍｎを選択する。
従って、同じコードＣＯＤＥであっても装置識別データＩＤＭが異なれば、コードＣＯＤＥを暗号化して得られる暗号データＥＤは異なる。
そのため、対応表データＴＤＢが不正に流出しても、暗号平文データＰが何れの暗号方法で暗号化されるか特定できないため、暗号データＥＤは不正に生成できない。
これにより、ＳＡＭ１２とＩＣ１５との間の認証の信頼性を高めることができる。
【００２７】
第１実施形態の変形例
上述した実施形態では、本発明の第１の識別データとして、個々のＩＣカード１０に固有の装置識別データＩＤＭを例示したが、その他、ＩＣカード１０との間で行う認証のセキュリティレベルを示す識別データ、あるいは、当該認証の処理負荷に応じて規定される識別データであってもよい。
すなわち、個々のＩＣカード１０に固有の識別データの他に、複数のＩＣカード１０で共用される識別データを本発明の第１の識別データとして用いてもよい。
また、上述した実施形態において、暗号化方法選択部３１が生成する選択データＳ３１を基に暗号化部３３が行う暗号は、例えば、暗号化部３３が予め複数の暗号化方法についての個々のプログラムを備え、選択データＳ３１を基に当該プログラムを選択して行うもの他、暗号化方法選択部３１が選択した暗号化方法のスクリプトを示す選択データＳ３１を暗号化部３３に出力し、暗号化部３３が当該スクリプトを解釈して実行してもよい。
【００２８】
また、暗号化方法選択部３１は、暗号化方法Ｍ１〜Ｍｎのうち単数の暗号化方法ではなく、複数の暗号化方法とその処理順序を示す選択データＳ３１を生成し、これを暗号化部３３に出力してもよい。
この場合に、暗号化部３３は、暗号平文選択部３２から入力した暗号平文データＰに対して、選択データＳ３１で指定された処理順序で、指定された複数の暗号化方法による暗号化処理を施して暗号化データＥＤを生成する。
【００２９】
第２実施形態
上述した第１実施形態では、ＳＡＭ１２の暗号化部３３が、暗号平文選択部３２から入力した暗号平文データＰを、暗号化方法選択部３１から入力した選択データＳ３１が示す暗号化方法で実際に暗号化して暗号データＥＤを生成する場合を例示した。
本実施形態のＳＡＭ１２ａの暗号化部３３ａは、暗号平文データＰ１〜Ｐｍの各々について、当該暗号平文データを暗号化方法Ｍ１〜Ｍｎのそれぞれで暗号化された場合の暗号データを予め保持し、暗号平文データおよび選択データＳ３１を基に、それに対応した暗号データを取得する。すなわち、暗号化部３３ａは、暗号平文データＰおよび選択データＳ３１を入力した後に暗号データの生成処理を行わない。
【００３０】
図８は、本実施形態のＳＡＭ１２ａの構成図である。
図８に示すように、ＳＡＭ１２ａは、例えば、インタフェース３０、暗号化方法選択部３１、暗号平文選択部３２および暗号化部３３ａを有する。
本実施形態において、暗号化部３３ａは、インタフェース３０、暗号化方法選択部３１および暗号平文選択部３２と同様に、例えば、電子回路によって実現される。
ここで、図４と同じ符号を付したインタフェース３０、暗号化方法選択部３１および暗号平文選択部３２は第１実施形態と同じである。
以下、暗号化部３３ａについて説明する。
暗号化部３３ａは、対応表データＴＤＣを有する。
図９は、図８に示す対応表データＴＤＣを説明するための図である。
図９に示す対応表データＴＤＣは、行方向は暗号平文データＰを示し、列方向は暗号化方法Ｍを示し、行と列によって規定されるアドレスに、当該行に対応する暗号平文データＰを当該列に対応する暗号化方法Ｍで暗号化して得られる暗号データＰ−Ｍを保持している。
すなわち、対応表データＴＤＣは、暗号平文データＰ１〜Ｐｍの各々について、当該暗号平文データを暗号化方法Ｍ１〜Ｍｎのそれぞれによって暗号化した場合の暗号データを規定している。
【００３１】
暗号化部３３ａは、図９に示す対応表データＴＤＣを参照して、暗号平文選択部３２から入力した暗号平文データＰｘと、暗号化方法選択部３１から入力した選択データＳ３１が示す暗号化方法Ｍｙに対応する暗号データＰ−Ｍを取得し、これを暗号データＥＤとしてインタフェース３０に出力する。
ここで、ｘは１〜ｍの何れかの整数、ｙは１〜ｎの何れかの整数を示す。
本実施形態のカードシステムは、上述した暗号化部３３ａの構成および動作を除いて、第１実施形態で説明したカードシステム１と同じである。
【００３２】
本実施形態によれば、暗号化部３３ａが対応表データＴＤＣを基に暗号データＥＤを取得し、暗号データＥＤの生成処理を行わないため、暗号化部３３ａの処理時間を短縮できると共に、暗号化部３３ａを簡単かつ小規模な構成にできる。
【００３３】
第２実施形態の変形例
上述した第２実施形態では、暗号平文データＰ１〜Ｐｍの全てについて、当該暗号平文データを暗号化方法Ｍ１〜Ｍｎの全てを用いて暗号化した場合の暗号データを規定した対応表データＴＤＣを例示したが、暗号平文データＰ１〜Ｐｍおよび暗号化方法Ｍ１〜Ｍｎの少なくとも一方について、一部の暗号平文データまたは暗号化方法に対応した暗号データのみを規定した対応表データＴＤＣを用いてもよい。
この場合に、暗号化部３３ａは、暗号化方法選択部３１から入力した選択データＳ３１および暗号平文選択部３２から入力した暗号平文データＰに対応する暗号データが対応表データＴＤＣに規定されていると判断すると、対応表データＴＤＣを基に暗号データを取得し、対応表データＴＤＣに規定されていないと判断すると、対応表データＴＤＣを用いずに、選択データＳ３１が示す暗号化方法で暗号平文データＰを実際に暗号化して生成する。
【００３４】
また、第２実施形態において、第１実施形態の変形例の場合と同様に、暗号化方法選択部３１は、暗号化方法Ｍ１〜Ｍｎのうち単数の暗号化方法ではなく、複数の暗号化方法とその処理順序を示す選択データＳ３１を生成し、これを暗号化部３３ａに出力してもよい。
この場合に、暗号化部３３ａは、暗号平文選択部３２から入力した暗号平文データＰに対して、選択データＳ３１で指定された処理順序で、指定された複数の暗号化方法による暗号化処理を施して暗号化データＥＤを生成する。
暗号化部３３ａは、このように複数の暗号化方法による暗号化処理を順に行う過程で、該当する暗号データが対応表データＴＤＣに規定されている場合には、対応表データＴＤＣからその暗号データを取得し、規定されていない場合にはそれまでの暗号化結果をキャンセルせずに、当該暗号化結果を用いて続く対応表データＴＤＣに規定されていない暗号データを実際に暗号化を行って生成する。
【００３５】
また、第２実施形態において、暗号化部３３ａは、対応表データＴＤＣから取得した暗号データを、予め決められた暗号化方法でさらに暗号化して暗号データＥＤを生成してもよい。また、このような暗号化をアップグレードを行う際に導入してもよい。
【００３６】
本発明は上述した実施形態には限定されない。
上述した実施形態では、暗号化方法選択部３１、暗号平文選択部３２および暗号化部３３，３３ａを電子回路として実現する場合を例示したが、これらのうち全部または一部をコンピュータなどのデータ処理装置がプログラム内の対応するステップを実行することで実現してもよい。
この場合に、例えば、図６に示すステップＳＴ３、ＳＴ４，ＳＴ５の手順がプログラムによって記述され、データ処理装置が当該ステップを実行することで、第２の発明の第１の手順、第２の手順および第３の手順が実現される。
【００３７】
また、上述した実施形態では、本発明の認証先（本発明の出力元）としてＩＣカード１０のＩＣ１５を例示したが、認証先はコンピュータなどであってもよい。
【図面の簡単な説明】
【００３８】
【図１】図１は、本発明の第１実施形態のカードシステムの構成図である。
【図２】図２は、図１に示すＩＣカードに内蔵されたＩＣの構成図である。
【図３】図３は、図１に示すＩＣ内に規定されたデータを説明するための図である。
【図４】図４は、図１に示すＳＡＭの機能ブロック図である。
【図５】図５（Ａ）は図４に示す暗号化方法選択部が保持する対応表データＴＤＡを説明するための図、図５（Ｂ）は図４に示す暗号平文選択部が保持する対応表データＴＤＢを説明するための図である。
【図６】図６は、図１に示すカードシステムの動作例を説明するためのフローチャートである。
【図７】図７は、図１に示すカードシステムの動作例を説明するための図６の続きのフローチャートである。
【図８】図８は、本発明の第１実施形態に係わるカードシステムのＳＡＭの構成図である。
【図９】図９は、図８に示す暗号化部が保持する対応表データＴＤＣを説明するための図である。
【符号の説明】
【００３９】
１…カードシステム、１０…ＩＣカード、１１…コンピュータ、１２，１２ａ…ＳＡＭ、２０…内部バス、２１…インタフェース、２２…メモリ、２３…ＣＰＵ、３０…インタフェース、３１…暗号化方法選択部、３２…暗号平文選択部、３３，３３ａ…暗号化部
【図１】
0004696449.tif 000002
【図２】
0004696449.tif 000003
【図３】
0004696449.tif 000004
【図４】
0004696449.tif 000005
【図５】
0004696449.tif 000006
【図６】
0004696449.tif 000007
【図７】
0004696449.tif 000008
【図８】
0004696449.tif 000009
【図９】
0004696449.tif 000010