(57)【要約】      （修正有）【課題】ＩＣカードと上位装置間で繰り返し伝送されるデータを圧縮し、効率的なデータ伝送が行えるＩＣカードを提供する。【解決手段】本発明を適用したＩＣカードであるＵＩＭ１のパターンテーブル１００には、ＵＩＭ１と上位装置間で繰り返し伝送されるデータパターン１０１が識別情報に関連付けて登録されている。上位装置からＵＩＭ１に送信される圧縮コマンド１１０のコマンドＡＰＤＵには、一部のデータがこの識別情報に置換されている暗号化コマンドのコマンドＡＰＤＵが含まれる。圧縮コマンド１１０は、識別情報に対応するデータパターン１０１を適切な場所に挿入することで、データフィールドに含まれる暗号化コマンド１３０のコマンドＡＰＤＵをＲＡＭに展開し、ＲＡＭに展開した暗号化コマンド１３０のコマンドＡＰＤＵを実行する。一部のデータを識別情報に置換してＵＩＭに送信することで、効率的なデータ伝送を行うことができる。【選択図】図５
2007079822.tif 000002
【特許請求の範囲】
【請求項１】
上位装置とデータを送受信する機能を有するＩＣカードであって、前記ＩＣカードは、識別情報に関連付けられて、少なくとも一つのデータパターンが登録されるパターンテーブルと、前記上位装置が指定する前記識別情報で特定される前記データパターンを前記パターンテーブルから取得し、取得した前記データパターンを、前記上位装置から受信した受信データに、前記上位装置が指定する位置から挿入することで、前記受信データを展開する展開機能と、を備えていることを特徴とするＩＣカード。
【請求項２】
請求項２に記載のＩＣカードにおいて、前記ＩＣカードは、前記上位装置にデータを送信する前に、前記上位装置に送信する前記送信データを検索し、前記送信データの中に、前記パターンテーブルに登録されている前記データパターンと同じデータが含まれている場合は、このデータをこのデータと同じ前記データパターンの前記識別情報に置換することで、前記送信データを圧縮する圧縮機能を備えていることを特徴とするＩＣカード。
【請求項３】
請求項１または請求項２に記載のＩＣカードにおいて、前記ＩＣカードが前記上位装置から受信する前記受信データは、前記識別情報と、前記識別情報で特定される前記データパターンを挿入する位置を示す位置情報とを少なくとも含むコマンドＡＰＤＵであって、前記ＩＣカードは、受信したコマンドＡＰＤＵを、前記展開機能を用いて展開した後に実行する機能を有していることを特徴とするＩＣカード。
【請求項４】
請求項３に記載のＩＣカードにおいて、前記ＩＣカードが前記上位装置に送信する前記送信データは、前記ＩＣカードに備えられたコマンドの実行結果であるレスポンスＡＰＤＵであって、前記ＩＣカードは、レスポンスＡＰＤＵを、前記圧縮機能を用いて圧縮した後に送信する機能を有していることを特徴とするＩＣカード。
【請求項５】
請求項４に記載のＩＣカードにおいて、前記ＩＣカードが受信するコマンドＡＰＤＵは、前記ＩＣカードが実行するコマンドである実行コマンドのコマンドＡＰＤＵを圧縮して送信するためのコマンドである圧縮コマンドのコマンドＡＰＤＵであって、前記圧縮コマンドのコマンドＡＰＤＵのデータフィールドには、前記実行コマンドのコマンドＡＰＤＵの一部が含まれ、前記圧縮コマンドのコマンドＡＰＤＵのパラメータには前記識別情報と前記位置情報とが含まれ、前記圧縮コマンドは、コマンドＡＰＤＵのデータフィールドに含まれ実行コマンドの一部を前記受信データとして、コマンドＡＰＤＵのパラメータに含まれる前記識別情報と前記位置情報とに基づき、前記展開機能を用いて展開した後、展開した実行コマンドのコマンドＡＰＤＵを実行することを特徴とするＩＣカード。
【請求項６】
請求項５に記載のＩＣカードにおいて、前記ＩＣカードに備えられた前記圧縮コマンドは、実行コマンドのレスポンスＡＰＤＵを前記送信データとし、前記圧縮機能を用いて圧縮し、圧縮した前記送信データと、圧縮に使用した前記データパターンの前記識別情報、および、使用した前記データパターンを挿入する位置を示す情報とを、少なくとも含むレスポンスＡＰＤＵを生成し、生成したレスポンスＡＰＤＵを前記上位装置に送信することを特徴とするＩＣカード。
【請求項７】
請求項１から請求項６のいずれかに記載のＩＣカードにおいて、前記ＩＣカードは、前記上位装置から送信された前記データパターンを、前記上位装置から送信された前記識別情報に関連付けて、前記パターンテーブルに登録するコマンドを備えていることを特徴とするＩＣカード。
【請求項８】
請求項１から請求項７のいずれかに記載のＩＣカードにおいて、前記ＩＣカードは、前記上位装置から送信された前記識別情報に関連付けて、前記パターンテーブルに登録されている前記データパターンを、前記パターンテーブルから削除するコマンドを備えていることを特徴とするＩＣカード。
【請求項９】
上位装置とデータを送受信する機能と、識別情報に関連付けられて、少なくとも一つのデータパターンが登録されるパターンテーブルとを備えたＩＣカードのＣＰＵに実行させるＩＣカード用プログラムであって、前記上位装置が指定する前記識別情報で特定される前記データパターンを前記パターンテーブルから取得するステップ、取得した前記データパターンを、前記上位装置から受信した受信データに、前記上位装置が指定する位置から挿入し、前記受信データを展開するステップを含む展開プログラムを備えていることを特徴とするＩＣカード用プログラム。
【請求項１０】
請求項９に記載のＩＣカード用プログラムにおいて、前記ＩＣカード用プログラムは、前記上位装置にデータを送信する前に、前記上位装置に送信する前記送信データを検索するステップ、探索した前記送信データの中に、前記パターンテーブルに登録されている前記データパターンと同じデータが含まれている場合は、このデータをこのデータと同じ前記データパターンの識別情報に置換することで、前記送信データを圧縮するステップを含む圧縮プログラムを備えていることを特徴とするＩＣカード用プログラム。。
【請求項１１】
請求項９または請求項１０に記載のＩＣカード用プログラムにおいて、前記ＩＣカードが前記上位装置から受信する前記受信データは、前記識別情報と、前記識別情報で特定される前記データパターンを挿入する位置を示す位置情報とを少なくとも含むコマンドＡＰＤＵであって、前記ＩＣカード用プログラムは、前記展開プログラムを用い、受信したコマンドＡＰＤＵを展開するステップ、展開したコマンドＡＰＤＵを実行するステップを含むことを特徴とするＩＣカード用プログラム。
【請求項１２】
請求項１１に記載のＩＣカード用プログラムにおいて、前記ＩＣカードが前記上位装置に送信する前記送信データは、前記ＩＣカードに備えられたコマンドの実行結果であるレスポンスＡＰＤＵであって、前記ＩＣカード用プログラムは、前記圧縮プログラムを用い、レスポンスＡＰＤＵを圧縮するステップ、圧縮したレスポンスＡＰＤＵを送信するステップを含むことを特徴とするＩＣカード用プログラム。
【請求項１３】
請求項１２に記載のＩＣカード用プログラムにおいて、前記ＩＣカードが受信するコマンドＡＰＤＵは、前記ＩＣカードが実行するコマンドである実行コマンドのコマンドＡＰＤＵを圧縮して送信するためのコマンドである圧縮コマンドのコマンドＡＰＤＵであって、前記圧縮コマンドのコマンドＡＰＤＵのデータフィールドには、前記実行コマンドのコマンドＡＰＤＵの一部が含まれ、前記圧縮コマンドのコマンドＡＰＤＵのパラメータには前記識別情報と前記位置情報とが含まれ、前記ＩＣカードプログラムは、前記圧縮コマンドのコマンドＡＰＤＵのデータフィールドに含まれるデータを前記受信データとして、コマンドＡＰＤＵのパラメータに含まれる前記識別情報と前記位置情報とに基づき、前記展開プログラムを用いて展開するステップ、展開した実行コマンドのコマンドＡＰＤＵを実行するステップを含む圧縮コマンドプログラムを備えていることを特徴とするＩＣカード用プログラム。
【請求項１４】
請求項１３に記載のＩＣカード用プログラムにおいて、前記ＩＣカード用プログラムに備えられた前記圧縮コマンドプログラムは、前記実行コマンドのレスポンスＡＰＤＵを前記送信データとし、前記圧縮プログラムを用いて圧縮するステップ、圧縮した前記送信データと、圧縮に使用した前記データパターンの前記識別情報、および、使用した前記データパターンを挿入する位置を示す情報とを、少なくとも含むレスポンスＡＰＤＵを生成するステップ、生成したレスポンスＡＰＤＵを前記上位装置に送信するステップを含むことを特徴とするＩＣカード用プログラム。
【請求項１５】
請求項９から請求項１４のいずれかに記載のＩＣカード用プログラムにおいて、前記ＩＣカードプログラムは、前記上位装置から送信された前記データパターンを、前記上位装置から送信された前記識別情報に関連付けて、前記パターンテーブルに登録するプログラムを備えていることを特徴とするＩＣカード用プログラム。
【請求項１６】
請求項９から請求項１５のいずれかに記載のＩＣカード用プログラムにおいて、前記ＩＣカード用プログラムは、前記上位装置から送信された前記識別情報に関連付けて、前記パターンテーブルに登録されている前記データパターンを、前記パターンテーブルから削除するプログラムを備えていることを特徴とするＩＣカード用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣチップを実装したカード媒体であるＩＣカードに関し、更に詳しくは、上位装置と送受信するデータを圧縮する技術に関する。
【背景技術】
【０００２】
ＩＳＯ／ＩＥＣ７８１６規格で規定された接触インターフェース（I/F:InterFace）を有するＩＣカードや、ＩＣカードに実装されたＩＣチップ近傍を短冊状に切り取ったＵＩＭ(UIM: User Identity Module）は、ネットワーク機器に組み込まれ、ネットワーク機器間で伝送されるデータを暗号化／復号するデバイスとして利用されるケースが増えている。
【０００３】
ネットワーク機器とＩＣカード（もしくは、ＵＩＭ）間でやり取りされるデータには、データ本体とは別に、ネットワーク上の宛先を示すアドレスや送信元を示すアドレスが付加されていることが多い。
【０００４】
通常、これらのアドレスは数十バイトに及び、データ伝送速度が非常に速い場合は、特に問題視するデータ量ではないが、一般的にＩＣカードのデータ伝送速度は９６００ｂｐｓと、ネットワーク通信の速度や無線通信の速度と比べて非常に遅く、同じアドレスを何度もＩＣカードとネットワーク機器間でやりとりすると時間的なロスが生じる。
【０００５】
非特許文献１に記述されているようにＵＳＢインターフェースを搭載したＩＣチップを実装することで、データ伝送速度のはやいＩＣカードも提案されてきているが、ＩＣカードに実装されるＩＣチップのメモリ（例えば、ＲＡＭ）容量も、数Ｋバイトと小さく、ＩＣカードに伝送するデータ容量は小さい方が望ましい。
【０００６】
ＩＣカードに伝送するデータ容量を小さくする技術としては、すでに特許文献１でデータ圧縮を用いた技術が開示されている。特許文献１で開示されている技術は、ＩＣカードに伝送されるデータを圧縮すると共に、圧縮したデータに属性を付加し、この属性によって圧縮されたまま不揮発性メモリに書き込むか、展開してから書き込むかを指定できる技術である。
【０００７】
しかしながら、特許文献１で開示されている技術は、ＩＣカードに伝送されるデータ本体を圧縮する技術であって、データ本体に付加されるネットワーク上のあて先を示すアドレスや送信元を示すアドレスなど、ネットワーク機器などの上位装置とＩＣカード間で繰り返し伝送されるデータのみをターゲットして、効率よく圧縮できる技術ではない。
【０００８】
例えば、ネットワーク機器間で伝送されるデータを暗号化／復号するデバイスとして、ＩＣカードを利用する場合、ＩＣカードに伝送されるデータ本体は予め圧縮されたデータであってもよく、データ本体が予め圧縮されている場合は、ネットワーク上のあて先を示すアドレスや送信元を示すアドレスなど、繰り返し伝送されるデータのみをターゲットして、効率よく圧縮できる技術が必要となる。
【特許文献１】特開２０００−１３７７７６号公報
【非特許文献１】インフィニオン テクノロシ゛ース゛シ゛ャハ゜ン（株）総合カタログ  Ｐ１５
【発明の開示】
【発明が解決しようとする課題】
【０００９】
そこで、上述の問題を鑑みて、本発明は、ネットワーク上のあて先を示すアドレスや送信元を示すアドレスなど、ＩＣカードと上位装置間で繰り返し伝送されるデータをターゲットして圧縮することで、効率的なデータ伝送を行うことのできるＩＣカード、およびＩＣカード用プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決する第１の発明は、上位装置とデータを送受信する機能を有するＩＣカードであって、前記ＩＣカードは、識別情報に関連付けられて、少なくとも一つのデータパターンが登録されるパターンテーブルと、前記上位装置が指定する前記識別情報で特定される前記データパターンを前記パターンテーブルから取得し、取得した前記データパターンを、前記上位装置から受信した受信データに、前記上位装置が指定する位置から挿入することで、前記受信データを展開する展開機能と、を備えていることを特徴とするＩＣカードである。
【００１１】
上述した第１の発明によれば、前記上位装置が前記ＩＣカードに送信するデータの中に、前記データパターンと同じデータが含まれる場合は、このデータを前記識別情報に置換して送信することができるため、セッション中に前記ＩＣカードと前記上位装置間で繰り返し伝送されるデータ（例えば、ネットワークのアドレス）を、前記データパターンとして前記ＩＣカードに登録すれば、セッション中に効率的なデータ伝送を行うことのできる。
【００１２】
また、第２の発明は、第１の発明に記載のＩＣカードにおいて、前記ＩＣカードは、前記上位装置にデータを送信する前に、前記上位装置に送信する前記送信データを検索し、前記送信データの中に、前記パターンテーブルに登録されている前記データパターンと同じデータが含まれている場合は、このデータをこのデータと同じ前記データパターンの前記識別情報に置換することで、前記送信データを圧縮する圧縮機能を備えていることを特徴とするＩＣカードである。
【００１３】
上述した第２の発明によれば、前記ＩＣカードが前記上位装置に送信するデータの中に、前記データパターンと同じデータが含まれる場合は、このデータを前記識別情報に置換して送信することができるため、セッション中により効率的なデータ伝送を行うことのできる。
【００１４】
また、第３の発明は、第１の発明または第２の発明に記載のＩＣカードにおいて、前記ＩＣカードが前記上位装置から受信する前記受信データは、前記識別情報と、前記識別情報で特定される前記データパターンを挿入する位置を示す位置情報とを少なくとも含むコマンドＡＰＤＵであって、前記ＩＣカードは、受信したコマンドＡＰＤＵを、前記展開機能を用いて展開した後に実行する機能を有していることを特徴とするＩＣカードである。
【００１５】
また、第４の発明は、第３の発明に記載のＩＣカードにおいて、前記ＩＣカードが前記上位装置に送信する前記送信データは、前記ＩＣカードに備えられたコマンドの実行結果であるレスポンスＡＰＤＵであって、前記ＩＣカードは、レスポンスＡＰＤＵを、前記圧縮機能を用いて圧縮した後に送信する機能を有していることを特徴とするＩＣカードである。
【００１６】
上述した第３の発明および第４の発明によれば、前記ＩＣカードに実装されているすべてのコマンドについて、前記上位装置と前記ＩＣカード間で送受信されるコマンドＡＰＤＵおよびレスポンスＡＰＤＵを圧縮できる。
【００１７】
また、第５の発明は、第４の発明に記載のＩＣカードにおいて、前記ＩＣカードが受信するコマンドＡＰＤＵは、前記ＩＣカードが実行するコマンドである実行コマンドのコマンドＡＰＤＵを圧縮して送信するためのコマンドである圧縮コマンドのコマンドＡＰＤＵであって、前記圧縮コマンドのコマンドＡＰＤＵのデータフィールドには、前記実行コマンドのコマンドＡＰＤＵの一部が含まれ、前記圧縮コマンドのコマンドＡＰＤＵのパラメータには前記識別情報と前記位置情報とが含まれ、前記圧縮コマンドは、コマンドＡＰＤＵのデータフィールドに含まれ実行コマンドの一部を前記受信データとして、コマンドＡＰＤＵのパラメータに含まれる前記識別情報と前記位置情報とに基づき、前記展開機能を用いて展開した後、展開した実行コマンドのコマンドＡＰＤＵを実行することを特徴とするＩＣカードである。
【００１８】
また、第６の発明は、第５の発明に記載のＩＣカードにおいて、前記ＩＣカードに備えられた前記圧縮コマンドは、実行コマンドのレスポンスＡＰＤＵを前記送信データとし、前記圧縮機能を用いて圧縮し、圧縮した前記送信データと、圧縮に使用した前記データパターンの前記識別情報、および、使用した前記データパターンを挿入する位置を示す情報とを、少なくとも含むレスポンスＡＰＤＵを生成し、生成したレスポンスＡＰＤＵを前記上位装置に送信することを特徴とするＩＣカードである。
【００１９】
上述した第５の発明および第６の発明によれば、前記ＩＣカードが前記圧縮コマンドを備えることで、前記ＩＣカードに備えられたコマンドごとに、前記圧縮機能および前記展開機能を備える必要はなくなる。
【００２０】
また、第７の発明は、第１の発明から第６の発明のいずれかに記載のＩＣカードにおいて、前記ＩＣカードは、前記上位装置から送信された前記データパターンを、前記上位装置から送信された前記識別情報に関連付けて、前記パターンテーブルに登録するコマンドを備えていることを特徴とする。
【００２１】
更に、第８の発明は、第１の発明から第７の発明のいずれかに記載のＩＣカードにおいて、前記ＩＣカードは、前記上位装置から送信された前記識別情報に関連付けて、前記パターンテーブルに登録されている前記データパターンを、前記パターンテーブルから削除するコマンドを備えていることを特徴とする。
【００２２】
上述した第７の発明および第８の発明によれば、前記ＩＣカードが有する前記パターンテーブルに登録される前記データパターンの新規追加、更新および削除が可能になる。
【００２３】
また、第９の発明は、上位装置とデータを送受信する機能と、識別情報に関連付けられて、少なくとも一つのデータパターンが登録されるパターンテーブルとを備えたＩＣカードのＣＰＵに実行させるＩＣカード用プログラムであって、前記上位装置が指定する前記識別情報で特定される前記データパターンを前記パターンテーブルから取得するステップ、取得した前記データパターンを、前記上位装置から受信した受信データに、前記上位装置が指定する位置から挿入し、前記受信データを展開するステップを含む展開プログラムを備えていることを特徴とするＩＣカード用プログラムである。
【００２４】
また、第１０の発明は、第９の発明に記載のＩＣカード用プログラムにおいて、前記ＩＣカード用プログラムは、前記上位装置にデータを送信する前に、前記上位装置に送信する前記送信データを検索するステップ、探索した前記送信データの中に、前記パターンテーブルに登録されている前記データパターンと同じデータが含まれている場合は、このデータをこのデータと同じ前記データパターンの識別情報に置換することで、前記送信データを圧縮するステップを含む圧縮プログラムを備えていることを特徴とする。
【００２５】
また、第１１の発明は、第９の発明または第１０の発明に記載のＩＣカード用プログラムにおいて、前記ＩＣカードが前記上位装置から受信する前記受信データは、前記識別情報と、前記識別情報で特定される前記データパターンを挿入する位置を示す位置情報とを少なくとも含むコマンドＡＰＤＵであって、前記ＩＣカード用プログラムは、前記展開プログラムを用い、受信したコマンドＡＰＤＵを展開するステップ、展開したコマンドＡＰＤＵを実行するステップを含むことを特徴とする。
【００２６】
また、第１２の発明は、第１１の発明に記載のＩＣカード用プログラムにおいて、前記ＩＣカードが前記上位装置に送信する前記送信データは、前記ＩＣカードに備えられたコマンドの実行結果であるレスポンスＡＰＤＵであって、前記ＩＣカード用プログラムは、前記圧縮プログラムを用い、レスポンスＡＰＤＵを圧縮するステップ、圧縮したレスポンスＡＰＤＵを送信するステップを含むことを特徴とする。
【００２７】
また、第１３の発明は、第１２の発明に記載のＩＣカード用プログラムにおいて、前記ＩＣカードが受信するコマンドＡＰＤＵは、前記ＩＣカードが実行するコマンドである実行コマンドのコマンドＡＰＤＵを圧縮して送信するためのコマンドである圧縮コマンドのコマンドＡＰＤＵであって、前記圧縮コマンドのコマンドＡＰＤＵのデータフィールドには、前記実行コマンドのコマンドＡＰＤＵの一部が含まれ、前記圧縮コマンドのコマンドＡＰＤＵのパラメータには前記識別情報と前記位置情報とが含まれ、前記ＩＣカードプログラムは、前記圧縮コマンドのコマンドＡＰＤＵのデータフィールドに含まれるデータを前記受信データとして、コマンドＡＰＤＵのパラメータに含まれる前記識別情報と前記位置情報とに基づき、前記展開プログラムを用いて展開するステップ、展開した実行コマンドのコマンドＡＰＤＵを実行するステップを含む圧縮コマンドプログラムを備えていることを特徴とする。
【００２８】
また、第１４の発明は、第１３の発明に記載のＩＣカード用プログラムにおいて、前記ＩＣカード用プログラムに備えられた前記圧縮コマンドプログラムは、前記実行コマンドのレスポンスＡＰＤＵを前記送信データとし、前記圧縮プログラムを用いて圧縮するステップ、圧縮した前記送信データと、圧縮に使用した前記データパターンの前記識別情報、および、使用した前記データパターンを挿入する位置を示す情報とを、少なくとも含むレスポンスＡＰＤＵを生成するステップ、生成したレスポンスＡＰＤＵを前記上位装置に送信するステップを含むことを特徴とする。
【００２９】
また、第１５の発明は、第９の発明から第１４の発明のいずれかに記載のＩＣカード用プログラムにおいて、前記ＩＣカードプログラムは、前記上位装置から送信された前記データパターンを、前記上位装置から送信された前記識別情報に関連付けて、前記パターンテーブルに登録するプログラムを備えていることを特徴とする。
【００３０】
また、第１６の発明は、第９の発明から第１５の発明のいずれかに記載のＩＣカード用プログラムにおいて、前記ＩＣカード用プログラムは、前記上位装置から送信された前記識別情報に関連付けて、前記パターンテーブルに登録されている前記データパターンを、前記パターンテーブルから削除するプログラムを備えていることを特徴とする。
【発明の効果】
【００３１】
上述した本発明によれば、ネットワーク上のあて先を示すアドレスや送信元を示すアドレスなど、ＩＣカードと上位装置間で繰り返し伝送されるデータをターゲットして圧縮することのできるＩＣカード、およびＩＣカード用プログラムを提供することができる。
【発明を実施するための最良の形態】
【００３２】
ここから、図を参照しながら、本発明に係るＵＩＭについて詳細に説明する。図１は、本発明に係るＩＣカードとしてＵＩＭ１を組み込んだ監視カメラ２を用いたネットワークシステムの構成図である。図１に示したように、このネットワークシステムは、本発明に係るＵＩＭ１が組み込まれる監視カメラ２と、監視カメラ２が撮像した動画データを記憶するサーバ３とが、少なくともネットワーク４に接続されている。
【００３３】
監視カメラ２およびサーバ３には、それぞれネットワーク４上のアドレスが割り振られ、今後、監視カメラ２のアドレスをカメラアドレス２０（値は、１６バイトの「０１ｈ」）、サーバのアドレスをサーバドレス３０（値は、１６バイトの「１１ｈ」）と呼ぶことにする。
【００３４】
監視カメラ２は、一定時間ごとに、撮像した動画データをＵＩＭ１に伝送し、ＵＩＭ１は、伝送された動画データを暗号化する。監視カメラ２が撮像した動画データを暗号化するのは、ネットワーク４上からの動画データの漏洩と動画データの改ざんとを防止するためである。
【００３５】
監視カメラ２は、ＵＩＭ１を利用して、撮像した動画データを暗号化すると、ネットワーク４を経由して、動画データが暗号化されたデータである暗号動画データをサーバ３にリアルタイムで配信し、サーバ３は、配信された暗号動画データをサーバ３内で復号した後、ハードディスクなどのデータ記憶装置に記憶する。
【００３６】
図２は、監視カメラ２からサーバ３に伝送されるパケットデータの構造を説明する図で、図２（ａ）は暗号化前のパケットデータ５で、図２（ｂ）は暗号化後のパケットデータ５ａである。
【００３７】
図２（ａ）で示したように、暗号化前のパケットデータ５には、プロトコルヘッダとして、送信元のアドレスである送信元アドレス５０、および、宛先のアドレスである宛先アドレス５１と、データ本体として動画データ５２と、そして、パケットデータ５の全体の伝送エラーを検出するためのコードであるＣＲＣ５３（Cyclic Redundancy Check）とが含まれる。図１のネットワークシステムでは、送信元アドレス５１はカメラアドレス２０で、宛先アドレス５１はサーバドレス３０になる。
【００３８】
なお、本実施の形態において、伝送エラーを検出するためのコードをＣＲＣ５３としているが、伝送エラーを検出するためのコードは、他の演算式で算出されたコード（例えば、ＳＨＡ１）であってもよい。
【００３９】
図２（ｂ）は、暗号化後のパケットデータ５ａの構造を説明する図で、図２（ｂ）に示したように、図２（ａ）で示したパケットデータ５をネットワーク４上に流すときは、監視カメラ２は、図２（ａ）で示したパケットデータ５をＵＩＭ１に伝送し、図２（ａ）で示した暗号化前のパケットデータ５のデータ本体、すなわち、動画データ５２のみを暗号化した後、図２（ｂ）で示したパケットデータ５ａをサーバ３に配信する。
【００４０】
監視カメラ２が動画データ５２を暗号化するときに、動画データ５２のみならず、図２（ａ）のパケットデータ５すべてをＵＩＭ１に伝送するのは、ＵＩＭ１自身が動画データを暗号化するときに、図２（ａ）のパケットデータ５の正当性を確認するためである。ＵＩＭ１がパケットデータ５に含まれるＣＲＣ５３を検証することで、パケットデータ５の正当性は確認される。
【００４１】
すなわち、監視カメラ２がＵＩＭ１に動画データ５２を伝送し暗号化するときは、必ず、監視カメラ２からＵＩＭ１へ送信元アドレス５０および宛先アドレス５１が伝送されるため、監視カメラ２に組み込まれるＵＩＭ１に本発明を適用し、監視カメラ２とＵＩＭ１間のデータ伝送時間を短縮することで、図１で示したネットワークシステム全体の処理時間を短縮化している。
【００４２】
図３は、監視カメラ２に組み込まれるＵＩＭ１を説明するための図である。ＵＩＭ１は、ＩＣカードのＩＣモジュール１ａ周辺を約１１．５ｍｍ×２５ｍｍ状に切り取った形状をしており、ＵＩＭ１の詳細な形状はＧＳＭ（Global System for Mobile communications）規格等で規格化されている。
【００４３】
図４は、ＵＩＭ１のＩＣモジュール１ａに実装されるＩＣチップ１０のハードウェア構造図である。ＩＣチップ１０には、中央演算装置１１（Central Processing Unit、以下ＣＰＵと記す）に、バス１７を介して、読み出し専用メモリ１５（Read Only Memory、以下ROMと記す）、書換え可能なメモリとしてＥＥＰＲＯＭ１６（Electrically Erasable Programmable Read-Only Memoryの略）、揮発性メモリとしてランダムアクセスメモリ１４（Random Access Memory、以下ＲＡＭと記す）、および、暗号演算専用の回路である暗号演算回路１２、図外の外部端末とデータを通信するためのＩ／Ｏ回路１３などが接続されている。
【００４４】
図５は、ＵＩＭ１のソフトウェア構成図である。図５に示したように、ＵＩＭ１はプログラムとして、複数のデータパターン１０１が登録されているパターンテーブル１００と、パターンテーブル１００にデータパターン１０１を登録するコマンドであるパターン登録コマンド１２０と、パターンテーブル１００から任意のデータパターン１０１を削除するコマンドであるパターン削除コマンド１２１と、上位装置（ここでは、監視カメラ２）がパターンテーブル１００に登録されたデータパターン１０１を省略して、ＵＩＭ１に伝送できるコマンドである圧縮コマンド１１０と、暗号鍵１４０を用いてデータを暗号化するコマンドである暗号コマンド１３０とを備えている。
【００４５】
ＵＩＭ１に備えられたそれぞれのコマンドは、図４で示したＩＣチップ１０のハードウェア資源を利用し、ＣＰＵ１１を動作させるプログラムで実現され、これらのプログラムは中間言語で記述されたプログラムであってもよく、もしくは、マシン言語で記述されたプログラムであってもよい。また、複数のデータパターン１０１が記憶されるパターンテーブル１００は、ＥＥＰＲＯＭ１６に記憶されるファイルで実現される。
【００４６】
パターンテーブル１００に記憶されるデータパターン１０１とは、上位装置（ここでは、監視カメラ２）とＵＩＭ１間で繰り返し伝送されるデータであって、本実施の形態においては、一つのプロトコルヘッダ（ここでは、送信元アドレス５１がカメラアドレス２０で、宛先アドレス５１がサーバアドレス３０）が、少なくとも、データパターン１０１としてパターンテーブル１００に登録されている。
【００４７】
パターンテーブル１００に登録されたすべてのデータパターン１０１には、それぞれのデータパターン１０１を識別するための１バイトの情報であるＩＤ番号が付加され、ＩＤ番号でそれぞれのデータパターン１０１を識別する。ここでは、便宜上、カメラアドレス２０とがサーバドレス３０が記憶されているデータパターン１０１のＩＤ番号を「０１ｈ」とする。
【００４８】
複数のデータパターン１０１が登録されるパターンテーブル１００は、ＥＥＰＲＯＭ１６に記憶されるファイルで、上述のＩＤ番号をレコード番号とし、ＩＳＯ／ＩＥＣ７８１６規格のレコード構造のファイルで実現されている。
【００４９】
パターンテーブル１００にデータパターン１０１を登録するコマンドであるパターン登録コマンド１２０は、レコード構造のファイルにデータを書き込むコマンド（例えば、ＩＳＯ／ＩＥＣ７８１６０規格のＷｒｉｔｅ  Ｒｅｃｏｒｄコマンド）で、ＥＥＰＲＯＭ１６にデータを書き込むプログラムである。パターン登録コマンド１２０のコマンドＡＰＤＵには、少なくとも、データパターン１０１として登録されるデータと、登録するデータパターン１０１のＩＤ番号が含まれる。
【００５０】
パターンテーブル１００からデータパターン１０１を削除するコマンドであるパターン削除コマンド１２１は、レコード構造のファイルからデータを削除するコマンド（例えば、ＪＩＣＳＡＰ２．０のＥｒａｓｅ  Ｒｅｃｏｒｄコマンド）で、データパターン１０１を論理的にＥＥＰＲＯＭ１６から消去するプログラムである。パターン削除コマンド１２１のコマンドＡＰＤＵには、少なくとも、パターンテーブル１００から削除するデータパターン１０１のＩＤ番号が含まれる。
【００５１】
暗号コマンド１３０とは、ＩＣチップ１０の暗号演算回路１２を操作し、ＵＩＭ１に記憶された暗号鍵１４０を用い所定のアルゴリズムに従い、上位装置（ここでは監視カメラ２）から伝送されるデータを暗号化するコマンドである。
【００５２】
図６は、暗号コマンド１３０のＡＰＤＵを示した図で、図６（ａ）で暗号コマンド１３０のコマンドＡＰＤＵ１３１（以下、暗号コマンドＡＰＤＵ）を、図６（ｂ）で暗号コマンド１３０のレスポンスＡＰＤＵ１３２（以下、暗号レスポンスＡＰＤＵ）を示している。
【００５３】
図６（ａ）で示しているように、本実施の形態において、暗号コマンドＡＰＤＵ１３１の構造は、ＩＳＯ／ＩＥＣ７８１６規格のＣａｓｅ４の構造で、ヘッダーとして、ＣＬＡ、ＩＮＳ、Ｐ１およびＰ２と、ボディーとして、Ｌｃ、データフィールドおよびＬｅから構成される。
【００５４】
暗号コマンドＡＰＤＵ１３１のボディーのＬｃはデータフィールドに含まれるデータの長さを示し、データフィールドには、ＵＩＭ１に記憶された暗号鍵１４０を用いて暗号化されるデータが含まれ、本実施の形態では、図２（ａ）で示した暗号化前のパケットデータ５が含まれる。また、Ｌｅは、後述する暗号レスポンスＡＰＤＵ１３２のデータフィールドに含まれるデータの長さの期待値を示している。
【００５５】
暗号コマンドＡＰＤＵ１３１のヘッダーに含まれるＣＬＡとＩＮＳは、コマンドＡＰＤＵを識別するためのデータで、本実施の形態において、暗号化コマンドＡＰＤＵ１３１のＣＬＡは「９２ｈ」で、ＩＮＳは「００ｈ」である。
【００５６】
暗号コマンドＡＰＤＵ１３１のヘッダーに含まれるＰ１およびＰ２は、暗号コマンド１３０が実行されるときのパラメータで、本実施の形態においては、Ｐ１は、データフィールドの中で暗号化されるデータの先頭位置を示し、Ｐ２は、暗号化されるデータの長さを示している。例えば、Ｐ１＝「０６ｈ」、Ｐ２＝「１０ｈ」であるときは、データフィールドのデータの中で、６バイト目から１６バイトのデータを暗号化することを意味する。
【００５７】
既に上述しているように、暗号コマンド１３０がデータを暗号化するときは、暗号コマンドは、暗号コマンドＡＰＤＵ１３１のデータフィールドに含まれるデータすべての正当性を検証する。
【００５８】
この検証には、データの誤り符合（ここでは、図２で示したＣＲＣ５３）が利用される。すなわち、暗号コマンド１３０は、データフィールドに含まれるパケットデータ５のＣＲＣ５３を除くデータからＣＲＣを計算し、データフィールドのＣＲＣ５３と計算したＣＲＣが一致することを確認する。
【００５９】
そして、演算したＣＲＣとデータフィールドのＣＲＣ５３が一致した場合のみ、暗号コマンド１３０は、暗号鍵１４０を用い所定のアルゴリズムに従い、Ｐ１とＰ２で特定されるデータフィールドのデータを（ここでは、図２（ａ）のパケットデータに含まれる動画データ５２）を暗号化し、暗号化したデータ（ここでは、図２（ｂ）のパケットデータ５ａ）を上位装置（ここでは、監視カメラ２）に返信する。
【００６０】
図６（ｂ）は、暗号レスポンスＡＰＤＵ１３２を示した図である。図６（ｂ）で示したように、暗号レスポンスＡＰＤＵ１３２の構造は、ＩＳＯ／ＩＥＣ７８１６規格のレスポンスＡＰＤＵの構造と等しく、ボディであるデータフィールドと、トレイラー（Trailer）である２つのステータスバイトであるＳＷ１、ＳＷ２から構成される。
【００６１】
暗号レスポンスＡＰＤＵ１３２のデータフィールドには、暗号コマンドＡＰＤＵ１３１のデータフィールドの一部もしくはすべてが暗号化されたデータが含まれ、本実施の形態では、図２（ｂ）で示した暗号化後のパケットデータ５ａが含まれる。
【００６２】
また、暗号レスポンスＡＰＤＵ１３２のＳＷ１およびＳＷ２では、暗号コマンド１３０の実行結果（成功、失敗）などの情報が示される。
【００６３】
ここから、ＵＩＭ１に備えられた圧縮コマンド１１０について説明する。図５で示した圧縮コマンド１１０とは、パターンテーブル１００に登録されたデータパターン１０１のＩＤ番号を引数とすることで、ＵＩＭ１と上位装置（ここでは、監視カメラ２）間でデータパターン１０１自体の伝送を省略し、ＵＩＭ１と上位装置（ここでは、監視カメラ２）間で伝送されるデータ量を小さくするコマンドである。
【００６４】
図７は、圧縮コマンド１１０のＡＰＤＵを説明する図で、図７（ａ）は圧縮コマンド１１０のコマンドＡＰＤＵ１１１（以下、圧縮コマンドＡＰＤＵ１１１）、図７（ｂ）は圧縮コマンド１１０のレスポンスＡＰＤＵ１１２（以下、圧縮レスポンスＡＰＤＵ１１２）を示している。
【００６５】
図７（ａ）で示しているように、本実施の形態において、圧縮コマンドＡＰＤＵ１１１の構造は、ＩＳＯ／ＩＥＣ７８１６規格のＥｎｖｅｌｏｐｅ Ｃｏｍｍａｎｄの構造と等しく、ヘッダーとして、ＣＬＡ、ＩＮＳ、Ｐ１およびＰ２と、ボディーとして、Ｌｃ、データフィールドおよびＬｅから構成される。
【００６６】
ボディーのデータフィールドには、圧縮コマンド１１０以外のコマンドのコマンドＡＰＤＵが圧縮された状態で含まれる。ここで、圧縮されたコマンドＡＰＤＵとは、パターンテーブル１００に登録されたデータパターン１０１を含むコマンドＡＰＤＵであって、パターンテーブル１００に登録されたある一つのデータパターン１０１に該当するデータが削除されたコマンドＡＰＤＵである。なお、削除されたデータに該当するデータパターン１０１のＩＤ番号は、圧縮コマンドＡＰＤＵ１１１のＰ１で示される。
【００６７】
圧縮コマンドＡＰＤＵ１１１のデータフィールドに含まれるデータの長さはＬｃで示される。また、Ｌｅは、後述する圧縮レスポンスＡＰＤＵ１１２のデータフィールドの最大長（例えば、「ＦＦｈ」）を示している。
【００６８】
すなわち、上位装置（ここでは、監視カメラ２）は、圧縮コマンド１１０を利用することで、パターンテーブル１００に登録されているデータパターン１０１と同じデータを削除したコマンドＡＰＤＵを、ＵＩＭ１に送信することができる。
【００６９】
本実施の形態において、圧縮コマンドＡＰＤＵ１１１に含まれ、圧縮された状態でＵＩＭ１に伝送されるコマンドＡＰＤＵは暗号コマンドＡＰＤＵ１３１であって、暗号コマンドＡＰＤＵ１３１のデータフィールドに含まれる図２（ａ）で示したパケットデータ５は、プロトコルヘッダである送信先アドレス５０と宛先アドレス５１とが削除されている。
【００７０】
圧縮コマンドＡＰＤＵ１１１のヘッダーにおいて、ＣＬＡおよびＩＮＳはコマンドＡＰＤＵを識別するためのデータで、本実施の形態においては、圧縮コマンド１１０のＣＬＡは「Ｄ０ｈ」でＩＮＳは「０２ｈ」である。Ｐ１とＰ２は、圧縮コマンド１１０が実行される時のパラメータで、本実施の形態においては、Ｐ１は使用するデータパターン１０１のＩＤ番号を示し、Ｐ２は、圧縮コマンドＡＰＤＵ１１１のデータフィールドの中で、Ｐ１で示されるデータパターン１０１が挿入される先頭位置を示す。
【００７１】
例えば、Ｐ１＝「０１ｈ」かつＰ２＝「０６ｈ」であるときは、圧縮コマンドＡＰＤＵのデータフィールドの６バイト目から、ＩＤ番号が「０１ｈ」であるデータパターン１０１を挿入することを意味する。
【００７２】
圧縮コマンド１１０が実行されるときは、ＩＣチップ１０のＲＡＭ１４に設けられたバッファで、データフィールドのデータ（ここでは、暗号コマンドＡＰＤＵ１３１）は展開される。すなわち、圧縮コマンドＡＰＤＵ１１１のＰ１で示されるデータパターン１０１が、Ｐ２で示される位置からデータフィールドに挿入される。
【００７３】
そして、圧縮コマンド１１０は、バッファに展開したデータフィールドのデータ、すなわち、圧縮コマンド１１０以外のコマンドＡＰＤＵ（ここでは、暗号コマンドＡＰＤＵ１３１）に対応するコマンド（ここでは、暗号コマンド１３０）を呼出し、圧縮コマンド１１０に含まれて伝送されたコマンドＡＰＤＵを処理する。呼出すコマンドは、バッファの先頭２バイト、すなわち、ＣＬＡとＩＮＳから識別される。
【００７４】
そして、呼出したコマンドの処理が終了すると、圧縮コマンド１１０は、呼出したコマンドから、呼出したコマンドのレスポンスＡＰＤＵ（ここでは、暗号レスポンスＡＰＤＵ１３２）を取得し、取得したレスポンスＡＰＤＵから、圧縮コマンド１１０のレスポンスＡＰＤＵである圧縮レスポンスＡＰＤＵ１１２を生成する。
【００７５】
図７（ｂ）は、圧縮レスポンスＡＰＤＵ１１２の構造を説明する図である。図７（ｂ）で示されているように、圧縮レスポンスＡＰＤＵ１１２の構造も、上述のＥｎｖｅｌｏｐｅＣｏｍｍａｎｄの構造と等しく、ボディーとしてデータフィールドと、トレイラーとして、２つのステータスバイトＳＷ１、ＳＷ２から構成される。
【００７６】
圧縮レスポンスＡＰＤＵ１１２のデータフィールドには、呼出したコマンドから取得したレスポンスＡＰＤＵ（ここでは、暗号レスポンスＡＰＤＵ１３２）が含まれる。特筆すべき点は、パターンテーブル１００に登録されたデータパターン１０１と同じデータが、呼出したコマンドから取得したレスポンスＡＰＤＵに含まれるときは、圧縮コマンド１１０は、データパターン１０１と同じデータをこのデータパターン１０１のＩＤ番号に置換する点である。データパターン１０１と同じデータをこのデータパターン１０１のＩＤ番号に置換することで、上位装置（ここでは、監視カメラ２）に送信するレスポンスＡＰＤＵも圧縮することができる。
【００７７】
なお、圧縮コマンド１１０は、データパターン１０１と同じデータをこのデータパターン１０１のＩＤ番号に置換するときは、置換したデータに該当するデータパターン１０１のＩＤ番号と、このＩＤ番号で示されるデータパターン１０１を挿入する先頭位置を、データフィールドに含ませる。上位装置（ここでは、監視カメラ２）は、これらのデータを参照することで、圧縮レスポンスＡＰＤＵ１１２のデータフィールドを展開できる。
【００７８】
ここから、本発明に係るＵＩＭ１を用いて、監視カメラ２が、図２（ａ）で示したパケットデータ５を暗号化するフローついて説明する。図８は、監視カメラ２が図２（ａ）で示したパケットデータ５を暗号化する一連の手順を示したフロー図である。
【００７９】
この手順の最初のステップＳ１は、ＵＩＭ１が監視カメラ２からコマンドＡＰＤＵを受信するステップである。ＵＩＭ１は電源が投入され、初期応答処理を実行した後、コマンドＡＰＤＵを受信する状態になり、監視カメラ２からコマンドＡＰＵＤを受信する。
【００８０】
次のステップＳ２は、受信したコマンドＡＰＤＵが実行されるステップで、ステップＳ１で受信したコマンドＡＰＤＵが、パターン登録コマンド１２０ならばステップＳ１０に進み、パターン削除コマンド１２１ならばステップＳ２０に進み、圧縮コマンド１１０ならばステップＳ３０に進み、上述した以外のコマンドならばステップＳ４０に進む。
【００８１】
そして、ステップＳ１０ではパターン登録コマンド１２０が実行され、ステップＳ２０ではパターン削除コマンド１２１が実行され、ステップＳ３０では圧縮コマンド１１０が実行され、ステップＳ４０では上述したコマンド以外のコマンドが実行され、コマンドが実行された後はステップＳ１に戻る。
【００８２】
ここから、ステップＳ１０、ステップＳ２０およびステップＳ３０で実行される処理について、それぞれ詳細に説明する。まず、ステップＳ１１で実行されるパターン登録コマンド１２０の処理手順について説明する。図９は、ステップＳ１２で実行される処理、すなわち、パターン登録コマンド１２０の処理手順を示したフロー図である。
【００８３】
この手順の最初のステップＳ１１は、監視カメラ２から伝送されたコマンドＡＰＤＵに含まれるデータパターン１０１を、コマンドＡＰＤＵに含まれるＩＤ番号に関連付けて、パターンテーブル１００に記憶するステップである。
【００８４】
監視カメラ２から伝送されるパターン登録コマンド１２０のコマンドＡＰＤＵには、パターンテーブル１００に登録するデータパターン１０１本体と、登録するデータパターン１０１のＩＤ番号が含まれる。パターン登録コマンド１２０が、ＩＣチップ１０に備えられたＥＥＰＲＯＭ１６にデータを書き込むＣＰＵの命令、もしくは、データを書き込むモジュールを利用することで、ＩＤ番号に関連付けてデータパターン１０１をパターンテーブル１００に書込み、データパターン１０１はパターンテーブル１００に登録される。
【００８５】
次のステップＳ１２は、データパターン１０１の登録の実行結果を示すレスポンスＡＰＤＵを、監視カメラ２に送信するステップである。このステップをもって、パターン登録コマンド１２０の処理手順は終了する。
【００８６】
ここから、ステップＳ２０で実行されるパターン削除コマンド１２１の処理手順について説明する。図１０は、ステップＳ２０で実行される処理、すなわち、パターン削除コマンド１２１の処理手順を示したフロー図である。
【００８７】
この手順の最初のステップＳ２１は、監視カメラ２から送信されたコマンドＡＰＤＵに含まれるＩＤ番号で特定されるデータパターン１０１を、パターンテーブル１００から削除するステップである。
【００８８】
監視カメラ２から伝送されるパターン削除コマンド１２１のコマンドＡＰＤＵには、ＩＣチップに備えられたＥＥＰＲＯＭ１６からデータを論理的に消去するＣＰＵの命令、もしくは、データを論理的に消去するモジュールを利用することで、パターン削除コマンド１２１が、ＩＤ番号に関連付けてパターンテーブル１００に記憶されているデータパターン１０１を論理的に消去し、データパターン１０１はパターンテーブル１００から削除される。
【００８９】
次のステップＳ２２は、パターン削除コマンド１２１の実行結果を示すレスポンスＡＰＤＵを、監視カメラ２に送信するステップである。このステップをもって、パターン削除コマンド１２１の処理手順は終了する。
【００９０】
ここから、ステップＳ３０で実行される圧縮コマンド１１０の処理手順について説明する。図１１は、ステップＳ３０で実行される処理、すなわち、圧縮コマンド１１０の処理手順を示したフロー図で、図１２は、圧縮コマンド１１０が動作するときのＲＡＭ１４に設けられたバッファの状態を説明する図である。
【００９１】
図１２（ａ）は監視カメラ２からＵＩＭ１に伝送される圧縮コマンドＡＰＤＵ１１１を示した図で、ＵＩＭ１が、圧縮コマンドＡＰＤＵ１１１を監視カメラ２から受信すると、ＵＩＭ１はＲＡＭ１４に設けられた通信バッファなどに、圧縮コマンドＡＰＤＵ１１１を一時的に記憶する。
【００９２】
図１２（ａ）で示したように、圧縮コマンドＡＰＤＵ１１１のデータフィールドには、上述している暗号コマンド１３０のコマンドＡＰＤＵの一部が含まれ、Ｐ１（「０１ｈ」）で、使用するデータパターン１０１のＩＤ番号が「０１ｈ」であることが示され、Ｐ２（「０６ｈ」）で、ＩＤ番号が「０１ｈ」のデータパターン１０１をデータフィールドの６バイト目から挿入することが示されている。
【００９３】
この処理手順の最初のステップＳ３１は、圧縮コマンドＡＰＤＵ１１１のデータフィールドの先頭からＰ２で示される位置の一つ手前のデータまでを、バッファにコピーするステップである。このステップでは、圧縮コマンドＡＰＤＵ１１１のＰ２が「０６ｈ」であるため、圧縮コマンドＡＰＤＵ１１１のデータフィールドの１バイト目から５バイト目のデータ（「92 00 20 08 2A」）が、バッファにコピーされる。
【００９４】
図１２（ｂ）は、圧縮コマンドＡＰＤＵ１１１のデータフィールドの１バイト目から５バイト目のデータを、バッファにコピーしたときの図である。図１２（ｂ）を参照すればわかるように、圧縮コマンドＡＰＤＵ１１１のデータフィールドの１バイト目から５バイト目のデータをバッファにコピーすることで、暗号コマンドＡＰＤＵ１３１のヘッダ（ＣＬＡ、ＩＮＳ、Ｐ１、Ｐ２）とボディのＬｃが、バッファにコピーされたことになる。
【００９５】
次のステップＳ３２は、圧縮コマンドＡＰＤＵ１１１のＰ１で示されるデータパターン１０１を、バッファにコピーするステップである。このステップにおいて、圧縮コマンド１１０は、コマンドＡＰＤＵのＰ１とＩＤ番号が同じデータパターン１０１をデータテーブルから取得し、取得したデータパターン１０１を、ステップＳ３１でバッファにコピーしたデータの直後から挿入する。
【００９６】
ここでは、ＩＤ番号＝「０１ｈ」であるので、カメラアドレス２０とサーバドレス３０とが記憶されたデータパターン１０１（「１６バイトの０１ｈと、１６バイトの１１ｈ」）が、バッファにコピーされる。
【００９７】
図１２（ｃ）は、データパターン１０１をバッファにコピーしたときの図である。図１２（ｃ）を参照すればわかるように、図１２（ｂ）に加え、ＩＤ番号が「０１ｈ」のデータパターン１０１がバッファにコピーされることで、暗号コマンド１３０のデータフィールドの一部（図２（ａ）のパケットデータ５のプロトコル部）が、バッファにコピーされたことになる。
【００９８】
次のステップＳ３３は、圧縮コマンドＡＰＤＵ１１１のデータフィールドにおいて、バッファにコピーしていないデータすべて、すなわち、圧縮コマンドＡＰＤＵ１１１のデータフィールドにおいて、圧縮コマンドＡＰＤＵ１１１のＰ２で示される位置から最後までのデータを、バッファにコピーするステップである。
【００９９】
ここでは、ステップＳ３２において、圧縮コマンドＡＰＤＵ１１１のデータフィールドの５バイト目までのデータをバッファにコピーしているので、データフィールドの６バイト目から最後までのデータをバッファにコピーする。
【０１００】
図１２（ｄ）は、圧縮コマンドＡＰＤＵ１１１のデータフィールドの６バイト目から最後までのデータをバッファにコピーした図である。図１２（ｄ）を参照すればわかるように、バッファには、監視カメラ２から送信された圧縮コマンドＡＰＤＵ１１１では、不完全な形式であった暗号コマンドＡＰＤＵ１３１が、完全な形でバッファに展開されたことになる。
【０１０１】
次のステップＳ３４は、バッファに展開された暗号コマンドＡＰＤＵ１３１を処理するステップである。圧縮コマンド１１０は、バッファにコピーしたコマンドＡＰＤＵの先頭２バイトを参照することで、実行するコマンドを特定することができ、ここではこの先頭２バイトが「９２００ｈ」であるので、暗号コマンド１３０が実行される。
【０１０２】
次のステップＳ３５は、上位装置に送信する圧縮レスポンスＡＰＤＵ１１１を生成するステップである。このステップでは、すでに上述している内容に従い、暗号化レスポンスＡＰＤＵ１３２から圧縮レスポンスＡＰＤＵ１１２が生成される。
【０１０３】
図１２（ｅ）は、暗号化レスポンスＡＰＤＵ１３２から生成される圧縮レスポンスＡＰＤＵ１１２を示した図で、圧縮レスポンスＡＰＤＵ１１２のデータフィールドの先頭には、暗号化コマンドＡＰＤＵ１３２を圧縮したときに使用したデータパターン１０１のＩＤ番号（ここでは、「０１ｈ」）が記述され、２バイト目には、データパターン１０１を挿入する先頭位置（ここでは、「０３ｈ」）が記述されている。
【０１０４】
そして、圧縮レスポンスＡＰＤＵ１１２のデータフィールドの３バイト目からは、プロトコルヘッダを除く暗号レスポンスＡＰＤＵのレスポンスデータである暗号動画データ５２ａ（ここでは、８バイトの「ｚｚｈ」と記述）、ＣＲＣ５３、および、暗号化コマンド１３０の実行結果を示すステータスワードであるＳＷ０１とＳＷ０２とが記述されている。
【０１０５】
加えて、圧縮レスポンスＡＰＤＵ１１２には、トレイラーとして、圧縮コマンド１１０の実行結果を示しステータスワードであるＳＷ１１およびＳＷ１２が記述される。
【０１０６】
次のステップＳ３６は、ＵＩＭ１が、ステップＳ３５で生成した圧縮レスポンスＡＰＤＵ１１２を監視カメラ２に送信するステップである。監視カメラ２は、圧縮レスポンスＡＰＤＵ１１２を受信すると、圧縮レスポンスＡＰＤＵ１１２のデータフィールドのデータを展開した後、図２（ｂ）のパケットデータ５ａをサーバ３に配信する。
【図面の簡単な説明】
【０１０７】
【図１】ＵＩＭを組み込んだ監視カメラを用いたネットワークシステムの構成図。
【図２】パケットデータの構造を説明する図。
【図３】監視カメラに組み込まれるＵＩＭを説明するための図。
【図４】ＵＩＭに実装されるＩＣチップのハードウェア構造図。
【図５】ＵＩＭのソフトウェア構成図。
【図６】暗号コマンドのＡＰＤＵを示した図。
【図７】圧縮コマンドのＡＰＤＵを示した図。
【図８】監視カメラがパケットデータを暗号化する一連の手順を示したフロー図。
【図９】パターン登録コマンドの処理手順を示したフロー図。
【図１０】パターン削除コマンドの処理手順を示したフロー図。
【図１１】圧縮コマンドの処理手順を示したフロー図。
【図１２】圧縮コマンド動作時のバッファの状態を説明する図。
【符号の説明】
【０１０８】
１  ＵＩＭ
１０  ＩＣチップ、１４  ＩＣチップのＲＡＭ
１００  パターンテーブル、１０１  データパターン
１１０  圧縮コマンド
１１１  圧縮コマンドのコマンドＡＰＤＵ
１１２  圧縮コマンドのレスポンスＡＰＤＵ
１２０  パターン登録コマンド、１２１  パターン削除コマンド
１３０  暗号化コマンド
１３１  暗号化コマンドのコマンドＡＰＤＵ
１３２  暗号化コマンドのレスポンスＡＰＤＵ
１４０  暗号鍵
２  監視カメラ
３  サーバ
４  ネットワーク
５  暗号化前のパケットデータ、  ５ａ  暗号化後のパケットデータ
【図１】
2007079822.tif 000003
【図２】
2007079822.tif 000004
【図３】
2007079822.tif 000005
【図４】
2007079822.tif 000006
【図５】
2007079822.tif 000007
【図６】
2007079822.tif 000008
【図７】
2007079822.tif 000009
【図８】
2007079822.tif 000010
【図９】
2007079822.tif 000011
【図１０】
2007079822.tif 000012
【図１１】
2007079822.tif 000013
【図１２】
2007079822.tif 000014