暗号通信を行う暗号化処理装置であって、受信したパケットの長さを計測する計測手段と、前記パケットの長さに応じて、暗号通信を行うために必要となる情報の保持手段を切り替える管理手段とを具備することを特徴とする暗号化処理装置。前記管理手段は、所定のパケット長を保持するパケット長保持手段と、前記計測手段によって計測されたパケット長と前記パケット長保持手段に保持されたパケット長を比較するパケット長比較手段とを備え、前記パケット長比較手段の比較結果に応じて前記保持手段を制御することを特徴とする請求項1に記載の暗号化処理装置。前記パケット長保持手段は、通信の対向相手ごとの1フレームの最大伝送単位を所定のパケット長として保持することを特徴とする請求項2に記載の暗号化処理装置。前記暗号通信を行うために必要となる情報は、セキュリティアソシエーションであることを特徴とする請求項1に記載の暗号化処理装置。暗号通信を行う暗号化処理方法であって、受信したパケットの長さを計測する計測工程と、前記パケットの長さに応じて、暗号通信を行うために必要となる情報の保持を切り替える工程とを具備することを特徴とする暗号化処理方法。請求項5に記載の方法の各工程をコンピュータにて実行させるためのプログラム。例えば、特許文献1には、SA保持部及び退避SA保持部と称する2種類のSA保持部を有し、アプリケーションからの情報に基づいてSA情報をSA保持部から退避SA保持部に置き換えることでキャッシュ動作を行うことが開示されている。また、使用するSAが退避SA保持部に配置されている場合は、当該SA情報を退避SA保持部からSA保持部に置き換えることで同様にキャッシュ動作を行うことが開示されている。しかしながら、特許文献1に開示された技術であっても、複数の接続先とのアクセスがランダムに発生している場合には、キャッシュミスが頻発しキャッシュの効果は限定的である。また、常にキャッシュヒットするように大容量化することも考えられるが、組み込みシステムではキャッシュはチップ内にSRAMとして実装されるため、チップコストの上昇を招く。さらにはキャッシュ容量には現実的な限界が存在するため、最大接続数がキャッシュ容量に依存してしまう。そこで、本発明の目的は、通信の発生と終了の特性を考慮してSAを高速なSRAMと大容量なシステム共有メモリに適応的に配置する手法を活用し、暗号通信の高速化を図ることにある。本発明の暗号化処理装置は、暗号通信を行う暗号化処理装置であって、受信したパケットの長さを計測する計測手段と、前記パケットの長さに応じて、暗号通信を行うために必要となる情報の保持手段を切り替える管理手段とを具備することを特徴とする。本発明によれば、通信の発生と終了の特性を考慮してSAを高速なSRAMと大容量なシステム共有メモリに適応的に配置する手法を活用し、暗号通信の高速化が可能となる。以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。先ず、本発明の第1の実施形態について、図1~図3を参照しながら説明する。図2は、通信対象データを、IPパケットに分割する様子を示す図である。通信対象データのデータ長はアプリケーションに依存しており、例えば通信対象が画像、動画、音声といったメディアファイルの場合、数百キロバイト以上のデータ長となることは珍しくない。一方、インターネットで主として使用されるイーサネット登録商標においては、許容される最大パケット長はMTUと呼称されている。MTUの値は通信経路ごとにことなるが、一般的には大きくとも1.5kb程度である。そのため、通信対象データをインターネット上で通信する際には、通信対象データを複数のパケットに分割し、個々のパケット長がMTUサイズ以下となるよう調整しなければならない。もし、通信対象データがMTUサイズの整数倍の場合、通信対象データは所定のパケット長がMTUのパケット複数個に分割される。しかし、通信対象データはアプリケーションが定める任意長であるため、そのデータ長は大多数の場合においてMTUの整数倍とはならないと想定される。従って、通信対象データがパケットに分割される場合、図2に示すように、データ長がMTUのパケット複数個と、データ長がMTU未満のパケット一つという形に分割される。これら分割された通信対象データは、先頭より順に1パケットずつネットワーク上に送信されていき、最後にデータ長がMTU未満のパケットが送信されると全データの送信が完了する。換言すれば、MTUサイズのパケットを送信している間は、後続するパケットが存在しているため、当該通信対向相手に対するデータ通信が継続する可能性が高く、逆に1フレームの最大伝送単位であるMTUサイズ未満のパケットが送信された場合は、当該通信対象データの送信が完了したため、当該通信対向相手に対するデータ通信は当面行われないと予測できる。本実施形態では、IPsecの暗号認証処理、復号検証処理を行う際に、この予測を利用することでこれら処理の高速化を実現する。図1は、第1の実施形態における暗号化処理装置の構成を示す図である。図1において、102は、暗号化の対象となる平文のIPパケット、あるいは復号の対象となる暗号化されたIPパケットを受信するパケット入力部である。103はパケット入力部102から取得したIPパケットに対して暗号化処理と認証処理、もしくは復号処理と認証処理を行うパケット処理部である。104はパケット入力部102から指定されたIPパケットのパケット長を計測するパケット長計測部である。105は通信対向相手毎のMTU値を保持し、パケット入力部102から指定された通信対向相手のMTU値を出力するMTU保持部である。106はパケット長計測部104から取得したパケット長とMTU保持部105から取得したMTU値を比較するパケット長比較部である。107は高速アクセス可能であるが価格が高価で大容量化が困難な高速なSA保持部である。108は高速なSA保持部107と比して低速であるが大容量化が比較的容易である低速なSA保持部である。109はIPsec通信対向相手毎のSA情報を、高速なSA保持部107もしくは低速なSA保持部108に保持し、パケット処理部103から要求されたSAIDに基づきパケット処理部103に対してSAデータを供給するSA管理部である。110はパケット処理部103から取得した暗号化済みもしくは復号済みのIPパケットを出力するパケット出力部である。なお、上記SA情報は、パケットの長さに応じて暗号通信の確立に必要な情報であり、IPsecやIPv6を利用した暗号化通信において、通信をはじめる前に暗号化方式や暗号鍵などの情報を交換共有し、安全な通信路を確立するために必要となる情報である。以下、図3のフローチャートを参照しながら、第1の実施形態における暗号化処理装置の処理について説明する。最初に、パケット入力ステップステップS301において、パケット入力部102は暗号化の対象となる平文のIPパケット、あるいは復号の対象となる暗号化されたIPパケットを受信する。そして、IPパケットをパケット処理部103およびパケット長計測部104に対して入力する。また、パケット入力部102はMTU保持部105に対して通信対向相手を識別するためのSAIDを入力する。パケット入力ステップステップS301が終わると、SA取得ステップステップS302から始まる3ステップ、およびパケット長計測ステップステップS305から始まる3ステップにフローが分岐する。ここでは、前者のフローから先に述べる。SA取得ステップステップS305では、パケット処理部103はSA管理部109からSA情報を取得する。まず、パケット処理部103はSA管理部109に対して通信対向相手を識別するSAIDを入力する。SA管理部109は、SAIDを元に、高速なSA保持部107、もしくは低速なSA保持部108に保持されている当該SAを検索し、パケット処理部103に対して出力する。それを受け、パケット処理ステップステップS303では、パケット処理部103は、SA管理部109から取得したSA情報に従い、IPパケットに対して暗号化処理と認証処理、もしくは復号処理と認証処理を実行する。最後に、パケット出力ステップステップS304では、パケット出力部110は、パケット処理部103の生成した、暗号化されたIPパケット、もしくは平文のIPパケットを出力する。以上がSA取得ステップステップS302から始まる3ステップのフローである。続いて、パケット長計測ステップステップS305から始まる3ステップのフローについて述べる。パケット長計測ステップステップS305では、パケット長計測部104は、パケット入力部102から指定されたIPパケットのパケット長を計測し、その結果をパケット長比較部106に対して出力する。また、MTU保持部105は、パケット入力部102から取得したSAIDを元に当該通信対向相手のMTU値を検索し、パケット長比較部106に対して出力する。続いて、パケット長比較ステップステップS306では、パケット長比較部106は、パケット長計測部104から取得したパケット長とMTU保持部105から取得したMTU値との比較結果に基づいて通信状況の予測を行う。もし、MTU値とIPパケット長が等しいか数十バイト程度の差しかなかった場合、両者は一致しているとみなし、当該通信対向相手との通信は当面継続されると判断する。もし、MTU値と比してIPパケット長が数十バイト以上小さい場合、当該通信対向相手との通信は終焉すると判断する。その他の場合、本発明の想定状況に当てはまらないため、判断不能とする。SA保持領域更新ステップステップS307では、SA管理部109が、パケット長比較部106から取得した通信状況の予測結果に応じてSA情報の保持領域を更新する。パケット長比較部106は、通信継続と判断した場合で、かつ当該IPパケットのSAが低速なSA保持部108に保持されていた場合、SA管理部109は当該IPパケットのSAを高速なSA保持部107に移動させる。パケット長比較部106が、通信が終焉すると判断した場合で、かつ当該IPパケットのSAが高速なSA保持部107に保持されていた場合、SA管理部109は当該IPパケットのSAを低速なSA保持部108に移動させる。SA管理部109はこのような手法で近未来に使用される可能性の高いSAを高速なSA管理部107に移動させると共に、使用されない可能性の高いSAを低速なSA管理部108に移動させる。以上がパケット長計測ステップステップS305から始まる3ステップのフローである。なお、これら二つのフローSA取得ステップステップS302から始まる3ステップ、およびパケット長計測ステップステップS305から始まる3ステップは基本的に並列に実行可能である。しかし、SA取得ステップステップS302はSA保持領域更新ステップステップS307に先んじて実行されなければならない。また、演算資源が乏しく逐次実行しか実施できない場合、IPパケット処理の性能に直結するSA取得から始まる3ステップが優先して実行されることが望ましい。暗号化処理装置101は以上のような処理を行うことで、パケット処理部103が要求するSAが、高速なSA保持部107に保持されている可能性を向上させる。結果として、SA管理部109がパケット処理部103に対してSAを供給するまでの時間が短縮し、パケット処理の性能が向上する。次に、本発明の第2の実施形態について説明する。第2の実施形態は、第1の実施形態においてSA移動の指標としていたMTU値との比較を、以前送信したIPパケット長との比較に変更したものである。以下、本発明の第2の実施形態を、図2、図4及び図5を参照しながら説明する。図2は通信対象データをIPパケットに分割する様子を示す図である。通信対象データのデータ長はアプリケーションに依存しており、例えば通信対象が画像、動画、音声といったメディアファイルの場合、数百キロバイト以上のデータ長となることは珍しくない。一方、インターネットで主として使用されるイーサネットにおいては、許容される最大パケット長はMTUと呼称されている。MTUの値は通信経路ごとにことなるが、一般的には大きくとも1.5kb程度である。そのため、通信対象データをインターネット上で通信する際には、通信対象データを複数のパケットに分割し、個々のパケット長がMTUサイズ以下となるよう調整しなければならない。もし、通信対象データがMTUサイズの整数倍の場合、通信対象データはパケット長がMTUのパケット複数個に分割される。しかし、通信対象データはアプリケーションが定める任意長であるため、そのデータ長は大多数の場合においてMTUの整数倍とはならないと想定される。従って、通信対象データがパケットに分割される場合、図2に示すように、データ長がMTUのパケット複数個と、データ長がMTU未満のパケット一つという形に分割される。これら分割された通信対象データは、先頭より順に1パケットずつネットワーク上に送信されていき、最後にデータ長がMTU未満のパケットが送信されると全データの送信が完了する。換言すれば、同一の通信対向相手に対して、同一パケット長のIPパケットを連続して送信している間は、後続するパケットが存在しているため、当該通信対向相手に対するデータ通信が継続する可能性が高く、逆に同一の通信対向相手に対して前回送信したIPパケットのパケット長よりも短いIPパケットが送信された場合は、当該通信対象データの送信が完了したため、当該通信対向相手に対するデータ通信は当面行われないと予測できる。本実施形態では、IPsecの暗号認証処理、復号検証処理を行う暗号化処理装置に対してこの予測を適用することで、暗号通信の高速化を実現する。図4は、第2の実施形態における暗号化処理装置の構成を示す図である。図4において、102、103、104、107、108、109及び110は、第1の実施形態の説明で用いた図1と同一であるため、説明を省略する。図4の405は通信対向相手毎の前回のIPパケット長を保持し、パケット入力部102から指定された通信対向相手の前回のIPパケット長を出力するパケット長保持部、406はパケット長計測部104から取得したパケット長とパケット長保持部405から取得したパケット長を比較するパケット長比較部である。以下、図5のフローチャートを参照しながら、第2の実施形態における暗号化処理装置の処理について説明する。最初に、パケット入力ステップステップS301で、パケット入力部102は暗号化の対象となる平文のIPパケット、あるいは復号の対象となる暗号化されたIPパケットを受信する。そして、IPパケットをパケット処理部103およびパケット長計測部104に対して入力する。また、パケット長保持部405に対して通信対向相手を識別するためのSAIDを入力する。パケット入力ステップステップS301が終わると、SA取得ステップステップS302から始まる3ステップ、およびパケット長計測ステップステップS505から始まる3ステップにフローが分岐する。前者のフローは第1の実施形態の説明で用いた図3のフローチャートと同一であるため、説明を省略する。続いて、パケット長計測ステップステップS505から始まる3ステップのフローについて述べる。パケット長計測ステップステップS505では、パケット長計測部104は、パケット入力部102から指定されたIPパケットのパケット長を計測し、その結果をパケット長比較部406に対して出力する。また、パケット長保持部405は、パケット入力部102から取得したSAIDを元に当該通信対向相手に前回送信したIPパケット長を検索し、その値をパケット長比較部406に対して出力する。続いて、パケット長比較ステップステップS506では、パケット長比較部406は、パケット長計測部104から取得したパケット長と、パケット長保持部405から取得した前回送信したIPパケット長を元に通信状況の予測を行う。もし、IPパケット長と前回送信したIPパケット長が等しいか数十バイト程度の差しかなかった場合、両者は一致しているとみなし、当該通信対向相手との通信は当面継続されると判断する。もし、前回送信したIPパケット長と比してIPパケット長が数十バイト以上小さい場合、当該通信対向相手との通信は終焉すると判断する。その他の場合、本発明の想定状況に当てはまらないため、判断不能とする。さらに、パケット長比較部406は、IPパケット長の比較後にパケット長計測部104から取得したパケット長を、パケット長保持部405に対して出力する。パケット長保持部405はパケット長比較部406から取得したパケット長を保持する。SA保持領域更新ステップステップS307では、SA管理部109は、パケット長比較部406から取得した通信状況の予測結果に応じたSA情報の保持領域の更新を行う。パケット長比較部406は、通信継続と判断した場合でかつ、当該IPパケットのSAが低速なSA保持部108に保持されていた場合、SA管理部109は当該IPパケットのSAを高速なSA保持部107に移動させる。パケット長比較部406は、通信が終焉すると判断した場合でかつ当該IPパケットのSAが高速なSA保持部107に保持されていた場合、SA管理部109は当該IPパケットのSAを低速なSA保持部108に移動させる。SA管理部109はこのような手法で近未来に使用される可能性の高いSAを高速なSA管理部107に移動させると共に、使用されない可能性の高いSAを低速なSA管理部108に移動させる。以上がパケット長計測ステップステップS505から始まる3ステップのフローである。なお、これら二つのフロー、SA取得ステップステップS302から始まる3ステップ、およびパケット長計測ステップステップS505から始まる3ステップは基本的に並列に実行可能である。しかし、SA取得ステップステップS302はSA保持領域更新ステップステップS307に先んじて実行されなければならない。また、演算資源が乏しく逐次実行しか実施できない場合、IPパケット処理の性能に直結するSA取得から始まる3ステップが優先して実行されることが望ましい。第2の実施形態における暗号化処理装置401は以上のような処理を行うことにより、パケット処理部103が要求するSAが、高速なSA保持部107に保持されている可能性を向上させる。結果として、SA管理部109がパケット処理部103に対してSAを供給するまでの時間が短縮し、パケット処理の性能が向上する。次に、本発明の第3の実施形態について説明する。本発明の第3の実施形態は、第2の実施形態よりもパケット長保持部に保持する過去のパケット長を増やし、通信パターンを検出することで、より正確な判断を行うものである。以下、本発明の第3の実施形態を、図2、図6および図7を参照しながら説明する。図2は、通信対象データをIPパケットに分割する様子を示す図である。通信対象データのデータ長はアプリケーションに依存しており、例えば通信対象が画像、動画、音声といったメディアファイルの場合、数百キロバイト以上のデータ長となることは珍しくない。一方、インターネットで主として使用されるイーサネットにおいては、許容される最大パケット長はMTUと呼称されている。MTUの値は通信経路ごとにことなるが、一般的には大きくとも1.5kb程度である。そのため、通信対象データをインターネット上で通信する際には、通信対象データを複数のパケットに分割し、個々のパケット長がMTUサイズ以下となるよう調整しなければならない。もし、通信対象データがMTUサイズの整数倍の場合、通信対象データはパケット長がMTUのパケット複数個に分割される。しかし、通信対象データはアプリケーションが定める任意長であるため、そのデータ長は大多数の場合においてMTUの整数倍とはならないと想定される。従って、通信対象データがパケットに分割される場合、図2に示すように、データ長がMTUのパケット複数個と、データ長がMTU未満のパケット一つという形に分割される。これら分割された通信対象データは、先頭より順に1パケットずつネットワーク上に送信されていき、最後にデータ長がMTU未満のパケットが送信されると全データの送信が完了する。換言すれば、同一の通信対向相手に対して、同一パケット長のIPパケットを複数個連続して送信している間は、後続するパケットが存在しているため、当該通信対向相手に対するデータ通信が継続する可能性が高く、逆に同一の通信対向相手に対して同一パケット長のIPパケットを複数個連続して送信した後にそれらよりも短いIPパケットが送信された場合は、当該通信対象データの送信が完了したため、当該通信対向相手に対するデータ通信は当面行われないと予測できる。単純に同一通信対向相手に対して前回送信したIPパケット長と比較するだけでは、本発明が想定する大容量データ通信以外の用途インターネット制御通知プロトコルICMPなどに対して、パフォーマンスを損なうSA管理を実施してしまう可能性がある。しかし、同一の通信対向相手に対するIPパケット長を複数個用いてSA管理を実施することで、本発明が有効に働く用途のみに対して本発明を実施できる可能性が高まる。本実施形態では、IPsecの暗号認証処理、復号検証処理を行う暗号化処理装置に対してこの予測を適用することで、暗号通信の高速化を実現する。図6は、第3の実施形態における暗号化処理装置の構成を示す図である。図6において、102、103、104、107、108、109、および110は、第1の実施形態の説明で用いた図1と同一であるため説明を省略する。図6中の605は通信対向相手ごとのIPパケット長の履歴を過去複数回分保持し、パケット入力部102から指定された通信対向相手のIPパケット長の履歴を出力するパケット長保持部、606はパケット長計測部104から取得したパケット長とパケット長保持部605から取得したパケット長の履歴を元に通信パターンを検出する通信パターン検出部である。以下、図7のフローチャートを参照しながら、第3の実施形態における暗号化処理装置の処理について説明する。最初に、パケット入力ステップステップS301で、パケット入力部102は暗号化の対象となる平文のIPパケット、あるいは復号の対象となる暗号化されたIPパケットを受信する。そして、IPパケットをパケット処理部103およびパケット長計測部104に対して入力する。また、パケット長保持部605に対して通信対向相手を識別するためのSAIDを入力する。パケット入力ステップステップS301が終わると、SA取得ステップステップS302から始まる3ステップ、およびパケット長計測ステップステップS705から始まる3ステップにフローが分岐する。前者のフローは第1の実施形態の説明で用いた図3のフローと同一であるため、説明を省略する。続いて、パケット長計測ステップステップS705から始まる3ステップのフローについて述べる。パケット長計測ステップステップS705では、パケット長計測部104が、パケット入力部102から指定されたIPパケットのパケット長を計測し、その結果を通信パターン検出部606に対して出力する。また、パケット長保持部605は、パケット入力部102から取得したSAIDを元に当該通信対向相手のIPパケット長の履歴を検索し、その結果を通信パターン検出部606に対して出力する。続いて、パケット長比較ステップステップS706では、通信パターン検出部606が、パケット長計測部104から取得したIPパケット長とパケット長保持部605から取得したIPパケット長の履歴を元に通信状況の予測を行う。もし、IPパケット長とIPパケット長の履歴がすべて等しいか数十バイト程度の差しかなかった場合、それらは一致しているとみなし、当該通信対向相手との通信は当面継続されると判断する。もし、IPパケット長の履歴がすべて等しいか数十バイト程度の差しかなく、かつそれらと比してIPパケット長が数十バイト以上小さい場合、当該通信対向相手との通信は終焉すると判断する。その他の場合、本発明の想定状況に当てはまらないため、判断不能とする。さらに、通信パターン検出部606は、通信パターンの検出後に、パケット長計測部104から取得したパケット長を、パケット長保持605に対して送信する。パケット長保持部605は通信パターン検出部606から取得したパケット長を新たに保持する。パケット長保持部605はIPパケット長の履歴の保持回数を超えた場合、もっとも古いものを削除する。SA保持領域更新ステップステップS307では、SA管理部109が、通信パターン検出部606から取得した通信状況の予測結果に応じたSA情報の保持領域の更新を行う。通信パターン検出部606が、通信継続と判断した場合で、かつ当該IPパケットのSAが低速なSA保持部108に保持されていた場合、SA管理部109は当該IPパケットのSAを高速なSA保持部107に移動させる。通信パターン検出部606が、通信が終焉すると判断した場合でかつ当該IPパケットのSAが高速なSA保持部107に保持されていた場合、SA管理部109は当該IPパケットのSAを低速なSA保持部108に移動させる。SA管理部109はこのような手法で近未来に使用される可能性の高いSAを高速なSA管理部107に移動させると共に、使用されない可能性の高いSAを低速なSA管理部108に移動させる。以上がパケット長計測ステップステップS705から始まる3ステップのフローである。なお、これら二つのフローSA取得ステップステップS302から始まる3ステップ、およびパケット長計測ステップステップS705から始まる3ステップは基本的に並列に実行可能である。しかし、SA取得ステップステップS302はSA保持領域更新ステップステップS307に先んじて実行されなければならない。また、演算資源が乏しく逐次実行しか実施できない場合、IPパケット処理の性能に直結するSA取得から始まる3ステップが優先して実行されることが望ましい。第3の実施形態における暗号化処理装置601は以上のような処理を行うことで、パケット処理部103が要求するSAが、高速なSA保持部107に保持されている可能性を向上させる。結果として、SA管理部109がパケット処理部103に対してSAを供給するまでの時間が短縮し、パケット処理の性能が向上する。また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェアプログラムを、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータまたはCPUやMPU等がプログラムを読み出して実行する処理である。