(57)【要約】【課題】改竄の有無を検証することができる情報処理装置、情報処理プログラム、情報処理システム及び情報処理方法を提供することを目的としている。【解決手段】帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを動的に組み込む機器制御組込部と、前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納するデータ取得部と、前記機器から取得したデータを、前記入力欄記述子と対応付けて保護記憶領域へ格納する情報出力部と、を有する。【選択図】図１
2018054503.tif 000002
【特許請求の範囲】
【請求項１】
帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを動的に組み込む機器制御組込部と、
前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納するデータ取得部と、
前記機器から取得したデータを、前記入力欄記述子と対応付けて保護記憶領域へ格納する情報出力部と、を有する情報処理装置。
【請求項２】
前記記憶領域は、格納されたデータの編集が可能な記憶領域であり、前記保護記憶領域は、格納されたデータの編集が禁止された記憶領域である、請求項１記載の情報処理装置。
【請求項３】
前記機器制御組込部は、
前記入力欄を含む帳票画面の定義として記述された画面定義情報において、保護指定子により、前記機器から取得したデータが保護対象とされていた場合に、前記情報出力部により、前記機器から取得したデータと、前記入力欄記述子とを前記保護記憶領域へ格納させる、請求項２記載の情報処理装置。
【請求項４】
入力欄記述子と、前記入力欄記述子と対応する入力欄に入力されたデータとを取得し、前記入力されたデータの信頼度を算出する信頼度算出部を有し、
前記信頼度算出部は、
前記機器のハードウェアに関する信頼度を示すハードウェア種別情報と、前記機器制御モジュールに関する信頼度を示すソフトウェア種別情報と、前記機器の利用者に関する信頼度を示すユーザ種別情報と、に基づき、前記データの信頼度を算出し、
前記保護記憶領域において、前記入力欄記述子と一致する入力欄記述子に、前記信頼度とを対応付けて格納する、請求項３記載の情報処理装置。
【請求項５】
前記帳票画面の表示要求を受けて、前記帳票画面を表示させる帳票生成部を有し、
前記帳票生成部は、
前記画面定義情報から、入力欄を特定する入力欄記述子を抽出し、前記保護記憶領域において、前記入力欄記述子と対応付けられたデータを、前記帳票画面の前記入力欄に表示させる、請求項４記載の情報処理装置。
【請求項６】
帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを動的に組み込む処理と、
前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納する処理と、
前記機器から取得したデータを、前記入力欄記述子と対応付けて保護記憶領域へ格納する処理と、をコンピュータに実行させる情報処理プログラム。
【請求項７】
情報処理装置と、サーバ装置とを有する情報処理システムであって、
前記情報処理装置は、
帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを前記サーバ装置から動的に組み込む機器制御組込部と、
前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納するデータ取得部と、
前記機器から取得したデータを、前記入力欄記述子と、を前記サーバ装置へ送信し、
前記サーバ装置は、前記機器から取得したデータを、前記入力欄記述子と、を対応付けて、保護記憶領域へ格納する、情報処理システム。
【請求項８】
コンピュータによる情報処理方法であって、該コンピュータが、
帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを動的に組み込み、
前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納し、
前記機器から取得したデータを、前記入力欄記述子と対応付けて保護記憶領域へ格納する、情報処理方法。
【請求項９】
帳票画面を表示させる帳票処理部と情報の送受信を行う送受信部と、
前記帳票画面の入力欄に入力されたデータを、前記入力欄を特定する入力欄記述子と対応付けて、データ格納後の編集が禁止された所定の記憶領域に格納する情報出力部と、
を有し、
前記送受信部は、
前記帳票画面の入力欄に入力されたデータを取得すると、前記データを前記帳票処理部へ送信し、
前記帳票処理部から、前記入力欄を特定する入力欄記述子を受信すると、前記所定の記憶領域において、前記入力欄記述子と対応付けられたデータを前記帳票処理部へ送信する、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理プログラム、情報処理システム及び情報処理方法に関する。
【背景技術】
【０００２】
近年では、工場や医療の現場で使用する機器のデジタル化により、各種の機器により測定された測定値を帳票に反映させる、データ入力の自動化技術が知られている。
【０００３】
また、従来では、入力された測定値の改竄を防止するための工夫が成されている。具体的には、例えば、測定値を帳票に入力した際の位置情報と日時情報を帳票に自動的に記述することで、別の場所、別の日時において帳票の不正な編集を抑制することが知られている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−０８５２３９号公報
【特許文献２】特開２００９−１５１６１０号公報
【特許文献１】特開２００２−２６７５７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
データ入力の自動化において、入力されたデータの編集を禁止した場合、例えば操作ミス等により誤ったデータが入力された際に不便な場合がある。しかしながら、入力されたデータの編集を可能とすると、データの改竄の検証が困難となる可能性がある。
【０００６】
開示の技術は、改竄の有無を検証することができる情報処理装置、情報処理プログラム、情報処理システム及び情報処理方法を提供することを目的としている。
【課題を解決するための手段】
【０００７】
開示の技術は、帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを動的に組み込む機器制御組込部と、前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納するデータ取得部と、前記機器から取得したデータを、前記入力欄記述子と対応付けて保護記憶領域へ格納する情報出力部と、を有する情報処理装置である。
【０００８】
上記各部は、上記各部を手順、上記各部を実現する処理としてコンピュータにより実行させる方法、プログラムを記憶したコンピュータ読み取り可能な記憶媒体とすることもできる。
【発明の効果】
【０００９】
改竄の有無を検証することができる。
【図面の簡単な説明】
【００１０】
【図１】第一の実施形態の概要について説明する図である。
【図２】第一の実施形態の帳票システムのシステム構成を説明する図である。
【図３】第一の実施形態の機器情報データベースを説明する図である。
【図４】ドライバデータベースの一例を説明する図である。
【図５】第一の実施形態の端末装置のハードウェア構成の一例を示す図である。
【図６】第一の実施形態の端末装置の機能を説明する図である。
【図７】第一の実施形態の保護情報を示す記述の一例を示す図である。
【図８】第一の実施形態の保護情報記憶部の一例を示す図である。
【図９】帳票生成部の機能を説明する図である。
【図１０】第一の実施形態の端末装置の動作を説明する第一のシーケンス図である。
【図１１】第一の実施形態の端末装置の動作を説明する第二のシーケンス図である。
【図１２】第一の実施形態の端末装置の動作を説明する第二のシーケンス図である。
【図１３】記述子抽出部、機器情報取得部、機器発見部、機器制御組込部の処理を説明するフローチャートである。
【図１４】機器入力用ドライバの動作を説明するフローチャートである。
【図１５】手入力用ドライバの動作を説明するフローチャートである。
【図１６】保護情報出力部の処理を説明するフローチャートである。
【図１７】データ取得部の処理を説明するフローチャートである。
【図１８】信頼度算出部の処理を説明するフローチャートである。
【図１９】保護領域生成部の処理を説明するフローチャートである。
【図２０】帳票生成部の処理を説明するフローチャートである。
【図２１】第一の実施形態の帳票プログラムにおけるデータの入力に関する記述を説明する図である。
【図２２】第一の実施形態の帳票プログラムにおけるデータの出力に関する記述を説明する図である。
【図２３】第一の実施形態の閲覧画面が表示された例を示す第一の図である。
【図２４】第一の実施形態の閲覧画面が表示された例を示す第二の図である。
【図２５】第二の実施形態の端末装置の機能を説明する図である。
【図２６】第二の実施形態の閲覧画面が表示された例を示す第一の図である。
【図２７】第二の実施形態の閲覧画面が表示された例を示す第二の図である。
【図２８】第二の実施形態の保護情報を説明する図である。
【図２９】第二の実施形態の保護情報記憶部の一例を示す図である。
【図３０】第三の実施形態の端末装置の機能を説明する図である。
【発明を実施するための形態】
【００１１】
（第一の実施形態）
以下に図面を参照して第一の実施形態について説明する。図１は、第一の実施形態の概要について説明する図である。
【００１２】
本実施形態の端末装置１００は、入力されたデータを２つの記憶領域に同時に記録するようにし、編集された後でもそれが適切なものであったかどうかを後から検証できるようにする。２つの記憶領域とは、記録されたデータの編集が可能な記憶領域と、記憶されたデータの編集が禁止された記憶領域である。
【００１３】
本実施形態の端末装置１００は、端末装置１００にインストールされた帳票プログラムにより、上述の処理を実現する。
【００１４】
図１の例では、端末装置１００に帳票型の入力画面１０１が表示されており、入力画面１０１は、利用機器２００で測定されたデータが入力される入力欄１０２を含んでいる。また、図１の例では、利用機器２００を体重計である。
【００１５】
したがって、入力画面１０１では、入力欄１０２に、利用機器２００で測定された体重がデータとして入力される。
【００１６】
ここで、本実施形態では、入力欄１０２に利用機器２００で測定されたデータが入力されると、このデータを入力データ記憶部３００と、保護情報記憶部４００のそれぞれに記憶する。
【００１７】
より具体的には、端末装置１００は、入力画面１０１を定義する画面定義情報において、入力されたデータを保護対象とする保護指定子が記述されていた場合に、入力欄１０２に入力されたデータを入力データ記憶部３００及び保護情報記憶部４００に記憶する。
【００１８】
入力データ記憶部３００は、格納されたデータの編集が可能な記憶領域であり、保護情報記憶部４００は、格納されたデータの編集が不可能な記憶領域である。
【００１９】
入力データ記憶部３００には、少なくとも、入力欄１０２を特定する入力欄記述子と、入力されたデータとが入力データとして格納される。また、保護情報記憶部４００には、少なくとも、入力欄１０２を特定する入力欄記述子と、入力されたデータと、このデータの信頼度とが保護情報として格納される。
【００２０】
本実施形態では、以上のように、入力されたデータを、格納後のデータが編集可能な入力データ記憶部３００と、格納後のデータの編集が不可能な保護情報記憶部４００の両方に格納する。したがって、本実施形態では、各記憶部に格納されたデータを比較することで、データの格納後の改竄の有無を検証することができる。
【００２１】
尚、図１では、利用機器２００を体重計とした例を示しているが、利用機器はこれに限定されない。
【００２２】
また、本実施形態では、利用機器２００により測定されたデータを、利用機器２００から自動的に入力欄１０２へ入力させることができる。
【００２３】
本実施形態の端末装置１００では、帳票プログラムは、利用機器２００を特定する機器記述子を含んでいる。
【００２４】
本実施形態の端末装置１００は、この機器記述子から得られる利用機器２００の機器情報に基づき利用機器２００の存在を検出し、利用機器２００の機器制御モジュールを取得して組み込み、利用機器２００からデータが自動的に入力されるようにした。
【００２５】
端末装置１００は、利用機器２００と対応する機器入力用ドライバを組み込むと、予め定義された画面定義にしたがって、利用機器２００から取得したデータが入力される入力画面１０１をディスプレイ１０３に表示させる。次に、端末装置１００は、利用機器２００において、体重が測定されると、利用機器２００が測定した体重（データ）を入力欄１０２に自動的に入力させる。よって、本実施形態では、利用機器２００からのデータの動的入力を容易にする。
【００２６】
端末装置１００は、入力欄１０２に自動的に入力されたデータを、機器記述子と、入力欄記述子と、対応付けて、入力データ記憶部３００へ格納する。また、端末装置１００は、入力欄１０２に自動的に入力されたデータを、機器記述子と、入力欄記述子と、データの信頼度と対応付けて、保護情報記憶部４００へ格納する。
【００２７】
尚、本実施形態の機器制御モジュールは、利用機器を作動させるために必要となるソフトウェアであり、機器入力用ドライバを意味する。以下の説明では、機器制御モジュールを機器入力用ドライバと呼ぶ。
【００２８】
また、本実施形態では、端末装置１００に対して、利用機器２００で測定されたデータを利用者が手入力することもできる。
【００２９】
この場合、端末装置１００は、入力欄１０２に直接入力されたデータを、入力欄記述子と対応付けて入力データ記憶部３００に格納する。また、端末装置１００は、入力欄１０２に直接入力されたデータを、入力欄記述子と信頼度と対応付けて保護情報記憶部４００に格納する。
【００３０】
つまり、入力データ記憶部３００と保護情報記憶部４００に格納される情報は、入力欄１０２にデータが手入力により直接入力された場合には、データに機器記述子が対応付けられていない情報となる。
【００３１】
よって、本実施形態では、入力データ記憶部３００と保護情報記憶部４００のそれぞれに格納されたデータが、利用機器２００から自動的に入力されたデータであるのか、端末装置１００に対して手入力されたデータであるのかを判別することができる。
【００３２】
以下に、図面を参照して第一の実施形態の帳票システムについて説明する。図２は、第一の実施形態の帳票システムのシステム構成を説明する図である。
【００３３】
本実施形態の帳票システム１０は、端末装置１００と、サーバ装置５００とを有する情報処理システムの１つである。
【００３４】
本実施形態の端末装置１００には、帳票プログラム１１０がインストールされており、利用機器２００が取得したデータを、端末装置１００に表示された入力画面の入力欄に挿入する。挿入されたデータは、例えば端末装置１００の有する各種のテーブル等に格納されても良いし、端末装置１００における各種の処理に用いられても良い。
【００３５】
本実施形態のサーバ装置５００は、機器情報データベース５１０とドライバデータベース５２０と、を有する。
【００３６】
機器情報データベース５１０は、利用機器２００のそれぞれの機器情報が格納される。機器情報は、例えば利用機器２００と対応する機器制御モジュールを取得する際のアクセス先等を含む情報である。ドライバデータベース５２０は、利用機器２００のそれぞれのドライバ（ドライバ情報）が格納されている。
【００３７】
本実施形態の機器情報データベース５１０とドライバデータベース５２０は、例えばサーバ装置５００の補助記憶装置等に設けられていても良い。また、本実施形態の機器情報データベース５１０とドライバデータベース５２０は、端末装置１００に設けられていても良い。
【００３８】
以下に、図３及び図４を参照し、サーバ装置５００の有する各データベースについて説明する。
【００３９】
図３は、第一の実施形態の機器情報データベースを説明する図である。図３では、機器情報データベース５１０に格納された機器情報の一例を示している。
【００４０】
図３に示す機器情報５１０−１は、キー（項目）と、その値とを対応付けた形式で記述されている。
【００４１】
記述５１０−２において、ｄｉｄの値は、機器を識別子する機器記述子を示しており、記述５１０−２では、体重計を示す識別子""／ｗｓｃａｌｅ"が対応付けられている。
【００４２】
記述５１０−３において、ｓｃａｎの値は、通信に使用される無線の種別を示しており、記述５１０−２では、ｔｙｐｅとして、ＢＬＥ（Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ）が対応付けられている。
【００４３】
記述５１０−４は、利用機器を特定するためのフィールド情報を示しており、記述５１０−４では、フィールド情報はｕｕｉｄ＿１６であり、このフィールド情報で特定されるフィールドの値が０ｘ１８１ｄであることを示している。
【００４４】
記述５１０−５では、機器記述子と対応する利用機器のドライバの取得先が記述されている。
【００４５】
尚、機器情報５１０−１では、無線の種別を示す値は、ＢＬＥ以外にも、Ｂｌｕｅｔｏｏｔｈ(登録商標)や無線ＬＡＮ（Local Area Network）等の無線規格を指定することができる。また、記述５１０−３において、ｓｃａｎの値は、通信が有線で行われる場合には、有線の種別を示しても良い。有線の通信とは、例えば、ＵＳＢ（Universal Serial Bus）による通信や、有線ＬＡＮ等による通信である。ＵＳＢによる通信では、デバイスクラスにより利用機器が特定され、有線ＬＡＮによる通信の場合には、ＩＰアドレスにより利用機器が特定される。
【００４６】
また、機器情報５１０−１では、利用機器を特定するためのフィールド情報として、ｕｕｉｄ＿１６以外にも、ＭＡＣ（Media Access Control）アドレスやアクセスポイントアドレス等も指定できる。
【００４７】
図４は、ドライバデータベースの一例を説明する図である。図４では、ドライバデータベース５２０に格納されたドライバ情報５２０−１をドライバ情報の一例として示している。
【００４８】
図４に示すドライバ情報５２０−１において、記述５２０−２は、ドライバのメタ情報を記述した情報である。記述５２０−３は、利用機器２００の制御のためのドライバプログラムである。記述５２０−４は、利用機器２００の制御に伴う画面表示部品を示している。記述５２０−５は、利用機器２００の存在が検知されたことを画面に表示するために使用するドライバアイコンを示している。
【００４９】
本実施形態のドライバ情報とは、上述した記述５２０−２、５２０−３、５２０−４、５２０−５を１つのパッケージにしたものである。
【００５０】
次に、本実施形態の端末装置１００について説明する。図５は、第一の実施形態の端末装置のハードウェア構成の一例を示す図である。
【００５１】
本実施形態の端末装置１００は、それぞれバスＢで相互に接続されている表示操作装置１１、ドライブ装置１２、補助記憶装置１３、メモリ装置１４、演算処理装置１５及びインターフェイス装置１６を含む情報処理装置である。
【００５２】
表示操作装置１１は、各種の情報の入力と、各種の情報の出力（表示）の機能を実現するタッチパネル等である。インターフェイス装置１６は、モデム、ＬＡＮカード等を含み、ネットワークに接続する為に用いられる。
【００５３】
帳票プログラムは、端末装置１００を制御する各種プログラムの少なくとも一部である。帳票アプリケーションは例えば記憶媒体１７の配布やネットワークからのダウンロードなどによって提供される。帳票プログラムを記録した記憶媒体１７は、ＣＤ−ＲＯＭ、フレキシブルディスク、光磁気ディスク等の様に情報を光学的、電気的或いは磁気的に記録する記憶媒体、ＲＯＭ、フラッシュメモリ等の様に情報を電気的に記録する半導体メモリ等、様々なタイプの記憶媒体を用いることができる。
【００５４】
また、帳票プログラムは、帳票プログラムを記録した記憶媒体１７がドライブ装置１２にセットされると記憶媒体１７からドライブ装置１２を介して補助記憶装置１３にインストールされる。ネットワークからダウンロードされた帳票プログラムは、インターフェイス装置１６を介して補助記憶装置１３にインストールされる。
【００５５】
補助記憶装置１３は、インストールされた帳票プログラムを格納すると共に、必要なファイル、データ等を格納する。メモリ装置１４は、コンピュータの起動時に補助記憶装置１３から帳票プログラムを読み出して格納する。そして、演算処理装置１５はメモリ装置１４に格納された帳票プログラムに従って、後述するような各種処理を実現している。
【００５６】
また、本実施形態の端末装置１００は、一般的なノート型のコンピュータであっても良い。その場合、表示操作装置１１の代わりに、入力装置と出力装置を有していても良い。また、本実施形態のサーバ装置５００は、演算処理装置とメモリ装置を有する一般的なコンピュータであり、そのハードウェア構成は、図５に示す端末装置１００と同様であるから、説明を省略する。
【００５７】
次に、図６を参照して本実施形態の端末装置１００の機能について説明する。図６は、第一の実施形態の端末装置の機能を説明する図である。
【００５８】
本実施形態の端末装置１００は、帳票プログラム１１０が演算処理装置１５に実行されることで、以下の各部の機能を実現している。
【００５９】
本実施形態の帳票プログラム１１０は、画面定義情報記述部１２０、帳票処理部１３０、記憶部１４０を有する。
【００６０】
画面定義情報記述部１２０は、端末装置１００における入力画面の表示方法やレイアウトの記述を含む。帳票処理部１３０は、帳票の内部的な処理の記述を含む。
【００６１】
本実施形態の画面定義情報記述部１２０に記述された画面定義情報は、機器記述子１２１、入力欄記述子１２２、保護指定子１２３を含む。
【００６２】
機器記述子１２１は、利用機器２００を特定する機器ＩＤに相当する。入力欄記述子１２２は、入力画面におけるデータの入力欄を特定する入力欄ＩＤに相当する。保護指定子１２３は、入力されたデータを保護対象とするか否かを示す。
【００６３】
本実施形態では、保護指定子１２３により、保護対象とされないデータは、保護情報記憶部４００には格納されず、入力データ記憶部３００にのみ格納される。尚、保護指定子は明記されていても良いし、機器記述子が存在すれば保護指定子が明記されていると判断しても良い。
【００６４】
本実施形態の帳票処理部１３０は、記述子抽出部１３１、機器情報取得部１３２、機器発見部１３３、機器制御組込部１３４、データ取得部１３５、信頼度算出部１３６、保護情報出力部１３７、保護領域生成部１３８、帳票生成部１３９、出力部１６０を有する。
【００６５】
記述子抽出部１３１は、画面定義情報から機器記述子１２１、入力欄記述子１２２を抽出する。
【００６６】
機器情報取得部１３２は、機器記述子をキーとして、機器情報データベース５１０を検索し、後述する機器探索に用いる機器情報を取得する。尚、本実施形態の機器情報取得部１３２は、例えば、端末装置１００において、データの自動入力が選択された場合に、機器情報を取得する処理を行っても良い。
【００６７】
機器発見部１３３は、取得した機器情報に基づき、端末装置１００の周辺にある利用機器を探索し、存在を検知する。
【００６８】
機器制御組込部１３４は、ドライバデータベース５２０を参照し、存在を検知した利用機器を制御するための機器入力用ドライバ（機器制御モジュール）１４１を取得し、端末装置１００に組み込む。言い換えれば、本実施形態の機器制御組込部１３４は、動的に機器入力用ドライバを取得して端末装置１００に組み込む。
【００６９】
また、機器制御組込部１３４は、保護指定子１２３により、データが保護対象とされているか否かを判定し、保護対象とされていた場合、保護情報出力部１３７を呼び出すための記述を機器入力用ドライバ１４１や手入力用ドライバ１４２に組み込む。
【００７０】
データ取得部１３５は、機器入力用ドライバ１４１が組み込まれた場合には、機器入力用ドライバ１４１を利用して機器制御命令を利用機器２００へ送信し、利用機器２００からデータを取得する。また、データ取得部１３５は、端末装置１００において、手入力による入力が選択された場合には、端末装置１００の有する表示操作装置１１等により入力されたデータを取得する。
【００７１】
また、データ取得部１３５は、取得したデータを、機器記述子１２１や入力欄記述子１２２と対応付けた入力データとして、入力データ記憶部３００に格納する。
【００７２】
また、データ取得部１３５は、例えば利用機器２００によりデータが入力された場合には、機器入力用ドライバ１４１により、利用機器２００のメーカ名や製造番号といった、利用機器２００のハードウェアの種別を示す情報から、機器入力用ドライバ１４１により算出された、ハードウェア（以下、ＨＷ）種別情報を取得する。本実施形態では、ハードウェア種別情報とは、利用機器２００のハードウェアの信頼度を示す情報である。
【００７３】
さらに、データ取得部１３５は、機器入力用ドライバ１４１の製造メーカやコード署名等を、機器入力用ドライバ１４１の種別を示す情報を取得し、ソフトウェア種別情報を算出する。ソフトウェア種別情報とは、端末装置１００に組み込まれる機器入力用ドライバ１４１の信頼度を示す情報である。
【００７４】
また、データ取得部１３５は、データが端末装置１００に手入力される場合には、データを入力する利用者のユーザ情報を入力させ、このユーザ情報を利用者の種別を示す情報として取得する。尚、本実施形態のユーザ情報とは、例えば利用者が所属する部署や役職、階級等を含む情報であることが好ましい。
【００７５】
データ取得部１３５は、取得した各種別情報を信頼度算出部１３６へ渡す。
【００７６】
信頼度算出部１３６は、入力されたデータが信頼できる値であるか否か示す信頼の度合いを示す信頼度を算出する。そして、信頼度算出部１３６は、入力欄記述子と、算出した信頼度とを対応付けて保護情報記憶部４００へ出力し、保護情報記憶部４００において、入力欄記述子が一致する保護情報と信頼度を対応付ける。
【００７７】
具体的には、信頼度算出部１３６は、データが利用機器２００により入力された場合には、ハードウェア種別情報とソフトウェア種別情報を用いて、入力されたデータの信頼度を算出する。また、信頼度算出部１３６は、データが手入力により入力された場合には、さらにユーザの種別を示す情報を用いて、ユーザの信頼度を示すユーザ種別情報を算出する。
【００７８】
保護情報出力部１３７は、入力されたデータが保護対象のデータである場合に、機器記述子や入力欄記述子を入力されたデータを対応付けた、保護情報の一部として保護情報記憶部４００に出力する。保護情報の詳細は後述する。
【００７９】
保護領域生成部１３８は、帳票プログラムが端末装置１００にインストールされたとき、保護情報記憶部４００を生成し、設定する。
帳票生成部１３９は、入力データ記憶部３００と、帳票画面の表示要求を受けて保護情報記憶部４００とを参照して帳票画面を生成し、表示させる。帳票画面とは、入力されたデータを表示させる画面である。帳票生成部１３９の機能の詳細は後述する。
【００８０】
また、上述した各部の処理の詳細は後述する。
【００８１】
出力部１６０は、帳票生成部１３９が生成した帳票画面を外部出力機器に対して出力する。具体的には、例えば出力部１６０は、例えば帳票画面の印刷指示を受けて、帳票画面の画像データをプリンタへ出力する。
【００８２】
記憶部１４０は、端末装置１００の補助記憶装置１３、メモリ装置１４等に設けられた記憶領域であり、機器制御組込部１３４が取得した機器入力用ドライバ１４１と、手入力用ドライバ１４２と、が格納される。手入力用ドライバ１４２は、例えば表示操作装置１１のドライバであり、予め端末装置１００が有していても良い。
【００８３】
また、記憶部１４０は、入力データ記憶部３００が設けられる。本実施形態の記憶部１４０は、格納されたデータの編集が可能な記憶領域である。
【００８４】
保護情報記憶部４００は、保護領域生成部１３８により設定される記憶領域であり、画面定義情報記述部１２０や入力データ記憶部３００が置かれる空間とは隔離された記憶領域を示す。本実施形態では、例えば端末装置１００に、セキュリティチップ等が搭載されていた場合には、セキュリティチップ内に保護情報記憶部４００を設ける。セキュリティチップとは、情報の漏洩の防止を目的として、ハードディスクの暗号化を解く鍵を保管して、必要に応じてハードディスクの内容を復号化して利用可能とするチップである。
【００８５】
尚、本実施形態では、保護情報記憶部４００は、端末装置１００が有するものとしているが、これに限定されない。保護情報記憶部４００は、例えば端末装置１００の外部の装置に設けられていても良い。具体的には、例えば保護情報記憶部４００は、端末装置１００とネットワークを介して接続されるサーバに設けられていても良い。
【００８６】
次に、図７と図８を参照して、本実施形態の保護情報と、保護情報記憶部４００について説明する。図７は、第一の実施形態の保護情報を示す記述の一例を示す図である。尚、図７では、データが利用機器２００から端末装置１００へ入力された場合の保護情報の例を示している。
【００８７】
本実施形態の保護情報７１は、保護情報を識別するための識別子７１−１と、入力されたデータ７１−２と、利用機器２００の機器記述子７１−３と、入力欄を特定する入力欄識記述子７１−４と、信頼度７１−５とを含む。
【００８８】
尚、データが手入力であった場合には、保護情報７１には、機器記述子７１−３は含まれない。よって、以下の説明では、少なくとも、項目「識別子」、「データ」、「入力欄記述子（入力欄ＩＤ）」、「信頼度」を含む情報を保護情報と呼ぶ。項目「機器記述子」を含む保護情報は、データが利用機器２００により入力された場合の保護情報となる。
【００８９】
本実施形態の保護情報出力部１３７は、入力されたデータが保護対象であった場合には、データ７１−２と、機器記述子７１−３と、入力欄記述子７１−４とを対応付けて、保護情報７１の一部として保護情報記憶部４００に出力する。このとき、保護情報出力部１３７は、識別子７１−１を付与しても良い。
【００９０】
また、信頼度算出部１３６は、ハードウェア種別情報とソフトウェア種別情報に基づき信頼度を算出すると、算出した信頼度を、各種別情報と対応付けられた入力欄記述子７１−４と対応付けて保護情報記憶部４００に格納する。
【００９１】
これにより、保護情報７１が生成される。
【００９２】
図８は、第一の実施形態の保護情報記憶部の一例を示す図である。図８に示す保護情報記憶部４００では、保護情報出力部１３７から出力された情報と、信頼度算出部１３６から出力された信頼度とが対応付けられた保護情報として格納される。
【００９３】
本実施形態の保護情報は、図７で示すように、情報の項目として、情報の識別子（ＩＤ）、入力されたデータ、機器記述子、入力欄記述子、信頼度を含む。
【００９４】
図８では、保護情報８１、８２が保護情報記憶部４００に格納された場合を示している。例えば、保護情報８１は、ＩＤ「０１２３」が付与されており、項目「データ」の値は「８５」であり、項目「機器記述子」の値（機器ＩＤ）が「ｗｓｃａｌｅ」であり、項目「入力欄記述子」の値（入力欄ＩＤ）が「ｗｅｉｇｈｔ」であり、項目「信頼度」の値は「Ａ」であることがわかる。
【００９５】
尚、図８の例では、１つの入力欄記述子に対して１つのレコードとなっているが、これに限定されない。保護情報記憶部４００では、１つの入力欄に対してデータが入力される度に、この入力欄の入力欄記述子、入力されたデータを対応付けていく。したがって、保護情報記憶部４００では、入力欄記述子毎に、入力欄記述子が示す入力欄に対するデータの入力の履歴が格納されることになる。
【００９６】
次に、図９を参照し、本実施形態の帳票生成部１３９の機能について説明する。図９は、帳票生成部の機能を説明する図である。
【００９７】
本実施形態の帳票生成部１３９は、端末装置１００に表示させる帳票を生成し、出力する。本実施形態の帳票生成部１３９は、記述子検出部１５１、データ読出部１５２、画面生成部１５３を有する。
【００９８】
記述子検出部１５１は、画面定義情報から、データが保護対象となっている画面を検出し、入力欄記述子から入力欄を特定する。
【００９９】
データ読出部１５２は、保護情報記憶部４００から、入力欄記述子と対応付けられたデータを読み出して、取得する。また、データ読出部１５２は、入力データ記憶部３００からも、入力欄記述子と対応付けられたデータを読み出す。
【０１００】
画面生成部１５３は、読み出された２つのデータを比較し、比較結果と、保護情報に含まれる信頼度と、に基づき、帳票が表示された帳票画面（閲覧画面）を表示させる。
【０１０１】
次に、図１０を参照して本実施形態の端末装置１００の動作について説明する。図１０は、第一の実施形態の端末装置の動作を説明する第一のシーケンス図である。図１０では、端末装置１００が利用機器２００により測定されたデータが入力され、このデータが保護指定子１２３により保護対象のデータとされた場合のシーケンス図を示している。
【０１０２】
本実施形態の端末装置１００において、帳票処理部１３０は、記述子抽出部１３１により、画面定義情報記述部１２０の画面定義情報を抽出する（ステップＳ１００１）。続いて、記述子抽出部１３１は、画面定義情報から、機器記述子１２１、入力欄記述子１２２、保護指定子１２３を抽出する（ステップＳ１００２）。続いて、帳票処理部１３０は、機器情報取得部１３２により、機器記述子１２１で機器情報データベース５１０を検索し、該当する機器情報を取得する（ステップＳ１００３）。
【０１０３】
続いて、帳票処理部１３０は、機器発見部１３３により、機器記述子１２１が示す利用機器２００を探索し、利用機器２００を発見する（ステップＳ１００４）。
【０１０４】
次に、帳票処理部１３０は、機器制御組込部１３４により、ドライバデータベース５２０から利用機器２００と対応するドライバを取得し、ドライバ内の各モジュールを帳票プログラム１１０内に組み込む。また、図１０の例では、保護指定子によりデータが保護対象となっているため、機器制御組込部１３４は、機器入力用ドライバ１４１に、保護情報出力部１３７を呼び出すための記述を組み込む（ステップＳ１００５）。ここで、端末装置１００は、利用機器２００からのイベントの発生を待機している状態となる。
【０１０５】
次に、帳票処理部１３０は、利用機器２００と接続し（ステップＳ１００６）、機器入力用ドライバ１４１により利用機器２００が測定したデータを取得し（ステップＳ１００７、１００８）、機器記述子１２１、データ、入力欄記述子１２２を保護情報出力部１３７へ出力する（ステップＳ１００９）。
【０１０６】
保護情報出力部１３７は、受け付けたデータが保護対象となっているため、機器記述子１２１、データ、入力欄記述子１２２を保護情報記憶部４００へ格納する（ステップＳ１０１０）。このとき、保護情報出力部１３７は、格納する情報にＩＤを付与する。
【０１０７】
また、機器入力用ドライバ１４１は、機器記述子１２１、データ、入力欄記述子１２２をデータ取得部１３５へ出力する（ステップＳ１０１１）。このとき、機器入力用ドライバ１４１は、利用機器２００のハードウェア種別情報を算出できた場合は、ハードウェア種別情報も共にデータ取得部１３５へ出力する。
【０１０８】
続いて、データ取得部１３５は、機器記述子１２１、データ、入力欄記述子１２２、ハードウェア種別情報を信頼度算出部１３６へ渡す（ステップＳ１０１２）。このとき、データ取得部１３５は、機器入力用ドライバ１４１から、機器入力用ドライバ１４１のソフトウェア種別情報を算出できた場合は、ソフトウェア種別情報も信頼度算出部１３６へ渡す。
【０１０９】
信頼度算出部１３６は、ハードウェア種別情報とソフトウェア種別情報とを取得すると、入力されたデータの信頼度を算出する（ステップＳ１０１３）。入力されたデータの信頼度の算出の詳細は後述する。
【０１１０】
続いて、信頼度算出部１３６は、算出した信頼度と入力欄記述子とを保護情報記憶部４００へ格納する（ステップＳ１０１４）。このとき、信頼度算出部１３６は、保護情報記憶部４００において、信頼度と対応付けられた入力欄記述子と一致する入力欄記述子に、信頼度を対応付けて格納する。
【０１１１】
尚、保護情報記憶部４００に、信頼度と対応付けられた入力欄記述子が存在しない場合には、信頼度算出部１３６は、単に、信頼度と入力欄記述子のみを保護情報記憶部４００へ格納する。保護情報記憶部４００に、信頼度と対応付けられた入力欄記述子が存在しない場合とは、画面定義情報の保護指定子によって、入力されたデータが保護対象とされていない場合である。
【０１１２】
続いて、データ取得部１３５は、データと入力欄記述子とを入力データ記憶部３００へ格納する（ステップＳ１０１５）。
【０１１３】
以上が、利用機器２００により測定されたデータが端末装置１００の入力画面に入力された際に、このデータが保護対象となっていた場合の端末装置１００の動作である。
【０１１４】
次に、図１１を参照して、端末装置１００の入力画面にデータが直接入力された場合の端末装置１００の動作について説明する。
【０１１５】
図１１は、第一の実施形態の端末装置の動作を説明する第二のシーケンス図である。図１１の例でも、入力画面に入力されたデータが、保護指定子により保護対象とされている場合を示している。
【０１１６】
本実施形態の端末装置１００において、帳票処理部１３０は、記述子抽出部１３１により、画面定義情報記述部１２０の画面定義情報から、入力欄記述子を抽出する（ステップＳ１１０１）。
【０１１７】
図１１の例では、保護指定子によりデータが保護対象となっているため、機器制御組込部１３４は、手入力用ドライバ１４２に、保護情報出力部１３７を呼び出すための記述を組み込む（ステップＳ１１０２）。
【０１１８】
続いて、端末装置１００は、例えば手入力用ドライバ１４２により、表示操作装置１１等に対するデータの入力を受け付ける（ステップＳ１１０３）。続いて、手入力用ドライバ１４２は、入力画面においてデータが入力された場所から入力欄を特定し、入力されたデータを抽出する（ステップＳ１１０４）。
【０１１９】
尚、本実施形態では、このとき、端末装置１００においてデータを入力する利用者のユーザ情報を入力させても良い。具体的には、例えば入力画面を表示させる前に、ユーザ情報の入力画面を端末装置１００に表示させ、ユーザ情報の入力が完了し、データの入力方法として、手入力が選択された場合に、データの入力画面を表示させても良い。
【０１２０】
手入力用ドライバ１４２は、入力されたデータと、特定した入力欄の入力欄記述子とをデータ取得部１３５へ渡す（ステップＳ１１０５）。また、手入力用ドライバ１４２は、ユーザ情報を取得した場合には、このユーザ情報をデータ取得部１３５へ渡す。
【０１２１】
データ取得部１３５は、データと、入力欄記述子と、ユーザ情報と、を信頼度算出部１３６へ渡す（ステップＳ１１０６）。信頼度算出部１３６は、ユーザ情報に基づき、データの信頼度を算出する（ステップＳ１１０７）。
【０１２２】
図１１のステップＳ１１０８とステップＳ１１０９の処理は、図１０のステップＳ１０１４とステップＳ１０１５の処理と同様であるから、説明を省略する。
【０１２３】
以上が、データが端末装置１００の入力画面に手入力された際に、このデータが保護対象となっていた場合の端末装置１００の動作である。
【０１２４】
次に、図１２を参照して、端末装置１００に対して帳票画面の表示要求がなされた場合の端末装置１００の動作について説明する。
【０１２５】
図１２は、第一の実施形態の端末装置の動作を説明する第三のシーケンス図である。
【０１２６】
本実施形態において、端末装置１００は、帳票画面の表示要求を受けて帳票処理部１３０を起動させる。言い換えれば、端末装置１００は、帳票画面の表示要求を受けて、帳票プログラムを起動させる。そして、帳票処理部１３０は、帳票生成部１３９を呼び出す（ステップＳ１２０１）。
【０１２７】
続いて、帳票生成部１３９は、画面定義情報記述部１２０から、帳票画面の画面定義情報を取得する（ステップＳ１２０２）。また、帳票生成部１３９は、入力データ記憶部３００からデータを取得する（ステップＳ１２０３）。
【０１２８】
次に、帳票生成部１３９は、画面定義情報に含まれる入力欄記述子１２２を保護情報記憶部４００へ渡し（ステップＳ１２０４）、保護情報記憶部４００から入力欄記述子と対応付けられたデータと信頼度とを取得する（ステップＳ１２０５）。
【０１２９】
続いて、帳票生成部１３９は、取得した画面定義情報、データ、信頼度等に基づき、帳票画面の画面データを生成する（ステップＳ１２０６）。そして、帳票生成部１３９は、画面データを表示操作装置１１に表示させる（ステップＳ１２０７）。
【０１３０】
以上が、帳票画面の表示要求を受けた際の端末装置１００の動作である。
【０１３１】
次に、図１３乃至図２０を参照し、本実施形態の端末装置１００の帳票処理部１３０の有する各部の処理の詳細を説明する。
【０１３２】
はじめに、図１３を参照して、帳票処理部１３０の記述子抽出部１３１、機器情報取得部１３２、機器発見部１３３、機器制御組込部１３４の処理について説明する。図１３は、記述子抽出部、機器情報取得部、機器発見部、機器制御組込部の処理を説明するフローチャートである。
【０１３３】
本実施形態の帳票処理部１３０において、記述子抽出部１３１は、画面定義情報記述部１２０から画面定義情報を抽出する（ステップＳ１３０１）。続いて、記述子抽出部１３１は、画面定義情報に機器記述子（機器ＩＤ）及び入力欄記述子（入力欄ＩＤ）が含まれるか否かを判定する（ステップＳ１３０２）。
【０１３４】
ステップＳ１３０２において、２つの記述子が存在しない場合、記述子抽出部１３１は、画面定義情報に入力欄記述子（入力欄ＩＤ）が含まれるか否かを判定する（ステップＳ１３０３）。ステップＳ１３０３において、入力欄記述子が含まれない場合、帳票処理部１３０は処理を終了する。
【０１３５】
ステップＳ１３０３において、入力欄記述子が含まれる場合、帳票処理部１３０は、後述するステップＳ１３０８へ進む。
【０１３６】
尚、本実施形態では、画面定義情報に機器記述子が含まれる場合は、利用機器２００から機器入力用ドライバ１４１を介して入力画面にデータが入力される場合を示し、機器記述子が含まれない場合は、入力画面に手入力でデータが入力される場合を示している。
【０１３７】
ステップＳ１３０２において、２つの記述子が存在する場合、記述子抽出部１３１は、機器記述子と、入力欄記述子とを取得し、機器情報取得部１３２へ渡す（ステップＳ１３０４）。
【０１３８】
機器情報取得部１３２は、機器記述子に基づき、機器情報データベース５１０から機器情報を取得し、機器発見部１３３に渡す。機器発見部１３３は、機器情報に基づき、端末装置１００の周囲を探索する（ステップＳ１３０５）。
【０１３９】
機器発見部１３３は、利用機器２００を発見（検出）すると（ステップＳ１３０６）、機器制御組込部１３４は、ドライバデータベース５２０から発見した利用機器２００と対応する機器入力用ドライバ１４１を取得し、機器入力用ドライバ１４１内の各モジュールを帳票プログラム１１０内に組み込む（ステップＳ１３０７）。
【０１４０】
尚、ステップＳ１３０５において、機器発見部１３３が利用機器２００を検出しない場合には、機器発見部１３３は利用機器２００を発見するまで待機する。
【０１４１】
続いて、機器制御組込部１３４は、画面定義情報の保護指定子により、入力されるデータが保護対象とされているか否かを判定する（ステップＳ１３０８）。
【０１４２】
ステップＳ１３０８において、データが保護対象でない場合、機器制御組込部１３４は後述するステップＳ１３１０へ進む。
【０１４３】
ステップＳ１３０８において、データが保護対象とされる場合、機器制御組込部１３４は、保護情報出力部１３７を呼び出すための記述を、機器入力用ドライバ１４１又は手入力用ドライバ１４２に追加する（ステップＳ１３０９）。
【０１４４】
尚、ステップＳ１３０９では、画面定義情報に機器記述子が含まれる場合には、機器入力用ドライバ１４１に保護情報出力部１３７を呼び出すための記述が追加され、機器記述子が含まれない場合（ステップＳ１３０３でＹｅｓ）の場合には、手入力用ドライバ１４２に保護情報出力部１３７を呼び出すための記述が追加される。
【０１４５】
続いて、機器制御組込部１３４は、ドライバに機器記述子と入力欄記述子を渡し（ステップＳ１３１０）、処理を終了する。
【０１４６】
尚、機器制御組込部１３４は、画面定義情報に機器記述子が含まれる場合には、機器入力用ドライバ１４１に機器記述子と入力欄記述子を渡し、機器記述子が含まれない場合（ステップＳ１３０３でＹｅｓ）の場合には、手入力用ドライバ１４２に入力欄記述子を渡す。
【０１４７】
次に、図１４を参照して、機器入力用ドライバ１４１の動作について説明する。図１４は、機器入力用ドライバの動作を説明するフローチャートである。
【０１４８】
機器入力用ドライバ１４１が端末装置１００に組み込まれると、機器制御組込部１３４から機器記述子と入力欄記述子とを受信する（ステップＳ１４０１）。続いて、機器入力用ドライバ１４１は、機器記述子が特定する利用機器２００との接続を試みる（ステップＳ１４０２）。
【０１４９】
機器入力用ドライバ１４１は、利用機器２００との接続が成功したか否かを判定し（ステップＳ１４０３）、接続が成功していない場合には、接続が成功するまで試みる。
【０１５０】
ステップＳ１４０３において、接続が成功した場合、機器入力用ドライバ１４１は、利用機器２００から、利用機器２００のハードウェアの種類を示す情報を取得する（ステップＳ１４０４）。
【０１５１】
続いて、機器入力用ドライバ１４１は、ハードウェアの種類を示す情報を検証してハードウェアの信頼度を取得し、この信頼度をハードウェア種別情報として保持する（ステップＳ１４０５）。ハードウェアの信頼度の取得の方法の詳細は後述する。
【０１５２】
続いて、機器入力用ドライバ１４１は、利用機器２００からデータが入力されるまで待機し（ステップＳ１４０６）、データが入力されたか否かを判定する（ステップＳ１４０７）。
【０１５３】
ステップＳ１４０７において、データが入力されない場合、機器入力用ドライバ１４１は、ステップＳ１４０６へ戻り、待機する。
【０１５４】
ステップＳ１４０７において、データが入力された場合、機器入力用ドライバ１４１は、入力画面に入力されたデータを取得し（ステップＳ１４０８）、データを抽出する（ステップＳ１４０９）。
【０１５５】
続いて、機器入力用ドライバ１４１は、保護情報出力部１３７に対し、抽出したデータと、機器記述子と、入力欄記述子とを渡す（ステップＳ１４１０）。続いて、機器入力用ドライバ１４１は、データ取得部１３５に対し、データと、機器記述子と、入力欄記述子と、ハードウェア種別情報と、を渡し（ステップＳ１４１１）、処理を終了する。
【０１５６】
尚、図１４の例では、機器入力用ドライバ１４１は、利用機器２００のハードウェアの信頼度を取得するものとしたが、機器入力用ドライバ１４１は、利用機器２００を用いて測定を行う利用者のユーザ情報を取得しても良い。ユーザ情報は、ハードウェア種別情報と同様に、データ取得部１３５へ渡される。
【０１５７】
次に、図１５を参照して、手入力用ドライバ１４２の動作について説明する。図１５は、手入力用ドライバの動作を説明するフローチャートである。
【０１５８】
本実施形態の手入力用ドライバ１４２は、端末装置１００において、データの入力を行う利用者のユーザ情報の入力を受け付け、保持する（ステップＳ１５０１）。
【０１５９】
続いて、手入力用ドライバ１４２は、端末装置１００の入力画面において、入力欄の選択を受け付けたか否かを判定する（ステップＳ１５０２）。ステップＳ１５０２において、入力欄の選択を受け付けない場合、手入力用ドライバ１４２は、処理を終了する。尚、このとき、手入力用ドライバ１４２は、所定時間の間、継続して入力欄の選択を受け付けない場合に、処理を終了しても良い。
【０１６０】
ステップＳ１５０２において、入力欄の選択を受け付けた場合、手入力用ドライバ１４２は、選択された入力欄の入力欄記述子を取得し、データの入力を待つ（ステップＳ１５０３）。
【０１６１】
続いて、手入力用ドライバ１４２は、データが入力されたか否かを判定する（ステップＳ１５０３）。ステップＳ１５０４において、データが入力されない場合、手入力用ドライバ１４２は、データが入力されるまで待機する。
【０１６２】
ステップＳ１５０４において、データが入力されると、手入力用ドライバ１４２は、データを取得し（ステップＳ１５０５）、入力画面から入力されたデータを抽出する（ステップＳ１５０６）。
【０１６３】
続いて、手入力用ドライバ１４２は、保護情報出力部１３７に対し、抽出したデータと、入力欄記述子とを渡す（ステップＳ１５０７）。続いて、手入力用ドライバ１４２は、データ取得部１３５に対し、データと、入力欄記述子と、ユーザ情報と、を渡し（ステップＳ１５０８）、処理を終了する。
【０１６４】
次に、図１６を参照して、保護情報出力部１３７の処理について説明する。図１６は、保護情報出力部の処理を説明するフローチャートである。
【０１６５】
本実施形態の保護情報出力部１３７は、機器記述子、入力欄記述子、データの組合せ、又は、入力欄記述子、データの組合せを取得する（ステップＳ１６０１）。続いて、保護情報出力部１３７は、入力欄記述子に基づき、保護情報記憶部４００に同一の入力欄記述子を含む保護情報が存在するか否か問い合わせる（ステップＳ１６０２）。
【０１６６】
続いて、保護情報出力部１３７は、保護情報記憶部４００内に、同一の入力欄記述子と対応付けられた保護情報が存在するか否かを判定する（ステップＳ１６０３）。
【０１６７】
ステップＳ１６０３において、該当する保護情報が存在する場合、保護情報出力部１３７は、該当する保護情報に機器記述子が含まれる場合には、該当する保護情報の機器記述子とデータとを更新し（ステップＳ１６０４）、処理を終了する。
【０１６８】
具体的には、保護情報出力部１３７は、入力欄記述子に対して、新たに取得したデータと機器記述子とを対応づけるようにする。したがって、この場合、保護情報記憶部４００において、１つの入力欄記述子に対して、過去に対応付けられたデータと機器記述子と、ステップＳ１６０１で新たに取得したデータと機器記述子とが対応付けられることになる。この場合、データを取得した日時の情報を取得し、データと対応付けて保護情報記憶部４００に格納しても良い。すなわち、本実施形態の保護情報記憶部４００には、入力欄記述子毎のデータの入力の履歴が格納されることになる。
【０１６９】
尚、該当する保護情報に機器記述子が含まれない場合、保護情報出力部１３７は、該当する保護情報のデータを上述した方法と同様に更新して処理を終了する。
【０１７０】
ステップＳ１６０３において、該当する保護情報が存在しない場合、保護情報出力部１３７は、入力欄記述子と機器記述子とデータとを対応付けた１レコードを生成し、保護情報記憶部４００へ書き込み（ステップＳ１６０５）、処理を終了する。尚、保護情報出力部１３７は、ステップＳ１６０１において機器記述子を取得していない場合、入力欄記述子とデータとを対応付けた１レコードを生成し、処理を終了する。
【０１７１】
次に、図１７を参照して本実施形態のデータ取得部１３５の処理について説明する。図１７は、データ取得部の処理を説明するフローチャートである。
【０１７２】
本実施形態のデータ取得部１３５は、機器記述子、入力欄記述子、データ、各種の情報を取得する（ステップＳ１７０１）。具体的には、データ取得部１３５は、機器入力用度ラバ１４１から、機器記述子、入力欄記述子、データ、ハードウェア種別情報を取得する。また、データ取得部１３５は、手入力用ドライバ１４２から、入力欄記述子、データ、ユーザ情報を取得する。
【０１７３】
続いて、データ取得部１３５は、ステップＳ１７０１で機器記述子を取得したか否かを判定する（ステップＳ１７０２）。ステップＳ１７０２において、機器記述子を取得していない場合、データ取得部１３５は、後述するステップＳ１７０６へ進む。
【０１７４】
ステップＳ１７０２において、機器記述子を取得した場合、データ取得部１３５は、機器入力用ドライバ１４１（ソフトウェア）の種別を示す情報を取得する（ステップＳ１７０３）。機器入力用ドライバ１４２の種別を示す情報とは、例えば、機器入力用ドライバ１４１のコード署名等である。
【０１７５】
続いて、データ取得部１３５は、機器入力用ドライバ１４１の種別を示す情報の検証を行って、機器入力用ドライバ１４１の信頼度を取得し、ソフトウェア種別情報として保持する（ステップＳ１７０４）。ソフトウェアの信頼度の取得の方法の詳細は後述する。
【０１７６】
続いて、データ取得部１３５は、データと、機器記述子と、入力欄記述子と、ハードウェア種別情報と、ソフトウェア種別情報とを信頼度算出部１３６へ渡し（ステップＳ１７５）、後述するステップＳ１７０７へ進む。
【０１７７】
ステップＳ１７０２において、機器記述子を取得していない場合、データ取得部１３５は、ユーザ情報とデータとを信頼度算出部１３６へ渡し（ステップＳ１７０６）、ステップＳ１７０７へ続く。
【０１７８】
データ取得部１３５は、画面定義情報から、入力欄記述子を取得する（ステップＳ１７０７）。続いて、データ取得部１３５は、ステップＳ１７０７で取得した入力欄記述子と、ステップＳ１７０１で取得した入力欄記述子とを比較し、一致するものがあるか否かを判定する（ステップＳ１７０８）。
【０１７９】
ステップＳ１７０８において、一致する入力欄記述子ものが存在しない場合、データ取得部１３５は処理を終了する。
【０１８０】
ステップＳ１７０８において、一致するものが存在する場合、入力画面において入力欄記述子で特定される入力欄内のデータを、入力されたデータに更新し（ステップＳ１７０９）、処理を終了する。
【０１８１】
次に、図１８を参照して、信頼度算出部１３６の処理について説明する。図１８は、信頼度算出部の処理を説明するフローチャートである。
【０１８２】
信頼度算出部１３６は、データ取得部１３５から出力されたデータを取得する（ステップＳ１８０１）。続いて、信頼度算出部１３６は、画面定義情報から入力欄記述子を取得し、入力欄記述子と対応するデータの信頼度を初期化する（ステップＳ１８０２）。
【０１８３】
続いて、信頼度算出部１３６は、ステップＳ１８０１で取得した情報に機器記述子が含まれるか否かを判定する（ステップＳ１８０３）。
【０１８４】
ステップＳ１８０３において、機器記述子が含まれる場合、信頼度算出部１３６は、ステップＳ１８０１で取得した情報からハードウェア種別情報とソフトウェア種別情報とを取得し（ステップＳ１８０４）、後述するステップＳ１８０８へ進む。
【０１８５】
ステップＳ１８０３において、機器記述子が含まれない場合、信頼度算出部１３６は、ステップＳ１８０１で取得した情報から、ユーザ情報を取得する（ステップＳ１８０５）。
続いて、信頼度算出部１３６は、ユーザ情報に基づきデータを入力した利用者の信頼度を検証し（ステップＳ１８０６）、利用者の信頼度を取得して、ユーザ種別情報として保持する（ステップＳ１８０７）。
【０１８６】
以下に、利用者の信頼度の取得について説明する。
【０１８７】
ユーザ情報には、利用者の権限や役職等が含まれる。よって、信頼度算出部１３６は、利用者の権限や役職等と、信頼度とが対応付けられたテーブル等を参照し、利用者の信頼度を取得しても良い。具体的には、例えば、役職が一般社員である利用者よりも、役職が幹部である利用者の方が、信頼度が高くなる。
【０１８８】
続いて、信頼度算出部１３６は、ハードウェア種別情報、ソフトウェア種別情報、ユーザ種別情報を用いて、入力されたデータの信頼度を算出する（ステップＳ１８０８）。
【０１８９】
以下に、入力されたデータの信頼度の算出について説明する。本実施形態では、入力されたデータの信頼度は、以下の式によって算出される。
【０１９０】
信頼度＝Σ（ハードウェア種別情報×重み係数）+Σ（ソフトウェア種別情報×重み係数）+Σ（ユーザ種別情報×重み係数）
尚、本実施形態の信頼度算出部１３６は、ハードウェア種別情報、ソフトウェア種別情報、ユーザ種別情報のそれぞれについて、各種別情報と重み係数を対応付けた重みテーブルを有しているものとした。
【０１９１】
重みテーブルでは、例えば、ハードウェア種別情報、ソフトウェア種別情報、ユーザ種別情報を算出するために行った検証の種類と、重み係数とが対応付けられていても良い。
【０１９２】
続いて、信頼度算出部１３６は、算出したデータの信頼度を、保護情報記憶部４００において、ステップＳ１８０１で取得した入力欄記述子と一致する入力欄記述子と対応付けて格納し（ステップＳ１８０９）、処理を終了する。
【０１９３】
以上のように、本実施形態では、保護情報記憶部４００において、入力欄記述子と、入力欄記述子が特定する入力欄に入力されたデータと、このデータの信頼度とが対応付けられた記憶される。
【０１９４】
次に、図１９を参照して、保護領域生成部１３８の処理について説明する。図１９は、保護領域生成部の処理を説明するフローチャートである。
【０１９５】
本実施形態の保護領域生成部１３８は、保護情報記憶部４００が端末装置１００の外部装置に設定されているか否かを判定する（ステップＳ１９０１）。ステップＳ１９０１において、外部装置に設定されている場合、保護領域生成部１３８は、後述するステップＳ１９０５へ進む。
【０１９６】
ステップＳ１９０１において、外部装置に設定されていない場合、保護領域生成部１３８は、端末装置１００にセキュリティチップが搭載されているか否かを判定する（ステップＳ１９０２）。ステップＳ１９０２において、セキュリティチップが搭載されていない場合、保護領域生成部１３８は、後述するステップＳ１９０６へ進む。
【０１９７】
ステップＳ１９０２において、セキュリティチップが搭載されている場合、保護領域生成部１３８は、セキュリティチップの空き容量が保護情報記憶部４００を設定するに際し十分であるか否かを判定する（ステップＳ１９０３）。尚、保護情報記憶部４００の設定に必要な空き容量は、予め保護領域生成部１３８に設定されていても良い。
【０１９８】
ステップＳ１９０３において、空き容量が不十分である場合、保護領域生成部１３８は、後述するステップＳ１９０６へ進む。
【０１９９】
ステップＳ１９０３において、空き容量が十分である場合、保護領域生成部１３８は、セキュリティチップ内に、保護情報記憶部４００を生成する（ステップＳ１９０４）。続いて、保護領域生成部１３８は、保護情報出力部１３７へ、保護情報記憶部４００のアドレスを通知し（ステップＳ１９０５）、処理を終了する。
【０２００】
ステップＳ１９０２においてセキュリティチップが搭載されていない場合及びステップＳ１９０３において空き容量が不十分である場合、保護領域生成部１３８は、端末装置１００の記憶領域内に保護情報記憶部４００を生成する（ステップＳ１９０６）。続いて、保護領域生成部１３８は、保護情報記憶部４００に格納されるデータの暗号化を保護情報出力部１３７に対して指示し（ステップＳ１９０７）、ステップＳ１９０５へ進む。
【０２０１】
次に、図２０を参照し、帳票生成部１３９の処理について説明する。図２０は、帳票生成部の処理を説明するフローチャートである。
【０２０２】
本実施形態の帳票生成部１３９は、帳票画面の表示要求を受けると、画面定義情報と、入力されたデータとを取得する（ステップＳ２００１）。具体的には、帳票生成部１３９は、取得した画面定義情報に含まれる入力欄記述子を抽出し、入力データ記憶部３００において、入力欄記述子と対応付けられたデータを取得する。
【０２０３】
続いて帳票生成部１３９は、画面定義情報の保護指定子により、データが保護対象とされているか否かを判定する（ステップＳ２００２）。ステップＳ２００２において、データが保護対象とされていない場合、帳票生成部１３９は、取得したデータを入力欄に表示させた帳票画面の画面データを生成して端末装置１００へ表示させ（ステップＳ２００３）、処理を終了する。
【０２０４】
ステップＳ２００２において、データが保護対象とされていた場合、帳票生成部１３９は、保護情報記憶部４００から、ステップＳ２００１で取得した入力欄記述子と対応付けられたデータと、データの信頼度とを取得する（ステップＳ２００４）。
【０２０５】
続いて、帳票生成部１３９は、保護情報記憶部４００から取得したデータを入力欄記述子で特定される入力欄に表示させ、信頼度に応じた加工を施した帳票画面の画面データを生成して端末装置１００へ表示させる（ステップＳ２００５）。具体的には、帳票生成部１３９は、入力欄に表示されたデータの信頼度が低い場合等には、信頼度が低いことを示す表示部品を帳票画面に表示させる。
【０２０６】
続いて、帳票生成部１３９は、入力データ記憶部３００において、ステップＳ２００１で取得した入力欄記述子と対応付けられたデータと、保護情報記憶部４００において入力欄記述子と対応付けられたデータとを比較する（ステップＳ２００６）。ステップＳ２００６において、両者が一致する場合、帳票生成部１３９は、処理を終了する。
【０２０７】
ステップＳ２００６において、両者が異なる場合、帳票生成部１３９は、入力データ記憶部３００の該当するデータを、保護情報記憶部４００における該当するデータで上書きし（ステップＳ２００７）、処理を終了する。
【０２０８】
また、本実施形態では、表示部品に対する操作を受けて付けて、保護情報記憶部４００における入力欄記述子と対応するデータを帳票画面に表示させる。帳票生成部１３９による、信頼度に応じた加工の詳細は後述する。
【０２０９】
本実施形態の帳票生成部１３９では、以上のように、入力欄と対応するデータが保護対象とされていた場合、編集が不可能な記憶領域である保護情報記憶部４００に格納されたデータを帳票画面に表示させる。本実施形態では、これにより、帳票画面の入力欄に表示されたデータに対する手入力による編集を禁止する。言い換えれば、本実施形態では、帳票画面におけるデータの改竄を防止できる。
【０２１０】
また、帳票生成部１３９は、保護情報記憶部４００に格納されたデータの信頼度が低い場合には、その旨を示す表示部品を帳票画面に表示させる。
したがって、本実施形態によれば、帳票画面の閲覧者に対し、表示されているデータが改竄されたデータである可能性の有無を提示することができる。
【０２１１】
次に、本実施形態のハードウェアの信頼度及びソフトウェアの信頼度の算出について説明する。
【０２１２】
ハードウェアの信頼度は、機器入力用ドライバ１４１が、利用機器２００の情報から利用機器２００そのものの信頼性を検証した結果を値として算出したものである。
【０２１３】
利用機器２００は、ＴＰＭ（Trusted Platform Module）と呼ばれる耐タンパ性を持つセキュリティチップが組み込まれている場合がある。この場合、ＴＰＭによって、利用機器２００の正当性が保証される。
【０２１４】
機器入力用ドライバ１４１は、ＴＰＭが利用機器２００の正当性を保証していることを示す証明書情報を利用機器２００から取得し、この証明書情報が正当であるか否かを公開鍵署名等の手法を用いて検証することで、利用機器２００の信頼性を評価する。
【０２１５】
このとき、機器入力用ドライバ１４１は、ＴＰＭと合わせて、利用機器２００のハードウェア構成情報を動的に検証し、故障等の不具合の有無を確認し、これらの情報を組み合わせることで、ハードウェアの信頼度を算出する。
【０２１６】
次に、ソフトウェアの信頼度の算出について説明する。
【０２１７】
ソフトウェアの信頼度は、機器入力用ドライバ１４１の署名の検証情報や帳票プログラム１１０がサンドボックス上で実行されているか否か、セキュアで信頼できる実行環境で動作しているか否か、等によって検証が可能である。
【０２１８】
具体的には、ソフトウェアの信頼度は、機器入力用ドライバ１４１やデバイスドライバが動作するシステム情報等から、利用機器２００に入力されたデータが帳票処理部１３０に届くまでのパスの信頼性を検証した結果を値として算出されるものである。
【０２１９】
例えば、機器入力用ドライバ１４１は基本的に機器メーカが利用機器２００に準拠したソフトウェアをツールアプリケーションとして提供するものであり、機器入力用ドライバ１４１の不正な解析や改ざんなどを防止するために、コード署名が付加されている場合がある。
【０２２０】
実施形態のデータ取得部１３５は、このコード署名が確かに機器メーカによって付加された署名であるかを検証することによって、機器入力用ドライバ１４１の信頼性を評価することができる。
【０２２１】
また、近年では、機器入力用ドライバ１４１の仮想化・軽量化の技術が進み、機器入力用ドライバ１４１相当のツールアプリケーションを動的に挿抜することを可能としたフレームワークも存在する。その場合、このようなフレームワークそのもののコード署名や構成で信頼性を検証することも可能であり、これらの情報を組み合わせることで、ソフトウェア（機器入力用ドライバ１４１）の信頼度を算出することができる。
【０２２２】
次に、利用者の信頼度の算出について説明する。
【０２２３】
利用者の信頼度は、信頼度算出部１３６にて、帳票プログラムが動作する端末に手入力している利用者を判断し、利用者の所属や専門性などの情報から入力された値そのものの信頼性を評価した結果を値として算出したものである。
【０２２４】
基本的に端末装置１００は、各ユーザ専用の端末として動作させている場合が多い。そこで、本実施形態では、端末装置１００に、端末装置１００の端末ＩＤとユーザ情報とを予め設定しておくことによって、信頼度算出部１３６は帳票にデータの入力を行った利用者の信頼性を判定することができる。
【０２２５】
また、例えば、信頼度算出部１３６は、データの入力時に、利用者（入力者）に対してユーザ認証を行うことができれば、データを入力しているユーザを識別し、ユーザ情報の検証が可能になる。
【０２２６】
信頼度算出部１３６は、これらのような手法を用いてユーザ情報を取得し、ユーザ情報から利用者の信頼度を算出するための所属や専門性情報等を抽出して、利用者の信頼度を算出することができる。
【０２２７】
本実施形態の信頼度算出部１３６では、ハードウェアの信頼度（ハードウェア種別情報）と、ソフトウェアの信頼度（ソフトウェア種別情報）と、利用者の信頼度（ユーザ種別情報）とかに、例えば、以下のように信頼度を算出する。
【０２２８】
信頼度＝ＴＭＰ署名検証結果×５０＋機器入力用ドライバの署名検証結果×３０＋ログの正当性検証結果×１０＋測定時間と場所の検証結果×１０
本実施形態では、例えば信頼度の値が５０以下となった場合に、帳票画面において、信頼度が低いことを示す表示部品が付加されても良い。
【０２２９】
また、本実施形態では、信頼度が所定の閾値を超えない場合は、入力画面にエラーメッセージを表示させても良い。
【０２３０】
次に、本実施形態の帳票プログラム１１０を示す記述について説明する。図２１は、第一の実施形態の帳票プログラムにおけるデータの入力に関する記述を説明する図である。
【０２３１】
本実施形態の端末装置１００では、例えば、Ａｎｄｒｏｉｄ（登録商標）  ＯＳ等を搭載する端末である。
【０２３２】
帳票プログラム１１０では、画面定義情報記述部１２０と、帳票処理部１３０とに分けて動作する。図２１の例では、帳票処理部１３０は、Ａｎｄｒｏｉｄアプリケーションのフレームワークの一種であるＣｏｒｄｏｖａを利用するものとした。また、画面定義情報記述部１２０は、Ｃｏｒｄｏｖａのフレームワーク内で動作するものとした。
【０２３３】
また、本実施形態の端末装置１００は、通信インターフェイス１５０として、ＢＬＥ（Bluetooth Low Energy）通信インターフェイス１５５やＷｉ−Ｆｉ通信インターフェイス１５６等が具備されているものとする。
【０２３４】
画面定義情報は、ＨＴＭＬ（HyperText Markup Language）で記述されている。画面定義情報記述部１２０において、＜ｄｉｖ＞〜＜／ｄｉｖ＞タグで囲まれた記述２１１は、が画面定義情報を示している。
【０２３５】
記述２１１のうち、記述２１２が機器記述子１２１を示しており、記述２１３が入力欄記述子１２２を示しており、記述２１４が保護指定子１２３を示している。記述２１４において、ｐｒｏｔｅｃｔｉｏｎの値がｔｒｕｅである場合に、入力欄記述子により特定される入力欄に入力されたデータが保護対象とされる。また、記述２１４において、ｐｒｏｔｅｃｔｉｏｎの値がｆａｌｓｅである場合に、入力欄記述子により特定される入力欄に入力されたデータは保護されない。
【０２３６】
端末装置１００において、帳票プログラム１１０が起動すると、帳票処理部１３０は、JavaScript(登録商標)インターフェイス６００を自動的にロードする。JavaScriptインターフェイス６００は、帳票入力インターフェイスと帳票出力インターフェイスを有し、帳票処理部１３０に対して、データの入力と、帳票の出力の機能を実行させる。
【０２３７】
帳票入力インターフェイス６００は、帳票プログラム１１０の起動時に自動実行される。本実施形態の帳票プログラム１１０では、記述２１５に示すＧａｄｇｅｔ．ｕｓｅ関数が呼び出されることによって、帳票処理部１３０の機能が実行される。
【０２３８】
本実施形態の帳票処理部１３０の有する機能は、Ｃｏｒｄｏｖａのプラグインとして実装されても良い。帳票処理部１３０の有する機能は上述した通りである。
【０２３９】
図２２は、第一の実施形態の帳票プログラムにおけるデータの出力に関する記述を説明する図である。
【０２４０】
図２２では、入力欄１０２にデータが入力された帳票画面１０１Ａにおいて、帳票画面１０１Ａの印刷指示を行うボタン１０５が操作されて場合について説明する。
【０２４１】
帳票画面１０１Ａにおいて、ボタン１０５が操作されると、帳票出力インターフェイス７００は、汎用的な出力機能が実行される前に、帳票生成部１３９を実行する。
【０２４２】
具体的には、帳票処理部１３０は、ボタン１０５のクリックをトリガにして、記述２２１が示すwindow.print()により、帳票生成部１３９と出力部１６０が呼び出される。
【０２４３】
本実施形態では、外部出力機器８００で印刷処理を実行させる前に、閲覧画面１０１Ｂを生成し、表示させる。尚、閲覧画面は、例えば帳票を印刷する過程で表示される画面の１つであり、入力されたデータの改竄の有無を検証するために表示されても良い。
【０２４４】
本実施形態の帳票生成部１３９において、記述子検出部１５１は、帳票画面１０１Ａの画面定義情報を示す記述２１１のｉｎｐｕｔ要素を取得し、保護指定子がｔｒｕｅのものを検出し、ｉｎｐｕｔ要素のｉｄとｖａｌｕｅを取得する。
【０２４５】
データ読出部１５２では、取得したｉｄ（入力欄記述子）に対応するｖａｌｕｅ（データ）を保護情報記憶部４００に問い合わせ、ｉｄに紐づくデータを取得する。
【０２４６】
画面生成部１５３では、保護情報記憶部４００から取得したデータと、入力データ記憶部３００に格納されていたｖａｌｕｅ値とを比較し、両者が異なる場合、入力データ記憶部３００のｖａｌｕｅ値を、ｉｄと紐付くｖａｌｕｅの値に上書きする。
【０２４７】
また、画面生成部１５３は、例えば、画面定義情報に機器記述子１２１が含まれる場合には、閲覧画面１０１Ｂに、データが利用機器２００から入力されたデータであることを示す表示部品１０６を表示させても良い。この表示部品１０６を閲覧画面１０１Ｂに表示させることで、閲覧者に対し、閲覧画面１０１Ｂに表示されたデータが利用機器２００により入力されたものであることを把握させることができる。
【０２４８】
尚、図２２の例では、表示部品１０６はチェックマークとしたが、これに限定されない。表示部品１０６の形態は、例えば、アルファベットや数字であっても良いし、丸や四角等のマークであっても良い。
【０２４９】
次に、図２３、図２４を参照して、本実施形態の閲覧画面の表示について説明する。図２３は、第一の実施形態の閲覧画面が表示された例を示す第一の図である。
【０２５０】
図２３に示す閲覧画面２３０は、入力欄２３１、２３２を有しており、各入力欄に入力されたデータが表示されている。
【０２５１】
また、閲覧画面２３０において、入力欄２３１の近傍には、データが利用機器２００により入力されたデータであることを示す表示部品１０６が表示されている。よって、入力欄２３１に表示されたデータは、利用機器２００により入力されたデータであることがわかる。
【０２５２】
また、閲覧画面２３０において、入力欄２３２の近傍には、入力欄２３２に表示されたデータの信頼度が所定の閾値に達していないことを示す表示部品１０７が表示されている。したがって、入力欄２３２に表示されたデータは、正当な方法で入力されたデータではない可能性があることがわかる。
【０２５３】
本実施形態では、閲覧画面２３０において、表示部品１０７を選択する操作を受け付けると、端末装置１００の表示を閲覧画面２３０から、検証画面２３５へ遷移させる。検証画面２３５は、閲覧画面２３０上に、ポップアップ形式等によって表示されても良い。
【０２５４】
検証画面２３５には、入力欄２３２に対するデータの入力の履歴を示すテーブル２３６と、不正な改変のおそれあることを通知するメッセージ２３７が表示される。
【０２５５】
テーブル２３６は、情報の項目として、データの値、ユーザ、手入力、機器名、日付、信頼度を含む。項目「データ」、「日付」、「機器名」、「信頼度」は、保護情報記憶部４００から取得される。尚、項目「機器名」は、保護情報記憶部４００に格納された保護情報における機器記述子から取得されても良い。尚、本実施形態のテーブル２３６は、言い換えれば、保護情報記憶部４００において、入力欄２３２の入力欄記述子と対応付けられたデータの一覧である。
【０２５６】
項目「ユーザ」の値は、データの入力を行った利用者を示す。図２３の例では、データが手入力により行われた場合と、利用機器２００により行われた場合の両方において、ユーザ情報が取得されていることがわかる。
【０２５７】
項目「手入力」の値は、データの入力が手入力で行われたか、利用機器２００により行われたかを示す。項目「手入力」の値が、Ｍａｎｕａｌである場合にデータが端末装置１００において手入力されたことを示す。
【０２５８】
したがって、図２３に示すテーブル２３６によれば、入力欄２３２に対し、２０１６／９／１にユーザＡがキーボードにより手入力したデータの信頼度は８０であることがわかる。また、テーブル２３６によれば、入力欄２３２に対し、２０１６／９／２にユーザＡが測定器を用いて入力したデータの信頼度は１００であることがわかる。また、テーブル２３６によれば、入力欄２３２に対し、２０１６／９／５にユーザＢが手入力したデータの信頼度は２０であることがわかる。
【０２５９】
したがって、閲覧画面２３０の閲覧者は、入力欄２３１に対するデータの編集が行われたか否か、や、誰が編集を行った、ということを把握することができる。図２３の例では、ユーザＢによるデータの入力が不正に改変であった可能性が高いことを検証できる。
【０２６０】
図２４は、第一の実施形態の閲覧画面が表示された例を示す第二の図である。図２４に示す閲覧画面２３０Ａでは、入力欄毎に、表示されたデータの信頼度を表示している。
【０２６１】
閲覧画面２３０Ａは、入力欄２３１、２３２を有しており、各入力欄に入力されたデータが表示されている。また、閲覧画面２３０Ａでは、入力欄２３１に表示されたデータの信頼度を示す表示部品１０８と、入力欄２３２に表示されたデータの信頼度を示す表示部品１０９と、が、各入力欄と対応付けられて表示されている。
【０２６２】
したがって、閲覧画面２３０Ａでは、入力欄２３２に対して入力されたデータの信頼度が低いことがわかる。図２４の例では、入力欄２３２に対応付けられた表示部品１０９を選択する操作が行われると、端末装置１００の表示が閲覧画面２３０Ａから、テーブル２３６とメッセージ２３７を含む検証画面２３５へ遷移する。
【０２６３】
本実施形態では、端末装置１００において、帳票の表示の形態等を設定するメニュー画面２４０を表示させることができる。また、本実施形態では、このメニュー画面２４０において、帳票の表示の形態として、信頼度表示モード２４１を設定する操作が行われた場合に、閲覧画面２３０Ａのように入力欄毎にデータの信頼度を表示させても良い。
【０２６４】
以上のように、本実施形態によれば、帳票の入力欄に入力されたデータの信頼度を算出し、保持している。したがって、本実施形態によれば、入力欄にデータが入力された後に、信頼度に応じて不正な改変が行われたか否かを検証させることができる。
【０２６５】
また、本実施形態によれば、データと機器記述子とが対応付けられているか否かによって、データが利用機器２００により入力されたものであるか、手入力されたものであるかを判別することができる。したがって、本実施形態によれば、データの入力の履歴において、どのデータが利用機器２００の測定値として入力された値であり、どのデータが端末装置１００において利用者が直接入力した値であるかを閲覧者に示すことができる。
【０２６６】
さらに、本実施形態によれば、帳票を出力する際には、保護情報記憶部４００に格納されたデータを入力欄と対応するデータとして出力する。したがって、本実施形態によれば、帳票に対するデータの編集を禁止することができる。また、本実施形態によれば、データが取得後に編集されていない値を帳票に反映させることができる。言い換えれば、本実施形態によれば、入力欄に入力されたデータをそのまま帳票に出力することができる。
【０２６７】
（第二の実施形態）
以下に図面を参照して第二の実施形態について説明する。第二の実施形態では、保護情報記憶部４００Ａが端末装置１００の外部に設けられた点が第一の実施形態と相違する。よって、以下の第二の実施形態の説明では、第一の実施形態との相違点についてのみ説明し、第一の実施形態と同様の機能構成を有するものには、第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
【０２６８】
図２５は、第二の実施形態の端末装置の機能を説明する図である。本実施形態の端末装置１００Ａは、帳票プログラム１１０Ａを有する。帳票プログラム１１０Ａは、帳票処理部１３０Ａを実現する。
【０２６９】
帳票処理部１３０Ａは、保護情報出力部１３７Ａを有する。保護情報出力部１３７Ａは、機器入力用ドライバ１４１や手入力用ドライバ１４２から取得した情報を、サーバ装置９００に設けられた保護情報記憶部４００Ａへ送信する。サーバ装置９００は、端末装置１００とネットワークを介して接続される装置である。帳票システム１０Ａは、端末装置１００Ａとサーバ装置９００とを含む。
【０２７０】
次に、図２６、図２７を参照し、本実施形態の端末装置１００Ａに表示される閲覧画面について説明する。
【０２７１】
図２６は、第二の実施形態の閲覧画面が表示された例を示す第一の図である。図２６の例では、閲覧画面２３０Ｂにおいて、入力欄２３１を選択する操作が行われると、帳票プログラム１１０Ａが表示させる画面とは別のアプリケーションにより、検証ウィンドウ２３５Ａが表示される。
【０２７２】
本実施形態では、このように、帳票プログラム１１０Ａ以外のアプリケーションによって検証ウィンドウ２３５Ａを表示させるため、例えばＰＤＦ（Portable Document Format）ビューアやブラウザ等の既存のビューアアプリケーションを用いることができ、汎用性を高めることができる。
【０２７３】
検証ウィンドウ２３５Ａは、サーバ装置９００において、保護情報記憶部４００Ａに基づき画面データが生成され、端末装置１００Ａに表示されても良い。また、検証ウィンドウ２３５Ａは、端末装置１００Ａがサーバ装置９００からネットワークを介して保護情報記憶部４００Ａに格納された入力欄２３１に対するデータの履歴を示す情報を取得し、帳票生成部１３９により画面データを生成して端末装置１００Ａに表示させても良い。
【０２７４】
検証ウィンドウ２３５Ａには、入力欄２３１に対するデータの履歴を示すテーブル２３６と、不正な改変のおそれがあることを示すメッセージ２３７が表示されている。
【０２７５】
尚、図２６の例では、帳票生成部１３９には保護情報記憶部４００ＡのＵＲＬが通知されているものとした。帳票生成部１３９は、例えば、入力欄２３１が選択される操作を受け付けると、通知されたＵＲＬを参照して保護情報記憶部４００Ａへアクセスすれば良い。
【０２７６】
図２７は、第二の実施形態の閲覧画面が表示された例を示す第二の図である。図２７に示す閲覧画面２３０Ｂは、例えば印刷プレビュー画面として表示される。
【０２７７】
閲覧画面２３０Ｂでは、入力欄２３１と対応付けられた表示部品２７０が表示されている。図２７の例では、表示部品２７０は、入力欄２３１に対して入力されたデータが格納されている保護情報記憶部４００ＡのＵＲＬを示すＱＲコード（登録商標）である。
【０２７８】
したがって、閲覧画面２３０Ｂを印刷した場合には、入力欄２３１の近傍にＱＲコード（表示部品）２７０が印刷された帳票が出力される。
【０２７９】
この場合、例えば、帳票に印刷されたＱＲコード２７０を、端末装置１００Ａ等の有するＱＲコードリーダ２７１で読み取ることで、入力欄２３１に対するデータの入力の履歴を示すテーブル２３６を含む検証ウィンドウ２３５Ａを表示させることができる。
【０２８０】
尚、図２７の例では、保護情報記憶部４００ＡのＵＲＬは、予め帳票生成部１３９に通知されているものとした。
【０２８１】
次に、本実施形態の保護情報記憶部４００Ａについて説明する。本実施形態の保護情報記憶部４００Ａに格納される保護情報は、保護情報記憶部４００ＡのＵＲＬ等の情報を含んでいても良い。
【０２８２】
以下に、本実施形態の保護情報記憶部４００Ａと、保護情報について説明する。図２８は、第二の実施形態の保護情報を説明する図である。尚、図２８では、データが利用機器２００から端末装置１００Ａへ入力された場合の保護情報の例を示している。
【０２８３】
本実施形態の保護情報２８０は、保護情報を識別するための識別子７１−１と、入力されたデータ７１−２と、利用機器２００の機器記述子７１−３と、入力欄を特定する入力欄記述子７１−４と、信頼度７１−５とを含む。
【０２８４】
また、本実施形態の保護情報２８０は、アプリ識別子２８０−１、端末識別子２８０−２、取得日時２８０−３、取得場所２８０−４、ＵＲＬ（Uniform Resource Locator）２８０−５を含む。
【０２８５】
アプリ識別子２８０−１は、帳票プログラム１１０の識別子を示し、複数のバージョンや複数の種類の帳票プログラム１１０に対応させたときに、どの帳票プログラム１１０により入力されたデータであるかを示す。アプリ識別子２８０−１は、保護情報出力部１３７Ａが情報を保護情報記憶部４００Ａへ出力する際に、書き込む。
【０２８６】
端末識別子２０６−２は、データが入力された端末装置１００Ａの識別子である。取得日時２８０−３は、データを取得した日時を示す。取得場所２８０−４は、データが入力されたときの端末装置１００Ａの位置を示す。端末装置１００Ａの位置は、例えば端末装置１００Ａの位置を示す緯度・経度で示されても良いし、端末装置１００Ａが存在する居室の名称等で示されても良い。言い換えれば、取得場所２８０−４は、データが端末装置１００Ａに入力された場所を示す。ＵＲＬ２８０−５は、保護情報記憶部４００Ａの格納先を示す。
【０２８７】
図２９は、第二の実施形態の保護情報記憶部の一例を示す図である。図２９に示す保護情報記憶部４００Ａでは、保護情報出力部１３７Ａから出力された情報と、信頼度算出部１３６から出力された信頼度とが対応付けられた保護情報として格納される。
【０２８８】
本実施形態の保護情報は、図２８で示すように、情報の項目として、情報の識別子（ＩＤ）、入力欄記述子、機器記述子、アプリ識別子、入力されたデータ、取得場所、取得日時、ＵＲＬ、信頼度を含む。
【０２８９】
以上のように、本実施形態では、保護情報記憶部４００Ａを外部のサーバ装置９００に設けることで、保護情報記憶部４００Ａに格納されたデータをビッグデータとして活用することができる。
【０２９０】
（第三の実施形態）
以下に図面を参照して第三の実施形態について説明する。第三の実施形態では、機器制御組込部が、信頼度算出部と保護情報出力部と保護領域生成部の機能を機器入力用ドライバに組み込む点が、第一の実施形態と相違する。よって、以下の第三の実施形態の説明では、第一の実施形態との相違点についてのみ説明し、第一の実施形態と同様の機能構成を有するものには、第一の実施形態の説明で用いた符号と同様の符号を付与し、その説明を省略する。
【０２９１】
図３０は、第三の実施形態の端末装置の機能を説明する図である。本実施形態の端末装置１００Ｂは、帳票プログラム１１０Ｂを有する。帳票プログラム１１０Ｂは、帳票処理部１３０Ｂを実現する。
【０２９２】
本実施形態の帳票処理部１３０Ｂは、記述子抽出部１３１、機器情報取得部１３２、機器発見部１３３、機器制御組込部１３４Ａ、データ取得部１３５、帳票生成部１３９、
出力部１６０を有する。
【０２９３】
本実施形態の機器制御組込部１３４Ａは、画面定義情報において、データが保護対象とされていた場合、ドライバデータベース５２０から、利用機器２００と対応するドライバを取得し、機器入力用ドライバ１４１として、端末装置１００Ｂへ組み込む。
【０２９４】
このとき、本実施形態の機器制御組込部１３４Ａは、ドライバデータベース５２０から取得したドライバに対して、信頼度算出部１３６、保護情報出力部１３７、保護領域生成部１３８、データ送受信部１６１の機能も組み込む。
【０２９５】
本実施形態のデータ送受信部１６１は、機器入力用ドライバ１４１Ａから帳票処理部１３０Ｂに対してデータを送信し、帳票処理部１３０Ｂから機器入力用ドライバ１４１Ａに対してデータの識別に必要な情報を受信する。
【０２９６】
具体的には、機器制御組込部１３４Ａは、ドライバデータベース５２０から、信頼度算出部１３６、保護情報出力部１３７、保護領域生成部１３８、データ送受信部１６１のそれぞれに対応する記述を取得し、ドライバへ組み込む。そして、機器制御組込部１３４Ａは、各部の機能を組み込んだドライバを、機器入力用ドライバ１４１Ａとして、端末装置１００Ｂに組み込む。
【０２９７】
本実施形態では、以上のように、機器入力用ドライバ１４１Ａ側で、保護情報記憶部４００に対するデータの入出力を行うようにした。
【０２９８】
このようにすることで、保護情報記憶部４００に係る処理と、帳票処理部１３０Ｂによる処理のそれぞれにおいて、動作する領域を分離させることができる。言い換えれば、本実施形態では、保護情報記憶部４００に格納されている保護情報は、帳票プログラム１１０Ｂからは操作できない領域で管理されることになる。
【０２９９】
よって、本実施形態によれば、帳票プログラム１１０によって、保護情報記憶部４００に対して意図しない変更が加えられることを防止できる。
【０３００】
尚、図３０の例では、信頼度算出部１３６、保護情報出力部１３７、保護領域生成部１３８、データ送受信部１６１は、機器入力用ドライバ１４１Ａが有するものとしているが、これに限定されない。本実施形態では、信頼度算出部１３６、保護情報出力部１３７、保護領域生成部１３８、データ送受信部１６１を手入力用ドライバ１４２に備えさせても良い。この場合、機器制御組込部１３４Ａは、機器入力用ドライバ１４１Ａに上記各部を組み込む際に、手入力用ドライバ１４２にも、同様に上記各部を組み込んでも良い。
【０３０１】
開示の技術では、以下に記載する付記のような形態が考えられる。
（付記１）
帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを動的に組み込む機器制御組込部と、
前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納するデータ取得部と、
前記機器から取得したデータを、前記入力欄記述子と対応付けて保護記憶領域へ格納する情報出力部と、を有する情報処理装置。
（付記２）
前記記憶領域は、格納されたデータの編集が可能な記憶領域であり、前記保護記憶領域は、格納されたデータの編集が禁止された記憶領域である、付記１記載の情報処理装置。
（付記３）
前記機器制御組込部は、
前記入力欄を含む帳票画面の定義として記述された画面定義情報において、保護指定子により、前記機器から取得したデータが保護対象とされていた場合に、前記情報出力部により、前記機器から取得したデータと、前記入力欄記述子とを前記保護記憶領域へ格納させる、付記２記載の情報処理装置。
（付記４）
入力欄記述子と、前記入力欄記述子と対応する入力欄に入力されたデータとを取得し、前記入力されたデータの信頼度を算出する信頼度算出部を有し、
前記信頼度算出部は、
前記機器のハードウェアに関する信頼度を示すハードウェア種別情報と、前記機器制御モジュールに関する信頼度を示すソフトウェア種別情報と、前記機器の利用者に関する信頼度を示すユーザ種別情報と、に基づき、前記データの信頼度を算出し、
前記保護記憶領域において、前記入力欄記述子と一致する入力欄記述子に、前記信頼度とを対応付けて格納する、付記３記載の情報処理装置。
（付記５）
前記電子帳票の表示要求を受けて、前記電子帳票を表示させる帳票生成部を有し、
前記帳票生成部は、
前記画面定義情報から、入力欄を特定する入力欄記述子を抽出し、前記保護記憶領域において、前記入力欄記述子と対応付けられたデータを、前記帳票画面の前記入力欄に表示させる、付記４記載の情報処理装置。
（付記６）
前記帳票生成部は、
前記画面定義情報に、前記機器を特定する機器記述子が含まれるとき、前記帳票画面に、前記入力欄に表示されたデータが前記機器から取得したデータであることを示す第一の表示部品を表示させる、付記５記載の情報処理装置。
（付記７）
前記帳票生成部は、
前記保護記憶領域において、前記入力欄記述子と対応付けられた信頼度が所定の閾値未満であるとき、前記帳票画面において、前記入力欄と対応付けて前記信頼度が低いことを示す第二の表示部品を表示させる、付記５又は６記載の情報処理装置。
（付記８）
前記帳票生成部は、
前記第二の表示部品を選択されたとき、前記保護記憶領域において、前記入力欄記述子と対応付けられたデータの一覧を表示させる、付記７記載の情報処理装置。
（付記９）
前記一覧は、
前記入力欄記述子と対応付けられたデータと、前記データの信頼度と、前記データが前記機器から取得したデータであるか否かを示す情報と、を含む、付記８記載の情報処理装置。
（付記１０）
前記機器制御組込部は、
前記画面定義情報に、前記機器を特定する機器記述子が含まれるか否かを判定し、前記機器記述子が含まれる場合に、前記機器情報に基づいて前記機器を発見する、付記３乃至９の何れか一項に記載の情報処理装置。
（付記１１）
帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを動的に組み込む処理と、
前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納する処理と、
前記機器から取得したデータを、前記入力欄記述子と対応付けて保護記憶領域へ格納する処理と、をコンピュータに実行させる情報処理プログラム。
（付記１２）
情報処理装置と、サーバ装置とを有する情報処理システムであって、
前記サーバ装置は、機器制御モジュールが格納された記憶装置を有し、
前記情報処理装置は、
帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを前記サーバ装置から動的に組み込む機器制御組込部と、
前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納するデータ取得部と、
前記機器から取得したデータを、前記入力欄記述子と対応付けて保護記憶領域へ格納する情報出力部と、を有する情報処理システム。
（付記１３）
情報処理装置と、サーバ装置とを有する情報処理システムであって、
前記情報処理装置は、
帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを前記サーバ装置から動的に組み込む機器制御組込部と、
前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納するデータ取得部と、
前記機器から取得したデータを、前記入力欄記述子と、を前記サーバ装置へ送信し、
前記サーバ装置は、前記機器から取得したデータを、前記入力欄記述子と、を対応付けて、保護記憶領域へ格納する、情報処理システム。
（付記１４）
コンピュータによる情報処理方法であって、該コンピュータが、
帳票画面の入力欄の属性として記述された機器情報に基づいて機器を発見し、前記機器と対応する機器制御モジュールを動的に組み込み、
前記機器から取得したデータを、前記入力欄を特定する入力欄記述子と対応付けて記憶領域へ格納し、
前記機器から取得したデータを、前記入力欄記述子と対応付けて保護記憶領域へ格納する、情報処理方法。
（付記１５）
帳票画面を表示させる帳票処理部と情報の送受信を行う送受信部と、
前記帳票画面の入力欄に入力されたデータを、前記入力欄を特定する入力欄記述子と対応付けて、データ格納後の編集が禁止された所定の記憶領域に格納する情報出力部と、
を有し、
前記送受信部は、
前記帳票画面の入力欄に入力されたデータを取得すると、前記データを前記帳票処理部へ送信し、
前記帳票処理部から、前記入力欄を特定する入力欄記述子を受信すると、前記所定の記憶領域において、前記入力欄記述子と対応付けられたデータを前記帳票処理部へ送信する、情報処理装置。
【０３０２】
本発明は、具体的に開示された実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【０３０３】
１０  帳票システム
１００、１００Ａ、１００Ｂ  端末装置
１１０、１１０Ａ、１１０Ｂ  帳票プログラム
１２０  画面定義情報記述部
１３０、１３０Ａ、１３０Ｂ  帳票処理部
１３１  記述子抽出部
１３２  機器情報取得部
１３３  機器発見部
１３４、１３４Ａ  機器制御組込部
１３５  データ取得部
１３６  信頼度算出部
１３７  保護情報出力部
１３８  保護領域生成部
１３９  帳票生成部
１４０  記憶部
１４１、１４１Ａ  機器入力用ドライバ
１４２  手入力用ドライバ
２００  利用機器
３００  入力データ記憶部
４００、４００Ａ  保護情報記憶部
５００  サーバ装置
５１０  機器情報データベース
５２０  ドライバデータベース
【図１】
2018054503.tif 000003
【図２】
2018054503.tif 000004
【図３】
2018054503.tif 000005
【図４】
2018054503.tif 000006
【図５】
2018054503.tif 000007
【図６】
2018054503.tif 000008
【図７】
2018054503.tif 000009
【図８】
2018054503.tif 000010
【図９】
2018054503.tif 000011
【図１０】
2018054503.tif 000012
【図１１】
2018054503.tif 000013
【図１２】
2018054503.tif 000014
【図１３】
2018054503.tif 000015
【図１４】
2018054503.tif 000016
【図１５】
2018054503.tif 000017
【図１６】
2018054503.tif 000018
【図１７】
2018054503.tif 000019
【図１８】
2018054503.tif 000020
【図１９】
2018054503.tif 000021
【図２０】
2018054503.tif 000022
【図２１】
2018054503.tif 000023
【図２２】
2018054503.tif 000024
【図２３】
2018054503.tif 000025
【図２４】
2018054503.tif 000026
【図２５】
2018054503.tif 000027
【図２６】
2018054503.tif 000028
【図２７】
2018054503.tif 000029
【図２８】
2018054503.tif 000030
【図２９】
2018054503.tif 000031
【図３０】
2018054503.tif 000032