外部装置と通信する通信手段と、拡張乱数データを生成する生成手段と、前記通信手段により受信された第1のコマンドに対応して、前記拡張乱数データの一部により構成される第1の乱数データに基づき第1の処理を実行し、前記通信手段により受信された第2のコマンドに対応して、前記拡張乱数データの一部により構成される第2の乱数データに基づき第2の処理を実行する実行手段と、を備えた携帯可能電子装置。前記生成手段は、第1のデータ長の前記第1の乱数データと前記第1の乱数データの後続に位置する第2のデータ長の前記第2の乱数データとを含む前記拡張乱数データを生成する請求項1記載の携帯可能電子装置。前記生成手段は、前記第1の乱数データの第1のデータ長と前記第2の乱数データの第2のデータ長とを合わせた第3のデータ長以上の前記拡張乱数データを生成する請求項1又は2記載の携帯可能電子装置。前記生成手段は、前記通信手段により受信された乱数要求コマンドに対応して前記拡張乱数データを生成する請求項1乃至3の何れか1項記載の携帯可能電子装置。前記生成手段は、前記乱数要求コマンドにより要求される要求乱数データ長と異なるデータ長の前記拡張乱数データを生成する請求項4記載の携帯可能電子装置。前記実行手段は、前記拡張乱数データの不足により、前記拡張乱数データから、前記通信手段により受信された第3のコマンドに対応して実行される第3の処理のための第3の乱数データを取得できない場合、前記通信手段から乱数不足情報を送信するように制御する請求項1乃至5の何れか1項記載の携帯可能電子装置。前記実行手段は、前記第1のコマンドに対応して前記拡張乱数データに含まれた未使用乱数データで構成された前記第1の乱数データに基づき第1の処理を実行し、前記第2のコマンドに対応して前記拡張乱数データに含まれた未使用乱数データで構成された前記第2の乱数データに基づき第2の処理を実行し、前記第3のコマンドに対応して前記拡張乱数データに含まれた未使用乱数データの不足により前記第3の乱数データを構成不能な場合に、前記乱数不足情報を送信するように制御する請求項6記載の携帯可能電子装置。前記生成手段は、前記拡張乱数データの不足により、前記拡張乱数データから、前記通信手段により受信された第3のコマンドに対応して実行される第3の処理のための第3の乱数データを取得できない場合、追加乱数データを生成し、前記実行手段は、前記追加乱数データに基づき前記第3の処理を実行する請求項1乃至5の何れか1項記載の携帯可能電子装置。前記実行手段は、前記第1のコマンドに対応して前記拡張乱数データに含まれた未使用乱数データで構成された前記第1の乱数データに基づき第1の処理を実行し、前記第2のコマンドに対応して前記拡張乱数データに含まれた未使用乱数データで構成された前記第2の乱数データに基づき第2の処理を実行し、前記生成手段は、前記第3のコマンドに対応して前記拡張乱数データに含まれた未使用乱数データの不足により前記第3の乱数データを構成不能な場合に、前記追加乱数データを生成する請求項8記載の携帯可能電子装置。前記生成手段は、前記拡張乱数データに含まれた未使用乱数データと前記追加乱数データとに基づき前記第3の乱数データを生成し、前記実行手段は、前記第3の乱数データに基づき前記第3の処理を実行する請求項9記載の携帯可能電子装置。前記実行手段は、前記第1のコマンドに対応して前記拡張乱数データに含まれた未使用乱数データで構成された前記第1の乱数データに基づき第1の処理を実行し、前記第2のコマンドに対応して前記拡張乱数データに含まれた未使用乱数データで構成された前記第2の乱数データに基づき第2の処理を実行し、前記生成手段は、前記拡張乱数データに含まれた未使用乱数データのデータ長が閾値データ長より短くなった場合、追加乱数データを生成する請求項1乃至5の何れか1項記載の携帯可能電子装置。拡張乱数データを生成し、第1のコマンドの受信に対応して、前記拡張乱数データの一部により構成される第1の乱数データに基づき第1の処理を実行し、第2のコマンドの受信に対応して、前記拡張乱数データの一部により構成される第2の乱数データに基づき第2の処理を実行する情報処理方法。ICモジュールが埋め込まれたカード本体により構成されるICカードであって、前記ICモジュールは、外部装置と通信する通信手段と、拡張乱数データを生成する生成手段と、前記通信手段により受信された第1のコマンドに対応して、前記拡張乱数データの一部により構成される第1の乱数データに基づき第1の処理を実行し、前記通信手段により受信された第2のコマンドに対応して、前記拡張乱数データの一部により構成される第2の乱数データに基づき第2の処理を実行する実行手段と、を備えたICカード。上記したように、各種処理の中には、乱数データを必要とする処理がある。乱数データを必要とする処理が複数回発生する場合、ICカードは、乱数データを複数回生成することになり、非効率である。本発明の目的は、乱数データを必要とする処理の効率化に優れた携帯可能電子装置、情報処理方法、及びICカードを提供することにある。実施形態によれば、携帯可能電子装置は、通信手段と、生成手段と、実行手段とを備える。前記通信手段は、外部装置と通信する。前記生成手段は、拡張乱数データを生成する。前記実行手段は、前記通信手段により受信された第1のコマンドに対応して、前記拡張乱数データの一部により構成される第1の乱数データに基づき第1の処理を実行し、前記通信手段により受信された第2のコマンドに対応して、前記拡張乱数データの一部により構成される第2の乱数データに基づき第2の処理を実行する。以下、第1~第3の実施形態について図面を参照して説明する。図1は、第1~第3の実施形態に共通のICカードシステム別称、スマートカードシステムの概略構成を示すブロック図である。図1に示すように、ICカードシステムは、端末1通信装置及びICカード2携帯可能電子装置により構成される。端末1は、制御部11、ディスプレイ12、キーボード13、カードリーダ/ライタ14を備えている。端末1はICカード2と通信可能に構成されており、端末1はICカード2に対してデータを送信したり、ICカード2からのデータを受信したりする。制御部11は、例えば、複数の通信方式及び複数のアプリケーションを選択的に実行することができる。ディスプレイ12は、ICカード2との通信結果及び認証結果等を表示する。キーボード13は、制御部11に対して文字や数字等を入力する。カードリーダ/ライタ14は、ICカード2と通信する。なお、ICカード2は、接触式のカード、非接触式のカード無線カード、及び非接触式と接触式の両者をサポートするコンビ型のカードのいずれであってもよい。図2は、第1~第3の実施形態に共通のカードリーダ/ライタ14の概略構成を示すブロック図である。図2に示すように、カードリーダ/ライタ14は、通信I/F142、CPU143、データメモリ不揮発性メモリ144、RAM145、ROM146を備えている。CPU143は、ICカード2に対してコマンド等の送信を制御したり、ICカード2からの応答を検出したり、ICカード2からの応答に基づきさらにICカード2に対してコマンド等の送信を制御したりする。図3は、第1~第3の実施形態に共通のICカードの概略構成を示すブロック図である。図3に示すように、ICカード2は、例えばプラスティックカードであり、ICモジュール20ICチップを備え、ICモジュール20は、通信I/F201、CPU204、データメモリEEPROM、FRAM、FLASH等の不揮発性メモリ205、RAM206、ROM207を備えている。なお、携帯可能電子装置の一例として、上記したようなICカード2について説明するが、本実施形態はこれに限定されるものではない。例えば、携帯可能電子装置は、SIM形状のICカードであってもよい。RAM206は、ワーキングメモリとして機能する。ROM207は、CPU204により実行されるICカードプログラムを保持する。CPU204は、ROM207に記憶されたICカードプログラム等に基づき動作する。また、CPU204は、データメモリ205又はRAM206に記憶されたデータを読み出したり、データメモリ205又はRAM206に対してデータを書き込んだり、さらには、通信I/F201を介して受信したコマンド端末1から送信されたコマンドを解釈し実行したり、通信I/F201を介して端末1に対してコマンド実行結果の返信を制御したりする。上記説明したICカード2CPU204は、乱数データを必要とする複数の処理用の乱数データ以下、説明を分かりやすくするために拡張乱数データと称するを生成し、通信I/F201により受信された第1のコマンド例えば認証処理コマンドに対応して、拡張乱数データの一部により構成される第1の乱数データに基づき第1の処理例えば認証処理を実行し、通信I/F201により受信された第2のコマンド例えば暗号化暗証番号照合コマンドに対応して、拡張乱数データの一部により構成される第2の乱数データに基づき第2の処理暗号化暗証番号照合処理を実行する。例えば、拡張乱数データは、第1の処理で必要とされる第1の乱数データのデータ長と第2の処理で必要とされる第2の乱数データのデータ長との合計以上のデータ長となる。例えば、カードリーダ/ライタ14が、ICカード2に対して、GETCHALLENGEコマンドを送信し、乱数データを要求した場合、ICカード2は、GETCHALLENGEコマンドを受信し、拡張乱数データを生成し、拡張乱数データを複数の乱数データに分割し、夫々の分割乱数データを、乱数データを必要とする夫々の処理に使用する。これにより、カードリーダ/ライタ14が、ICカード2に対して、乱数データを必要とする複数処理を実行させる場合であっても、カードリーダ/ライタ14は、ICカード2に対して、GETCHALLENGEコマンドを複数回送信しなくて済む。例えば、カードリーダ/ライタ14が、ICカード2に対して、1回のGETCHALLENGEコマンドを送信するだけで、乱数データを必要とする複数の処理を実行させることが可能となる。つまり、乱数データ要求処理GETCHALLENGEコマンド処理の回数を減らすことができ、処理時間の短縮を図ることができる。図4は、乱数要求コマンドGETCHALLENGEコマンドのコマンドメッセージの一例を示す図である。このコマンドメッセージのフォーマットは、ISOIEC78164によって規定されている。図4に示すように、乱数要求コマンドGETCHALLENGEコマンドのコマンドメッセージは、CLAクラスバイト、INSインストラクションバイト、P1パラメータバイト、P2パラメータバイト、Leによって構成されている。Leは、Leフィールドと呼ばれる。一般的にLeフィールドで指定される値は、ICカードから返信されるデータの最大長を表す。例えば、GETCHALLENGEコマンドを構成するLeフィールドには、要求する乱数データ長が設定される。つまり、Leフィールドに対して、GETCHALLENGEコマンド実行後に、乱数データを使用する一つのコマンド処理で必要とされる乱数データ長が設定される。或いは、このLeフィールドに対して、00hが設定される。この場合、乱数データ長は指定されず、暗黙的了解に従って乱数データ長が特定されることになる。つまり、事前に取り決められた乱数データ長が特定されることになる。前者のケースでは、例えば、Leフィールドに対して18hが設定されると、カードリーダ/ライタ14は、ICカード2に対して、24byteの乱数データを要求することとなる。後者のケースでは、Leフィールドに対して00hが設定されると、カードリーダ/ライタ14は、ICカード2に対して、暗黙的了解に従った長さの乱数データを要求することとなる。図5は、乱数を必要とする処理に関するコマンドメッセージの一例を示す図である。図5に示すコマンドメッセージは、例えば、認証処理コマンドのコマンドメッセージである。このコマンドメッセージのフォーマットは、ISOIEC78164によって規定され、CLAクラスバイト、INSインストラクションバイト、P1パラメータバイト、P2パラメータバイト、Lc、Dataによって構成されている。LcはLcフィールド、DataはDataフィールドと呼ばれる。Dataフィールドに対して、処理に必要とするデータが設定される。Lcフィールドに対して、Dataフィールドの長さを示すデータ長が設定される。例えば、認証処理では、Dataフィールドに対して、処理にて必要とする認証データが設定され、Lcフィールドに対して、前記認証データの長さを示す認証データ長が設定される。次に、上記した拡張乱数データの使用方法について述べる。上記したICカード2CPU204は、拡張乱数データを生成し、さらに、拡張乱数データの一部により構成される第1の乱数データを使用した場合、第1の乱数データの第1のデータ長を使用済み乱数データ長として管理することができる。例えば、上記したICカード2CPU204は、データメモリ205又はRAM206に使用済乱数データ長を格納する変数LengthOfUsedDataと命名する。を保存する。例えば、上記したICカード2CPU204は、第1のデータ長の第1の乱数データを必要とする第1の処理を実行するために、初めて拡張乱数データを使用する場合、拡張乱数データを構成する一番端のデータから第1のデータ長分を第1の乱数データとして使用する。ICカード2CPU204は、第1の乱数データの使用に対応して、第1の乱数データの第1のデータ長をLengthOfUsedDataに加算する。次に、ICカード2CPU204が、第2のデータ長の第2の乱数データを必要とする第2の処理を実行する場合、LengthOfUsedDataの値に基づき、拡張乱数データを構成する一番端のデータから第1のデータ長分は使用せず、拡張乱数データを構成する一番端のデータから第1のデータ長の次のデータから第2のデータ長分を第2の乱数データとして使用する。ICカード2CPU204は、第2の乱数データの使用後に、第2の乱数データの第2のデータ長をLengthOfUsedDataに加算する。例えば、第1の乱数データの第1のデータ長が8バイト長である場合、拡張乱数データの一番端先頭バイトから8バイト長が第1の乱数データとして使用され、LengthOfUsedDataに8バイト長を示す情報が格納される。第2の乱数データの第2のデータ長が16バイト長である場合、拡張乱数データの9バイト目から16バイト長が第2の乱数データとして使用され、LengthOfUsedDataに16バイト長を示す情報が加算され、その結果、LengthOfUsedDataには24バイト長を示す情報が格納される。また、ICカード2CPU204は、乱数データを必要とする処理の実行を指示するコマンドを受け取ると、処理に必要な乱数データのデータ長と、拡張乱数データを構成する未使用乱数データのデータ長とを比較する。未使用乱数データのデータ長が、処理に必要な乱数データのデータ長以上あれば、ICカード2CPU204は、未使用乱数データを使用し、乱数データを必要とする処理を実行する。未使用乱数データのデータ長が、処理に必要な乱数データのデータ長以上ない場合には、ICカード2CPU204は、乱数データ不足を示す乱数不足情報をカードリーダ/ライタ14へ送信する以下、第1の実施形態で詳細に説明する。或いは、未使用乱数データのデータ長が、処理に必要な乱数データのデータ長以上ない場合には、ICカード2CPU204は、追加乱数を生成する以下、第2の実施形態で詳細に説明する。或いは、ICカード2CPU204は、未使用乱数データのデータ長が閾値データ長より短くなった場合、追加乱数を生成する以下、第3の実施形態で詳細に説明する。第1の実施形態図6は、第1の実施形態に係るコマンド処理の一例を示すフローチャートである。例えば、端末1の制御部11の指示に基づき、カードリーダ/ライタ14CPU143は、通信I/F142を介して、ICカード2に対して、GETCHALLENGEコマンドを送信するST1011。ICカード2CPU204は、通信I/F201を介して、GETCHALLENGEコマンドを受信し、拡張乱数データを生成し、拡張乱数データをRAM206に保存するST2010。例えば、カードリーダ/ライタ14が、GETCHALLENGEコマンドにより、32バイト長の乱数を要求し、これに対応して、ICカード2が、32バイト長の拡張乱数データを生成してもよいし、カードリーダ/ライタ14が、GETCHALLENGEコマンドにより、データ長を指定せずに乱数を要求し、これに対応して、ICカード2が、32バイト長事前に定められたデータ長の拡張乱数データを生成してもよい。或いは、カードリーダ/ライタ14が、GETCHALLENGEコマンドにより、8バイト長の乱数を要求し、この要求に従わず、ICカード2が、32バイト長事前に定められたデータ長の拡張乱数データを生成してもよい。つまり、ICカード2は、要求されたデータ長例えば8バイトと異なるデータ長例えば32バイトの拡張乱数データを生成してもよい。続いて、ICカード2は、通信I/F201を介して、カードリーダ/ライタ14に対して、拡張乱数データを送信するST2011。カードリーダ/ライタ14は、通信I/F142を介して、拡張乱数データを受信し、拡張乱数データをRAM145に保存する。例えば、端末1の制御部11から認証コマンドの送信が指示された場合、カードリーダ/ライタ14は、拡張乱数データの一部により構成される第1の乱数データに基づき認証データを生成し、認証データを含む認証コマンドをICカード2に対して送信するST1021。例えば、カードリーダ/ライタ14は、32バイト長の拡張乱数データのうち、先頭から8バイトにより構成される8バイト長の第1の乱数データに基づき認証データを生成する。ICカード2CPU204は、通信I/F201を介して、認証コマンドを受信する。認証コマンドに基づく認証処理は、例えば、8バイト長の乱数データを必要とする処理である。従って、認証コマンドを受信したICカード2は、RAM206に保存された拡張乱数データの一部により構成される8バイト長の第1の乱数データに基づき認証データを生成する。例えば、ICカード2は、LengthOfUsedDataを確認し、LengthOfUsedDataに0バイト長初期値を示す情報が格納されていれば、使用可能な残りの乱数データ長未使用乱数データ長は32バイトと判断する。ICカード2は、認証処理に必要な8バイト長の第1の乱数データを取得可能と判断する。これに対応して、ICカード2は、32バイト長の拡張乱数データのうち、先頭から8バイトまでの8バイト分のデータにより構成される8バイト長の第1の乱数データに基づき認証データを生成し、生成した認証データと受信した認証コマンドに含まれた認証データとを照合し、認証処理を実行するST2020。つまり、ICカード2は、使用済乱数データ長を格納する変数であるLengthOfUsedDataを確認し、先頭から8バイトの未使用データを使用し、認証データを生成する。これに対応して、ICカード2は、8バイト長使用済みデータ長を示す情報をLengthOfUsedDataに格納するST2020。認証に成功したICカード2は、通信I/F201を介して、カードリーダ/ライタ14に対して、処理成功情報を送信するST2021。続いて、端末1の制御部11から暗号化暗証番号照合コマンドの送信が指示された場合、カードリーダ/ライタ14CPU143は、通信I/F142を介して、ICカード2に対して、暗号化暗証番号照合コマンドを送信するST1031。ICカード2は、通信I/F201を介して、暗号化暗証番号照合コマンドを受信する。暗号化暗証番号照合コマンドに基づく暗号化暗証番号照合処理は、例えば、16バイト長の乱数データを使用する処理である。従って、暗号化暗証番号照合コマンドを受信したICカード2は、RAM206に保存された拡張乱数データの一部により構成される16バイト長の第2の乱数データに基づき照合データを生成する。例えば、ICカード2は、LengthOfUsedDataを確認し、LengthOfUsedDataに8バイト長を示す情報が格納されていれば、使用可能な残りの乱数データ長未使用乱数データ長は24バイトと判断する。ICカード2は、暗号化暗証番号照合処理に必要な16バイト長の第2の乱数データを取得可能と判断する。これに対応して、ICカード2は、32バイト長の拡張乱数データのうち、9バイト目から24バイト目までの16バイト分のデータにより構成される16バイト長の第2の乱数データに基づき照合データを生成し、生成した照合データと受信した暗号化暗証番号照合コマンドに含まれた照合データとを照合し、暗号化暗証番号照合処理を実行するST2030。つまり、ICカード2は、使用済乱数データ長を格納する変数であるLengthOfUsedDataを確認し、9バイト目から24バイト目までの未使用データを使用し、照合データを生成する。これに対応して、ICカード2は、16バイト長使用済みデータ長を示す情報をLengthOfUsedDataに加算するST2030。これにより、LengthOfUsedDataには、24バイト長使用済みデータ長を示す情報が格納されることになる。照合に成功したICカード2は、通信I/F201を介して、カードリーダ/ライタ14に対して、処理成功情報を送信するST2031。続いて、端末1の制御部11から署名生成コマンドの送信が指示された場合、カードリーダ/ライタ14CPU143は、通信I/F142を介して、ICカード2に対して、署名生成コマンドを送信するST1041。ICカード2は、通信I/F201を介して、署名生成コマンドを受信する。署名生成コマンドに基づく署名生成処理は、例えば、24バイト長の第3の乱数データを使用する処理である。署名生成コマンドを受信したICカード2は、LengthOfUsedDataを確認し、LengthOfUsedDataに24バイト長を示す情報が格納されていれば、使用可能な残りの乱数データ長未使用乱数データ長は8バイトと判断するST2040。ICカード2は、署名生成処理で必要とされる第3の乱数データのバイト長と未使用乱数データ長とを比較し、署名生成処理に必要な24バイト長の第3の乱数データを取得不能と判断するST2040。つまり、ICカード2は、拡張乱数データを構成する未使用データの不足により、拡張乱数データから、第3の乱数データを取得できないと判断する。これに対応して、ICカード2は、通信I/F201を介して、カードリーダ/ライタ14に対して、乱数データ不足情報を送信するST2041。上記説明したように、ICカード2は、例えば、1回のGETCHALLENGEコマンドを受信するだけで、複数の処理用の拡張乱数データを生成し、拡張乱数データの一部により構成される複数の乱数データを使用し、複数の処理を実行することができる。つまり、カードリーダ/ライタ14は、ICカードに対して、乱数データを必要とする複数の処理例えばN回の処理を実行させる場合であっても、GETCHALLENGEコマンドをN回送信しなくて済み、例えば、GETCHALLENGEコマンドをN回より少ないM回だけ送信すれば、乱数データを必要とするN回の処理を実行させることができ、処理の効率化を図ることができる。また、ICカードは、拡張乱数データを構成する未使用データが不足した場合には、カードリーダ/ライタ14に対して、乱数データ不足情報を送信し、処理を滞らせないようにすることができる。なお、上記説明では、ICカード2が、拡張乱数データの未使用データから第1の乱数データ及び第2の乱数データを生成するものとして説明したが、本実施形態はこれに限定されるものではない。例えば、ICカード2が、一部に共通データを含む第1の乱数データ及び第2の乱数データを生成するようにしてもよい。例えば、ICカード2は、拡張乱数データの先頭から8バイトを使用して8バイト長の第1の乱数データを生成し、また、拡張乱数データの4バイト目から19バイト目までの16バイトを使用して16バイト長の第2の乱数データを生成するようにしてもよい。第2の実施形態図7は、第2の実施形態に係るコマンド処理の一例を示すフローチャートである。例えば、端末1の制御部11の指示に基づき、カードリーダ/ライタ14CPU143は、通信I/F142を介して、ICカード2に対して、GETCHALLENGEコマンドを送信するST1111。ICカード2CPU204は、通信I/F201を介して、GETCHALLENGEコマンドを受信し、拡張乱数データを生成し、拡張乱数データをRAM206に保存するST2110。例えば、カードリーダ/ライタ14が、GETCHALLENGEコマンドにより、32バイト長の乱数を要求し、これに対応して、ICカード2が、32バイト長の拡張乱数データを生成してもよいし、カードリーダ/ライタ14が、GETCHALLENGEコマンドにより、データ長を指定せずに乱数を要求し、これに対応して、ICカード2が、32バイト長事前に定められたデータ長の拡張乱数データを生成してもよい。或いは、カードリーダ/ライタ14が、GETCHALLENGEコマンドにより、8バイト長の乱数を要求し、この要求に従わず、ICカード2が、32バイト長事前に定められたデータ長の拡張乱数データを生成してもよい。つまり、ICカード2は、要求されたデータ長例えば8バイトと異なるデータ長例えば32バイトの拡張乱数データを生成してもよい。続いて、ICカード2は、通信I/F201を介して、カードリーダ/ライタ14に対して、拡張乱数データを送信するST2111。その後、乱数を必要とする複数の処理により、32バイト長の拡張乱数データのうちの、28バイト長の乱数データが使用されたと仮定する。つまり、LengthOfUsedDataには28バイト長を示す情報が格納され、32バイト長の拡張乱数データのうちの、使用可能な残りの乱数データ長未使用乱数データ長は4バイトであるST2120。この状態で、例えば、カードリーダ/ライタ14CPU143が、認証コマンドをICカード2に対して送信するST1121。通信I/F201を介して、認証コマンドを受信する。認証コマンドに基づく認証処理は、例えば、8バイト長の第1の乱数データを必要とする処理である。認証コマンドを受信したICカード2は、LengthOfUsedDataを確認し、LengthOfUsedDataに格納された28バイト長を示す情報から、使用可能な残りの乱数データ長未使用乱数データ長は4バイトと判断する。つまり、ICカード2は、拡張乱数データを構成する未使用データの不足により、拡張乱数データから、認証処理のための8バイト長の第1の乱数データを取得できないと判断するST2130。そこで、ICカード2は、追加乱数データを生成し、RAM206に追加乱数データを保存する。追加乱数データは、不足分のデータ長例えば4バイトであってもよいし、不足分のデータ長より長いデータ長例えば5バイト以上であってもよい。続いて、ICカード2は、通信I/F201を介して、カードリーダ/ライタ14に対して、追加乱数データを送信するST2131。なお、ICカード2は、拡張乱数データを構成する未使用データを今後使用しない場合には、LengthOfUsedDataの情報をリセットし、LengthOfUsedDataに0バイト長初期値を設定する。ICカード2が、拡張乱数データを構成する未使用データを今後も使用する場合には、LengthOfUsedDataの情報をリセットしない。カードリーダ/ライタ14は、通信I/F142を介して、追加乱数データを受信し、追加乱数データをRAM145に保存する。カードリーダ/ライタ14は、追加乱数データにより構成される第1の乱数データに基づき認証データを生成し、認証データを含む認証コマンドをICカード2に対して送信するST1131。例えば、カードリーダ/ライタ14は、追加乱数データ例えば32バイトの一部例えば8バイトを第1の乱数データとして使用する追加乱数データ使用方法1。或いは、カードリーダ/ライタ14は、追加乱数データ例えば8バイトをそのまま第1の乱数データとして使用する追加乱数データ使用方法2。或いは、カードリーダ/ライタ14は、拡張乱数データのうちの未使用の乱数データ例えば4バイトと追加乱数データ例えば32バイトの一部例えば4バイトとを組み合わせた第1の乱数データを使用する追加乱数データ使用方法3。或いは、カードリーダ/ライタ14は、拡張乱数データのうちの未使用の乱数データ例えば4バイトと追加乱数データ例えば4バイトの全部とを組み合わせた第1の乱数データを使用する追加乱数データ使用方法4。上記に対応して、ICカード2CPU204は、通信I/F201を介して、認証コマンドを受信する。ICカード2は、LengthOfUsedDataを確認し、LengthOfUsedDataに0バイト長初期値を示す情報が格納されていれば、使用可能な残りの乱数データ長未使用乱数データ長は追加乱数データのデータ長例えば32バイトと判断する。これにより、ICカード2は、認証処理に必要な8バイト長の第1の乱数データを取得可能と判断する。これに対応して、ICカード2は、追加乱数データ例えば32バイトの一部例えば8バイトを第1の乱数データとして使用し追加乱数データ使用方法1、第1の乱数データに基づき認証データを生成し、生成した認証データと受信した認証コマンドに含まれた認証データとを照合し、認証処理を実行するST2140。さらに、ICカード2は、8バイト長使用済みデータ長を示す情報をLengthOfUsedDataに加算するST2140。なお、カードリーダ/ライタ14で追加乱数データ使用方法1が採用される場合には、上記したようにICカード2でも追加乱数データ使用方法1が採用される。同様に、カードリーダ/ライタ14で追加乱数データ使用方法2が採用される場合には、ICカード2でも追加乱数データ使用方法2が採用される。同様に、カードリーダ/ライタ14で追加乱数データ使用方法3が採用される場合には、ICカード2でも追加乱数データ使用方法3が採用される。同様に、カードリーダ/ライタ14で追加乱数データ使用方法4が採用される場合には、ICカード2でも追加乱数データ使用方法4が採用される。上記説明したように、ICカード2は、例えば、1回のGETCHALLENGEコマンドを受信するだけで、複数の処理用の拡張乱数データを生成し、拡張乱数データの一部により構成される複数の乱数データを使用し、複数の処理を実行することができる。つまり、カードリーダ/ライタ14は、ICカードに対して、乱数データを必要とする複数の処理例えばN回の処理を実行させる場合であっても、GETCHALLENGEコマンドをN回送信しなくて済み、例えば、GETCHALLENGEコマンドをN回より少ないM回だけ送信すれば、乱数データを必要とするN回の処理を実行させることができ、処理の効率化を図ることができる。また、ICカードは、拡張乱数データを構成する未使用データが不足した場合には、追加乱数データを生成し、カードリーダ/ライタ14に対して、追加乱数データを送信し、処理を継続することができる。なお、追加乱数データが、拡張乱数データの一種である場合には、追加乱数データから複数の乱数データを生成することができる。第3の実施形態上記第2の実施形態では、所定データ長の乱数データを必要する処理が発生してから、拡張乱数データを構成する未使用データの不足が判明した場合に、追加乱数データを生成するケースについて説明した。第3の実施形態では、ICカード2が、拡張乱数データを構成する未使用データのデータ長を監視し、未使用データのデータ長が閾値データ長より短くなった場合に、追加乱数データを生成する。例えば、ICカード2は、未使用データのデータ長が閾値データ長例えば8バイトより短くなった場合に、追加乱数データを生成する。これにより、より効率よく追加乱数データを生成することができ、処理効率が向上する。以上説明した第1、第2、第3の実施形態により、乱数を必要とする処理の高速化を図ることができる。本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。