JP7283404B2 - 情報処理プログラム、情報処理方法、及び情報処理装置 - Google Patents

情報処理プログラム、情報処理方法、及び情報処理装置 Download PDF

Info

Publication number
JP7283404B2
JP7283404B2 JP2020008176A JP2020008176A JP7283404B2 JP 7283404 B2 JP7283404 B2 JP 7283404B2 JP 2020008176 A JP2020008176 A JP 2020008176A JP 2020008176 A JP2020008176 A JP 2020008176A JP 7283404 B2 JP7283404 B2 JP 7283404B2
Authority
JP
Japan
Prior art keywords
data
sensitive information
processing
information
processing component
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020008176A
Other languages
English (en)
Other versions
JP2021117516A (ja
Inventor
昌子 湊
健一 堀尾
昌隆 坂口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020008176A priority Critical patent/JP7283404B2/ja
Priority to EP20210619.1A priority patent/EP3855332B1/en
Priority to CN202011373163.6A priority patent/CN113158222A/zh
Priority to US17/108,627 priority patent/US11797707B2/en
Publication of JP2021117516A publication Critical patent/JP2021117516A/ja
Application granted granted Critical
Publication of JP7283404B2 publication Critical patent/JP7283404B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/535Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、情報処理プログラム、情報処理方法、及び情報処理装置に関する。
センサ及びカメラ等のデバイスの高性能化並びにネットワークの高速化に伴い、データ、例えば動画像及び静止画像等のマルチメディアデータを活用したサービスが増加傾向にある。
このようなサービスを提供するアプリケーション等のプログラムの開発及び実行を支援する開発基盤として、フローベースドプログラミング(Flow-Based Programming)(以下、「FBP」と表記する)を利用したデータ処理サービスが知られている。
FBPは、データフロープログラミング(Dataflow Programming)の一例である。FBPは、GUI(Graphical User Interface)上で処理部品を組み合わせることでプログラムの開発を実現するツールである。「処理部品」は、各々がデータの取得、加工、検出、又は、分析等の「処理」を行なうように定義された機能ブロックであり、「モジュール」の一例である。
FBPによれば、プログラム(サービス)の開発者は、処理部品、及び、コーディングに精通していなくても、容易又は迅速にプログラムを開発することができる。
特開2017-188771号公報 特開2019-98575号公報 特開2018-72957号公報
FBPで作成したプログラムで扱われる(処理される)データには、機微情報が含まれる可能性がある。「機微情報」とは、配慮されるべき情報であり、一例として、個人情報である。
機微情報が処理される場合、個人情報の所有者に対する事前の同意確認、並びに、期間及び場所を制限したデータの保存、等の適切な対策が必要である。これらが未対策である場合、セキュリティリスクが増加するほか、法律違反又は行政指導の対象となり、ビジネスに打撃となる可能性がある。
プログラムの開発者は、プログラムが処理するデータ内の機微情報の有無を判断し、意識的に対策を施す必要がある。しかし、データ内の機微情報の有無は、プログラム(サービス)の実行環境によって変化し得るほか、データ及び処理の組み合わせに応じて、機微情報の生成又は除去が発生する可能性がある。
このように、処理部品間で機微情報が受け渡しされる範囲を適切に把握することは困難である。従って、開発者による機微情報の見落としにより、機微情報が適切に対策されないリスクが発生する。特に、処理部品に精通していない開発者がプログラムを開発する場合、当該リスクは増加する可能性がある。
1つの側面では、本発明は、処理が機微情報を利用するか否かを精度良く判定することを目的とする。
1つの側面では、情報処理プログラムは、機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出し、前記第1のデータに対して機微情報を消失させるための第2の処理を実行した第3のデータに対し、前記第1の処理を実行して第4のデータを出力し、前記第2のデータと前記第4のデータとの比較結果に基づいて前記第1の処理が機微情報を利用する処理であるか否かを判定する、処理をコンピュータに実行させてよい。
1つの側面では、処理が機微情報を利用するか否かを精度良く判定することができる。
一実施形態に係るアプリ開発システムを説明するための図である。 リスク警告の表示の比較例を示す図である。 機微情報に関するリスク判断を容易とする第1の手法の一例を説明する図である。 第1の手法による処理結果の表示例を示す図である。 機微情報に関するリスク判断を容易とする第2の手法の一例を説明する図である。 第2の手法による処理結果の表示例を示す図である。 第1及び第2の手法による処理結果の表示例を示す図である。 機微情報に関するリスク判断を容易とする第3の手法の一例を説明する図である。 一実施形態に係るサーバの機能構成例を示すブロック図である。 処理部品情報の一例を示す図である。 グラフ情報の一例を示す図である。 出力テーブルの一例を示す図である。 要否テーブルの一例を示す図である。 出力判定処理の動作例を示すフローチャートである。 出力判定処理の動作例を説明する図である。 表示処理の動作例を示すフローチャートである。 表示処理の動作例を説明する図である。 要否判定処理の動作例を示すフローチャートである。 要否判定処理の動作例を説明する図である。 表示処理の動作例を示すフローチャートである。 表示処理の動作例を説明する図である。 変更処理の動作例を示すフローチャートである。 変更処理の動作例を説明する図である。 機微情報有無の判定例を示す図である。 機微情報が削除される処理部品の例を示す図である。 機微情報を必要とする処理部品の例を示す図である。 変更処理の動作例を示すフローチャートである。 変更処理の動作例を示すフローチャートである。 表示制御装置の機能構成例を示すブロック図である。 開発画面上でのグラフの表示手法の変形例を示す図である。 一実施形態に係るコンピュータのハードウェア構成例を示すブロック図である。
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、その趣旨を逸脱しない範囲で種々変形して実施することができる。なお、以下の実施形態で用いる図面において、同一符号を付した部分は、特に断らない限り、同一若しくは同様の部分を表す。
〔1〕一実施形態
〔1-1〕一実施形態の説明
図1は、一実施形態に係るアプリ開発システム1を説明するための図である。図1に示すように、アプリ開発システム1は、例示的に、サーバ10と、端末装置20とを備えてよい。なお、図1の例では、アプリ開発システム1は、1台の端末装置20を備えるが、2台以上の端末装置20を備えてもよい。
アプリ開発システム1は、アプリケーション等のプログラム、換言すればサービスを開発するためのシステムであり、情報処理システムの一例である。
端末装置20は、アプリケーション等のプログラムの開発者が操作する情報処理端末の一例である。端末装置20は、例えば、図示しないネットワークを介してサーバ10と接続され、ウェブブラウザ等のアプリケーションを利用して、サーバ10が提供する開発画面100の操作、及び、サーバ10が送信するリスク警告の表示を行なう。
端末装置20としては、例えば、PC(Personal Computer)及びサーバ等の種々のコンピュータが挙げられる。
サーバ10は、アプリケーション等のプログラムを開発及び実行するための開発環境を提供するサーバであり、情報処理装置又はコンピュータの一例である。サーバ10は、例えば、開発環境として、FBPを利用したデータ処理サービスを端末装置20に提供してよい。
サーバ10は、例えば、仮想サーバ(VM;Virtual Machine)であってもよいし、物理サーバであってもよい。また、サーバ10の機能は、1台のコンピュータにより実現されてもよいし、2台以上のコンピュータにより実現されてもよい。さらに、サーバ10の機能のうちの少なくとも一部は、クラウド環境において提供されるハードウェア(HW)リソース及びネットワーク(NW)リソースを用いて実現されてもよい。
また、サーバ10は、他の装置、例えば、1以上の端末装置20と、ネットワークを介して相互に通信可能に接続されてよい。ネットワークは、WAN(Wide Area Network)、LAN(Local Area Network)、又はこれらの組み合わせを含んでよい。WANにはインターネットが含まれてもよく、LANにはVPN(Virtual Private Network)が含まれてもよい。
図1に示すように、サーバ10は、例示的に、複数の処理部品11aを記憶及び管理してよい。サーバ10は、端末装置20による操作(例えばGUI上の操作)に応じて、選択された処理部品11aを組み合わせることで、アプリケーション110の開発及び実行を支援してよい。
処理部品11aは、各々が固有の(特定の)機能を有する機能ブロック(機能単位)として、サーバ10が提供するデータ処理サービス上で利用されてよい。処理部品11aは、データ(情報)が入力される入力ポート、及び、データ(情報)を出力する出力ポート、の一方又は双方を有し、データに対して所定の処理を行なうモジュールの一例である。処理部品は、「ノード」、「機能ブロック」又は「オブジェクト」と称されてもよい。
処理部品11aとしては、図1に例示するように、人間検出フィルタ、性別検出フィルタ、顔検出フィルタ、顔ぼかしフィルタ、及び、色検出フィルタ等の種々のフィルタが挙げられる。また、処理部品11aの他の例としては、図1に示すように、顔認証等の種々の処理又は機能が挙げられる。さらに、処理部品11aの他の例としては、図1に示すように、入力デバイス(カメラ)、認証結果DB(Database)、及び、認証結果出力等の種々の装置又は処理が挙げられる。
サーバ10は、例えば、開発者による端末装置20からの操作に応じて、処理部品11aを開発画面100に配置及び接続することで、所定の処理を行なうアプリケーション110を開発する。開発画面100は、端末装置20のウェブブラウザの表示領域に表示されてよい。ウェブブラウザは、端末装置20のモニタ等の出力装置に表示されてよい。
図1の例では、サーバ10は、カメラ等の入力デバイス111、顔認証112、認証結果DB113、及び、認証結果出力114の順に、処理部品11aを縦続接続(カスケード接続)したアプリケーション110を作成する。
なお、アプリケーション110において、各処理部品11aの入力及び出力の一方又は双方に機微情報が含まれることがある。機微情報が含まれる例としては、始点要素としての処理部品11aからの出力、中間要素としての処理部品11aへの入力及び出力の一方又は双方、並びに、終点要素としての処理部品11aへの入力のいずれか1つ以上が挙げられる。図1の例では、入力デバイス111の出力及び顔認証112の入力に、映像Aが含まれ得る。また、顔認証112の出力及び認証結果DB113の入力に、映像中の人物名Bが含まれ得る。さらに、認証結果DB113及び認証結果出力114の入力に、映像中の人物名Cが含まれ得る。
一実施形態に係るサーバ10は、アプリケーション110の開発の際に、処理部品11aと機微情報とに関するリスク警告を行なう。以下、一実施形態に係るサーバ10によるリスク警告の出力例を説明する。
まず、リスク警告の比較例について説明する。図2は、リスク警告の表示の比較例を示す図である。
比較例に係るサーバ10′は、例えば、映像(動画像又は静止画像)が常に機微度の高い情報を含んでいると判断する。機微度の高い情報とは、例えば機微情報であり、一例として、人間の顔や車番(ナンバー)等の個人情報である。
図2に例示するように、開発者が、開発画面100′において、処理部品11aのうちの映像を扱うフィルタ群のいずれかのフィルタ、例えば顔検出フィルタ115を利用した場合を想定する。この場合、サーバ10′は、映像を扱う顔検出フィルタ115を用いて開発されるアプリケーション110′にはリスクがあると判断し、リスクがあることを示す警告を開発画面100′上に表示(提示)する。
しかし、この場合、サーバ10′は、映像に含まれるリスクを正しく判断できない場合がある。例えば、顔ぼかしフィルタのように、リスクを低減させる処理部品11aが開発画面100′で利用される場合、出力には機微情報が含まれない(除去される)が、映像が入力となるために、サーバ10′により、リスクありと判断される。
このように、映像等の機微情報を含み得るデータを入力とするアプリケーション110′の開発段階において、サーバ10′が、処理部品11aが映像を扱うか否かに応じて一律にリスクの有無を判断すると、事前のリスク判断が正確に行なえない場合がある。
また、例えば、商店街に設置された監視カメラによる撮像映像には、人間の顔が機微情報として多数含まれ得る。また、高速道路に設置された定点カメラによる撮像映像には、人間の顔は含まれない一方、車(例えば車番)が機微情報として含まれ得る。さらに、表札及び位置情報を含む映像には、住所情報が機微情報として含まれ得る。一方で、カメラ映像と動き検出フィルタとを組み合わせた場合、動き検出フィルタの出力には、動き検出結果(例えば動きの有無)の情報が含まれ得るが、機微情報は含まれない場合がある。
このように、映像には種々の機微情報が含まれる可能性があるが、実際の映像にどのような機微情報が含まれているかを事前に判断することが困難であるため、アプリケーション110の開発段階で、映像によるリスクを予め把握することは困難である。
そこで、一実施形態に係るサーバ10は、以下の(a)~(c)の手法のうちのいずれか1つ、又は、2つ以上の組み合わせ、により、アプリケーション110の開発段階における機微情報に関するリスク判断を容易とする手法を提供する。
(a)サーバ10は、処理により出力されるデータに機微情報が含まれるか否かを検出する。例えば、サーバ10は、以下の(a-1)及び(a-2)の処理を行なってよい。
(a-1)サーバ10は、機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出する。
(a-2)サーバ10は、第2のデータに機微情報が含まれるか否かを、機微情報に対応付けて記憶されたモジュールであって当該機微情報が含まれるか否かを判定する第2の処理を実行するモジュールによる第2のデータに対する第2の処理の実行結果に基づいて判定する。
なお、上記(a)の手法において、処理(第1の処理)は、例えば、処理部品11aによる処理であってよい。
図3は、上記(a)の手法の一例を説明するための図である。図3に示すように、フィルタ11cは、第1のデータ11bに含まれる機微情報に対応付けて記憶されたモジュールであって機微情報が含まれるか否かを判定する第2の処理を実行するモジュールの一例である。一例として、第1のデータ11bは、機微情報として人間の顔の映像を含むサンプル映像であり、フィルタ11cは、入力されるデータから顔の検出結果(例えば検出有無)を出力する第2の処理を実行する顔検出フィルタであってよい。サーバ10は、第1のデータ11b及びフィルタ11cの組(セット)を対応付けて予め記憶してよい。
図3の上段に例示するように、フィルタ11cは、第1のデータ11bが入力されると、機微情報あり(例えば顔の検出あり)を示す情報を出力する。
上記(a)の手法では、図3の下段に例示するように、サーバ10は、第1のデータ11bを、第1の処理、例えば処理部品11aに入力し、第1の処理からの出力(処理結果)である第2のデータを抽出して、第2のデータをフィルタ11cに入力する。
例えば、フィルタ11cが機微情報ありを示す情報を出力する場合、処理部品11aは機微情報をそのまま含む第2のデータを出力する、換言すれば、処理部品11aは機微情報に関してリスクがあるといえる。
一方、例えば、フィルタ11cが機微情報なしを示す情報を出力する場合、処理部品11aは機微情報を消失させた(削除した)第2のデータを出力する、換言すれば、処理部品11aは機微情報に関してリスクがないといえる。
このように、サーバ10は、事前に用意した第1のデータ11bと機微情報を検出するフィルタ11cとを利用して、第1の処理により出力される第2のデータに機微情報が含まれるか否かを検出する。
以上のように、サーバ10は、上記(a)の手法によって、処理(第1の処理)により出力されるデータ(第2のデータ)が機微情報を含むか否かを精度良く検出することができる。
なお、サーバ10は、上記(a)の手法による検出を、処理部品11aがサーバ10に登録される際に、処理部品11aごとに実行してもよい。
また、サーバ10は、第2のデータに機微情報が含まれるか否かの判定結果((a)の処理結果)を、例えば図4に示すように、開発画面100等に表示してもよい。判定結果は、例えば、文字列、図、画像、及び、処理部品11aに接続される線の種類(例えば色、線種及び/又は線幅)、等の少なくとも1つの表示形態によって、処理部品11aから出力されるデータにおける機微情報の有無が区別可能に表示されてよい。判定結果は、図4の例のように、表示対象の処理部品11aを含む複数の処理部品11aの組み合わせ(例えばアプリケーション110)を表示する開発画面100に表示されてもよいし、1つの処理部品11aを表示する開発画面100に表示されてもよい。判定結果が機微情報あり(リスクあり)を示す情報である場合、開発画面100への当該情報の表示は、リスク警告(アラート)の表示の一例である。
(b)サーバ10は、処理が機微情報を利用するか否かを判定する。例えば、サーバ10は、以下の(b-1)~(b-3)の処理を行なってよい。
(b-1)サーバ10は、機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出する。
(b-2)サーバ10は、第1のデータに対して機微情報を消失させるための第2の処理を実行した第3のデータに対し、第1の処理を実行して第4のデータを出力する。
(b-3)サーバ10は、第2のデータと第4のデータとの比較結果に基づいて第1の処理が機微情報を利用する処理であるか否かを判定する。
なお、上記(b)の手法において、処理(第1の処理)は、例えば、処理部品11aによる処理であってよい。
図5は、上記(b)の手法の一例を説明するための図である。図5に示すように、フィルタ11cは、第1のデータ11bに含まれる機微情報を消失させるための第2の処理を実行するモジュールの一例である。一例として、第1のデータ11bは、機微情報として人間の顔の映像を含むサンプル映像であり、フィルタ11cは、入力されるデータに含まれる顔をぼかしたデータを出力する顔ぼかしフィルタであってよい。サーバ10は、第1のデータ11b及びフィルタ11cの組(セット)を対応付けて予め記憶してよい。
上記(b)の手法では、図5の上段に例示するように、サーバ10は、第1のデータ11bを、第1の処理、例えば処理部品11aに入力し、第1の処理からの出力(処理結果)である第2のデータ(図5の例では「出力a」)を抽出する。
また、図5の下段に例示するように、サーバ10は、第1のデータ11bを第2の処理、例えばフィルタ11cに入力する。そして、サーバ10は、第2の処理から出力される機微情報が消失した第3のデータを第1の処理に入力し、第1の処理からの出力である第4のデータ(図5の例では「出力b」)を抽出する。
サーバ10は、図5に例示するように、機微情報を含む第1のデータを入力された第1の処理からの出力aと、機微情報を含まない第3のデータを入力された第1の処理からの出力bとを比較する。そして、サーバ10は、比較結果に基づいて第1の処理が機微情報を利用する処理であるか否かを判定する。
例えば、出力aと出力bとが同じ(一致する)場合、処理部品11aは、機微情報の有無によらず、同じ処理結果を出力する。換言すれば、処理部品11aは機微情報を利用しない(機微情報が不要である)ため、処理部品11aの前段に第2の処理を実行するモジュール、例えばフィルタ11cを接続して運用することが可能であり、この場合、処理部品11aは機微情報に関してリスクがないといえる。
一方、例えば、出力aと出力bとが異なる(一致しない)場合、処理部品11aは、機微情報の有無に応じて異なる処理結果を出力する。換言すれば、処理部品11aは機微情報を利用する(必要とする)ため、処理部品11aは機微情報に関してリスクがあるといえる。
このように、サーバ10は、事前に用意した第1のデータ11bと機微情報を消失させるフィルタ11cとを利用して、機微情報の有無による第1の処理の出力の比較結果に基づき、第1の処理が機微情報を利用するか否かを判定する。
以上のように、サーバ10は、上記(b)の手法によって、処理(第1の処理)が機微情報を利用するか否かを精度良く判定することができる。
なお、サーバ10は、上記(b)の手法による検出を、処理部品11aがサーバ10に登録される際に、処理部品11aごとに実行してもよい。
また、出力a及び出力bは、いずれも、映像以外の出力データ、例えば、判定又は検出等の処理結果を示す情報であってよい。換言すれば、上記(b)の手法における第1の処理は、少なくとも判定又は検出等の処理結果を示す情報を出力する処理部品11aであってよい。なお、処理部品11aは、出力a又は出力bを出力する出力ポートとは異なる出力ポートから映像の出力データを出力してもよい。
さらに、サーバ10は、第1の処理が機微情報を利用するか否かの判定結果((b)の処理結果)を、例えば図6に示すように、開発画面100等に表示してもよい。判定結果は、例えば、文字列、図、画像、及び、処理部品11aに接続される線の種類(例えば色、線種及び/又は線幅)、等の少なくとも1つの表示形態によって、機微情報の要否が区別可能に表示されてよい。判定結果は、図6の例のように、表示対象の処理部品11aを含む複数の処理部品11aの組み合わせ(例えばアプリケーション110)を表示する開発画面100に表示されてもよいし、1つの処理部品11aを表示する開発画面100に表示されてもよい。判定結果が機微情報消去不可(必要)、すなわちリスクありを示す情報である場合、開発画面100への当該情報の表示は、リスク警告(アラート)の表示の一例である。
なお、サーバ10は、上記(a)及び(b)の手法を組み合わせて実行する場合、例えば、或る処理部品11aを対象として、上記(a)及び(b)のそれぞれの手法を順に実行してよい。上記(a)及び(b)の手法はいずれの手法が先に実行されてもよい。この場合、サーバ10は、例えば、図7に示すように、上記(a)及び(b)の手法の判定結果を統合して開発画面100等に表示してもよいし、図4及び図6に示すように、(a)及び(b)の手法の各判定結果を別々に開発画面100等に表示してもよい。
(c)サーバ10は、機微情報を含むデータの流れを可視化する。例えば、サーバ10は、以下の処理を行なってよい。
サーバ10は、装置又は処理に関する情報を示す複数のアイコンを対応付けて画面上に出力する場合に、対応付けされた複数のアイコンによりそれぞれ特定される装置又は処理間で受け渡しが行なわれるデータに機微情報が含まれるか否かに応じて、アイコン間の対応の表示態様を変化させる。
例えば、サーバ10は、複数の処理部品11a(装置及び処理)の各々による機微情報の発生又は除去を判定してよい。そして、サーバ10は、複数の処理部品11aのアイコンを相互に対応付けて(例えば接続して)アプリケーション110として開発画面100上に出力する場合、機微情報が受け渡しされる範囲を推定し、推定した範囲を開発画面100上で強調表示してよい。
図8は、上記(c)の手法の一例を説明するための図である。図8に例示するように、上記(c)の手法において、装置に関する情報は、入力デバイス111、認証結果DB113(DB保存)、ブザー鳴動117等の装置に関する処理部品11aであってよい。また、処理に関する情報は、例えば、種々のフィルタ、顔認証112、動体検出116等の処理又は機能に関する処理部品11aであってよい。さらに、画面は、例えば、複数の処理部品11aを配置して相互に接続した状態を表示する開発画面100であってよい。
例えば、カメラ等の入力デバイス111が人間の顔を含む映像データを出力する場合、サーバ10は、各処理部品11aの機微情報の発生又は除去の判定結果から、以下のように、処理部品11a間で機微情報が受け渡される範囲を推定する。
・入力デバイス111の出力と、動体検出116及び顔認証112の各入力との間(範囲A)では、機微情報に相当する、顔が写っている映像が受け渡される。
・顔認証112の出力と、認証結果DB113(DB保存)の入力との間(範囲B)では、機微情報に相当する、映像から認識された人物名が受け渡される。
・動体検出116とブザー鳴動117との間(範囲C)では、機微情報に相当しない、映像中の動きの有無が受け渡される。
従って、サーバ10は、開発画面100に表示される、機微情報が受け渡される範囲A及び範囲Bにおける、アイコン間の対応の表示態様を変化させる。一例として、サーバ10は、アイコン間の接続線の色を変更してよい。図8の例では、アイコン間の接続線のうち、範囲A及び範囲Bの接続線(図8では破線)は赤色であり、範囲Cの接続線(図8では実線)は黒色又は灰色である。
このように、機微情報に関してリスクのある処理部品11aの情報が、開発画面100上に視覚的に提示されることにより、開発者は、アプリケーション110の開発段階において、各処理部品11aのリスクを容易に判断することが可能となる。
以上のように、サーバ10は、上記(c)の手法によって、機微情報を含むデータの流れを可視化することができる。
なお、アイコン間の表示態様を変化させることには、接続線の色を変化させることに代えて又は加えて、例えば、機微情報が含まれるか否かに応じて、アイコン間を接続する接続線の線種及び線幅の一方又は双方を変化させることが含まれてよい。
また、上記(c)の手法において、対応付けされる複数のアイコンによりそれぞれ特定される装置又は処理間で受け渡しが行なわれるデータに機微情報が含まれるか否かの判定には、例えば、上記(a)の手法、及び、上記(b)の手法、の一方又は双方の処理結果が利用されてもよい。或いは、当該判定には、上記(a)及び(b)とは異なる手法による、データに機微情報が含まれるか否かを判定する処理の処理結果が利用されてもよい。
上記(a)及び(b)の一方又は双方の手法と、上記(c)の手法とを組み合わせることは、上記(a)及び(b)の一方又は双方の手法の処理結果を開発画面100等に表示する例(図4、図6、又は、図7)の一態様(一例)であるといえる。
以上のように、サーバ10は、上記(a)~(c)の手法のうちの少なくともいずれか1つの手法により、アプリケーション110の開発段階における機微情報に関するリスク判断を容易にするための開発環境を提供することができる。
〔1-2〕サーバの機能構成例
次に、図9を参照して、一実施形態に係るサーバ10の詳細について説明する。図9は、一実施形態に係るサーバ10の機能構成例を示すブロック図である。
図9に示すように、サーバ10は、例示的に、メモリ部11、情報管理部12、機微度評価部13、及び、評価結果提示部14を備えてよい。
メモリ部11は、記憶部又は記憶領域の一例であり、開発基盤としてのデータ処理サービスの実行に用いられる種々の情報を記憶する。図9に示すように、メモリ部11は、例示的に、複数の処理部品11a、複数のデータ11b、複数のフィルタ11c、処理部品情報11d、複数のグラフ情報11e、出力テーブル11f、及び、要否テーブル11gを記憶してよい。
なお、以下の説明では、処理部品情報11d、複数のグラフ情報11e、出力テーブル11f、及び、要否テーブル11gのデータ形式をそれぞれテーブル形式として示すが、これに限定されるものではない。これらの情報のデータ形式は、DB又は配列等の種々の形式であってよい。
処理部品11aは、開発基盤に登録されているモジュールの一例である。データ11bは、機微情報を含むサンプルデータであってよい。例えば、データ11bは、人間の顔、及び、車番、等の機微情報の種類ごとに、メモリ部11に格納されてよい。フィルタ11cは、データ11bと対応付けられたフィルタであってよく、データ11bに含まれる機微情報を検出、又は、除去することが可能なフィルタであってよい。なお、フィルタ11cは、処理部品11aの1つであってもよいし、2つ以上の処理部品11aの組み合わせであってもよい。
情報管理部12は、例えば処理部品11aの開発者が利用する端末装置20による、開発画面100上での操作に応じて、処理部品情報11d及びグラフ情報11eの管理を行なう。情報管理部12は、例示的に、処理部品管理部12a、グラフ管理部12b、及び、リスク対策部12cを備えてよい。
処理部品管理部12aは、開発基盤に登録される処理部品11aを管理する。例えば、処理部品管理部12aは、サーバ10(例えばメモリ部11)に処理部品11aが登録(例えば保存)される際に、メモリ部11に処理部品11aを保存するとともに、処理部品情報11dを作成又は更新する。
図10は、処理部品情報11dの一例を示す図である。処理部品情報11dは、図10に例示するように、「ID」、「処理部品」、「入力ポート」及び「出力ポート」の項目を含んでよい。
「ID」は、処理部品11aの識別情報の一例である。「処理部品」には、処理部品11aを識別するための情報として、例えば、処理部品11aの名称が設定されてよい。「入力ポート」には、処理部品11aの前段(入力:フローの上流)側のポートを識別するための情報として、例えばポートのID及び名称の一方又は双方が設定されてよい。「出力ポート」には、処理部品11aの後段(出力:フローの下流)側のポートを識別するための情報として、例えばポートのID及び名称の一方又は双方が設定されてよい。なお、入力デバイス111等のグラフの始点となる処理部品11aの「入力ポート」、及び、ブザー鳴動117や認証結果DB113(DB保存)等のグラフの終点となる処理部品11aの「出力ポート」、には、情報が設定されなくてもよい。
グラフ管理部12bは、図1に例示するように、端末装置20による開発画面100上での操作に応じて、アプリケーション110として複数の処理部品11aを相互に対応付け(例えば接続し)、対応関係をグラフ情報11eとしてメモリ部11に保存する。
図11は、グラフ情報11eの一例を示す図である。グラフ情報11eは、グラフ、換言すれば、データの流れを示すフローを定義する情報である。グラフ管理部12bは、端末装置20により作成又は更新されたグラフごとにグラフ管理部12bを管理してよい。
グラフ情報11eは、図11に例示するように、「処理部品」、「出力ポート」、及び、「後段処理部品」の項目を含んでよい。「処理部品」には、グラフに含まれる処理部品11aのID及び名称(図10参照)の一方又は双方が設定されてよい。なお、グラフ情報11eには、グラフの始点に位置する「処理部品」からグラフの終点に位置する「処理部品」に向かって順にエントリが登録されてよい。
「出力ポート」には、「処理部品」の出力ポート(図10参照)のうち、「後段処理部品」に接続される出力ポートを特定する情報、例えば、ポートのID及び名称の一方又は双方が設定されてよい。「後段処理部品」には、「処理部品」の後段に接続される処理部品11aのID及び名称の一方又は双方が設定されてよい。
リスク対策部12cは、開発画面100上に、機微度評価部13により機微情報を利用しないと判定された処理部品11aが配置される際に、当該処理部品11aの機微情報に関するリスクを低下(例えば無くす)ための処理を行なう。例えば、リスク対策部12cは、当該処理部品11aの前段に、機微情報を消失させるためのフィルタ11cを挿入してよい。リスク対策部12cの詳細は後述する。
機微度評価部13は、上記(a)及び(b)の一方又は双方の手法により、処理部品11aが機微情報を出力するか否か、及び、機微情報を利用するか否か、の一方又は双方を含む機微度を評価する。例えば、機微度評価部13は、処理部品管理部12aにより処理部品11aがメモリ部11に保存される際に、当該処理部品11aを評価対象として機微度を評価してよい。機微度評価部13は、例示的に、実行部13a、判定部13b、及び、情報登録部13cを備えてよい。
実行部13aは、評価対象の処理部品11aに対して、データ11b及びフィルタ11cを利用して、上記(a)及び(b)の一方又は双方の手法を実行し、評価に用いるデータを取得する。
判定部13bは、実行部13aが取得したデータを用いて、評価対象の処理部品11aの機微度を評価する。
情報登録部13cは、判定部13bによる判定結果(評価結果)に基づき、出力テーブル11f及び要否テーブル11gの一方又は双方を作成又は更新する。
図12は、出力テーブル11fの一例を示す図である。図12に例示するように、出力テーブル11fは、「No.」、「処理部品」、「出力ポート」、及び、「機微情報種類」の項目を含んでよい。出力テーブル11fでは、エントリは、「処理部品」ごと、且つ、「出力ポート」ごとに登録され、過去に実行された評価結果が蓄積されてよい。
「No.」は、出力テーブル11fのエントリの識別情報である。「処理部品」には、評価対象の処理部品11aのID及び名称の一方又は双方が設定されてよい。「出力ポート」には、出力ポートのID及び名称の一方又は双方が設定されてよい。
「機微情報種類」には、評価対象となる機微度の種別ごとに、評価結果が設定されてよい。図12の例では、「機微情報種類」として、人間の顔を示す「顔情報」、及び、車番を示す「車番情報」等が設定される。
このように、図12に示す出力テーブル11fは、評価対象の処理部品11aに機微情報を含むデータが入力される場合に、各出力ポートから出力されるデータに機微情報が含まれるか否かを、機微情報の種類別に示す情報である。換言すれば、出力テーブル11fは、上記(a)の手法による処理結果を示す情報である。
図13は、要否テーブル11gの一例を示す図である。図13に例示するように、要否テーブル11gは、「No.」、「処理部品」、「入力ポート」、及び、「機微情報種類」の項目を含んでよい。要否テーブル11gでは、エントリは、「処理部品」ごと、且つ、「入力ポート」ごとに登録され、過去に実行された評価結果が蓄積されてよい。
「No.」は、要否テーブル11gのエントリの識別情報である。「処理部品」には、評価対象の処理部品11aのID及び名称の一方又は双方が設定されてよい。「入力ポート」には、入力ポートのID及び名称の一方又は双方が設定されてよい。
「機微情報種類」には、評価対象となる機微度の種別ごとに、評価結果が設定されてよい。図13の例では、「機微情報種類」として、人間の顔を示す「顔情報」、及び、車の車番(ナンバー)を示す「車番情報」等が設定される。
このように、図13に示す要否テーブル11gは、評価対象の処理部品11aが、入力されるデータに含まれる機微情報を利用するか否かを、機微情報の種類別に示す情報である。換言すれば、要否テーブル11gは、上記(b)の手法による処理結果を示す情報である。
評価結果提示部14は、機微度評価部13による機微度の評価結果を、アプリケーション110の開発者に提示する。例えば、評価結果提示部14は、アプリケーション110の開発者が利用する端末装置20による開発画面100上での操作に応じてグラフが作成される際に、グラフに利用される個々の処理部品11aのアイコンの表示態様を、評価結果に基づき制御してよい。
このため、評価結果提示部14は、例示的に、探索部14a、表示判定部14b、及び、表示出力部14cを備えてよい。
探索部14aは、開発画面100上に表示されるグラフにおける複数の処理部品11aの対応関係、換言すれば、複数の処理部品11aの相互の接続関係を、グラフ情報11eに基づき探索する。
表示判定部14bは、探索部14aが探索した処理部品11aについて、出力テーブル11f及び要否テーブル11gに基づき、開発画面100上で表示態様を変化させるか否かを判定する。
表示出力部14cは、表示判定部14bによる判定結果に応じて、開発画面100上の表示態様の制御を行なう。
また、表示出力部14cは、表示判定部14bによる判定結果に応じて、リスク対策部12cと協働して、開発画面100上に表示されるグラフに対して、フィルタ11cを挿入する制御を行なってよい。
以下、上述した機微度評価部13及び評価結果提示部14の詳細を説明する。以下の説明では、機微度評価部13による、機微情報の出力判定処理、及び、要否判定処理、並びに、評価結果提示部14による表示態様の変更処理、の詳細を説明する。なお、サーバ10は、出力判定処理、要否判定処理、及び、変更処理を、互いに独立して実行でき、或いは、これらの2つ以上の処理を並行して又は時間的に前後して実行できる。
〔1-3〕機微情報の出力判定処理の動作例
まず、機微度評価部13による機微情報の出力判定処理の動作例を説明する。出力判定処理は、上記(a)の手法の一例である。図14は、出力判定処理の動作例を示すフローチャートであり、図15は、出力判定処理の動作例を説明する図である。
図14に示すように、機微度評価部13の実行部13aは、処理部品管理部12aによりメモリ部11に処理部品11aが登録されたことを、処理部品管理部12aからの通知、又は、処理部品情報11dの監視等により検出する(ステップA1)。
実行部13aは、処理部品情報11dから、登録された(未評価の)処理部品11aを、評価対象の処理部品11aとして1つ抽出する(ステップA2)。抽出した処理部品11aは、第1の処理の一例である。
例えば、実行部13aは、処理部品情報11dに新たに追加された1以上のエントリのうちの1つのエントリの情報を抽出してよい。図15の例では、実行部13aは、動体検出フィルタ又は顔ぼかしフィルタの情報を抽出する。
実行部13aは、メモリ部11から、データ11b及びフィルタ11cの組を1つ抽出する(ステップA3)。抽出したデータ11bは、第1のデータの一例であり、抽出したフィルタ11cは、第2の処理の一例である。
図15の例では、実行部13aは、データ11bとして、顔を含む映像のサンプルデータを抽出し、当該データに対応するフィルタ11cとして、顔検出フィルタを抽出する。このように、出力判定処理において用いられるフィルタ11cは、フィルタ11cに対応付けられたデータ11b内の機微情報を「検出」可能なフィルタであってよい。なお、データ11bが車番を含む映像のサンプルデータである場合、フィルタ11cは、車番を検出するフィルタであってよい。
次いで、実行部13aは、抽出したデータ11bを、評価対象の処理部品11aに入力し、当該処理部品11aからの出力を、抽出したフィルタ11cに入力する(ステップA4:図3の下段参照)。フィルタ11cは、第2の処理の一例である。また、実行部13aは、機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出する抽出部の一例である。
図15の例では、実行部13aは、顔映像のサンプルデータを処理部品11aに入力し、当該処理部品11aからの出力を顔検出フィルタに入力する。なお、実行部13aは、処理部品情報11dを参照して、データ形式が一致するように、フィルタ11cの入力ポートに接続する処理部品11aの出力ポートを特定してもよい。
判定部13bは、フィルタ11cからの出力が機微情報の検出を示すか否かを判定する(ステップA5)。図15の例では、判定部13bは、顔検出フィルタが、処理部品11aから出力されたデータに顔情報を検出したか否かを判定する。
換言すれば、判定部13bは、第2のデータに機微情報が含まれるか否かを、機微情報に対応付けて記憶されたモジュールであって機微情報が含まれるか否かを判定する第2の処理を実行するモジュールによる第2のデータに対する第2の処理の実行結果に基づいて判定する。
なお、例えば、評価結果提示部14は、第2のデータに機微情報が含まれるか否かの判定結果を出力してもよい。換言すれば、評価結果提示部14は、判定部13bによる判定結果を出力する判定結果出力部の一例である。例えば、評価結果提示部14は、判定結果を、開発画面100上にメッセージとして出力してもよいし、メモリ部11にログとして出力してもよく、その他の種々の態様で出力してもよい。
フィルタ11cからの出力が機微情報の検出を示すと判定した場合(ステップA5でYES)、情報登録部13cは、出力テーブル11fに対して、評価対象である処理部品11aの出力ポートのエントリを作成し、評価結果を登録する(ステップA6)。このとき、情報登録部13cは、当該エントリにおいて、データ11bに対応する機微情報の出力が“あり”である旨を設定する(図12の「No.:1、2、4、5」参照)。
フィルタ11cからの出力が機微情報の検出を示さないと判定した場合(ステップA5でNO)、情報登録部13cは、出力テーブル11fに対して、評価対象である処理部品11aの出力ポートのエントリを作成し、評価結果を登録する(ステップA7)。このとき、情報登録部13cは、当該エントリにおいて、データ11bに対応する機微情報の出力が“なし”である旨を設定する(図12の「No.:3、6」参照)。
換言すれば、情報登録部13cは、処理部品11aから出力されたデータに機微情報が含まれると判定部13bが判定した場合に、処理部品11aに機微情報に関する情報を対応付けて出力テーブル11fに記憶させるのである。
そして、実行部13aは、メモリ部11にデータ11b及びフィルタ11cの未使用の他の組が保存されているか否かを判定する(ステップA8)。
未使用の他の組が保存されていると判定した場合(ステップA8でYES)、処理がステップA3に移行し、実行部13aは、未使用の他のデータ11b及びフィルタ11cの組を抽出して、機微情報の出力判定処理を行なう。図15の例では、実行部13aは、例えば、車番を含む映像のサンプルデータと、車番を検出するフィルタとを抽出してよい。
一方、未使用の他の組が保存されていないと判定した場合(ステップA8でNO)、実行部13aは、未評価の他の処理部品11aがメモリ部11に存在するか否かを、例えば処理部品情報11dを参照して判定する(ステップA9)。
未評価の他の処理部品11aがメモリ部11に存在すると判定した場合(ステップA9でYES)、処理がステップA2に移行し、実行部13aは、未評価の他の処理部品11aを用いて、機微情報の出力判定処理を行なう。
一方、未評価の他の処理部品11aがメモリ部11に存在しないと判定した場合(ステップA9でNO)、処理が終了する。
以上のように、一実施形態の一実施例に係る機微情報の出力判定処理を実行するサーバ10によれば、サンプルデータ(サンプル映像)に対する処理部品11aによる機微情報の出力有無を検出することができる。これにより、開発者は、アプリケーション110の開発の際に、検出結果に基づき処理部品11aの機微情報に関するリスク判断を行なうことができる。
なお、判定部13bは、登録を検出した処理部品11a、又は、当該処理部品11aに類似する処理部品11aが既に出力テーブル11fに登録されている場合、出力テーブル11fの登録内容に基づいて、処理部品11aの機微情報出力有無を判定してもよい。登録を検出した処理部品11aに類似する処理部品11aとは、例えば、入力されるデータに対して同様の処理を行なう処理部品11aであってよい。
換言すれば、判定部13bは、第2のデータに機微情報が含まれるか否かを、第1の処理に対応付けて記憶された機微情報に基づいて判定する。これにより、サーバ10は、出力判定処理の少なくとも一部の処理を省略することができるため、処理負荷を低減させることができる。この場合においても、評価結果提示部14は、判定部13bによる判定結果を出力してもよい。
(表示処理の一例)
次に、機微度評価部13による出力判定処理の処理結果を表示する表示処理の一例を説明する。図16は、表示処理の動作例を示すフローチャートであり、図17は、表示処理の動作例を説明する図である。
図16に示すように、評価結果提示部14は、開発画面100上で処理部品11aが利用されたこと、例えば開発画面100に配置されたことを、グラフ管理部12bからの通知等により検出する(ステップA11)。図17の例では、評価結果提示部14は、動体検出フィルタ及び顔ぼかしフィルタが開発画面100上に配置されたことを検出する。
評価結果提示部14は、事前に評価済みの出力テーブル11fを参照して、検出された処理部品11aが機微情報を出力するか否かを判定する(ステップA12)。
検出された処理部品11aが機微情報を出力すると判定した場合(ステップA12でYES)、評価結果提示部14は、開発画面100上にリスク警告を提示し(ステップA13)、処理が終了する。図17の例では、動体検出フィルタが顔情報を出力することが出力テーブル11fに登録されているため、評価結果提示部14は、処理部品11aが機微情報を出力すると判定し、開発画面100上にリスクありを示す警告を表示する。
換言すれば、評価結果提示部14は、処理部品11aに機微情報が対応付けて記憶されているか否かを判定し、機微情報が対応付けて記憶されていると判定した場合に、機微度評価部13によるフィルタ11cに基づいた判定を実行せずにアラートを出力するアラート部の一例である。
一方、検出された処理部品11aが機微情報を出力しないと判定した場合(ステップA12でNO)、評価結果提示部14は、リスク警告を非表示、又は、開発画面100上にリスクなしの旨を提示し(ステップA14)、処理が終了する。図17の例では、顔ぼかしフィルタが機微情報を出力しないことが出力テーブル11fに登録されているため、評価結果提示部14は、処理部品11aが機微情報を出力しないと判定し、開発画面100上にリスクなしを示すメッセージを表示する。
以上のように、サーバ10は、出力判定処理の判定結果である出力テーブル11fに基づき、機微情報を出力すると検出(評価)された処理部品11aが開発画面100で利用される際にリスク警告を端末装置20に提示する。このように、サーバ10は、アプリケーション110で機微情報が扱われることを、開発画面100上に視覚的に提示することができる。従って、開発者は、容易にリスク判断を行なうことができる。
なお、図16及び図17に示す表示処理は、図4を参照して説明した表示処理の一例である。
〔1-4〕機微情報の要否判定処理の説明
次に、機微度評価部13による機微情報の要否判定処理について説明する。要否判定処理は、上記(b)の手法の一例である。図18は、要否判定処理の動作例を示すフローチャートであり、図19は、要否判定処理の動作例を説明する図である。
図18に示すように、機微度評価部13の実行部13aは、図14のステップA1及びA2と同様に、処理部品11aの登録を検出すると(ステップB1)、処理部品情報11dから、登録された処理部品11aを1つ抽出する(ステップB2)。図19の例では、実行部13aは、性別検出フィルタ又は色検出フィルタの情報を抽出する。
実行部13aは、メモリ部11から、データ11b及びフィルタ11cの組を1つ抽出する(ステップB3)。抽出したデータ11bは、第1のデータの一例であり、抽出したフィルタ11cは、第2の処理の一例である。
図19の例では、実行部13aは、データ11bとして、顔を含む映像のサンプルデータを抽出し、当該データに対応するフィルタ11cとして、顔ぼかしフィルタを抽出する。このように、要否判定処理において用いられるフィルタ11cは、フィルタ11cに対応付けられたデータ11b内の機微情報を「除去」可能なフィルタであってよい。なお、データ11bが車番を含む映像のサンプルデータである場合、フィルタ11cは、車番を除去、例えばぼかすフィルタであってよい。
次いで、実行部13aは、抽出したデータ11bを、評価対象の処理部品11aに入力し、当該処理部品11aからの出力aを取得する(ステップB4:図5の上段参照)。換言すれば、実行部13aは、機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出する抽出部の一例である。
また、実行部13aは、抽出したデータ11bを、抽出したフィルタ11cに入力し、当該フィルタ11cからの出力を評価対象の処理部品11aに入力し、当該処理部品11aからの出力bを取得する(ステップB5:図5の下段参照)。換言すれば、実行部13aは、第1のデータに対して機微情報を消失させるための第2の処理を実行した第3のデータに対し、第1の処理を実行して第4のデータを出力する出力部の一例である。
図19の例では、実行部13aは、顔映像のサンプルデータを処理部品11aに入力して出力aを取得し、また、顔映像のサンプルデータを顔ぼかしフィルタに入力し、当該フィルタからの出力を当該処理部品11aに入力して出力bを取得する。なお、実行部13aは、処理部品情報11dを参照して、データ形式が一致するように、処理部品11aの入力ポートに接続するフィルタ11cの出力ポートを特定してもよい。
判定部13bは、ステップB4及びB5でそれぞれ取得した出力a及び出力bが互いに一致するか否かを判定する(ステップB6)。図19の例では、判定部13bは、顔を含む映像のサンプルデータを入力された処理部品11aの出力aと、顔を除去された映像のサンプルデータを入力された処理部品11aの出力bとが一致するか否かを判定する。換言すれば、判定部13bは、第2のデータと第4のデータとの比較結果に基づいて第1の処理が機微情報を利用する処理であるか否かを判定する。
なお、例えば、評価結果提示部14は、第1の処理が機微情報を利用する処理であるか否かの判定結果を出力してもよい。換言すれば、評価結果提示部14は、判定部13bによる判定結果を出力する判定結果出力部の一例である。例えば、評価結果提示部14は、判定結果を、開発画面100上にメッセージとして出力してもよいし、メモリ部11にログとして出力してもよく、その他の種々の態様で出力してもよい。
出力aと出力bとが一致すると判定した場合(ステップB6でYES)、情報登録部13cは、要否テーブル11gに対して、評価対象の処理部品11aの入力ポートのエントリを作成し、評価結果を登録する(ステップB7)。このとき、情報登録部13cは、当該エントリにおいて、データ11bに対応する機微情報は処理部品11aでは“不要”である旨を設定する(図13の「No.:1、3、4」参照)。
出力aと出力bとが一致しないと判定した場合(ステップB6でNO)、情報登録部13cは、要否テーブル11gに対して、評価対象の処理部品11aの入力ポートのエントリを作成し、評価結果を登録する(ステップB8)。このとき、情報登録部13cは、当該エントリにおいて、データ11bに対応する機微情報は処理部品11aでは“要”である旨を設定する(図13の「No.:2」参照)。
そして、実行部13aは、メモリ部11にデータ11b及びフィルタ11cの未使用の他の組が保存されているか否かを判定する(ステップB9)。
未使用の他の組が保存されていると判定した場合(ステップB9でYES)、処理がステップB3に移行し、実行部13aは、未使用の他のデータ11b及びフィルタ11cの組を抽出して、機微情報の要否判定処理を行なう。図19の例では、実行部13aは、例えば、車番を含む映像のサンプルデータと、車番をぼかすフィルタとを抽出してよい。
一方、未使用の他の組が保存されていないと判定した場合(ステップB9でNO)、実行部13aは、未評価の他の処理部品11aがメモリ部11に存在するか否かを判定する(ステップB10)。
未評価の他の処理部品11aがメモリ部11に存在すると判定した場合(ステップB10でYES)、処理がステップB2に移行し、実行部13aは、未評価の他の処理部品11aを用いて、機微情報の要否判定処理を行なう。
一方、未評価の他の処理部品11aがメモリ部11に存在しないと判定した場合(ステップB10でNO)、処理が終了する。
以上のように、一実施形態の一実施例に係る機微情報の要否判定処理を実行するサーバ10によれば、サンプルデータ(サンプル映像)内の機微情報の有無を変化させて処理部品11aの出力変化を比較することで、処理部品11aの機微情報要否を判定できる。これにより、開発者は、アプリケーション110の開発の際に、判定結果に基づき処理部品11aの機微情報に関するリスク判断を行なうことができる。
また、処理部品11aが機微情報を必要とするか否かをサーバ10が判定するため、開発者が判定を行なうよりも正確な判定結果を出力できる。
なお、サーバ10が、出力判定処理及び要否判定処理の双方を実行する場合、図14のステップA1及びA2の処理と、図18のステップB1及びB2の処理とは、いずれか一方の処理が実行されればよい。ステップA3~A8の処理、及び、ステップB3~B9の処理は、時間的に前後して実行されてもよいし、並行して実行されてもよい。ステップA3で抽出されるデータ11b及びフィルタ11cと、ステップB3で抽出されるデータ11b及びフィルタ11cとは、互いに異なってよい。
(表示処理の一例)
次に、機微度評価部13による要否判定処理の処理結果を表示する表示処理の一例を説明する。図20は、表示処理の動作例を示すフローチャートであり、図21は、表示処理の動作例を説明する図である。
図20に示すように、評価結果提示部14は、図16のステップA11と同様に、開発画面100上で処理部品11aが利用されたことを検出する(ステップB11)。図21の例では、評価結果提示部14は、性別検出フィルタ及び色検出フィルタが開発画面100上に配置されたことを検出する。処理部品11aが利用されたことは、第1のデータに対する第1の処理の指定を受け付けたことの一例である。
評価結果提示部14は、事前に評価済みの要否テーブル11gを参照して、検出された処理部品11aが、機微情報を利用するか(必要とするか)否かを判定する(ステップB12)。
検出された処理部品11aが機微情報を利用すると判定した場合(ステップB12でYES)、評価結果提示部14は、開発画面100上にリスク警告を提示し(ステップB13)、処理が終了する。図21の例では、性別検出フィルタが機微情報を利用することが要否テーブル11gに登録されているため、評価結果提示部14は、処理部品11aが機微情報を利用すると判定し、開発画面100上にリスクありを示す警告を表示する。
一方、検出された処理部品11aが機微情報を利用しないと判定した場合(ステップB12でNO)、評価結果提示部14は、検出された処理部品11aが利用する機微情報を消去するためのフィルタ11cの挿入をリスク対策部12cに指示する。例えば、評価結果提示部14は、要否テーブル11gを参照して、当該フィルタ11cを特定してよい。
リスク対策部12cは、開発画面100上に配置された処理部品11aの前段に、指示されたフィルタ11cを挿入(配置)し、フィルタ11cの出力ポートと処理部品11aの入力ポートとを接続する(ステップB14)。また、リスク対策部12cは、挿入したフィルタ11cをグラフに組み込むために、グラフ情報11eを更新してよい。
図21の例では、色検出フィルタが機微情報を利用しないことが要否テーブル11gに登録されているため、評価結果提示部14は、処理部品11aが機微情報を利用しないと判定し、リスク対策部12cに対して、顔ぼかしフィルタの挿入を指示する。リスク対策部12cは、顔ぼかしフィルタを色検出フィルタの前段に挿入及び接続する。
次いで、評価結果提示部14は、開発画面100上にリスクなし(対策済み)を示すメッセージを表示し(ステップB15)、処理が終了する。
なお、評価結果提示部14は、ステップB12でNOの場合、ステップB14の前に、以下のステップB16及びB17の処理を実行してもよい。
例えば、評価結果提示部14は、開発画面100上に、リスク警告であって、対策が可能である旨を表示する警告を提示し(ステップB16)、リスク対策を実行するか否かを端末装置20に問い合わせる(図21の「対策を提案」参照)。
評価結果提示部14は、端末装置20から、リスク対策の要求を受信したか否かを判定し(ステップB17)、受信した場合(ステップB17でYES)、ステップB14の処理を実行する。一方、評価結果提示部14は、端末装置20からリスク対策の要求を受信しない場合(例えばリスク対策不要の旨の指示を受信した場合)(ステップB17でNO)、処理が終了する。
このように、評価結果提示部14は、第1の処理が機微情報を利用する処理である場合にアラートを出力するアラート部の一例である。
また、評価結果提示部14及びリスク対策部12cは、第1の処理が機微情報を利用しない処理である場合に、第1のデータから機微情報を除去するための第2の処理に関する情報を出力する、又は、第1のデータに対する第2の処理を実行するアラート部の一例である。
以上のように、サーバ10は、要否判定処理の判定結果である要否テーブル11gに基づき、機微情報を利用すると判定(評価)された処理部品11aが開発画面100で利用される際にリスク警告を端末装置20に提示する。このように、サーバ10は、アプリケーション110で機微情報が扱われることを、開発画面100上に視覚的に提示することができる。従って、開発者は、容易にリスク判断を行なうことができる。
また、サーバ10は、機微情報を利用しないと判定(評価)された処理部品11aが開発画面100で利用される際に、機微情報を除去するフィルタ11cを処理部品11aの前段に挿入及び接続する。これにより、当該処理部品11aよりも上流に機微情報を出力する他の処理部品11aが接続される場合であっても、フィルタ11cにより機微情報を除去できるため、機微情報に関するリスクを低下(例えば無くす)ことができる。
なお、図20及び図21に示す表示処理は、図6を参照して説明した表示処理の一例である。
また、サーバ10が、出力判定処理及び要否判定処理の双方を実行する場合、図16のステップA11の処理と、図20のステップB11の処理とは、いずれか一方の処理が実行されればよい。ステップA12~A14の処理、及び、ステップB12~B17の処理は、時間的に前後して実行されてもよいし、並行して実行されてもよい。この場合の表示処理は、図7を参照して説明した表示処理の一例である。
〔1-5〕表示態様の変更処理の説明
次に、評価結果提示部14による表示態様の変更処理について説明する。変更処理は、上記(c)の手法の一例である。以下、変更処理の3つの実施例を説明する。
(変更処理の第1実施例)
第1実施例では、評価結果提示部14は、出力テーブル11f及び要否テーブル11gのうち、双方を利用しない場合、又は、出力テーブル11fを利用する場合、の動作例を説明する。図22は、変更処理の動作例を示すフローチャートであり、図23は、変更処理の動作例を説明する図である。
図22に示すように、評価結果提示部14は、開発画面100上でのグラフの作成、又は、グラフ管理部12bによるグラフ情報11eの作成又は更新等の検出により、グラフの登録を検出する(ステップC1)。
評価結果提示部14の探索部14aは、登録されたグラフの始点の処理部品11aを、グラフ情報11eから抽出する(ステップC2)。なお、探索部14aは、例えば、グラフアルゴリズムを利用して、親ノードが存在しないノードを探索する等の手法により、グラフ情報11eから始点の処理部品11aを探索してよい。図23の例では、探索部14aは、グラフ情報11eから始点の処理部品11aとして入力デバイス111を抽出する(図11参照)。
表示判定部14bは、始点の処理部品11aの出力が、機微情報を含むか否かを判定する(ステップC3)。例えば、表示判定部14bは、始点の処理部品11aの種類に応じて、出力が機微情報を含むか否かを判定してよい。
一例として、図24に示すように、表示判定部14bは、始点の処理部品11aがカメラ等の入力デバイス111である場合、入力デバイス111からの出力には、映像への映り込みにより機微情報が含まれると判定してよい。
或いは、表示判定部14bは、サーバ10が出力判定処理を実行する場合、生成された出力テーブル11fを参照して、始点の処理部品11aの出力ポートから機微情報が出力されるか否かを判定してもよい。
始点の処理部品11aの出力が機微情報を含まないと判定した場合(ステップC3でNO)、処理が終了する。
一方、始点の処理部品11aの出力が機微情報を含むと判定した場合(ステップC3でYES)、表示判定部14bは、当該処理部品11aからの出力を赤色にする等の上述した手法により、表示態様を変化させると判定する(ステップC4)。
そして、探索部14aは、未判定の処理部品11aがグラフ情報11eに存在するか否かを判定する(ステップC5)。
例えば、探索部14aは、グラフ情報11eを参照して、判定済みの処理部品11aの後段に、未判定の後段処理部品が存在するか否かを判定してよい。また、後段処理部品が存在しない場合、探索部14aは、グラフ情報11eを参照して、判定済みの処理部品11aの前段に接続された処理部品11aに、未判定の他の後段処理部品が存在するか否かを判定してよい。このように、探索部14aは、例えば、グラフアルゴリズムを利用して、子ノードを探索する等の手法により、グラフの始点から終点に向かって順に、未判定の処理部品11aを探索してよい。
図23の例では、探索部14aは、未判定の処理部品11aとして、入力デバイス111の後段処理部品である動体検出116及び顔認証112を特定する。
未判定の処理部品11aがグラフ情報11eに存在しないと判定した場合(ステップC5でNO)、表示出力部14cは、表示判定部14bによる判定結果に応じて、開発画面100上のグラフの表示態様を変更し(ステップC10)、処理が終了する。
未判定の処理部品11aがグラフ情報11eに存在すると判定した場合(ステップC5でYES)、探索部14aは、未判定の処理部品11aをグラフ情報11eから1つ抽出する(ステップC6)。図23の例では、探索部14aは、動体検出116を選択する。
表示判定部14bは、抽出した処理部品11aの出力が、機微情報を含むか否かを判定する(ステップC7)。例えば、表示判定部14bは、抽出した処理部品11aの種類に応じて、出力が機微情報を含むか否かを判定してよい。
一例として、図25に示すように、表示判定部14bは、抽出した処理部品11aが、顔ぼかしフィルタや動体検出フィルタのように機微情報を削除する処理部品11aである場合、機微情報を含まないデータを出力すると判定してよい。なお、動体検出フィルタは、出力ポートによっては機微情報を含む場合もあるため(図10の「動体検出」参照)、表示判定部14bは、グラフ情報11eにおける、抽出した処理部品11aの出力ポートを考慮して判定を行なってよい。
また、表示判定部14bは、処理部品11aから出力されるデータが、機微情報が含まれるデータであるか否かを、データに対応付けられた契約に関する情報や、データの保管場所等に基づいて決定してもよい。例えば、機微情報が処理される場合、データの提供者や個人情報の所有者と、開発者との間で、事前の同意確認や、期間及び保管場所を制限したデータの保存、等の契約が行なわれる場合がある。換言すれば、機微情報であるか否かは、保管場所等の条件、契約に応じて変わる場合がある。
そこで、表示判定部14bは、処理部品11aが処理するデータが、このような事前の取り決めのあるデータか否かを、保管場所や契約等に関する情報に基づき判定してもよい。例えば、表示判定部14bは、事前に同意確認できているデータや制限された保管場所に保存されるデータの場合、処理部品11aから出力されるデータが機微情報を含んでいても、表示態様を変化させないと判定してもよい。
或いは、表示判定部14bは、サーバ10が出力判定処理を実行する場合、生成された出力テーブル11fを参照して、抽出した処理部品11aの出力ポートから機微情報が出力されるか否かを判定してもよい。
抽出した処理部品11aの出力が機微情報を含まないと判定した場合(ステップC7でNO)、表示判定部14bは、表示態様を変化させないと判定し(ステップC9)、処理がステップC5に移行する。
一方、抽出した処理部品11aの出力が機微情報を含むと判定した場合(ステップC7でYES)、表示判定部14bは、当該処理部品11aからの出力を赤色にする等の上述した手法により、表示態様を変化させると判定する(ステップC8)。そして、処理がステップC5に移行する。
図23の例では、表示判定部14bは、図23及び図25に示すように、動体検出116の出力ポート2は機微情報を出力しないため、動体検出116の出力は機微情報を含まないと判定する。この場合、探索部14aは、動体検出116の後段処理部品の探索は抑止し、他の未判定の処理部品11aを探索してもよい。
また、表示判定部14bは、図23及び図26に示すように、顔認証112の出力ポート1は機微情報を入力されると機微情報を出力するため、顔認証112の出力は機微情報を含むと判定する。
或いは、表示判定部14bは、サーバ10が出力判定処理を実行する場合、生成された出力テーブル11fを参照して、動体検出116の出力ポート2、及び、顔認証112の出力ポート2の機微情報(例えば顔情報)の有無を判定してもよい。
なお、図23の例において、探索部14aは、顔認証112の判定後のステップC5及びC6において、顔認証112の後段処理部品としてDB保存113を抽出する。
表示判定部14bは、DB保存113には出力が存在しないため、DB保存113から先(後段)の表示態様の変化は行なわないと判定する。なお、DB保存113には、前段から入力される機微情報がそのまま保存されるため、例えば、DB保存113が健康や医療関係のDBへの保存である場合、ヘルスデータが機微情報になり得る。このように、表示判定部14bは、データの保管場所に応じて、アイコン間のデータに機微情報が含まれるか否かを判定してよい。
DB保存113は、グラフの終点であり、後段処理部品は存在しないため、DB保存113の判定後は、処理がステップC5でNOとなり、表示出力部14cによるグラフの表示態様の変更が行なわれ(図23参照)、処理が終了する。
表示態様の変更では、表示出力部14cは、機微情報が含まれる対応の始点のアイコンと終点のアイコンとの少なくともいずれかの表示態様を変化させてよい。図23の例では、表示出力部14cは、入力デバイス111と動体検出116との間、入力デバイス111と顔認証112との間、及び、顔認証112とDB保存113との間、の表示態様を変化させてよい。
(変更処理の第2実施例)
第2実施例では、評価結果提示部14は、出力テーブル11f及び要否テーブル11gのうち、双方を利用しない場合、又は、要否テーブル11gを利用する場合、の動作例を説明する。図27は、変更処理の動作例を示すフローチャートである。なお、以下の説明において、図22のフローチャートと同様の処理については説明を省略する。
図27に示すように、ステップC6で未判定の処理部品11aが抽出されると、表示判定部14bは、抽出した処理部品11aが機微情報を必要とするか否かを判定する(ステップC11)。例えば、表示判定部14bは、抽出した処理部品11aの種類に応じて、処理部品11aが機微情報を必要とするか否かを判定してよい。
一例として、図26に示すように、表示判定部14bは、抽出した処理部品11aが、顔認証のように機微情報を必要とする処理部品11aである場合、抽出した処理部品11aの入力に機微情報が含まれるか否かに応じて、機微情報の要否を判定してよい。
或いは、表示判定部14bは、サーバ10が要否判定処理を実行する場合、生成された要否テーブル11gを参照して、抽出した処理部品11aが機微情報を必要とするか否かを判定してもよい。
抽出した処理部品11aが機微情報を必要としないと表示判定部14bが判定した場合(ステップC11でNO)、処理がステップC9に移行する。一方、抽出した処理部品11aが機微情報を必要とすると表示判定部14bが判定した場合(ステップC11でYES)、処理がステップC8に移行する。
なお、第2実施例では、探索部14aは、ステップC9において表示態様を変化させないと判定された処理部品11aの後段処理部品を、続くステップC5及びC6で抽出してもよい。
(変更処理の第3実施例)
第3実施例では、評価結果提示部14は、出力テーブル11f及び要否テーブル11gのうち、双方を利用する場合の動作例を説明する。図28は、変更処理の動作例を示すフローチャートである。なお、以下の説明において、図22又は図27のフローチャートと同様の処理については説明を省略する。
図28に示すように、ステップC6で未判定の処理部品11aが抽出されると、表示判定部14bは、抽出した処理部品11aが機微情報を必要とするか否かを判定する(ステップC13)。例えば、表示判定部14bは、生成された要否テーブル11gを参照して、抽出した処理部品11aの入力ポートが機微情報を必要とするか否かを判定する。
抽出した処理部品11aが機微情報を必要としないと判定した場合(ステップC13でNO)、表示判定部14bは、抽出した処理部品11aの出力が機微情報を含むか否かを判定する(ステップC15)。例えば、表示判定部14bは、生成された出力テーブル11fを参照して、抽出した処理部品11aの出力ポートからの出力に機微情報が含まれるか否かを判定する。
出力に機微情報が含まれないと判定した場合(ステップC15でNO)、処理がステップC9に移行する。すなわち、表示判定部14bは、表示態様を変化させないと判定する。
出力に機微情報が含まれると判定した場合(ステップC15でYES)、処理がステップC8に移行する。すなわち、表示判定部14bは、表示態様を変化させると判定する。
図23の例では、表示判定部14bは、動体検出116の入力ポートは機微情報(例えば顔情報)が不要であると判定する(図13の「No.:1」参照)。また、表示判定部14bは、動体検出116の出力ポート2は機微情報を出力しないと判定する(図12の「No.:3」参照)。従って、表示判定部14bは、動体検出116からの出力の表示態様を変化させないと判定する(ステップC9)。
なお、表示判定部14bは、動体検出116の判定後、探索部14aにより抽出されるブザー鳴動117については、機微情報が不要であると判定し、出力ポートがないため、出力に機微情報が含まれないと判定する。
ステップC13において、抽出した処理部品11aが機微情報を必要とすると判定した場合(ステップC13でYES)、表示判定部14bは、抽出した処理部品11aの入力が機微情報を含むか否かを判定する(ステップC14)。例えば、表示判定部14bは、抽出した処理部品11aの前段に接続された処理部品11a(前段処理部品)からの出力に機微情報が含まれるか否かを、以前の判定結果に基づき判定してよい。
入力が機微情報を含まないと判定した場合(ステップC14でNO)、表示判定部14bは、リスク警告を提示すると判定し(ステップC16)、処理がステップC5に移行する。
入力が機微情報を含むと判定した場合(ステップC14でYES)、処理がステップC15に移行する。例えば、上述のように、表示判定部14bは、抽出した処理部品11aの出力が機微情報を含むか否かを判定する。
出力に機微情報が含まれないと判定した場合(ステップC15でNO)、処理がステップC9に移行する。すなわち、表示判定部14bは、表示態様を変化させないと判定する。
出力に機微情報が含まれると判定した場合(ステップC15でYES)、処理がステップC8に移行する。すなわち、表示判定部14bは、表示態様を変化させると判定する。
図23の例では、表示判定部14bは、顔認証112の入力ポートは機微情報(例えば顔情報)が必要であると判定する(図13の「No.:2」参照)。また、表示判定部14bは、顔認証112の出力ポート2は機微情報を出力すると判定する(図12の「No.:5」参照)。従って、表示判定部14bは、顔認証112からの出力の表示態様を変化させると判定する(ステップC8)。
以上のように、一実施形態の一実施例に係る表示態様の変更処理を実行するサーバ10によれば、開発画面100に表示される処理部品11a間の表示態様を、当該処理部品11a間で受け渡しされるデータの機微情報の有無に基づき変化させることができる。これにより、開発者は、アプリケーション110の開発段階において、機微情報に関するリスクを、視覚的な提示によって容易に判断することが可能となる。
換言すれば、評価結果提示部14は、装置に関する情報又は処理に関する情報を示す複数のアイコンを対応付けて開発画面100上に出力する場合に、対応付けされる複数のアイコンによりそれぞれ特定される装置又は処理間で受け渡しが行なわれるデータに機微情報が含まれるか否かに応じて、アイコン間の対応の表示態様を変化させる、表示制御部の一例である。
上述した処理を行なう評価結果提示部14の機能は、他の観点では、図29に例示する表示制御装置140と捉えることもできる。
表示制御装置140は、例示的に、機微情報生成点検出部140a、機微情報除去点検出部140b、機微情報範囲推定部140c、及び、強調表示部140dを備えてよい。また、表示制御装置140は、これらの機能ブロック140a~140dが参照する情報として、処理部品情報11d、グラフ情報11e、出力テーブル11f、及び、要否テーブル11gを備えてよい。
機微情報生成点検出部140a及び機微情報除去点検出部140bは、それぞれ、機微情報が生成される処理部品11a、及び、機微情報が除去される処理部品11aを検出するものであり、探索部14a及び表示判定部14bの一例である。
機微情報範囲推定部140cは、グラフにおいて処理部品11a間で受け渡しされるデータに機微情報が含まれる範囲を推定するものであり、表示判定部14bの一例である。
強調表示部140dは、機微情報範囲推定部140cが推定した範囲内における処理部品11a間の接続線を強調表示(例えば赤色で表示)するものであり、表示出力部14cの一例である。
〔1-6〕変形例
一実施形態に係る機微度評価部13は、機微情報の種類ごとに、処理部品11aが機微情報を出力するか否か、及び、処理部品11aが機微情報を利用するか否かを判定する。変形例に係る評価結果提示部14は、機微情報の種類ごとに、機微度評価部13による評価結果を出力してもよい。
図30は、開発画面100上でのグラフの表示手法の変形例を示す図である。図30に示すように、開発画面100には、表示する機微情報の種類(カテゴリ)を選択するための選択領域101と、選択された種類に対応する評価結果を表示する1以上の表示領域102と、が含まれてよい。
例えば、評価結果提示部14は、選択領域101で「すべて」が選択された場合、機微情報の種類の数に相当する数の表示領域102を開発画面100上に表示し、各表示領域102に対応付けて、機微情報の種類ごとのグラフを表示してよい。各グラフは、機微情報の種類に対応する評価結果に従い表示態様が変更されてよい。
また、評価結果提示部14は、選択領域101でいずれかの機微情報の種類が選択された場合、1つの表示領域102を開発画面100上に表示し、表示領域102に、選択された機微情報に対応する評価結果に従い表示態様が変更されたグラフを表示してよい。
これにより、開発者は、機微情報の種類ごとのリスク判断を容易とすることができる。
〔1-7〕ハードウェア構成例
図31は、サーバ10の機能を実現するコンピュータ30のHW構成例を示すブロック図である。サーバ10の機能を実現するHWリソースとして、複数のコンピュータが用いられる場合は、各コンピュータが図31に例示するHW構成を備えてよい。
図31に示すように、コンピュータ30は、HW構成として、例示的に、プロセッサ30a、メモリ30b、記憶部30c、IF(Interface)部30d、I/O(Input / Output)部30e、及び読取部30fを備えてよい。
プロセッサ30aは、種々の制御や演算を行なう演算処理装置の一例である。プロセッサ30aは、コンピュータ30内の各ブロックとバス30iで相互に通信可能に接続されてよい。なお、プロセッサ30aは、複数のプロセッサを含むマルチプロセッサであってもよいし、複数のプロセッサコアを有するマルチコアプロセッサであってもよく、或いは、マルチコアプロセッサを複数有する構成であってもよい。
プロセッサ30aとしては、例えば、CPU、MPU、GPU、APU、DSP、ASIC、FPGA等の集積回路(IC;Integrated Circuit)が挙げられる。なお、プロセッサ30aとして、これらの集積回路の2以上の組み合わせが用いられてもよい。CPUはCentral Processing Unitの略称であり、MPUはMicro Processing Unitの略称である。GPUはGraphics Processing Unitの略称であり、APUはAccelerated Processing Unitの略称である。DSPはDigital Signal Processorの略称であり、ASICはApplication Specific ICの略称であり、FPGAはField-Programmable Gate Arrayの略称である。
メモリ30bは、種々のデータやプログラム等の情報を格納するHWの一例である。メモリ30bとしては、例えばDRAM(Dynamic Random Access Memory)等の揮発性メモリ、及び、PM(Persistent Memory)等の不揮発性メモリ、の一方又は双方が挙げられる。
記憶部30cは、種々のデータやプログラム等の情報を格納するHWの一例である。記憶部30cとしては、HDD(Hard Disk Drive)等の磁気ディスク装置、SSD(Solid State Drive)等の半導体ドライブ装置、不揮発性メモリ等の各種記憶装置が挙げられる。不揮発性メモリとしては、例えば、フラッシュメモリ、SCM(Storage Class Memory)、ROM(Read Only Memory)等が挙げられる。
また、記憶部30cは、コンピュータ30の各種機能の全部若しくは一部を実現するプログラム30g(情報処理プログラム及び画面表示プログラムの一方又は双方)を格納してよい。例えば、サーバ10のプロセッサ30aは、記憶部30cに格納されたプログラム30gをメモリ30bに展開して実行することにより、図9又は図29に例示するサーバ10としての機能を実現できる。
なお、メモリ30b及び記憶部30cの少なくとも1つが有する記憶領域は、メモリ部11の一例であり、各種情報11a~11gを記憶してよい。
IF部30dは、ネットワークとの間の接続及び通信の制御等を行なう通信IFの一例である。例えば、IF部30dは、イーサネット(登録商標)等のLAN、或いは、FC(Fibre Channel)等の光通信等に準拠したアダプタを含んでよい。当該アダプタは、無線及び有線の一方又は双方の通信方式に対応してよい。例えば、プログラム30gは、当該通信IFを介して、ネットワークからコンピュータ30にダウンロードされ、記憶部30cに格納されてもよい。
I/O部30eは、入力装置、及び、出力装置、の一方又は双方を含んでよい。入力装置としては、例えば、キーボード、マウス、タッチパネル等が挙げられる。出力装置としては、例えば、モニタ、プロジェクタ、プリンタ等が挙げられる。
読取部30fは、記録媒体30hに記録されたデータやプログラムの情報を読み出すリーダの一例である。読取部30fは、記録媒体30hを接続可能又は挿入可能な接続端子又は装置を含んでよい。読取部30fとしては、例えば、USB(Universal Serial Bus)等に準拠したアダプタ、記録ディスクへのアクセスを行なうドライブ装置、SDカード等のフラッシュメモリへのアクセスを行なうカードリーダ等が挙げられる。なお、記録媒体30hにはプログラム30gが格納されてもよく、読取部30fが記録媒体30hからプログラム30gを読み出して記憶部30cに格納してもよい。
記録媒体30hとしては、例示的に、磁気/光ディスクやフラッシュメモリ等の非一時的なコンピュータ読取可能な記録媒体が挙げられる。磁気/光ディスクとしては、例示的に、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク、HVD(Holographic Versatile Disc)等が挙げられる。フラッシュメモリとしては、例示的に、USBメモリやSDカード等の半導体メモリが挙げられる。
上述したコンピュータ30のHW構成は例示である。従って、コンピュータ30内でのHWの増減(例えば任意のブロックの追加や削除)、分割、任意の組み合わせでの統合、又は、バスの追加若しくは削除等は適宜行なわれてもよい。例えば、サーバ10において、I/O部30e及び読取部30fの少なくとも一方は、省略されてもよい。
なお、情報処理端末の一例である端末装置20の機能は、上述したコンピュータ30と同様のHW構成により実現されてもよい。例えば、端末装置20のプロセッサ30aは、記憶部30cに格納されたプログラム30gをメモリ30bに展開して実行することにより、端末装置20としての機能を実現できる。
〔2〕その他
上述した一実施形態に係る技術は、以下のように変形、変更して実施することができる。
例えば、図9及び図29に示す各機能ブロックは、それぞれ任意の組み合わせで併合してもよく、分割してもよい。
また、上述した一実施形態及び変形例では、機微情報が映像であるものとしたが、これに限定されるものではない。機微情報は、例えば、個人情報が含まれる文字列であってもよいし、個人情報が含まれる音(例えば音声)であってもよい。処理部品11a及びフィルタ11cは、機微情報の形態に応じた処理を行なえばよい。例えば、機微情報が文字列又は音である場合、処理部品11a及びフィルタ11cは、文字列又は音に対する、加工、検出、除去等の処理を行なうモジュールであってよい。
さらに、一実施形態及び変形例では、機微度評価部13が機微情報の種類ごとに評価を行ない、変形例では、評価結果提示部14が機微情報の種類ごとにグラフの表示を行なうものとしたが、これに限定されるものではなく、機微情報は1種類であってもよい。
〔3〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
(付記1)
機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出し、
前記第1のデータに対して機微情報を消失させるための第2の処理を実行した第3のデータに対し、前記第1の処理を実行して第4のデータを出力し、
前記第2のデータと前記第4のデータとの比較結果に基づいて前記第1の処理が機微情報を利用する処理であるか否かを判定する、
処理をコンピュータに実行させることを特徴とする情報処理プログラム。
(付記2)
前記第2のデータと前記第4のデータとが異なる場合に、前記第1の処理は機微情報を利用する処理であると判定する、
処理を前記コンピュータに実行させることを特徴とする付記1に記載の情報処理プログラム。
(付記3)
前記第1のデータに対する前記第1の処理の指定を受け付け、前記第1の処理が前記機微情報を利用する処理である場合にアラートを出力する、
処理を前記コンピュータに実行させることを特徴とする付記1又は付記2に記載の情報処理プログラム。
(付記4)
前記第1のデータに対する前記第1の処理の指定を受け付け、前記第1の処理が前記機微情報を利用しない処理である場合に、前記第1のデータから前記機微情報を除去するための第2の処理に関する情報を出力する、又は、前記第1のデータに対する前記第2の処理を実行する、
処理を前記コンピュータに実行させることを特徴とする付記1又は付記2に記載の情報処理プログラム。
(付記5)
機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出し、
前記第1のデータに対して機微情報を消失させるための第2の処理を実行した第3のデータに対し、前記第1の処理を実行して第4のデータを出力し、
前記第2のデータと前記第4のデータとの比較結果に基づいて前記第1の処理が機微情報を利用する処理であるか否かを判定する、
処理をコンピュータが実行することを特徴とする情報処理方法。
(付記6)
前記第2のデータと前記第4のデータとが異なる場合に、前記第1の処理は機微情報を利用する処理であると判定する、
処理を前記コンピュータが実行することを特徴とする付記5に記載の情報処理方法。
(付記7)
前記第1のデータに対する前記第1の処理の指定を受け付け、前記第1の処理が前記機微情報を利用する処理である場合にアラートを出力する、
処理を前記コンピュータが実行することを特徴とする付記5又は付記6に記載の情報処理方法。
(付記8)
前記第1のデータに対する前記第1の処理の指定を受け付け、前記第1の処理が前記機微情報を利用しない処理である場合に、前記第1のデータから前記機微情報を除去するための第2の処理に関する情報を出力する、又は、前記第1のデータに対する前記第2の処理を実行する、
処理を前記コンピュータが実行することを特徴とする付記5又は付記6に記載の情報処理方法。
(付記9)
機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出する抽出部と、
前記第1のデータに対して機微情報を消失させるための第2の処理を実行した第3のデータに対し、前記第1の処理を実行して第4のデータを出力する出力部と、
前記第2のデータと前記第4のデータとの比較結果に基づいて前記第1の処理が機微情報を利用する処理であるか否かを判定する判定部と、
を備えることを特徴とする情報処理装置。
(付記10)
前記判定部は、前記第2のデータと前記第4のデータとが異なる場合に、前記第1の処理は機微情報を利用する処理であると判定する、
ことを特徴とする付記9に記載の情報処理装置。
(付記11)
前記第1のデータに対する前記第1の処理の指定を受け付け、前記第1の処理が前記機微情報を利用する処理である場合にアラートを出力するアラート部、
を備えることを特徴とする付記9又は付記10に記載の情報処理装置。
(付記12)
前記第1のデータに対する前記第1の処理の指定を受け付け、前記第1の処理が前記機微情報を利用しない処理である場合に、前記第1のデータから前記機微情報を除去するための第2の処理に関する情報を出力する、又は、前記第1のデータに対する前記第2の処理を実行するアラート部、
を備えることを特徴とする付記9又は付記10に記載の情報処理装置。
1 アプリ開発システム
10 サーバ
11 メモリ部
11a 処理部品
11b データ
11c フィルタ
11d 処理部品情報
11e グラフ情報
11f 出力テーブル
11g 要否テーブル
12 情報管理部
12a 処理部品管理部
12b グラフ管理部
12c リスク対策部
13 機微度評価部
13a 実行部
13b 判定部
13c 情報登録部
14 評価結果提示部
14a 探索部
14b 表示判定部
14c 表示出力部
20 端末装置
30 コンピュータ
100 開発画面
140 表示制御装置
140a 機微情報生成点検出部
140b 機微情報除去点検出部
140c 機微情報範囲推定部
140d 強調表示部

Claims (6)

  1. 機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出し、
    前記第1のデータに対して機微情報を消失させるための第2の処理を実行した第3のデータに対し、前記第1の処理を実行して第4のデータを出力し、
    前記第2のデータと前記第4のデータとの比較結果に基づいて前記第1の処理が機微情報を利用する処理であるか否かを判定する、
    処理をコンピュータに実行させることを特徴とする情報処理プログラム。
  2. 前記第2のデータと前記第4のデータとが異なる場合に、前記第1の処理は機微情報を利用する処理であると判定する、
    処理を前記コンピュータに実行させることを特徴とする請求項1に記載の情報処理プログラム。
  3. 前記第1のデータに対する前記第1の処理の指定を受け付け、前記第1の処理が前記機微情報を利用する処理である場合にアラートを出力する、
    処理を前記コンピュータに実行させることを特徴とする請求項1又は請求項2に記載の情報処理プログラム。
  4. 前記第1のデータに対する前記第1の処理の指定を受け付け、前記第1の処理が前記機微情報を利用しない処理である場合に、前記第1のデータから前記機微情報を除去するための第2の処理に関する情報を出力する、又は、前記第1のデータに対する前記第2の処理を実行する、
    処理を前記コンピュータに実行させることを特徴とする請求項1又は請求項2に記載の情報処理プログラム。
  5. 機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出し、
    前記第1のデータに対して機微情報を消失させるための第2の処理を実行した第3のデータに対し、前記第1の処理を実行して第4のデータを出力し、
    前記第2のデータと前記第4のデータとの比較結果に基づいて前記第1の処理が機微情報を利用する処理であるか否かを判定する、
    処理をコンピュータが実行することを特徴とする情報処理方法。
  6. 機微情報を含む第1のデータに対する第1の処理を実行して第2のデータを抽出する抽出部と、
    前記第1のデータに対して機微情報を消失させるための第2の処理を実行した第3のデータに対し、前記第1の処理を実行して第4のデータを出力する出力部と、
    前記第2のデータと前記第4のデータとの比較結果に基づいて前記第1の処理が機微情報を利用する処理であるか否かを判定する判定部と、
    を備えることを特徴とする情報処理装置。
JP2020008176A 2020-01-22 2020-01-22 情報処理プログラム、情報処理方法、及び情報処理装置 Active JP7283404B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2020008176A JP7283404B2 (ja) 2020-01-22 2020-01-22 情報処理プログラム、情報処理方法、及び情報処理装置
EP20210619.1A EP3855332B1 (en) 2020-01-22 2020-11-30 Information processing program, information processing method, and information processing apparatus to determine whether a process uses sensitive information
CN202011373163.6A CN113158222A (zh) 2020-01-22 2020-11-30 计算机可读记录介质、信息处理方法和信息处理设备
US17/108,627 US11797707B2 (en) 2020-01-22 2020-12-01 Non-transitory computer-readable recording medium having stored therein information processing program, information processing method, and information processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020008176A JP7283404B2 (ja) 2020-01-22 2020-01-22 情報処理プログラム、情報処理方法、及び情報処理装置

Publications (2)

Publication Number Publication Date
JP2021117516A JP2021117516A (ja) 2021-08-10
JP7283404B2 true JP7283404B2 (ja) 2023-05-30

Family

ID=73646166

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020008176A Active JP7283404B2 (ja) 2020-01-22 2020-01-22 情報処理プログラム、情報処理方法、及び情報処理装置

Country Status (4)

Country Link
US (1) US11797707B2 (ja)
EP (1) EP3855332B1 (ja)
JP (1) JP7283404B2 (ja)
CN (1) CN113158222A (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011076504A (ja) 2009-09-30 2011-04-14 Brother Industries Ltd 仮想マシン、仮想マシンのプログラム、アプリケーションサービス提供システム及びアプリケーションサービス提供方法
JP2013232146A (ja) 2012-05-01 2013-11-14 Kddi Corp アプリケーション解析装置、アプリケーション解析システム、およびプログラム
JP2014123298A (ja) 2012-12-21 2014-07-03 Fujitsu Ltd 情報管理プログラム及び情報管理方法
JP2015228049A (ja) 2014-05-30 2015-12-17 ブラザー工業株式会社 制御プログラム、および情報処理装置
JP2018072957A (ja) 2016-10-25 2018-05-10 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 画像加工方法、画像加工システム及びプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7941859B2 (en) * 2004-06-23 2011-05-10 International Business Machines Corporation Reducing access to sensitive information
US8893280B2 (en) * 2009-12-15 2014-11-18 Intel Corporation Sensitive data tracking using dynamic taint analysis
JP2016194755A (ja) * 2015-03-31 2016-11-17 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
CN105069022A (zh) * 2015-07-16 2015-11-18 柳州六品科技有限公司 具有隐私保护功能的基于网络的信息恢复方法
US10079835B1 (en) * 2015-09-28 2018-09-18 Symantec Corporation Systems and methods for data loss prevention of unidentifiable and unsupported object types
US9940479B2 (en) * 2015-10-20 2018-04-10 International Business Machines Corporation Identifying and tracking sensitive data
JP6419749B2 (ja) 2016-04-05 2018-11-07 株式会社東芝 撮影システムおよび画像や映像の表示方法
JP2019098575A (ja) 2017-11-30 2019-06-24 コニカミノルタ株式会社 画像処理装置、端末装置及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011076504A (ja) 2009-09-30 2011-04-14 Brother Industries Ltd 仮想マシン、仮想マシンのプログラム、アプリケーションサービス提供システム及びアプリケーションサービス提供方法
JP2013232146A (ja) 2012-05-01 2013-11-14 Kddi Corp アプリケーション解析装置、アプリケーション解析システム、およびプログラム
JP2014123298A (ja) 2012-12-21 2014-07-03 Fujitsu Ltd 情報管理プログラム及び情報管理方法
JP2015228049A (ja) 2014-05-30 2015-12-17 ブラザー工業株式会社 制御プログラム、および情報処理装置
JP2018072957A (ja) 2016-10-25 2018-05-10 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America 画像加工方法、画像加工システム及びプログラム

Also Published As

Publication number Publication date
US11797707B2 (en) 2023-10-24
US20210224417A1 (en) 2021-07-22
CN113158222A (zh) 2021-07-23
JP2021117516A (ja) 2021-08-10
EP3855332B1 (en) 2023-11-29
EP3855332A1 (en) 2021-07-28

Similar Documents

Publication Publication Date Title
US10476904B2 (en) Non-transitory recording medium recording cyber-attack analysis supporting program, cyber-attack analysis supporting method, and cyber-attack analysis supporting apparatus
US9710300B2 (en) Flow topology of computer transactions
CN109871691A (zh) 基于权限的进程管理方法、系统、设备及可读存储介质
US20230020646A1 (en) Methods and Apparatus for Finding Long Methods in Code
US20140188921A1 (en) Identifying confidential data in a data item by comparing the data item to similar data items from alternative sources
US20190278992A1 (en) System for maintenance and repair using augmented reality
US10482240B2 (en) Anti-malware device, anti-malware system, anti-malware method, and recording medium in which anti-malware program is stored
US20130283296A1 (en) Method and system for generating a service definition based on service activity events
US8286087B1 (en) Active route validation in workflow process authoring
US20170372066A1 (en) Detecting harmful applications prior to installation on a user device
JP7283404B2 (ja) 情報処理プログラム、情報処理方法、及び情報処理装置
US20130275939A1 (en) Efficient file system object-based deduplication
EP3855333A1 (en) Information processing program, information processing method, and information processing apparatus to determine whether a process uses sensitive information
WO2020250320A1 (ja) 操作ログ取得装置、操作ログ取得方法および操作ログ取得プログラム
EP3855331A1 (en) Screen displaying program, method for screen displaying, and screen displaying apparatus
US11775654B2 (en) Anomaly detection with impact assessment
US10970415B2 (en) Sensitive data redaction in memory dump
US11163942B1 (en) Supporting document and cross-document post-processing configurations and runtime execution within a single cartridge
JP7211427B2 (ja) 情報処理装置、制御方法、及びプログラム
JP2010231568A (ja) イベント判別装置、イベント判別プログラム、イベント判別方法
JP5918102B2 (ja) 解析システム、解析装置、解析方法及び解析プログラム
WO2022195739A1 (ja) 活動痕跡抽出装置、活動痕跡抽出方法および活動痕跡抽出プログラム
US9613446B2 (en) Obscured relationship data within a graph
US10360501B2 (en) Real-time capture and translation of human thoughts and ideas into structured patterns
JP6880580B2 (ja) 課題推定装置、課題推定方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220908

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230412

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230418

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230501

R150 Certificate of patent or registration of utility model

Ref document number: 7283404

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150