説明

暗号処理装置

【課題】暗号通信コネクション数の増加と、重要度の高い暗号通信コネクションの復号速度の維持とを両立させる暗号処理装置を提供する。
【解決手段】IPsecプロトコルに基づくパケット通信により撮像装置102から送信された画像データを受信する表示装置107は、重要度判定部115において受信した画像データの重要度を判定し、重要度の高い画像伝送に対応するSA(セキュリティアソシエーション)を第一SA記憶部116(SRAM)に優先的に保持する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の暗号通信接続を同時並行的に確立し、暗号処理を行う暗号処理技術に関する。
【背景技術】
【0002】
通信端末間を安全な専用回線で接続するのと同様のセキュリティを確保できる通信技術として、IPsec (IP Security Protocol)プロトコルなどが実用化されている。
IPsecプロトコルを用いた暗号通信の接続においては、送信側と受信側で暗号アルゴリズムや暗号鍵などの情報を共有しなければならない。これらの情報は、セキュリティアソシエーション(以下SAとする)と呼ばれており、暗号アルゴリズムや暗号鍵の他に、イニシャルベクタなどの情報を含むデータコンテクストとして送信端及び受信端の装置で管理されている。SAのコンテクストはIPsecのRFCとして標準化されており、暗号処理装置は送信端と受信端で共有されたSAをパケット毎に参照しながら暗号化及び復号化を行う。
一方、多数の暗号通信コネクションを高速に処理する手法として、例えば暗号処理回路を複数個並列に構成し、複数の暗号通信コネクションを同時に処理する方法がある。しかしながら、暗号通信コネクション数に応じて暗号処理回路を増加することは、回路面積や消費電力の観点から現実的な解決策とは言えない。そのため、複数の暗号通信コネクションに対するパケットを、一つの暗号処理回路で時分割多重処理して対応することが多い。
ここで、IPsecを用いた暗号通信処理を時分割多重で実行した場合、何らかの記憶領域からパケット毎に異なるSAを随時読み出す必要がある。このSAの読み出し速度が低速である場合には、それが暗号通信処理全体のボトルネックになってしまう。特にシステム全体で共有する共有メモリにSAを配置した場合には、SAを読み出すための遅延時間が大きくなり、暗号通信処理の処理性能が低下するという課題がある。
この課題を解決する一手段として、高速な読み出しが可能な専用メモリ領域にSAを配置することが考えられる。例えば、暗号処理装置がCPU、専用ハードウェア装置で構成される場合には、何れもが、高速に読み出し可能なキャッシュ・メモリ(以下キャッシュとする)にSAを配置する(特許文献1)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2004−096178号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
通常の組み込みシステムにおいてキャッシュはSRAMとして実装されるが、チップコスト低減の観点からキャッシュ容量は極力小さく抑える必要がある。このため、暗号通信コネクション数が増加した場合、全てのSAをキャッシュに収めることができず、共有メモリにも配置する必要が生じる場合がある。ここで、もし高速な復号化が必要な重要度の高い暗号通信コネクションがあったとしても、当該暗号通信コネクションに対応するSAが共有メモリに配置されていた場合、その復号化を所望の時間内に終えられなくなる可能性が高まるという課題がある。
そこで本発明は、暗号通信コネクション数の増加と、重要度の高い暗号通信コネクションの復号速度の維持とを両立することを目的とする。
【課題を解決するための手段】
【0005】
本発明の暗号処理装置は、暗号化された情報を受信する受信手段と、伝送経路上の暗号通信の確立に必要な情報群を記憶する第一の記憶手段及び第二の記憶手段と、前記暗号化された情報の重要度を判定する重要度判定手段と、前記重要度判定手段の判定結果に基づいて前記情報群の記憶先を選択する選択手段とを有し、前記第1の記憶手段は、前記第二の記憶手段より、高速に読み出すことができ、前記選択手段は、重要度の高い情報の受信に対応する前記情報群の記憶先として、前記第一の記憶手段を選択することを特徴とすることを特徴とする。
【発明の効果】
【0006】
本発明によれば、暗号通信コネクション数の増加と、重要度の高い暗号通信コネクションの復号速度の維持とを両立することができる。
【図面の簡単な説明】
【0007】
【図1】ネットワークカメラシステムの機能構成を示すブロック図。
【図2】ネットワークカメラシステムのハードウェア構成を示すブロック図。
【図3】新規に受信したSAを記憶する際の動作を示すフローチャート。
【図4】SAと対応づけられる画像の重要度を更新する際の動作を示すフローチャート。
【図5】SAと対応づけられる画像の重要度を更新する際の動作を示す別のフローチャート。
【図6】復号処理のフローチャート。
【発明を実施するための形態】
【0008】
まず本発明の実施形態として、IPsecを用いて画像伝送を行うネットワークカメラシステムについて、図1を用いて説明する。
【0009】
図1は、本実施形態におけるネットワークカメラシステム101の構成を示している。ネットワークカメラシステム101では、撮像装置102、撮像装置103、撮像装置104、撮像装置105から、表示装置107に対してIPsecを用いて画像伝送を行う。なお、撮像装置の数は4つに限らず、増減して構わない。
【0010】
撮像装置102は、撮像部108と、IPsec暗号化部109と、パケット送信部110から構成される。撮像部108は、イメージセンサおよび画像処理回路により外部からの入射光をデジタル化し、画像データを作成する。また、当該画像データをTCP/IPあるいはUDPに準ずる形式のパケットに分割する。IPsec暗号化部109は、撮像部108が作成したパケットを、IPsecプロトコルによりあらかじめ定められた暗号化方式で暗号化する。パケット送信部110は、IPsec暗号化部109により暗号化された前記パケットを伝送路106に送出する。
【0011】
撮像装置103、撮像装置104、撮像装置105は、撮像装置102と同じ構成(撮像部108と、IPsec暗号化部109と、パケット送信部110)を持つので、ここでは説明を省略する。
【0012】
伝送路106は、撮像装置102をはじめとする複数の撮像装置と表示装置107とを接続する伝送路である。
【0013】
表示装置107は、パケット受信部111、IPsec復号化部112、表示部113、SA配置制御部114、重要度判定部115、第一SA記憶部116、第二SA記憶部117から構成される。パケット受信部111は、パケット送信部110から伝送路106を介して伝送されたパケットを受信する。IPsec復号化部112は、パケット受信部111が受信したパケットについて、第一SA記憶部116あるいは第二SA記憶部117にあらかじめ記憶されたSA(復号する際に用いる情報)に基づいて当該パケットを復号化する。またIPsec復号化部112は、復号化したパケットを収集し、画像データとして再構成する。表示部113は、IPsec復号化部112が再構成した画像データを表示する。本実施形態では、撮像装置102およびそれと同じ構成を持つ撮像装置103、撮像装置104、撮像装置105から伝送された画像を、一台のディスプレイ上で四分割表示する形態をとる。
【0014】
SA配置制御部114は、パケット受信部111からSAを受け取り、第一SA記憶部116または第二SA記憶部117に当該SAを配置する。また、重要度判定部115が判定した画像の重要度に基づき、重要な画像を伝送するコネクションに対応するSAを、第二SA記憶部117より第一SA記憶部116に優先的に配置する。このSAの配置に関しては後述する。
【0015】
重要度判定部115は、IPsec復号化部112が復号化したパケットを収集し、画像データとして再構成した上で、当該画像の重要度を判定する。たとえば顔認識、人体検知、動体物検知といった画像認識アルゴリズムを用いることで、人体や動体物が画像中に含まれていると判断できた場合、当該画像をその他の画像より重要な画像と判定する。また、表示装置107に画像の重要度を手動で設定する入力装置を加え、当該入力装置からの入力に従って画像の重要度を判定してもよい(図示しない)。あるいは、画像と同時に音声を伝送するネットワークカメラシステムを構築した場合、音声の有無や特徴などに応じて画像の重要度を判定してもよい(図示しない)。そしてその上で、判定した重要度をSA配置制御部114に通知する。重要度は整数値で表すものとし、その範囲はネットワークカメラシステム101の構成に基づきあらかじめ決定する。
【0016】
第一SA記憶部116は、SA配置制御部114から受け取ったSAを記憶する。第一SA記憶部116に記憶されたSAは、第二SA記憶部117に記憶されたSAに比べ、高速に読み出すことができる。ただし、第一SA記憶部116に記憶できるSAの数は、第二SA記憶部117に記憶できるSAの数より少ない。第二SA記憶部117は、SA配置制御部114から受け取ったSAを記憶する。第二SA記憶部117に記憶されたSAは、第一SA記憶部116に記憶されたSAに比べ、高速に読み出すことができない。ただし、第二SA記憶部117に記憶できるSAの数は、第一SA記憶部116に記憶できるSAの数より多い。
【0017】
尚、本実施形態では、表示装置107が、表示部113を有する例を説明するが、表示装置107が、表示部を持たずに、暗号処理装置として機能し、表示部を有する別の装置で、表示を行っても構わない。
【0018】
図2は、ネットワークカメラシステム101のハードウェア構成(回路ブロック)を示すブロック図である。
【0019】
撮像装置102は、イメージセンサ201、CPU202、RAM203、ROM204、通信部205、およびこれらを接続するバス206を有する。
【0020】
イメージセンサ201は、撮影対象からイメージセンサ201に入射した可視光を検出して、デジタル画像データを生成する。CPU202は中央演算処理装置であり、アプリケーションプログラム、オペレーティングシステム(OS)や制御プログラムなどを実行し、RAM203にプログラムの実行に必要な情報、ファイルなどを一時的に格納する制御を行う。RAM203は各種データを一時記憶するための書き込み可能メモリであり、CPU202の主メモリ、ワークエリアなどとして機能する。またRAM203は、SAを記憶するためにも用いる。ROM204は読み出し専用メモリであり、内部には基本入出力プログラムなどのプログラムや、基本処理において使用する各種データを記憶する。通信部205は、伝送路106を介して表示装置107と通信する通信インターフェースである。また通信部205は、IPsec通信における暗号化および復号化処理をCPU202と協調動作することで実現する。バス206は、撮像装置102内のデータの流れを司るものである。
【0021】
撮像装置103、撮像装置104、撮像装置105は、撮像装置102と同じハードウェア構成であるので、ここでは説明を省略する。
【0022】
表示装置107は、CPU207、通信部208、SRAM209、DRAM210、ROM211、画像処理部212、ディスプレイ制御部213、DMAC214、およびこれらを接続するバス215を有する。
【0023】
CPU207、通信部208、DRAM210、ROM211、バス215は、それぞれ撮像装置102の、CPU202、RAM203、ROM204、通信部205、バス206と同様に動作する。SRAM209は、DRAM210のキャッシュメモリとして機能する書き込み可能メモリであり、DRAM210と比較して高速に各種データを読み出すことができる。SRAM209は、特に、高速な復号化が必要となる暗号通信コネクションに対応するSAを記憶するために用いる。画像処理部212は、撮像装置102から受信した画像を画像処理して、表示用画像を生成する。また画像処理部212は、CPU207と協調動作することで、生成画像に対する画像認識および動体検知処理などを行い、当該画像の重要度を判定する。ディスプレイ制御部213は、画像処理部212が生成した表示用画像をモニタやプロジェクタなど(図示しない)に出力して表示させる。DMAC214は、CPU207の制御に基づき、通信部208、SRAM209、DRAM210、ROM211、画像処理部212、ディスプレイ制御部213の間で、画像データやSAなど各種データを転送する。
【0024】
これら各種ハードウェアやその上で動作するソフトウェアが協調動作することでネットワークカメラシステム101の機能が実現される。
【0025】
図3は、表示装置107における、新規に受信したSAを配置する際の動作を示すフローチャートである。
【0026】
まず、ステップS301において、パケット受信部111が、新たな画像伝送コネクションを確立するための新規SAを受信する受信処理を行う。ステップS302において、SA配置制御部114が、新規SAを第二SA記憶部117に配置する記憶処理を行う。ステップS303では、新規SAと対応する画像伝送コネクションを通じて、重要度判定部115が画像の重要度を判定できるだけのデータを表示装置107が受信し終えたか否かを判定する。判定方法は、例えば、受信したデータが所定のデータ量に達しているかで判定を行う。もし当該データを受信し終えていた場合(ステップS303でYES)、ステップS304に進む。一方、まだ当該データを受信し終えていなければ(ステップS303でNO)、一定時間待機した後、ステップS302を繰り返す。
【0027】
ステップS304では、重要度判定部115が、新規SAと対応する画像伝送コネクションを通じて伝送された画像の重要度を求める。ステップS305では、第一SA記憶部116にすでに配置されたSAの数が、所定の数を超えているか否かを判定する。もし所定の数を超えていれば(ステップS305でYES)、ステップS307に進む。一方、所定の数に達していなければ(ステップS305でNO)、ステップS306に進む。なお、所定の数とは、第一SA記憶部116がSAを記憶できる数である。ステップS306では、新規SAを画像の重要度と対応づけて第一SA記憶部116に配置する記憶処理を行う。
【0028】
ステップS307では、SA配置制御部114が、第一SA記憶部116にすでに記憶されているSAの重要度と比較して、新規SAの重要度が一番低いかを判定する。新規SAの重要度が一番低くければ(ステップS307でYES)、ステップS308に進む。新規SAの重要度が一番低くなければ(ステップS307でNO)、ステップS309に進む。
【0029】
ステップS309では、SA配置制御部114が、第一SA記憶部116にすでに記憶されているSAのうち、対応づけられた画像の重要度が最も低いSAを第二SA記憶部117へ移動する記憶処理を行う。ステップS310では、SA配置制御部114が、新規SAを画像の重要度と対応づけて第一SA記憶部116に配置する記憶処理を行う。
【0030】
尚、ステップS302において、第二SA記憶部117に配置したが、これに限らず、別の記憶部に配置しても構わない。
【0031】
図3の処理を、図2のハードウェア構成を用いて処理する場合は、図3のステップS301は、通信部208が実行し、ステップS301以外の処理は、CPU207の制御に基づいて実行される。このときCPU207はDMAC214を利用してもかまわない。また、第一SA記憶部116はSRAM209、第二SA記憶部117はDRAM210により実現するものとする。
【0032】
図4は、表示装置107における、SAと対応づけられる画像の重要度を更新する際の動作を示すフローチャートである。
【0033】
まず、ステップS401において、重要度判定部115は、表示装置107が新たに受信した画像の重要度を求める。次に、ステップS402において、ステップS401で得られた重要度の値が、画像を伝送した暗号通信コネクションに対応するSAに対してすでに対応づけた重要度の値より高いか否かを判定する。もし高ければ(ステップS402でYES)、ステップS403に進む。一方、もし低ければ(ステップS402でNO)、ステップS404に進む。ステップS403では、画像を伝送した暗号通信コネクションに対応するSAが第一SA記憶部116に記憶されているか否かを判定する。もし記憶されていれば(ステップS403でYES)ステップS404に進む。一方、もし記憶されていなければ(ステップS403でNO)、ステップS405に進む。ステップS404では、画像を伝送した暗号通信コネクションに対応するSAに対してすでに対応づけた重要度の値を、ステップS401で得られた重要度の値に更新する記憶処理を行う。
【0034】
ステップS405では、ステップS401で得られた重要度の値が、第一SA記憶部116に記憶されているSAに対応づけられている重要度の最低値より高いか否かを判定する。もしもし高ければ(ステップS405でYES)、ステップS404に進む。一方、もし低ければ(ステップS405でNO)、ステップS406に進む。ステップ406では、第一SA記憶部116に記憶されているSAのうち、当該SAに対応づけられている重要度が最低のSAを第二SA記憶部117に移動する記憶処理を行う。ステップ407では、画像を伝送した暗号通信コネクションに対応するSAを、ステップS401で得られた重要度の値と対応づけた上で第一SA記憶部116に配置する記憶処理を行う。
【0035】
なお本実施の形態では、図4に示す画像の重要度の更新処理は、表示装置107が画像を一枚受信する毎に実行するものとする。ただし、重要度判定部115が画像の重要度を判定するために要する時間と表示装置107が画像を受信する頻度とを考慮した上で、画像の重要度の更新処理の頻度を設定してもかまわない。
【0036】
また、図4の処理を、図2のハードウェア構成を用いて処理する場合は、図4の各処理は、CPU207の制御に基づいて実行される。このときCPU207はDMAC214を利用してもかまわない。また、第一SA記憶部116はSRAM209、第二SA記憶部117はDRAM210により実現するものとする。
【0037】
図6は、表示装置107における、復号処理のフローチャートである。
【0038】
ステップS601は、パケット受信部11が、IPSed暗号化された画像データを受信する。ステップS602は、IPSec復号化部112が、IPSed暗号化された画像データを、第一SA記憶部116あるいは第二SA記憶部117に記憶されたSAを用いて、復号する。ステップS603は、表示部113は、復号された画像データを、表示する。
【0039】
以上のように、表示装置107は、画像データを伝送するための暗号化パケットを受信および復号化し、画像データの重要度に基づいてSAを第一SA記憶部116と第二SA記憶部117とに配置する。ここで、重要度の高い画像伝送に対応するSAを第一SA記憶部116に優先的に記憶することで、暗号通信コネクション数が増加した場合でも、重要度の高い画像伝送の通信速度を維持できる。
【0040】
さらに、SAと対応づけられる画像の重要度を定期的に更新することで、常に、重要度の高い画像伝送の通信速度を維持できる。
【0041】
<変形例>
図5は、表示装置107における、SAと対応づけられる画像の重要度を更新し、必要に応じてSAを配置する際の動作を示す別のフローチャートである。図4に示したフローチャートとは、図5がステップS501を有する点で異なり、それ以外の処理は、図4と同じであるので、説明を省略する。
【0042】
ステップS601では、画像を伝送した暗号通信コネクションに対応するSAを第一SA記憶部116または第二SA記憶部117から読み出す際の遅延時間が所定の時間を超えているか否かを判定する。もし所定の時間を超えていれば(ステップS601でYES)、ステップS403に進む。一方、所定の時間を越えていなければ(ステップS601でNO)、ステップS404に進む。
【0043】
また、図5の処理を、図2のハードウェア構成を用いて処理する場合は、図5の各処理は、CPU207の制御に基づいて実行される。このときCPU207はDMAC214を利用してもかまわない。また、第一SA記憶部116はSRAM209、第二SA記憶部117はDRAM210により実現するものとする。
【0044】
以上説明したように、第一SA記憶部116または第二SA記憶部117から読み出す際の遅延時間を測定し、当該遅延時間が表示装置107上での画像表示に影響しない範囲であれば、SAを配置したままとする。このようにすることで、SAが第一SA記憶部116と第二SA記憶部117との間を移動する頻度を低く抑えることができる。
【0045】
(その他の実施形態)
また、本発明の構成要素は、複数の機器(例えばホストコンピュータ、インターフェース機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、カメラ、複写機、ファクシミリ装置など)に適用しても良い。本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムが記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のデータ保存部、ROMなどを用いることが出来る。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部を行う。さらに、その処理によって前述した実施形態の機能が実現される場合も含まれる。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるデータ保存部に書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。

【特許請求の範囲】
【請求項1】
暗号化された情報を受信する受信手段と、
前記暗号化された情報を復号する際に用いる情報を記憶する第一の記憶手段及び第二の記憶手段と、
前記暗号化された情報の重要度を判定する重要度判定手段と、
前記重要度判定手段の判定に基づいて、前記復号する際に用いる情報を、前記第一の記憶手段に記憶するか、前記第二の記憶手段に記憶するかを制御する制御手段を有し、
前記第一の記憶手段は、前記第二の記憶手段より、高速に読み出すことができ、
前記制御手段は、重要度の高い情報に対応する前記復号する際に用いる情報を、前記第一の記憶手段を記憶するよう制御することを特徴とする暗号処理装置。
【請求項2】
前記復号する際に用いる情報は、セキュリティアソシエーションであることを特徴とする請求項1に記載の暗号処理装置。
【請求項3】
さらに、前記復号する際に用いる情報を用いて、前記受信した情報の復号化を行う復号化手段を有する請求項1又は請求項2に記載の暗号処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2012−244415(P2012−244415A)
【公開日】平成24年12月10日(2012.12.10)
【国際特許分類】
【出願番号】特願2011−112601(P2011−112601)
【出願日】平成23年5月19日(2011.5.19)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】