(57)【要約】【課題】従来の監視システムは、監視カメラからの映像をサーバ機器にそのまま保存するという方法でした。そのため、何の制限もなく閲覧することが出来たので非撮影者にとってどのように保管され、いつどのように使用されるのかとても心配でした。  そこで、本発明は、プライバシーを守り、映像データの流出リスクを軽減し、安価に提供いたします。【解決手段】ファイルを暗号化しながら保存し、暗号化に使用した鍵をサーバの公開鍵で暗号化して保存し、公開鍵と対になる秘密鍵をサーバで保存します。ファイルを復号化するときは、サーバに閲覧理由を送信することによって秘密鍵を取得し、閲覧履歴がサーバで公開されることによって、自由に閲覧することを第３者の監視によって抑止します。【選択図】図１
2008178054.tif 000002
【特許請求の範囲】
【請求項１】
クライアントコンピュータとサーバコンピュータにおいて、
クライアントコンピューターが、
１、「映像データ取り込み機能」
・ネットワークカメラと通信し、映像データを取り込み圧縮をして保存するステップ
を有する機能。
２、「暗号化機能」
・映像データを共通鍵暗号方式で暗号化して保存するための共通鍵を作成するステップと
・映像データを共通鍵暗号方式で暗号化をして暗号化された映像データを保存、元の映像データを削除するステップと
・前記共通鍵をサーバから取得したサーバの公開鍵によって、共通鍵を暗号化して暗号化された共通鍵データを保存、元の共通鍵を削除（ただし、鍵データ、映像データには目印として区別できる鍵番号が添付される）することによって、クライアントのユーザがその映像データにアクセスできなくするステップを有する機能。
３、「復号化機能」
・暗号化された映像データの鍵番号をと閲覧理由をサーバに送信するステップと
・サーバからサーバの秘密鍵を受け取るステップと
・サーバの秘密鍵で暗号化された映像データを復号化するステップ
を有する機能。
前記、３つの機能を有するクライアントコンピューターであり、
サーバコンピューターが
１、「鍵の管理機能」
・サーバの負担を軽減するために、あらかじめ公開鍵と秘密鍵を作成しておくステップと
・ストック鍵から、サーバの秘密鍵と公開鍵を作成し、サーバの秘密鍵をユーザーのディレクトリに保存、サーバの公開鍵はクライアントコンピューターに送信するステップと
・クライアントコンピュータから鍵番号を指定して秘密鍵を申請されたとき、ユーザのディレクトリに保存されているサーバーの秘密鍵をクライアントコンピューターに送信するステップと
・データベースに復号化するファイル名、閲覧理由を登録するステップ
を有する機能
を有するサーバコンピューターであり、
前記クライアントコンピューターとサーバコンピューターで構成されるクライアントサーバシステムであるプライバシーを守る監視システム。
【請求項２】
前記、プライバシーを守る監視システムの暗号化された映像データを
復号化する機能において、
クライアントコンピュータが
ユーザＩＤ、パスワードを送信するステップと
・閲覧する映像データのファイル名、閲覧理由をサーバに送信するステップと
サーバコンピューターが
・ユーザＩＤ、パスワードを受信して、認証するステップと
・前記、閲覧する映像データファイル名、閲覧理由を受信するステップと
・受信した映像データファイルの名前、閲覧理由をデータベースサーバへ保存するステップと
・映像データから鍵番号を取り出すステップと
・鍵番号を一致する秘密鍵をユーザのディレクトリから取り出して、クライアントに送信するステップと
・インターネットに公開されているｗｗｗサーバがデータベースサーバにアクセスをして、閲覧したユーザ名と受信した映像データファイルの名前、閲覧理由、ホームページ上で表示してインターネット上で公開するステップを有するプライバシーを守る監視システム
【請求項３】
請求項１〜２のプライバシーを守る監視システムの
プログラムのコーティングの仕様のレベルにおいて、
図１のタスク相関図を有するシステムであり、
クライアントコンピュータが
図２〜５で示されるフローチャートのタスクの構造を持ち
サーバコンピュータが
図６〜１０で示されるフローチャートのタスクの構造を持つ
プライバシーを守る監視システム
【請求項４】
図４の暗号化タスクの機能で、定期的にファイルの容量を調べて、容量の変化がなければファイルを使用中ではないと判断し暗号化するという、暗号化タスクの機能により、他の監視システムによって保存されたファイルデータも上記の機能によって、暗号化することができるために、もし別の監視システムが導入してあった場合でも、既存の監視システムにモジュールとして機能を追加することができる。また、監視システム以外の他のシステムでも、上記の暗号化タスクの機能によりモジュールとして追加することができるプライバシーを守る監視システム。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、監視カメラシステムに関する。
【背景技術】
【０００２】  従来の監視システムは、監視カメラからの映像をサーバ機器にそのまま保存するという方法でした。またＩＤカードが必要な部屋に映像を管理する端末を置いて、アクセスできるひともパスワード等で制限する方法もあります。
【発明の開示】
【発明が解決しようとする課題】
【０００３】以上の技術では、とても高価である。もしくは、なんの制限もなく閲覧することが出来たので非撮影者にとってどのように保管され、いつどのように使用されるのかとても心配ということがありました。また、映像データが流出したときにも、暗号化されていない場合はそのまま閲覧できてしまいます。すなわち、プライバシー、肖像権の侵害等に関わってきます。
そこで、本発明は、プライバシーを守り、映像データの流出リスクを軽減し、安価に提供いたします。
【課題を解決するための手段】
【０００４】  以上の課題を解決するために、ファイルを暗号化しながら保存し、暗号化に使用した鍵をサーバの公開鍵で暗号化して保存し、公開鍵と対になる秘密鍵をサーバで保存します。ファイルを復号化するときは、サーバに閲覧理由を送信することによって秘密鍵を取得し、閲覧履歴がサーバで公開されることによって、自由に閲覧することを第３者の監視によって抑止します。
【発明の効果】
【０００５】  上述の通り、非撮影者のプライバシーを守り、映像流出のリスクを軽減し、特に大きな費用としてはパソコン一台あれば導入できますし、すでに監視システムが導入してあってもモジュールとして移植しやすいため、安価に提供することができます。
【発明を実施するための最良の形態】
【０００６】以下、本発明の実施の形態を図面に基づいて説明します。
まず、（１−１）ユーザーが（１−２）インターネットを通してｗｗｗサーバにアクセスをして申し込みをします。
（１−１）ユーザーが（１−３）クライアントコンピュータを捜査して、メインタスクから（１−５）の暗号化タスク、（１−７）公開鍵申請タスク、（１−８）映像取り込みタスクを呼び出しします。
（１−５）の暗号化タスクは、もし、暗号化処理を開始しようとしたときに公開鍵がない場合に
（１−７）公開鍵申請タスクを呼び出します。また、暗号化して処理のときに（１−９）ＨＤから公開鍵を受け取り暗号化したファイルを（１−９）ＨＤに保存します。
（１−７）公開鍵申請タスクは、メインタスクから呼び出され、インターネットを通してサーバコンピューターに公開鍵を申請し、公開鍵を受信し、（１−９）ＨＤに保存をします。
（１−１０）映像取り込みタスクは、（１−１１）ネットワーク監視カメラから映像データの受信をして取り込み（１−９）ＨＤに保存します。
ただし、このＨＤの中のフォルダの構成は、
共通鍵を保存するディレクトリ
暗号化した共通鍵の保存するディレクトリ
復号化したファイルを保存するディレクトリ
暗号化したファイルを保存するディレクトリ
公開鍵を保存するディレクトリ
秘密鍵を保存するディレクトリ
監視して暗号化するファイルの保存してあるディレクトリ
（１−１２）サーバコンピューターのタスクについて説明します。
（１−１４）メインタスクは、（１−１６）ストック鍵生成タスクを呼び出します。
（１−１３）ネットワークタスクは、（１−３）クライアントコンピュータからの接続を一括して管理し、
（１−３）クライアントコンピュータからの命令が、公開鍵の発行だった場合、（１−１７）公開鍵発行タスクを呼び出し、公開鍵を受け取り（１−３）クライアントコンピュータへ送信します。命令が秘密鍵の発行だった場合（１−１８）秘密鍵発行タスクを呼び出し、
秘密鍵を受け取り（１−３）クライアントコンピュータで送信します。
（１−１７）公開鍵発行タスクは、（１−１３）ネットワークタスクから呼び出され、（１−１５）ＨＤからストック鍵を取り出し、ストック鍵から公開鍵を生成し、（１−１３）ネットワークタスクへ発行した公開鍵を渡します。また、公開鍵を発行した履歴（閲覧履歴）を（１−２０）データベースサーバに登録をします。
（１−１８）秘密鍵発行タスクは、（１−１３）ネットワークタスクから呼び出され、秘密鍵を発行し、（１−１３）ネットワークタスクへ秘密鍵を渡します。また、秘密鍵を発行した履歴（閲覧履歴）を（１−２０）データベースサーバに登録をします。
（１−１６）ストック鍵生成タスクは、（１−１４）メインタスクから呼び出され、ストック鍵を作成し（１−１５）ＨＤに保存をします。
（１−２１）ｗｗｗサーバは、（１−２０）データベースサーバと通信し、（１−２０）データベースサーバから閲覧履歴を受信し、
（１−１０）インターネットを通して、（１−２２）のようなＨＰにリンク、またはｘｍｌ形式等でデータを送信することによって（１−１０）インターネットで公開します。【０００７】次に、図２のクライアントのメインタスクのフローチャートについて説明します。
（２−１）は、処理を開始します。
（２−２）は、暗号化タスク、公開鍵申請タスクの呼び出す処理。
この２つのタスクは、スレッド（またはプロセス）として処理が始まります。
（２−３）は、メインタスクのもつ、ユーザーインターフェイスの入力を待つ処理。
（２−４）は、暗号化されたファイルの復号化命令が入力されたかどうかの条件分岐。
（２−４）がＹＥＳの場合（２−５）復号化タスクを呼び出す処理。
（２−４）がＮＯの場合そのまま次の処理に移ります。
次に、
（２−６）は、停止命令が入力されたかどうかの条件分岐。
（２−６）がＮＯの場合、（２−３）に戻ります。
（２−６）がＹＥＳの場合、
（２−７）は、暗号化タスク、公開鍵申請タスクの終了フラグを立てて停止する処理。
（２−８）は、処理の終了です。【０００８】次に、図３のクライアントの公開鍵申請タスクのフローチャートについて説明します。
（３−１）は、メインタスクから呼ばれて処理が開始。
（３−２）は、ハードディスクに保存してある現在の公開鍵の個数を調べる処理。
（３−３）は、もし公開鍵の数が設定値よりも小さいかどうかの条件分岐。ＹＥＳのときは（３−４）に、ＮＯのときは（３−２）に戻る
（３−４）は、サーバに接続し、公開鍵の申請の命令を送信し、受信を待ちます。
（３−５）は、サーバの公開鍵の束を受信します。
（３−６）は、公開鍵の束を解析し、鍵番号、鍵データを取り出し、鍵データのファイル名を作成し、ディレクトリに鍵データを保存。
（３−７）は、サーバからの命令待ち。
（３−８）は、終了の命令がきたかどうかの条件分岐。ＹＥＳの場合は（３−９）へ。ＮＯのときは、（３−５）へ戻る。
つまり、終了の命令が来るまで公開鍵の束を受信し続けます。
（３−９）は、処理の終了。【０００９】次に、図４のクライアントの暗号化タスクのフローチャートについて説明します。
（４−１）は、メインタスクから呼び出され、処理が開始。
（４−２）は、ディレクトリ内に暗号化できるファイルが無いか調べる処理。
この処理の実装は、一定期間の間ファイルの容量が増えていない場合、使用中ではないと判断して、使用中ではないということを条件に暗号化できるファイルと判断する。
（４−４）は、暗号化できるファイルがあるかどうかの条件分岐。闇の場合は（４−３）のスリップ処理に行き、（４−２）に戻る。
（４−５）は、暗号化できるファイルがあったということなので、公開鍵の保存してあるディレクトリから、公開鍵を取り出す。
（４−６）は、公開鍵から、公開鍵の番号を取り出す。ファイル名に番号を入れたり、公開鍵のデータファイル内に番号を入れたりと考えられる。
ファイル名に番号が入っているときの一例を示すと、ｐｕｂｌｉｃ＿［番号］．ｋｅｙという風に名前を決めることができます。
この番号を取り出します。
（４−７）は、公開鍵の番号をもとに、暗号化後のファイルの名前とファイルを暗号化する共通鍵の名前を作成する処理。
一例として、暗号化されたファイル名をｅｎｃｏｄｅ＿［番号］＿［ファイル名］、暗号化する共通鍵の名前をｅｎｃｏｄｅ＿ｃｏｍｍｏｎ＿［番号］．ｋｅｙ
とします。
（４−８）は、ファイルを暗号化するための共通鍵を作成。
（４−９）は、共通鍵でファイルの暗号化。
（４−１０）は、共通鍵を公開鍵で暗号化。
（４−１１）は、暗号化前のファイルを削除、暗号化前の共通鍵を削除して、閲覧することをできなくします。
（４−１２）は、メインタスクからの終了フラグが立ったかどうかの条件分岐。ＹＥＳの場合は、（４−１３）の終了処理。ＮＯの場合は、（４−２）の処理へ。【００１０】次に、図５のクライアントの復号化タスクのフローチャートについで説明します。
（５−１）メインタスクから呼び出された。
（５−２）メインタスクからの復号化するファイル名、閲覧理由を受け取る。
（５−３）暗号化されたファイルから、鍵番号を取り出す。
（５−４）サーバから、秘密鍵を受信。
（５−５）秘密鍵で、暗号化されている共通鍵を復号化。
（５−６）共通鍵で、暗号化されているファイルを復号化。
（５−７）処理の終了。【００１１】次に、図６のサーバのメインタスクのフローチャートについて説明します。
（６−１）は、処理の開始。
（６−２）は、ネットワーク管理タスク、ストック鍵生成タスクの呼び出し処理。
（６−３）は、コマンド入力受付タスク呼び出し。
（６−４）は、各種コマンド入力あったかどうかの条件分岐。ＹＥＳの場合、（６−５）各種コマンドの実行へ。
ＮＯの場合、次の条件分岐（６−６）へ行きます。
（６−５）は、各種コマンドを実行します。
（６−６）は、サーバ停止命令が入力されたかどうかの条件分岐。ＹＥＳの場合（６−７）へ行き、終了フラグを立てて、各タスクが終了するのを待ち、（６−８）の就業処理に行きます。
ＮＯの場合は、（６−３）へ行きループします。【００１２】次に、図７のサーバのストック鍵生成タスクのフローチャートについて説明します。
ストック鍵のファイル名は、［番号］ｐｒｉｖａｔｅ、［番号］ｐｕｂｌｉｃという名前で、同じフォルダに保存する。
（７−１）は、メインタスクから呼び出し
（７−２）は、ストック鍵の個数を調べる
（７−３）は、鍵が設定値より少ないかどうか調べる。ＮＯの場合は（７−４）のスリープ処理をして（７−２）に戻りストック鍵の個数を調べる。
（７−４）は、スリープ処理は、夜間と日中で時間の長さが変わる
（７−５）は、ネットワークタスクが管理する通信状態を調べて、作成する個数を決定する。
（７−６）は、通信が混雑しているかどうかを調べる条件分岐。ＹＥＳの場合は（７−７）のスリープ処理を行う。
ただし、通信が混雑しているかどうかは、コネクションの数で判断する。例えば、グローバル変数ｎを用意してソケットが確立したらプラス１、処理が終わり切断したらマイナス１という方法がある。
（７−７）は、スリープ処理。
（７−８）は、一定数のストック鍵作成プロセスの呼び出し。例えば、１００個という定数にしておく。
ストック鍵を１００００個足りない場合、ストック鍵を作っている間に、通信が混雑する場合があるかもしれない。鍵の生成はＣＰＵのパワーを使う。そこで、サーバコンピュータの負担を軽減するため毎回通信状況を調べる。
（１−９）は、メインタスクからの終了フラグがあったかどうかの条件分岐。
（７−１０）は、目標個数に達した場合の条件分岐。ＹＥＳの場合は、（７−９）のメインタスクからの終了フラグがあるかどうか調べて
終了フラグがなければ、（７−２）の処理に戻りループする。
（７−１１）は、メインタスクからの終了フラグがあったかどうかの条件分岐。
（７−１２）は、処理の終了。【００１３】次に、図８のサーバのネットワークタスクのフローチャートについて説明します。
複数のクライアントを同時処理ができるように、マルチスレッド（または、マルチプロセス）で子スレッドを作成し、処理します。
（８−１）メインタスクから呼び出し
（８−２）親スレッドの処理が始まります。
（８−３）クライアントの接続待ち。
（８−４）接続があった場合の条件分岐。ＹＥＳの場合は、（８−５）子スレッド作成の処理へ。
（８−５）子スレッドを作成して、各クライアントとマルチスレッドで処理します。
親スレッドは、（８−１５）のメインタスクからの終了フラグがあるかどうか調べて、ＮＯの場合は（８−２）のクライアント接続待ちに戻る。つまり、親スレッドは接続だけの処理をして、その後の処理は子スレッドが処理をする。
（８−６）クライアントから命令、ユーザー１０、パスワードを受信します。
（８−７）クライアントから送信されたＩＤとパスワードをデータベースサーバから該当する
ＷＨＥＲＥ  ＩＤ＝ユーザーＩＤ（左辺はテーブルのフィールド）の条件でＰＡＳＳを取り出し一致するかどうか認証処理。
（８−８）認証がＯＫの場合の条件分岐。ＹＥＳの場合次の公開鍵の申請なのか、秘密鍵の申請なのかを調べる処理に進む。
認証が失敗してＮＯだった場合、（８−１３）切断処理に行きます。
（８−９）公開鍵の申請だった場合の条件分岐。ＹＥＳの場合、（８−１０）公開鍵に発行タスクを呼び出す。ＮＯの場合、（８−１１）秘密鍵の申請だったかどうかを調べる。
（８−１０）公開鍵発行タスクの呼び出し処理。
（８−１１）秘密鍵の申請だった場合の条件分岐。ＹＥＳの場合、（８−１２）秘密鍵発行タスクを呼び出す。
ＮＯの場合、（８−１３）切断処理に行きます。
（８−１２）秘密鍵発行タスクの呼び出し。
（８−１３）切断処理。
（８−１４）子スレッドの終了。
（８−１５）メインタスクからの終了フラグがあったかどうかの条件分岐。つまり、子スレッドを生成するときメインタスクから就業フライングがあるかどうかを毎回調べる。ＹＥＳの場合は、
（８−１６）の全部の子スレッドが終了するのを待ち、
（８−１７）子スレッド全部終了が全部終了したのかどうかの条件分岐で、ＹＥＳになった場合、
（８−１８）処理の終了になる。【００１４】次に、図９のサーバの公開鍵発行タスクのフローチャートについて説明します。
（９−１）はタスクから呼び出し。
（９−２）ストック公開鍵が保存してあるディレクトリからストック鍵を取り出します。
（９−３）ストック鍵が６できるかどうかの条件分岐。ＹＥＳの場合（９−４）の処理へ。ＮＯの場合は（９−２）の処理に戻りストック公開鍵を一つ取り出します。
（９−４）ストック公開鍵の番号を取り出します。
（９−５）同じ番号のストック秘密鍵を取り出します。
（９−６）現在までにダウンロードされた数をデータベースサーバから取得し、現在の鍵番号を取得。
（９−７）クライアントに送信する鍵の束に、現在の鍵番号、ストック公開鍵のデータの中身を追加。
鍵の束のフォーマットは、［鍵の番号］：［鍵のデータの中身］，［鍵の番号］：［鍵のデータの中身］．・・・
（９−８）ストック秘密鍵の鍵番号を現在の鍵番号に変換し、ユーザーのディレクトリに保存。
（９−９）一定数の鍵の束が完成したかどうかの条件分岐。ＮＯの場合は（９−２）の処理に戻る。
ＹＥＳの場合は、（９−１０）の処理へ行く。
ただし、一定数は１００個、目標の数を１０００個というような数字になる。
これは、はじめから１０００個の束を作成して送信するとサーバに大きな負担がかかるため１００個ずつ鍵の束を作成して、毎回サーバに高負荷がかかっているかどうかを調べて、目標の個数に達するまで、小さい鍵の束を毎回送信するようにする。
１個ずつ送信をするということでも効率が悪い。
（９−１０）クライアントに鍵の束を送信。
（９−１１）目標個数に達したかどうかを調べる条件分岐。
（９−１２）データベースサーバに送信個数を登録。
（９−１３）サーバに高負荷が掛かっているかどうかを調べる条件分岐。ＹＥＳの場合は、データベースサーバに送信個数を登録して、
（９−１５）クライアントに終了命令送信する。
（９−１４）メインタスクの終了フラグが立っているかどうかを調べる条件分岐。ＹＥＳの場合、（９−１５）クライアントに終了命令送信する。
ＮＯの場合、（９−２）の処理へ戻る。
（９−１６）処理の終了。【００１５】次に、図１０のサーバの秘密鍵発行タスクのフローチャートについて説明します。
（１０−１）は、ネットワークタスクから呼び出し
（１０−２）は、クライアントから、ファイル名、閲覧理由を受け取る
（１０−３）は、ファイル名を解析して、鍵番号を取り出す
（１０−４）は、ユーザーのディレクトリから、鍵番号の一致する秘密鍵を取り出す
（１０−５）は、クライアントに秘密鍵を送信
（１０−６）は、データベースサーバに、閲覧するファイル名、閲覧理由を登録
（１０−７）は、クライアントに終了命令送信
（１０−８）は、処理の終了【００１６】次に、請求項４の実施の形態について説明します。
暗号化タスクの機能で、定期的にファイルの容量を調べて、容量の変化がなければファイルを使用中ではないと判断し暗号化するという、暗号化タスクの機能は、他の監視システムによって保存されたファイルデータも上記の機能によって、暗号化することができる。例えば、ＶＨＳ形式のような古い機材でもそのデータをクライアントコンピュータに保存し、そのディレクトリを暗号化タスクで監視する。また、クライアントコンピュータに違う映像取り込むアプリケーションがインストールしてある場合でも、映像データを保存するディレクトリを暗号化タスクで監視する。
このようにして、もし別の監視システムが導入してあった場合でも、既存の監視システムにモジュールとして機能を追加することができる。また、監視システム以外の他のどんなアプリケーションで作成されたファイルも、上記の暗号化タスクの機能によりモジュールとして追加することができるプライバシーを守る監視システム。
【図面の簡単な説明】
【００１７】
【図１】タスクの相関関係の図
【図２】クライアントのメインタスクの図
【図３】クライアントの公開鍵申請タスクの図
【図４】クライアントの暗号化タスクの図
【図５】クライアントの復号化タスクの図
【図６】サーバのメインタスクの図
【図７】サーバのストック鍵生成タスクの図
【図８】サーバのネットワークタスクの図
【図９】サーバの公開鍵発行タスクの図
【図１０】サーバの秘密鍵発行タスクの図
【符号の説明】
【００１８】１−１  ユーザー
１−３  クライアントコンピュータ
１−９  ＨＤ
１−１１  ネットワーク監視カメラ
１−１２  サーバコンピュータ
１−１５  ＨＤ
１−１８  イントラネット
１−２０  データベースサーバ
１−２１  ｗｗｗサーバ
１−２２  自治体．商店会，会社，等のＨＰ
上記以外の１−１〜１−２２タスクをあらわします。
２−１〜１０−８  フローチャートの処理、条件分岐。内容はフローチャートの通り
【図１】
2008178054.tif 000003
【図２】
2008178054.tif 000004
【図３】
2008178054.tif 000005
【図４】
2008178054.tif 000006
【図５】
2008178054.tif 000007
【図６】
2008178054.tif 000008
【図７】
2008178054.tif 000009
【図８】
2008178054.tif 000010
【図９】
2008178054.tif 000011
【図１０】
2008178054.tif 000012