JP2024081008A - Document management device, document management method, image forming device, and program - Google Patents
Document management device, document management method, image forming device, and program Download PDFInfo
- Publication number
- JP2024081008A JP2024081008A JP2022194406A JP2022194406A JP2024081008A JP 2024081008 A JP2024081008 A JP 2024081008A JP 2022194406 A JP2022194406 A JP 2022194406A JP 2022194406 A JP2022194406 A JP 2022194406A JP 2024081008 A JP2024081008 A JP 2024081008A
- Authority
- JP
- Japan
- Prior art keywords
- document
- information
- related information
- management device
- target
- 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.)
- Pending
Links
- 238000007726 management method Methods 0.000 title claims description 108
- 230000006870 function Effects 0.000 claims description 34
- 230000004044 response Effects 0.000 claims description 3
- 238000009795 derivation Methods 0.000 claims 3
- 238000000034 method Methods 0.000 description 142
- 230000008569 process Effects 0.000 description 127
- 238000012795 verification Methods 0.000 description 70
- 238000012545 processing Methods 0.000 description 58
- 238000010586 diagram Methods 0.000 description 20
- 230000008520 organization Effects 0.000 description 11
- 230000008859 change Effects 0.000 description 6
- 230000010365 information processing Effects 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 6
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】ブロックチェーンサービスと連携する画像形成装置の構成において、文書を、その最新性も含めて検証する。【解決手段】情報をブロックごとに少なくともその前のブロックと関連付けて管理するブロックチェーンサービスと連携する文書管理装置が、登録対象である文書に関する文書関連情報を前記ブロックチェーンサービスに登録し、対象となる対象文書に関する文書関連情報を、ブロックチェーンサービスから取得する。ブロックチェーンサービスから取得した文書関連情報に基づいて、対象文書が最新か否かを判定し、対象文書の文書関連情報を取得できなかった場合、及び、対象文書が最新でないと判定された場合には、対象文書の検証の失敗を出力する。【選択図】図14B[Problem] In a configuration of an image forming device that cooperates with a blockchain service, a document is verified, including its up-to-dateness. [Solution] A document management device that cooperates with a blockchain service that manages information by associating each block with at least the previous block registers document-related information for a document to be registered in the blockchain service, and obtains document-related information for a target document from the blockchain service. Based on the document-related information obtained from the blockchain service, it is determined whether the target document is up-to-date, and if the document-related information for the target document cannot be obtained or if it is determined that the target document is not up-to-date, a failure to verify the target document is output. [Selected Figure] Figure 14B
Description
本発明は、ブロックチェーンを使用した電子データの記録改ざんに対応する文書管理装置、文書管理方法と画像形成装置、プログラムに関する。 The present invention relates to a document management device, a document management method, an image forming device, and a program that use blockchain to deal with tampering with electronic data records.
電子ファイルの改ざんを防止するために、ブロックチェーンを利用することで電子ファイルの内容変更に信頼性を担保することが知られている(特許文献1を参照)。 It is known that in order to prevent tampering with electronic files, the use of blockchain can be used to ensure reliability in changes to the contents of electronic files (see Patent Document 1).
しかしながら、文書を検証するシステムでは、文書識別情報がブロックチェーン上に登録されているか否かの確認しかしていない。そのため、登録済みの文書の内容を更新して再度登録したとしても、更新前の文書と更新後の文書では真正性としては同じ検証結果になる。よって、内容が古い文書をユーザが信頼する危険性を避けるために、内容の最新性についても検証する必要がある。 However, systems that verify documents only check whether the document identification information is registered on the blockchain. Therefore, even if the contents of a registered document are updated and re-registered, the verification result for the authenticity of the document before and after the update will be the same. Therefore, to avoid the risk of users trusting documents with outdated content, it is necessary to also verify the freshness of the content.
本願発明は、ブロックチェーンサービスを利用して、文書の真正性に加え、内容の最新性の検証も可能とすることを目的とする。 The present invention aims to use blockchain services to make it possible to verify not only the authenticity of documents, but also the currency of their contents.
上記目的を達成するために本発明は以下の構成を有する。すなわち、本発明の一側面によれば、情報をブロックごとに少なくともその前のブロックと関連付けて管理するブロックチェーンサービスと連携する文書管理装置であって、
登録対象である文書に関する文書関連情報を前記ブロックチェーンサービスに登録する登録手段と、
検証の対象となる対象文書に関する前記文書関連情報を、前記ブロックチェーンサービスから取得する取得手段と、
前記ブロックチェーンサービスから取得した前記文書関連情報に基づいて、前記対象文書が最新か否かを判定する判定手段と、
前記取得手段により前記対象文書の前記文書関連情報を取得できなかった場合、及び、前記判定手段により前記対象文書が最新でないと判定された場合には、前記対象文書の検証の失敗を出力する出力手段と、を有する
ことを特徴とする文書管理装置が提供される。
In order to achieve the above object, the present invention has the following configuration. That is, according to one aspect of the present invention, there is provided a document management device that cooperates with a block chain service that manages information for each block by associating it with at least the previous block,
A registration means for registering document-related information relating to a document to be registered in the blockchain service;
An acquisition means for acquiring the document-related information relating to a target document to be verified from the block chain service;
A determination means for determining whether the target document is the latest or not based on the document-related information acquired from the block chain service;
A document management device is provided, which is characterized by having an output means for outputting a failure to verify the target document when the acquisition means is unable to acquire the document-related information of the target document and when the determination means determines that the target document is not up-to-date.
本発明によれば、ブロックチェーンサービスを利用して、文書の真正性に加え、内容の最新性の検証も可能となる。 According to the present invention, it is possible to use blockchain services to verify not only the authenticity of documents but also the up-to-dateness of their contents.
以下、添付図面を参照して実施形態を詳しく説明する。なお、以下の実施形態は特許請求の範囲に係る発明を限定するものではない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。 The following embodiments are described in detail with reference to the attached drawings. Note that the following embodiments do not limit the invention according to the claims. Although the embodiments describe multiple features, not all of these multiple features are necessarily essential to the invention, and multiple features may be combined in any manner. Furthermore, in the attached drawings, the same reference numbers are used for the same or similar configurations, and duplicate explanations are omitted.
<実施形態1>
●文書管理システムの構成
以下、これら種々の問題を解決する本発明を実施するための形態について図面を用いて説明する。図1は、ブロックチェーンサービスに関連するシステム(印刷システム或いは文書管理システムとも呼ぶ)の全体図である。画像形成装置101、PC102,文書管理装置103がLAN100に接続されイントラネット内に存在し、インターネット110を介して、ブロックチェーン装置111と通信を行う。なお、ここではインターネット110を介す構成を示しているが同じイントラネット内にある構成であっても良い。ブロックチェーン装置111はブロックチェーンに文書情報を格納したトランザクションを登録、検証するためのブロックチェーンサービスを提供するための装置である。なおトランザクションに含まれる文書情報は文書そのものを表す情報ではなく当該文書に関連した情報であるので、文書関連情報とも呼ぶ。PC102は、ウェブブラウザを利用した画像形成装置101の管理や、プリントドライバを利用した画像形成装置101への印刷や、文書管理装置103の電子文書の管理に利用される。
<Embodiment 1>
●Configuration of the document management system Below, an embodiment of the present invention that solves these various problems will be described with reference to the drawings. FIG. 1 is an overall view of a system (also called a printing system or a document management system) related to a blockchain service. An
ブロックチェーン装置111は画像形成装置101で生成された印刷文書や、文書管理装置103で保存された文書に関する情報をブロック単位にまとめて管理する装置であり文書の正当性を保障するためのブロックチェーンサービスを提供する装置である。文書管理装置103は、電子文書を管理(閲覧、新規保存、更新、削除)するための文書管理サービスを提供する。文書管理装置103は、画像形成装置101やPC102で生成された電子文書を保存する装置であり、保存済みの文書に対して内容変更された文書を更新して保存することで改訂記録も管理する。
The
ブロックチェーン装置111および文書管理装置103が提供するサービスはクラウドサービスとして提供されてもよく、その場合、複数のコンピューターを仮想化することで1つの装置としサービスを提供する形態でも良い。
The services provided by the
図2は、情報処理装置の一例である画像形成装置101のハードウェア構成を示すブロック図である。Central Processing Unit(CPU)201を含む制御部200は、画像形成装置101全体の動作を制御する。CPUのことを処理部或いはプロセッサと呼ぶこともある。CPU201は、Read Only Memory(ROM)202に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御を行う。Randam Access Memory(RAM)203は、CPU201の主メモリ、ワークエリア等の一時記憶領域として用いられる。Hard Disc Drive(HDD)204は、画像データや各種プログラム、あるいは後述する各種データを記憶する。画像形成装置101は情報処理装置としてのハードウェア構成を有しているが、これに加え以下のハードウェア構成をさらに有する。
Figure 2 is a block diagram showing the hardware configuration of the
操作部I/F205は、操作部209と制御部200とを接続する。プリンタI/F206は、プリンタ210と制御部200とを接続する。プリンタ210で印刷すべき画像データはプリンタI/F206を介して制御部200から転送され、プリンタ210において記録媒体上に印刷される。スキャナI/F207は、スキャナ211と制御部200とを接続する。スキャナ211は、原稿上の画像を読み取って画像データを生成し、スキャナI/F207を介して制御部200に入力する。
The operation unit I/F 205 connects the
ネットワークI/F208は、制御部200(すなわち画像形成装置101)をLAN100に接続する。ネットワークI/F208は、LAN100上の外部装置に画像データや情報を送信したり、LAN100上の外部装置から各種情報を受信したりする。
図3は、情報処理装置の一例である文書管理装置103のハードウェア構成を表すブロック図である。なお、ここでは例示していないが、情報処理装置の他の一例であるPC102とブロックチェーン装置111も文書管理装置103と同じハードウェア構成でもよい。CPU302は装置全体の制御を行う。CPU302はHDD305に格納されているアプリケーションプログラムやOS等を実行し、RAM303にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。ROM304は記憶部であり、内部には、基本I/Oプログラム等の各種データを記憶する。RAM303は一時記憶部であり、CPU302の主メモリ、ワークエリア等として機能する。HDD305は外部記憶部の一つであり、大容量メモリとして機能し、オフィスアプリケーションやWebブラウザー等のアプリケーションプログラム、OS、関連プログラム等を格納している。
The network I/
FIG. 3 is a block diagram showing the hardware configuration of the
ディスプレイ306は表示デバイスであり、指示入力部であるキーボード/マウス307から入力したコマンド等を表示したりするものである。インターフェース308は外部装置I/Fであり、プリンタ、USB機器、周辺機器を接続する。システムバス301は、装置内におけるデータの流れを司るものである。ネットワークインターフェースカード(以降NIC)309は、LAN100を介して外部装置とのデータのやり取りを行う。
The
なお、情報処理装置の構成はその一例であり、図2および図3の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてROM304、RAM303、HDD305などで変更することも可能である。本実施形態中で特に明記しない場合は、各種処理はROM304やHDD305等に記憶されているプログラムをRAM303等にロードし、CPU302で実行することによって実現されるものとする。
The configuration of the information processing device is one example, and is not limited to the configuration examples of Figures 2 and 3. For example, the storage destination of data and programs can be changed to
●画像形成装置のソフトウェア
図4は、画像形成装置101において本発明に関連するソフトウェア構成について示したブロック図である。特に断りのない限り、各処理部はROM202に記憶された制御プログラムをCPU201が実行することにより実現されるソフトウェア機能である。
4 is a block diagram showing the software configuration related to the present invention in the
ローカルUI制御部400は、操作部I/F205を介して操作部209を制御する機能を提供する。ローカルUI制御部400はユーザが操作部209で操作した内容をユーザ認証処理部402やアプリケーション404に通知する。ローカルUI制御部400はユーザ認証処理部402やアプリケーションからの画面表示依頼を受けて、操作部209へ画面を表示するための制御を行う。ユーザ認証処理部402、アプリケーション404はローカルUI制御部400を介して操作部209に画面を表示する。
The local
リモートUI制御部401は、ネットワークI/F208を介してPC102上のウェブブラザに対してウェブページを提供する。リモートUI制御部401はユーザがウェブブラウザで操作した内容をユーザ認証処理部402やアプリケーション404に通知する。リモートUI制御部401はユーザ認証処理部402やアプリケーション404からの依頼を受けて、ウェブブラウザに対してウェブページを表示するための制御を行う。ユーザ認証処理部402、アプリケーション404はリモートUI制御部401を介してウェブブラウザに対してウェブページを表示させる。
The remote
ユーザ認証処理部402は、画像形成装置101を利用するユーザを認証するための機能を提供する。ユーザ認証処理部402は、ユーザから入力されたユーザ名とパスワードといった認証情報を受信し、ユーザ情報DB403内に保持しているユーザ情報と比較することでユーザ認証を行う。また、ユーザ認証処理部402は、ブロックチェーンアプリケーション406からの指示を受けて、ブロックチェーンアプリケーション406にクレデンシャル情報405を渡す。クレデンシャル情報405は、ユーザが組織単位でブロックチェーン装置111を利用する正規のユーザであることを保証するためのクレデンシャル情報である。ここでは、1つの画像形成装置101を1つの組織で利用する構成で示しているが、複数のユーザ組織で画像形成装置101を利用する場合は、ユーザ組織の数だけ存在する構成を取れば良い。あるいは、ユーザ単位でクレデンシャル情報を用意する構成を取っても良い。
The user
ユーザ情報DB403は、画像形成装置101を利用するユーザに関する情報であるユーザ情報を保持する機能を提供する。ユーザ情報DB403は、HDD204内に構築され、格納される情報はHDD204に記憶される。ユーザ情報DB403に格納しているユーザ情報テーブルの一例ユーザ情報テーブルの一例を表1に示す。
The
表1:ユーザ情報テーブル
ユーザ名 パスワード
UserA 559aead0
UserB df7e70e5
。
Table 1: User information table
Username Password
UserA 559aed0
UserB df7e70e5
.
表1のユーザ情報テーブルは、「ユーザ名」と「パスワード」から構成されており、「ユーザ名」はユーザを一意に識別するための名称、「パスワード」はユーザ認証で利用するパスワードであり、ユーザ毎に任意の値を設定することができる。 The user information table in Table 1 is composed of "user name" and "password." "User name" is a name used to uniquely identify a user, and "password" is a password used for user authentication, and any value can be set for each user.
アプリケーション404は、文書を受信しプリンタI/F206を介して印刷する機能、スキャンした文書を電子文書に変換しHDD204に保存する機能やPC102や文書管理装置に送信する機能、もしくはコピーとして印刷する機能を提供する。さらにブロックチェーンアプリケーション406を介してブロックチェーン装置111に文書(印刷文書、保存/送信された電子文書)の情報を登録する機能や、スキャンした文書がブロックチェーン装置111に登録済みかを検証する機能を提供する。アプリケーション404は、ブロックチェーン装置111に登録の有無を問い合わる際に必要となる問い合わせ情報に対応する埋込情報を文書に埋め込んだ状態で印刷することができる。印刷物の一例として文書を示すが、文書以外の印刷物も同様に扱うことができる。アプリケーション404はスキャナI/F207を介してスキャナ211を制御したり、ネットワークI/F208を介してLAN100へデータを送信したりすることで、外部装置(例えばPC102)へスキャンデータの送信を行う。アプリケーション404はローカルUI制御部400およびリモートUI制御部401へ画面情報を提供する。
The
アプリケーション404はローカルUI制御部400を介して操作部209に表示された画面への入力を受け付け、それに応じて処理を行う。また、アプリケーション404はリモートUI制御部401を介してPC102上のウェブブラザからの入力を受け付け、それに応じて処理を行う。なお、文書の印刷、検証と言った機能を1つのアプリケーションに備える例を説明するが、それらの機能を複数のアプリケーションに分担させても良い。例えば、文書の登録を行うスキャンアプリケーションと、印刷を行う印刷アプリケーションのように分ける形態が考えられる。
The
ブロックチェーンアプリケーション406は、ブロックチェーン連携するためのアプリケーションであり、アプリケーション404からの指示を受け、ブロックチェーン装置111に文書の情報を登録、検証する機能を提供する。ブロックチェーンアプリケーション406は、アプリーションからブロックチェーン装置111に対する指示を受けた際に、ユーザ認証処理部402からクレデンシャル情報405と、クレデンシャル情報管理部410からクレデンシャル情報407も受け取る。ブロックチェーンアプリケーション406は、ブロックチェーン装置111に指示を送る際に、受け取ったクレデンシャル情報405、407も送信する。ブロックチェーン装置111で送信したクレデンシャル情報が検証され、検証が成功した場合だけ、ブロックチェーン装置111に送信した指示が実行される。ポリシー設定408は、ブロックチェーン装置111を用いた処理に関する設定であり、ブロックチェーンアプリケーション406が参照する。ポリシー設定408は、画像形成装置101の管理者が設定する。もしくは他の構成例として、ブロックチェーン装置111の管理者が設定したポリシー設定をブロックチェーン装置111からダウンロードし、ポリシー設定408に設定する構成としても良い。あるいは、ポリシー設定408は、システム開発者によってあらかじめ画像形成装置101に組み込まれる構成でも良い。
The
クレデンシャル情報407は、画像形成装置101がブロックチェーン装置111を利用する正規の装置であることを保証するためのクレデンシャル情報である。クレデンシャル情報407は、例えば本システムを運営する団体が装置のメーカーごとに発行してもよい。クレデンシャル情報407は画像形成装置101のファームウェア内に組み込んだ状態で出荷してもよいし、出荷後に画像形成装置101へインストールしてもよい。なお、クレデンシャル情報407はデジタル証明書や秘密鍵と公開鍵の鍵ペアでもよいし、予め定められたデータ値でもよく、クレデンシャル情報407の実態に制限はない。クレデンシャル情報407はアプリケーションごとに異なる実態であってもよい。クレデンシャル情報管理部410は、画像形成装置101内のクレデンシャル情報407を管理する機能を提供する。本実施例ではクレデンシャル情報管理部410は、ブロックチェーンアプリケーション406からの指示を受けて、ブロックチェーンアプリケーション406にクレデンシャル情報407を渡す。
The
●文書管理装置のソフトウェア
図5は、文書管理装置103におけるソフトウェア構成について示したブロック図である。
Software of the Document Management Apparatus FIG. 5 is a block diagram showing the software configuration of the
UI制御部501は、NIC309を介してPC102上のウェブブラザに対してウェブページを提供する。UI制御部501はユーザがウェブブラウザで操作した内容をユーザ認証処理部502や文書管理部504に通知する。UI制御部501はユーザ認証処理部502や文書管理部504からの依頼を受けて、ウェブブラウザに対してウェブページを表示するための制御を行う。ユーザ認証処理部502、文書管理部504はUI制御部501を介してウェブブラウザに対してウェブページを表示させる。なお、ここでは、NIC309を介してUIを提供する例を示しているが、ディスプレイ306にUIを提供する構成でも良い。
The
ユーザ認証処理部502は、文書管理装置103を利用するユーザを認証するための機能を提供する。ユーザ認証処理部502はユーザからユーザ名とパスワードの入力といった認証情報を受信し、ユーザ情報DB503内に保持しているユーザ情報と比較することでユーザ認証を行う。また、ユーザ認証処理部502は、ブロックチェーンプラグイン506からの指示を受けて、ブロックチェーンプラグイン506にクレデンシャル情報505を渡す。クレデンシャル情報505は、ユーザが組織単位でブロックチェーン装置111を利用する正規のユーザであることを保証するためのクレデンシャル情報である。ここでは、1つの文書管理装置103を1つの組織で利用する構成で示しているが、複数のユーザ組織で文書管理装置103を利用する場合は、ユーザ組織の数だけ存在する構成を取れば良い。あるいは、ユーザ単位でクレデンシャル情報を用意する構成を取っても良い。
The user
ユーザ情報DB503は、画像形成装置101を利用するユーザに関する情報であるユーザ情報を保持する機能を提供する。ユーザ情報DB503は、HDD305内に構築され、格納される情報はHDD305に記憶される。ユーザ情報DB503に格納しているユーザ情報テーブルの一例を表2に示す。
The
表2:ユーザ情報テーブル
ユーザ名 パスワード
UserC f75932f2
UserD 3f39d5c3
。表2のユーザ情報テーブルは、「ユーザ名」と「パスワード」から構成されており、「ユーザ名」はユーザを一意に識別するための名称、「パスワード」はユーザ認証で利用するパスワードであり、ユーザ毎に任意の値を設定することができる。なお、ここでは表1に示したユーザ情報DB403のユーザ情報と異なるユーザ情報テーブルの例を示したが、ユーザ情報DB503のユーザ情報はユーザ情報DB403のユーザ情報と同期する構成でも良い。他にも、ユーザ情報DB403とユーザ情報DB503のどちらか一方のユーザ情報DBを利用する構成や、あるいは外部にユーザ情報DBを配置してそこからユーザ情報を参照する構成でも良い。
Table 2: User information table
Username Password
UserC f75932f2
UserD 3f39d5c3
The user information table in Table 2 is composed of "user name" and "password", where "user name" is a name for uniquely identifying a user and "password" is a password used for user authentication, and any value can be set for each user. Note that, although an example of a user information table different from the user information in
文書管理部504は、文書の閲覧、ダウンロード、文書の新規保存、文書の更新、文書の削除といった文書管理機能を提供する。さらにブロックチェーンプラグイン506を介してブロックチェーン装置111に文書(新規保存、更新保存された電子文書)の情報を登録する機能や、保存済みの電子文書がブロックチェーン装置111に登録済みかを検証する機能を提供する。
The
なお文書情報そのものは文書管理装置103に保存されてもよいし、文書管理装置103に接続されたデータベースに保存されてもよい。保存される文書情報は最新のバージョンのみであってもよいし、すべてのバージョンであってもよい。また文書管理装置103は文書の編集機能を持たず、PC102等の他の装置から受信した文書情報を管理するだけであってもよいし、編集機能を持っていてもよい。
The document information itself may be stored in the
ブロックチェーンプラグイン506は、ブロックチェーン連携するためのプラグインであり、文書管理部504からの指示を受け、ブロックチェーン装置111に文書の情報を登録、検証する機能を提供する。ブロックチェーンプラグイン506は、文書管理部504からブロックチェーン装置111に対する指示を受けた際に、ユーザ認証処理部502からクレデンシャル情報505とクレデンシャル情報管理部510からクレデンシャル情報507も受け取る。ブロックチェーンプラグイン506は、ブロックチェーン装置111に指示を送る際に、受け取ったクレデンシャル情報505、507も送信する。ブロックチェーン装置111で送信したクレデンシャル情報が検証され、検証が成功した場合だけ、ブロックチェーン装置111に送信した指示が実行される。
The blockchain plug-in 506 is a plug-in for blockchain integration, and provides the function of receiving instructions from the
クレデンシャル情報507は、文書管理装置103がブロックチェーン装置111を利用する正規の装置であることを保証するためのクレデンシャル情報である。クレデンシャル情報507は、例えば本システムを運営する団体が文書管理サービスのベンダーごとに発行してもよい。クレデンシャル情報507は文書管理装置103のシステム内に組み込んだ構成でもよいし、あとから文書管理装置103へインストールしてもよい。なお、クレデンシャル情報はデジタル証明書や秘密鍵と公開鍵の鍵ペアでもよいし、予め定められたデータ値でもよく、クレデンシャル情報の実態に制限はない。クレデンシャル情報管理部510は、文書管理装置103内のクレデンシャル情報507を管理する機能を提供する。本実施例ではクレデンシャル情報管理部510は、ブロックチェーンプラグイン506からの指示を受けて、ブロックチェーンプラグイン506にクレデンシャル情報507を渡す。
The
●ブロックチェーン
図6は、実施形態1におけるブロックチェーン装置111に保持するトランザクション601とそのトランザクションを複数格納したブロックのデータ構造について示したブロック図である。ブロックチェーン装置111は、ブロックチェーンと呼ばれる方式でデータを管理する装置である。このブロックチェーンは、情報をトランザクションという単位で取り扱い、そのトランザクションを複数まとめたブロックという単位で管理する。
6 is a block diagram showing a
個々のブロックはその前後のブロックとの関連または関連付けが定義されることで、各ブロックが数珠繋ぎの状態を保つように構成される。また、ブロックチェーンはノードと呼ばれる複数のコンピューターで管理されており、それぞれのノードがすべて等しいブロックデータの管理を行う構造となる。このため、ブロックデータの改ざんを行う場合には構成されている複数のノードに対して更新を行わなければならず、対改ざん性の強いデータ管理方法として知られている。なお、ブロックチェーン装置111と記載はしたが、上述の通り複数のコンピューターで構成されている装置であって、それらによってブロックチェーンサービスが提供される。
Each block is configured to maintain a linked state by defining a relationship or association with the blocks before and after it. Blockchain is also managed by multiple computers called nodes, and each node is structured to manage the same block data. For this reason, if block data is to be tampered with, updates must be made to the multiple nodes that make up the block, making it known as a data management method that is highly resistant to tampering. Although we have described it as
本実施形態では、画像形成装置101、および文書管理装置103での文書処理時にブロックチェーン装置111に文書ハッシュ値を含めたトランザクションを送信し、ブロック管理することで、文書の正しい状態を保持する。これにより、文書がある時点においては確かに存在していたことを確認でき、さらに、文書管理装置103内の電子文書に対する改ざんが行われていないかを確認できるようになる。ここでは各トランザクションを識別する情報の一例として文書ハッシュ値を用いるが、通し番号を付与したIDや、タイムスタンプなど、他の情報を基にした識別情報を用いても良い。
In this embodiment, when a document is processed by the
文書をブロックチェーン装置111に登録する際に、画像形成装置101、および文書管理装置103が送信するトランザクション601には、以下の情報を含む。
When registering a document in the
文書ハッシュ値602は、対象の文書から所定のハッシュ関数で算出されたハッシュ値であり、検証時に主に利用される。例えば、印刷文書に関しては、画像形成装置101のクレデンシャル情報407と、印刷時のタイムスタンプを基に算出することができる。電子文書の場合、文書ハッシュ値602は文書ファイル全体から算出されるものである。ただし、これ以外の算出方法を制限するものではない。
The
登録システム情報603は、文書登録を行った画像形成装置101、もしくは文書管理装置103を識別する情報であり、本実施形態ではクレデンシャル情報407、もしくはクレデンシャル情報507のハッシュ値を格納する。
The
文書登録日時604は、文書を登録した時点を表す情報である。ここでは、画像形成装置101もしくは文書管理装置103が登録日時をトランザクションに含める構成を示しているが、ブロックチェーン装置111が登録日時を格納する構成を取っても良い。
The document registration date and
文書登録者605は、文書登録を行ったユーザを表す情報であり、クレデンシャル情報405、もしくはクレデンシャル情報505のハッシュ値を格納する。
The
元文書ハッシュ値606は、文書間の関連を表す情報である。これは、文書管理装置103で電子文書の更新を行った場合や、文書管理装置103に格納されている電子文書を元に印刷を行った場合、印刷物を元にスキャンして電子データ保存などを行った場合に、元となる文書と紐付けを行うために使用する。この例ではそのための情報として元となる文書(元文書)のハッシュ値すなわち元文書ハッシュ値606を格納している。逆に言えば、元文書ハッシュ値606に相当する文書ハッシュ値602に相当する文書が元文書である。なお、文書管理装置103の新規保存のように元となる文書がない場合は、元文書ハッシュ値607には情報を格納しなくても良い。元文書ハッシュ値により表される文書間の関連を派生関係ということもある。
The original
バージョン情報607は、その文書の版を示す値である。これは数字で表されても良く、アルファベットや漢字、それらを織り交ぜた文字列で表されても良い。ただし、検証システム間で値の解釈を一致させるため、その文書の古い版から新しい版に向けて昇順に値が設定されることが望ましい。また、その文書の一連の版について一意に値が設定されるべきである。
The
メジャー・マイナー情報608は、元文書ハッシュ値606で示される文書(以降、元文書)に対しての内容の変更度合いを示す値である。これはメジャー・マイナーといった文字列でも、bool値でも良い。値については、内容について大きな更新があり、元文書を最新と解釈されたくない場合、つまり、元文書の内容の最新性が失われる場合は「メジャー」と設定する。一方、内容について軽微な更新または更新がなく、元文書も最新と解釈して支障がない場合、つまり、元文書の内容の最新性が保たれる場合は「マイナー」と設定する。
Major/
さらにトランザクションに係る処理内容、例えば「印刷」や「複製」、「新規作成」、「更新」といった文書に対する処理をトランザクションに含めてもよいが、処理内容は登録システム情報603などからも推定できるので図6のように特に含めなくともよい。
Furthermore, the process content related to the transaction, for example, document processing such as "printing", "copying", "creating new" and "updating" may be included in the transaction, but the process content can be inferred from the registered
続けて、トランザクション601を保持するブロックの構造についてブロック611を用いて説明する。これは一般的なブロックチェーン構造を模式化したものである。ブロック611には、トランザクション601aを含む複数のトランザクションと、それらのトランザクション601から算出するブロックのハッシュ値612を保持する。
Next, the structure of the block that holds
本実施形態ではブロックに含むトランザクション601の数は3つとしたがトランザクション数を制限するものではない。また、ブロック間を連結するための前ブロックのハッシュ値613を保持する。本実施形態においては、ブロック614のブロックのハッシュ値を前ブロックのハッシュ値613に格納し、ブロックが関連を持っていることを表している。本実施形態では前ブロックのハッシュ値としたが、後ブロックのハッシュ値を管理する、もしくは前ブロックと後ブロックの両方のハッシュ値を管理する形態であっても良い。
In this embodiment, the number of
●検証結果ユーザインタフェース
図10A、図10Bはアプリケーション404が表示する文書を検証した結果が失敗であった場合の画面の一例である。図10Aの検証結果画面1000はブロックチェーン装置111を利用して文書を検証した結果が失敗であることをユーザに通知するための画面である。検証結果1001は今回の文書検証の結果であり、図中では検証が失敗したことを示している。ここでの失敗とは、検証した文書の真正性が確認できなかった、または、最新性を確認できなかったことを表す。具体的には、文書の埋め込み情報が正しくなかった場合や、ブロックチェーンサービスにおいて、問い合わせ情報に該当するトランザクションが見つからなかった場合、トランザクションは見つかったが最新性は失われていた場合である。続けて検証するボタン1002は次の文書の検証の実行を行うために検証画面へ遷移するボタンである。また、終了するボタン1003は検証処理を終了するボタンである。
●Verification Result User Interface FIG. 10A and FIG. 10B are examples of screens when the result of verifying a document displayed by the
図10Aの検証結果画面1010はブロックチェーン装置111を利用して文書を検証した結果が失敗であることをその理由とともにユーザに通知するための画面の一例である。検証結果1001、続けて検証するボタン1002、終了するボタン1003については同様であるため省略する。NG理由1011について、ここでは検証文書の最新性が失われていたことを説明している。ここで、補足の情報としてブロックチェーンサービスから取得した情報をもとに判断した現在の最新バージョンを示しているが、補足の情報はこれに限るものではなく、省略しても良い。また、図10Aの検証結果画面1020も同様の画面であり、ここでは問い合わせ情報に該当するトランザクションが見つらなかった場合を例示している。
The
図10Bの検証結果画面1050はブロックチェーン装置111を利用して文書を検証した結果が失敗であることをユーザに通知するための画面であって、PC102上のウェブブラウザに表示する画面の例である。また、図10Bの検証結果画面1060、検証結果画面1070はブロックチェーン装置111を利用して文書を検証した結果が失敗であることをその理由のためにユーザに通知するための画面であって、PC102上のウェブブラウザに表示する画面の例である。図10Bの検証結果画面1050、1060、1070はそれぞれ、図10Aの検証結果画面1000、1010、1020に相当する検証結果を表示する。
以降で、本実施形態における各フローチャートを説明する。ここで、図11、図12、図13、図18は以降の実施形態と共通する処理となるため、先に説明する。 The flowcharts in this embodiment are explained below. Here, Figures 11, 12, 13, and 18 will be explained first because they are common to the following embodiments.
●トランザクションの登録指示
図11は文書管理装置103が、ブロックチェーン装置111へ文書に対応するトランザクションの登録指示をする処理を示すフローチャートである。この手順により文書の作成や更新、使用(例えば複製(印刷を含む)など)の際に、当該文書に関する情報を含むトランザクションが作成され、ブロックチェーン装置111に登録される。図11の処理は文書管理装置103のCPU302により実行される。ただし図の説明ではCPU302により実現される文書管理装置103の機能ブロック(図5参照)を参照する。
● Transaction registration instruction Figure 11 is a flowchart showing the process in which the
ステップS1101では、ユーザが文書管理装置103を利用するためにユーザ認証処理を行い、その結果がOKかどうか、すなわち認成功かどうかを判定する。認証がOKであればステップS1103へ、NGすなわち認証失敗であればステップS1102へ進む。ステップS1102では、文書管理装置103が、ユーザに認証失敗であった旨を通知し、エラーとして処理する。その後、一連の処理を終了する。
In step S1101, a user performs user authentication processing to use the
ステップS1103では、ユーザが行う操作が文書の新規保存あるいは更新保存のいずれかであるか、それともそれら以外かを判定する。文書の新規保存あるいは更新保存のいずれかである場合、ステップS1105に進む。それら以外である場合、ステップS1104に進む。ステップS1104ではユーザに指示された文書管理機能を実行し、一連の処理を終了する。 In step S1103, it is determined whether the operation performed by the user is either saving a new document or updating a document, or something else. If it is either saving a new document or updating a document, the process proceeds to step S1105. If it is something else, the process proceeds to step S1104. In step S1104, the document management function instructed by the user is executed, and the series of processes ends.
ステップS1105では、文書管理装置103のブロックチェーンプラグイン506が、ブロックチェーン装置111に登録するトランザクションを生成する一連の処理を行う。これについては後述する。なお図中ではトランザクションをTxと表記している。これは他の図でも同様である。その後、ステップS1106で、文書管理装置103のブロックチェーンプラグイン506が、ブロックチェーンサービスを利用してブロックチェーン装置111にトランザクションを登録する一連の処理を行う。これについても後述する。その後、一連の処理を終了する。
In step S1105, the blockchain plug-in 506 of the
図12は画像形成装置101のアプリケーション404が、ブロックチェーン装置111に印刷文書に対応するトランザクションの登録指示をする処理を示すフローチャートである。図12の処理は画像形成装置101のCPU201により実行される。ただし図の説明ではCPU201により実現される画像形成装置101の機能ブロック(図4参照)を参照する。
Figure 12 is a flowchart showing the process in which the
ステップS1201は、画像形成装置101を利用するためにユーザが行うユーザ認証処理の結果がNOKかどうか、すなわち認証成功かどうかを判定する。この処理はユーザ認証処理部402が、ユーザ情報DB403を照会することによって行われる。認証がOKであればステップS1202へ、NGすなわち認証失敗であればステップS1211へ進む。ステップS1202では、ユーザの指示する操作が印刷かどうかを判定する。印刷であった場合はステップS1203に、そうでない場合はステップS1212に進む。
In step S1201, it is determined whether the result of the user authentication process performed by the user to use the
ステップS1203では、印刷する文書を取得する。この文書は文書管理装置103から取得しても良く、それ以外の媒体から取得しても良い。取得の対象となる文書の選択はユーザによる指示に従ってよい。その後、ステップS1204では、ブロックチェーン装置111に印刷文書についてトランザクションを登録するかを判定する。これは、S1203で取得した文書がブロックチェーン装置111に登録済みの文書であるかによって判定しても良く、ユーザの指示により判定しても良い。ブロックチェーン装置111に登録済みの文書であるかによって判定する場合には、登録済みであれば登録するものと判定してよい。登録済みであることの判定は、例えば、対象文書の文書ハッシュ値の有無をブロックチェーン装置111に問い合わせることで行ってよい。ブロックチェーン装置に登録する場合はステップS1205へ進み、登録しない場合はステップS1212に進む。
In step S1203, the document to be printed is acquired. This document may be acquired from the
ステップS1205では、印刷文書を特定するための文書ハッシュ値を生成し、ステップS1206では、ステップS1205で生成したハッシュ値を印刷文書に埋め込む処理を行う。これは検証時に読み取れる形式であれば良いため、バーコードのような可視コードに変換して埋め込んでも良く、地紋など不可視コードに変換して埋め込んでも良い。ステップS1207では、プリンタ210を利用し、その印刷文書を印刷する。
In step S1205, a document hash value for identifying the printed document is generated, and in step S1206, the hash value generated in step S1205 is embedded in the printed document. This can be in any format that can be read during verification, so it may be converted into a visible code such as a barcode and embedded, or it may be converted into an invisible code such as a background pattern and embedded. In step S1207, the printed document is printed using the
ステップS1208では、ステップS1207での印刷処理が成功したかを判定する。印刷に成功した場合はステップS1209に、失敗した場合はステップS1211に進む。ステップS1209では、ブロックチェーン装置101に登録するためのトランザクションを生成する。これについては後述する。その後、ステップS1210で、ブロックチェーンサービスを利用してブロックチェーン装置111にトランザクションを登録する一連の処理を行う。これについても後述する。その後、一連の処理を終了する。
In step S1208, it is determined whether the printing process in step S1207 was successful. If printing was successful, the process proceeds to step S1209; if printing was unsuccessful, the process proceeds to step S1211. In step S1209, a transaction for registration in the
ステップS1211では、ユーザにエラーが発生したことを表示や音声等により通知するなどのエラー処理を行う。また、ステップS1212では、ユーザに指示された画像形成装置の機能を実行する。その後、一連の処理を終了する。 In step S1211, error processing is performed, such as notifying the user of the occurrence of an error by display or sound. In step S1212, the function of the image forming device instructed by the user is executed. After that, the series of processes is terminated.
●画像形成装置による文書の最新性の検証
図13は画像形成装置101のアプリケーション404が、ブロックチェーン装置111を使って文書の最新性を検証する際の処理を示すフローチャートである。図13の処理は画像形成装置101のCPU201により実行される。ただし図の説明ではCPU201により実現される画像形成装置101の機能ブロック(図4参照)を参照する。
Verification of the freshness of a document by an image forming device Fig. 13 is a flowchart showing the process when the
ステップS1301では、ユーザが、画像形成装置101を利用するために認証処理を行い、その結果がNGかどうかを判定する。この処理はユーザ認証処理部402が、ユーザ情報DB403を照会することによって行われる。認証がOKすなわち成功であればステップS1303へ、NGすなわち失敗であればステップS1302へ進む。ステップS1302では、ユーザに認証失敗であった旨を表示や音声等により通知し、エラーとして処理する。その後、一連の処理を終了する。
In step S1301, a user performs authentication processing to use the
ステップS1303では、ユーザが行う操作が文書の検証か、それ以外かを判定する。文書の検証である場合、ステップS1305に進む。それ以外である場合、ステップS1304に進む。ステップS1304では、ユーザに指示された文書管理機能を実行する。その後、一連の処理を終了する。 In step S1303, it is determined whether the operation performed by the user is document verification or something else. If it is document verification, the process proceeds to step S1305. If it is something else, the process proceeds to step S1304. In step S1304, the document management function instructed by the user is executed. After that, the series of processes ends.
ステップS1305では、入力が紙データか電子データかを判定する。紙データである場合、ステップS1306に進み、電子データである場合、ステップS1308に進む。この判定はユーザによる指定に基づいて行ってよい。あるいは、ステップS1305の実行時点で画像形成装置101のスキャン211の自動原稿送り部(不図示)に原稿が載置されていることを検知したなら紙データ、検知しなければ電子データと判定してもよい。ステップS1306では、画像形成装置101が、入力の紙データに対してスキャン処理を行う。そして、ステップS1307で、スキャンデータの電子化を行う。以降、入力を電子データとして扱う。
In step S1305, it is determined whether the input is paper data or electronic data. If it is paper data, the process proceeds to step S1306, and if it is electronic data, the process proceeds to step S1308. This determination may be made based on a user specification. Alternatively, if it is detected that an original is placed on the automatic document feeder (not shown) of the
ステップS1308では、入力である電子データの埋込情報から、文書ハッシュ値を取得する。この文書発出が検証対象の文書のハッシュ値となる。ステップS1309では、その取得した文書ハッシュ値を取得し、検証する文書の最新性を検証する。この処理は後述する。以上で本処理を終了する。 In step S1308, a document hash value is obtained from the embedded information of the input electronic data. This document output becomes the hash value of the document to be verified. In step S1309, the obtained document hash value is obtained, and the currentness of the document to be verified is verified. This process will be described later. This ends the process.
●トランザクション処理
図18は、画像形成装置101のブロックチェーンアプリケーション406や、文書管理装置103のブロックチェーンプラグイン506がブロックチェーン装置111へのトランザクション処理を行うフローチャートである。トランザクション処理には登録および取得を含む。これは図11のステップS1106や図12のステップS1210の処理である。以降、画像形成装置101のブロックチェーンアプリケーション406が行う場合を例にして説明する。その場合図18の処理は画像形成装置101のCPU201により実行される。
Transaction processing Fig. 18 is a flowchart in which the
本フローチャート起動時には、アプリケーション404から、ブロックチェーン装置111への処理種別と、処理種別ごとに必要な情報が渡される。処理種別ごとに必要な情報は、トランザクション登録時にはトランザクション、取得時にはトランザクション内の情報の検索項目とその値である。
When this flowchart is started, the
ステップS1801では、ブロックチェーン装置111にクレデンシャル情報を渡す。ブロックチェーン装置111は渡されたクレデンシャル情報が正しいクレデンシャル情報であることを確認する。ステップS1802では、ステップS1801でクレデンシャル情報が正しいと確認できたかどうかを判定する。クレデンシャル情報がデジタル証明書の場合は証明書の検証を行って検証が成功した場合に、正しいクレデンシャル情報であると判断する。また、クレデンシャル情報が予め定められたデータ値の場合は、渡されたクレデンシャル情報がそのデータ値に一致する場合に、正しいクレデンシャル情報であると判断する。正しいクレデンシャルであった場合にはブロックチェーン装置111へのアクセスが可能な状況であるため、ステップS1803に進み、正しいクレデンシャルでなかった場合にはステップS1804に進む。ステップS1803では、ブロックチェーンアプリケーション406が受信した処理種別を判定する。トランザクション登録であればステップS1805へ、取得であればステップS1810へ進む。受信した処理種別とは、図18の処理が呼び出された際に指定される処理種別であり、例えばステップS1106やステップS1210では処理種別として「登録」が指定されている。ステップS1804はエラー処理であり、エラーの情報をまとめる。
In step S1801, the credential information is passed to the
ステップS1805では、登録するトランザクションのデータが正しいことを確認し、続くステップS1806で、登録可能かを判定する。登録するトランザクションのデータが正しい場合に登録可能と判定してよい。登録可能である場合、ステップS1807に進み、そうでない場合はステップS1809に進む。ステップS1807では、トランザクションをブロックチェーン装置111に登録し、ステップS1808で、その登録処理が成功したかを判定する。登録に成功した場合はステップS1814に進み、登録に失敗した場合はステップS1809に進む。ステップS1809はエラー処理であり、エラーの情報をまとめる。まとめられたエラーの情報は例えば図10Aのような表示に用いられる。
In step S1805, it is confirmed that the data of the transaction to be registered is correct, and in the following step S1806, it is determined whether registration is possible. If the data of the transaction to be registered is correct, it may be determined that registration is possible. If registration is possible, the process proceeds to step S1807, and if not, the process proceeds to step S1809. In step S1807, the transaction is registered in the
ステップS1810では、指定された検索項目に指定された値を持つトランザクションを、ブロックチェーン装置111から検索する。ステップS1811では、それに該当するトランザクションが存在するかどうかを判定し、存在する場合はステップS1812に、存在しない場合はステップS1813に進む。この判定はブロックチェーン装置111からの応答に基づいて行ってよい。ステップS1812では、ステップS1810で検索し、該当したすべてのトランザクションの情報を取得する。ステップS1813はエラー処理であり、エラーの情報をまとめる。まとめられたエラーの情報は例えば図10Aのような表示に用いられる。たとえば検証対象の文書(検証文書とも呼ぶ)が未登録であれば表示画面1020、検証対象の文書が最新でなければ表示画面1010のようなエラーとなるようエラーの内容を示す情報がまとめられる。
In step S1810, the
ステップS1814では、処理結果をアプリケーション404に通知する。トランザクションの登録成功であればその旨を、エラーであればその情報を、トランザクションの情報を取得していればその情報を、取得するトランザクションが存在しなければその旨を表示等によりユーザに通知する。以上で本処理を終了する。
In step S1814, the processing result is notified to
以上、ブロックチェーンサービスを利用した文書の検証のための、トランザクションの登録及び検証について説明した。これらにより、文書の保存時や印刷時にトランザクションを生成・登録し、その文書を検証することが可能となる。また、ここでは代表的なユースケースとしてこれらを取り上げたが、トランザクションの生成や検証タイミングはこれに限るものではなく、装置は画像形成装置や文書管理装置に限るものではない。 The above describes the registration and verification of transactions for document verification using a blockchain service. This makes it possible to generate and register transactions when saving or printing a document, and to verify the document. In addition, while these are taken up here as typical use cases, the timing of transaction generation and verification is not limited to these, and the devices are not limited to image forming devices or document management devices.
●トランザクションの生成処理(1)
図14Aは、本実施形態における、画像形成装置101のブロックチェーンアプリケーション406や、文書管理装置103のブロックチェーンプラグイン506が行う、登録用のトランザクション601の生成処理を示すフローチャートである。これは図11のステップS1106や図12のステップS1209の処理である。図14Aの処理はいずれかの装置のCPUにより実行される。
● Transaction generation process (1)
Fig. 14A is a flowchart showing a process for generating a
ステップS1401では、文書ハッシュ値602を算出する。これは登録する文書を特定するためのハッシュ値である。ステップS1402では、登録システム情報603、文書登録日時604、文書登録者605を取得する。ステップS1403では、登録する文書が、ブロックチェーン装置111について、新規に保存するのか、既に過去の版について保存していたかを判定する。後者の例としては、文書管理装置103上にある電子文書であって、ブロックチェーン装置111に登録済みであるものを更新保存や印刷する場合や、文書ハッシュ値がすでに埋め込まれている紙文書をコピーする場合がそれにあたる。新規に保存する場合はステップS1405に、そうでない場合はステップS1404に進む。ステップS1403での判定はユーザ操作に基づいて、ステップS1103における判定と同じ基準で行われてよい。
In step S1401, a
ステップS1403で新規ではないと判定した場合、ステップS1404では、更新元の文書すなわち元文書について、文書ハッシュ値602を取得し、それを元文書ハッシュ606とする。元文書のハッシュ値は文書管理装置103に保存されている文書ハッシュ値または元文書から計算した文書ハッシュ値を用いてよい。ステップS1405では、バージョン情報607を設定する。これはユーザが指定しても良く、文書管理装置103が自動的に判断して設定しても良い。また、更新保存の際は、更新元のバージョン情報を参照して決定しても良い。ステップS1406では、メジャー・マイナー情報608を決定する。これはユーザが指定しても良く、文書処理装置103が自動的に判断して設定しても良い。このとき、バージョン情報607を参照しても良い。ステップS1407では、これまでの処理で取得・決定した情報をもとに、トランザクション601を生成する。以上で本処理を終了する。
If it is determined in step S1403 that the document is not new, in step S1404, the
なおステップS1406で文書処理装置103が自動的にメジャーとマイナーの別を設定する際には、例えば元文書を更新して元文書から派生した派生文書を作成した際に、ユーザがメジャーな変更かマイナーな変更かを指定しておく。そしてその指定に基づいてメジャーとマイナーの別を設定してよい。あるいは、元文書と派生文書とを比較し、所定範囲の相違であればマイナー、それを超えていればメジャーな変更と設定してもよい。所定範囲とは例えば、含まれた文字に相違はなくレイアウトのみが異なる場合、文字の相違が全角と半角、あるいは大文字と小文字といった形式的な相違である場合などを含んでよい。さらにユーザに指定させる場合には、元文書と派生文書の相違点を表示し、ユーザがその表示に基づいて指定できるよう構成してもよい。
When the
以上のようにして図6に示したトランザクション601を生成することができる。
In this way,
●文書の検証(1)
図14Bは、本実施形態における、画像形成装置101のアプリケーション406が、ブロックチェーン装置111を使って、文書の最新性を検証する処理を示すフローチャートである。これは図13のステップS1309の処理である。図14Bの処理は画像形成装置101のCPU201により実行される。
● Document Verification (1)
14B is a flowchart showing a process in which the
ステップS1451では、ブロックチェーン装置111を使って、検証したい文書の文書ハッシュ値を、同じく文書ハッシュ値602として持つトランザクションをブロックチェーンサービスで取得する。この処理は先述した図18の処理である。ステップS1452では、ステップS1451での結果がOKかNGかを判定する。OKすなわち成功だった場合はステップS1453へ、NGすなわち失敗だった場合はステップS1464へ進む。ステップS1453では、ステップS1451で取得したトランザクション情報よりバージョン情報607を取得し、それを比較元のバージョン情報として記憶する。
In step S1451, the
ステップS1454では、ステップS1451で取得したトランザクション情報が元文書ハッシュ値606を持つかどうかを判定する。持つ場合はステップS1455に、持たない場合はステップS1462に進む。ステップS1455では、ステップS1451で取得したトランザクション情報に含まれる元文書ハッシュ値606を取得する。その後、その元文書ハッシュ値を文書ハッシュ値602として持つトランザクションを、ブロックチェーンサービスで取得する。すなわち検証対象の文書の元文書のトランザクションが取得される。ステップS1455は図18で説明した手順で実行される。
In step S1454, it is determined whether the transaction information acquired in step S1451 has an original
ステップS1456では、その前ステップで取得した各トランザクションの持つバージョン情報607とメジャー・マイナー情報608を取得し、それらを比較先として記憶する。このステップS1456は、ステップS1455の次に実行される場合と、ステップS1459に引き続いて実行される場合がある。特に後者の場合は取得されるトランザクションが複数になりうるため、それら全てについて記憶する。また、ステップS1457で、同様に各トランザクションの持つ文書ハッシュ値602を記憶する。
In step S1456, the
ステップS1458では、ステップS1457で記憶した各文書ハッシュ値602について、ステップS1459でのブロックチェーンサービスでのトランザクションの取得処理を行っていないものがあるかを判定する。取得処理を行っていないものがある場合、ステップS1459に進む。取得した全ての文書ハッシュ値について取得処理済みである場合、ステップS1460に進む。ステップS1455からS1458に至った場合には、ステップS1459に分岐することになる。 In step S1458, it is determined whether any of the document hash values 602 stored in step S1457 have not yet undergone transaction acquisition processing in the blockchain service in step S1459. If there are any that have not yet undergone acquisition processing, the process proceeds to step S1459. If acquisition processing has been completed for all acquired document hash values, the process proceeds to step S1460. If the process proceeds from step S1455 to S1458, the process branches to step S1459.
ステップS1459では、ステップS1457で記憶した文書ハッシュ値について、それを元文書ハッシュ値606として持つトランザクションをブロックチェーンサービスで取得する。これは複数存在する場合もあり、その場合はその全てについて処理する。ステップS1459は図18で説明した手順で実行される。その後、ステップS1456に進む。検証対象の文書の元文書から派生した文書には検証対象の文書も含まれるため、検証対象の文書を元文書として派生した文書があれば、その文書のトランザクションもステップS1459を通るループ処理で取得される。これによりステップS1458からステップS1460に分岐する際には、検証対象の文書をルートとする派生文書のツリーを形成しているトランザクションがすべて取得されている。
In step S1459, the blockchain service obtains a transaction that has the document hash value stored in step S1457 as the original
ステップS1460では、ステップS1453で記憶した比較元のバージョン情報と、ステップS1456で記憶した比較先のバージョン情報及びメジャー・マイナー情報とを比較する。そして、ステップS1461で、比較先のバージョン情報とメジャー・マイナー情報について、「メジャー」でありかつバージョン情報が比較元のバージョン情報より新しいものが一つでも含まれているかを判定する。比較先が複数ある場合にはそれぞれの比較先について判定する。「メジャー」であってもバージョン情報が比較元より新しくないもの、また、バージョン情報が比較元より新しくても「マイナー」であるものは無視する。新しいものがある場合はステップS1463に進み、そうでない場合はステップS1462に進む。 In step S1460, the version information of the comparison source stored in step S1453 is compared with the version information and major/minor information of the comparison destination stored in step S1456. Then, in step S1461, it is determined whether the version information and major/minor information of the comparison destination includes at least one "major" version information that is newer than the version information of the comparison source. If there are multiple comparison destinations, a determination is made for each comparison destination. Version information that is not newer than the comparison source even if it is "major," and version information that is newer than the comparison source but is "minor" are ignored. If there is a newer version information, proceed to step S1463; if not, proceed to step S1462.
ステップS1462では、検証結果OK画面(不図示)を出力し、検証文書の最新性を確認できた旨をユーザに通知する。ステップS1463では、検証結果画面1010を出力し、検証文書はブロックチェーン装置に登録済みであったが、最新性は確認できなかった旨をユーザに通知する。ステップS1464では、検証結果画面1020を出力し、検証文書がブロックチェーン装置に未登録であった旨をユーザに通知する。以上で本処理を終了する。
In step S1462, a verification result OK screen (not shown) is output, and the user is notified that the up-to-dateness of the verification document has been confirmed. In step S1463, a
以上、本実施形態における、登録用のトランザクション601の生成処理と、文書の最新性を検証する処理を説明した。これらの処理により、ブロックチェーン装置に登録済みのトランザクションについて、文書ハッシュ値602と元文書ハッシュ値606を利用し、検証文書の更新元文書やそこから更新された文書を辿ることができる。また、同じく登録されているバージョン情報607を参照することにより、検証文書より新しい文書があるかを動的に検証でき、内容の最新性を判定することが可能である。このとき、メジャー・マイナー情報608を利用することにより、文書の更新内容に合わせて内容の最新性が維持しても良いか維持しないかを設定することができる。これにより、特に修正頻度が高い文書について、細かく再印刷せずとも手元の印刷文書の検証結果をOKに維持することができ、利便性が高まる。
The above describes the process of generating the
[実施形態1の変形例]
ここまで本実施形態について説明してきたが、これらを全て兼ね備える必要はなく、より簡素な実行形態としても良い。例えば、検証結果がNGであった場合について、その理由毎に検証結果画面1010、検証結果画面1020と出力を分けていたが、検証結果画面1000のように、理由を示さずNGとだけ出力しても良い。また、メジャー・マイナー情報608を用いず、バージョン情報607のみでの最新性の判定としても良い。その場合には、ステップS1456ではバージョン情報のみを取得して記憶すればよい。あるいは、メジャー・マイナー情報608という形ではなく、画像形成装置101などにメジャー・マイナーの判定規則を持ち、バージョン情報607を随時メジャー・マイナーに判定する方法でも良い。その他にも、フローチャートにおける実行順が前後しても良く、ここで示したものに限るものではない。例えば、図14Bで示されたフローチャートについて、該当する全てのトランザクションを取得してから比較するのではなく、トランザクションの取得都度に比較し、最新性がないと判断できたタイミングで処理を中断し、結果出力を行ってもよい。あるいは、電子文書について、上記検証処理を文書管理装置103で行っても良い。
[Modification of the first embodiment]
Although the present embodiment has been described so far, it is not necessary to have all of these, and a simpler execution form may be used. For example, when the verification result is NG, the output is divided into the
また、以上の実行形態について、利用するユーザや組織により動的に切り替えても良い。例えば、ポリシー設定408に、ユーザや組織などといった利用者と、画面出力やメジャー・マイナー情報の利用などといった実施形態の組み合わせを示すマトリクスを設定し、各アプリケーションが随時参照するものである。表3にポリシー設定マトリクスを例示する。
The above execution modes may be dynamically switched depending on the user or organization using the system. For example, a matrix showing a combination of users, such as users or organizations, and embodiments, such as screen output or use of major/minor information, is set in the
表3:ポリシー設定マトリクス
利用者 設定NG理由表示 メジャー・マイナー情報
組織AAA 〇 〇
組織BBB 〇 ×
ユーザCCC × 〇
ユーザDDD × ×
。
Table 3: Policy Settings Matrix
User Setting NG reason display Major/minor information
Organization AAA 〇 〇 Organization BBB 〇 ×
User CCC × 〇 User DDD × ×
.
表3のマトリクスでは、組織AAAに所属するユーザが利用する際は、検証NG理由を表示し、メジャー・マイナー情報も最新性の判定時に利用する、という処理ルールを示している。同様に、組織BBBに所属するユーザ、ユーザCCC、ユーザDDDについても処理ルールを示している。このとき、例えばユーザCCCが組織BBBに所属している場合など、重複した場合の処理ルールの優先順位の決め方については限定するものではない。また、組織については、組織DBなどを画像形成装置101に保持しても良く(不図示)、ユーザ情報DB403などのユーザ情報と紐づけても良い。また、このマトリクスに未記載のユーザの扱いも限定するものではない。未記載のユーザについては例えば未記載のユーザのための設定を予め定めておいてそれに従ってよい。
The matrix in Table 3 shows a processing rule that when used by a user belonging to organization AAA, the reason for verification NG is displayed, and major/minor information is also used when determining recency. Similarly, processing rules are shown for users belonging to organization BBB, user CCC, and user DDD. At this time, there is no limitation on how to determine the priority of the processing rules in the case of overlap, for example, when user CCC belongs to organization BBB. In addition, for organizations, an organization DB or the like may be stored in the image forming device 101 (not shown), and may be linked to user information such as
以上、ポリシー設定408を利用して動的に実行形態を切り替える方法について述べた。これにより、不要な情報公開の回避や、より厳格なバージョン管理など、セキュリティ観点での利便性を高めることができる。
The above describes a method for dynamically switching between execution modes using
<実施形態2>
実施形態1では、バージョン情報607を利用し、内容の最新性を判断する方法について述べた。一方で、バージョン情報607をブロックチェーン装置111上で管理する必要があるため、バージョン情報の決定規則を異なる装置間でも徹底する必要があるなど、管理コストがかかる側面がある。そこで、本実施形態では、内容が最新でなくなったトランザクションをブロックチェーン装置111上で明示することにより、バージョン情報を用いずに内容の最新性を判断する方法について、実施形態1との差分を中心に述べる。
<Embodiment 2>
In the first embodiment, a method for determining the latest content using
図7は、実施形態2におけるブロックチェーン装置111に保持するトランザクション701及びトランザクション711とそのトランザクションを複数格納したブロックのデータ構造について示したブロック図である。トランザクション701は、トランザクション601と同様であるため、省略する。トランザクション711は、トランザクション701を対象に、そのトランザクションが示す文書が最新性を失ったことを示すものである。以降、このことをそのトランザクションを無効化すると呼ぶ。トランザクションハッシュ値712は、トランザクション711を特定する固有のハッシュ値である。固有のハッシュ値であれば生成方法に限定するものはなく、例えば、後述する対象文書ハッシュ値713とタイムスタンプを組み合わせて生成しても良い。対象文書ハッシュ値713は、無効化するトランザクション701を特定するものであり、対象の文書ハッシュ値602と同じ値が設定される。以上、トランザクション711の構成要素について述べたが、これに限定するものでなく、例として、このトランザクションの登録者や登録日時を含めても良い。また、ブロック図ではトランザクション701aとトランザクション711aのように連続したものを図示したが、これに限るものではない。
Figure 7 is a block
図15Aは、本実施形態における画像形成装置101のブロックチェーンアプリケーション406や、文書管理装置103のブロックチェーンプラグイン506が行う、トランザクション701やトランザクション711の生成処理を示すフローチャートである。これも実施形態1と同様に、図11のステップS1106や図12のステップS1209の処理である。
Figure 15A is a flowchart showing the generation process of
ステップS1501、ステップS1502、ステップS1503、ステップS1504は、それぞれステップS1401、ステップS1402、ステップS1403、ステップS1404と同様であるため、説明を省略する。ステップS1505では、元文書ハッシュ値が示すトランザクションと、それを元文書ハッシュ値として参照する他のトランザクションについて、無効化、すなわち最新版ではないことを示すことが必要かを判定する。これは一律で無効化しても良く、ユーザが指示しても良く、システムが文書の変更内容などから判断しても良い。無効化する場合はステップS1506に、無効化しない場合はステップS1512に進む。 Steps S1501, S1502, S1503, and S1504 are similar to steps S1401, S1402, S1403, and S1404, respectively, and therefore will not be described here. In step S1505, it is determined whether the transaction indicated by the original document hash value and other transactions that reference it as the original document hash value need to be invalidated, i.e., indicated as not being the latest version. This may be done uniformly, by a user's instruction, or by the system based on changes to the document, etc. If invalidation is to be performed, proceed to step S1506; if not, proceed to step S1512.
ステップS1506では、トランザクションハッシュ値712を生成する。ステップS1507では、このトランザクションハッシュ値712と、ステップS1504で取得した元文書ハッシュ値を対象文書ハッシュ値713とし、トランザクション711を生成する。このトランザクション711は、ステップS1504で取得した元文書ハッシュ値が示すトランザクション701を無効化する。トランザクション711を無効化トランザクション或いは無効化文書関連情報と呼ぶこともある。
In step S1506, a
次に、その対象文書ハッシュ値を元文書ハッシュ値として参照する他のトランザクション701を無効化するトランザクション711の生成処理に進む。ステップS1508では、ステップS1504で取得した元文書ハッシュ値を、同じく元文書ハッシュ値606として持つ他のトランザクションを、ブロックチェーンサービスを利用して取得する。ここで取得されたトランザクションは、ステップS1505で無効化すると判定したトランザクションが示す文書のコピーや印刷物を示しており、内容が同一であることから、同様に無効化するべきとみなされる。
Next, the process proceeds to generate
ステップS1509では、ステップS1508で取得できたトランザクションがあり、かつ、まだ無効化されていないトランザクションが含まれているかを判定する。どちらも満たす場合はステップS1510に、そうでない場合はステップS1512に進む。ステップS1510では、ステップS1509の条件を満たす全てのトランザクションの、各文書ハッシュ値602について、トランザクションハッシュ値712をそれぞれ生成する。ステップS1511では、ステップS1510で生成したトランザクションハッシュ値と、それに対する文書ハッシュ値602を対象文書ハッシュ値713として、それぞれトランザクション711を生成する。
In step S1509, it is determined whether any transactions were obtained in step S1508 and any transactions that have not yet been invalidated are included. If both conditions are met, the process proceeds to step S1510; if not, the process proceeds to step S1512. In step S1510, a
ステップS1512では、ステップS1501、ステップS1502、ステップS1504で取得した情報をもとに、今回登録する文書のトランザクション701を生成する。以上で本処理を終了する。以上の処理によって、登録対象の文書が新規に登録する文書でない場合には、登録対象の元文書をルートとする派生文書のツリーに含まれた、登録対象の文書以外の文書をすべて無効化する。
In step S1512, a
図15Bは本実施形態における、画像形成装置101のアプリケーション406が、ブロックチェーン装置111を使って、文書の最新性を検証する処理を示すフローチャートである。これは図13のステップS1309の処理である。
Figure 15B is a flowchart showing the process in this embodiment in which the
ステップS1551、ステップS1552は、ステップS1451、ステップS1452と同様であるため、説明を省略する。ステップS1553は、文書ハッシュ値を対象文書ハッシュ値713として持つトランザクションを、ブロックサービスから取得する。ステップS1554では、ステップS1553でトランザクションを取得できたかを判定し、取得できた場合はステップS1556へ、取得できなかった場合はステップS1555へ進む。取得できなかった場合は、検証する文書のトランザクションが無効化されてないということを意味するため、ステップS1555では検証OK画面を出力し、ユーザにその旨を通知する。取得できた場合は、検証する文書のトランザクションを無効化するトランザクションが登録済みということを意味するため、ステップS1556では検証NG画面を出力し、ユーザにその旨を通知する。
Steps S1551 and S1552 are similar to steps S1451 and S1452, and therefore their explanations are omitted. Step S1553 obtains from the block service a transaction having the document hash value as the target
以上、本実施形態における登録用のトランザクション701とトランザクション711の生成処理と、文書の最新性を検証する処理を説明した。本実施形態では、内容の最新性が失われた文書に対するトランザクションをブロックチェーン装置111上で、最新でないことを示すことで疑似的に無効化することにより、文書の内容の最新性の動的な検証を可能とした。
The above describes the process of generating
また、本発明は、上述した実施形態に限るものではない。実施形態1で述べたような、検証NG表示画面で理由を表示しても良く、メジャー・マイナー情報を登録や検証時の判断にしても良く、それらをポリシー情報から動的に切り替えても良い。また、無効化するトランザクション701に対してトランザクション711が1対1になるように生成する例を説明したが、トランザクション711に対象文書ハッシュ値713を複数格納して多対1にしても良い。トランザクションの構成や生成パターンも上述した例に限定されない。
The present invention is not limited to the above-mentioned embodiment. As described in the first embodiment, the reason may be displayed on the verification NG display screen, or major/minor information may be determined at the time of registration or verification, or these may be dynamically switched from policy information. In addition, an example has been described in which
<実施形態3>
実施形態1では、バージョン情報607を利用し、内容の最新性を判断する方法について述べた。この実施形態の特徴としては、バージョン情報607をブロックチェーン装置111上で管理することにより、同ブロックチェーンにアクセスできる装置であれば場所を問わずにバージョン情報を参照できることにある。一方で、検証したい文書を利用する範囲や、ブロックチェーンにアクセスする範囲が明確に限られている場合、バージョン情報をブロックチェーン上で管理する必要はない。本実施形態では、バージョン情報を管理するデータベースを参照することにより、内容の最新性の検証を実現する方法について、実施形態1との差分を中心に述べる。
<Embodiment 3>
In the first embodiment, a method for determining the latest content using
図8は、実施形態3におけるブロックチェーン装置111に保持するトランザクション801とそのトランザクションを複数格納したブロックのデータ構造について示したブロック図である。トランザクションに含まれる各要素については先述したため省略する。
Figure 8 is a block diagram showing a
図16Aは、本実施形態における、画像形成装置101のブロックチェーンアプリケーション406や、文書管理装置103のブロックチェーンプラグイン506が行う、トランザクション801の生成処理を示すフローチャートである。これも実施形態1と同様に、図11のステップS1106や図12のステップS1209の処理である。
Figure 16A is a flowchart showing the generation process of a
ステップS1601~S1605、S1607については、ステップS1401~S1405、S1407と同様のため、省略する。ステップS1606では、バージョン情報を管理するバージョン情報データベースに、文書名、文書ハッシュ値、バージョン情報、元文書ハッシュ値を紐づけて登録する。ここで、バージョン情報データベースについて表4に例示する。 Steps S1601 to S1605 and S1607 are the same as steps S1401 to S1405 and S1407, and will not be described here. In step S1606, the document name, document hash value, version information, and original document hash value are linked and registered in a version information database that manages version information. An example of the version information database is shown in Table 4.
表4:バージョン情報データベース
文書名 文書ハッシュ値 バージョン情報 元文書ハッシュ値
文書A asdfasdf 1.00 -
文書A ghjkghjk 1.01 asdfasdf
文書A qwerqwer 1.02 ghjkghjk
文書B zxcvzxcv 1.00 -
。
Table 4: Version information database
Document name Document hash value Version information Original document hash value
Document A asdfasdf 1.00 -
Document A ghjkghjk 1.01 asdfasdf
Document A qwerqwer 1.02 ghjkghjk
Document B zxcvzxcv 1.00 -
.
表4はバージョン情報を管理するバージョン情報データベースの一例である。このデータベースの目的はその文書の一連の版を管理し、検証する文書ハッシュ値が最新のバージョンであるかを判定するためにある。そのため、実施形態はこれに限られるものではなく、例えば登録日時や登録者を含んでも良い。また、このデータベースは画像形成装置101や文書管理装置103からアクセスできれば良い。そのため、PC102や文書管理装置103に含まれても良く、LAN100で画像形成装置101や文書管理装置103と接続されるその他の装置でも良い。また、インターネット110を介して外部からアクセスできるようにしてもよく、その際に認証処理を必要としても良いが、このデータベースにアクセスする装置の範囲から適当に設置するべきである。
Table 4 is an example of a version information database that manages version information. The purpose of this database is to manage the series of versions of the document and to determine whether the document hash value being verified is the latest version. Therefore, the embodiment is not limited to this, and may include, for example, the registration date and time and the registrant. Furthermore, this database only needs to be accessible from the
図16Bは、本実施形態における、画像形成装置101のアプリケーション406が、ブロックチェーン装置111を使って、文書の最新性を検証する処理を示すフローチャートである。これは図13のステップS1309の処理である。
Figure 16B is a flowchart showing the process in this embodiment in which the
ステップS1651、S1652は、ステップS1451、S1452と同様のため、省略する。ステップS1653では、先述したバージョン情報データベースを照会し、ステップS1654で、検証した文書が最新かどうかを判定する。例えばバージョン情報データベースで、ステップS1651で取得したトランザクションの文書ハッシュ値を元文書ハッシュ値とするレコードを検索する。該当するレコードがバージョン情報データベースに含まれていれば検索対象の文書ハッシュ値を持つ文書は最新版ではないと判定できる。一方該当するレコードがバージョン情報データベースに含まれていなければ検索対象の文書ハッシュ値を持つ文書は最新版であると判定できる。文書の最新性が確認された場合、ステップS1655に進み、そうでない場合、ステップS1656に進む。ステップS1655では検証OK画面を出力し、ユーザに検証した文書の最新性が確認できたことを通知する。ステップS1656では検証NG画面を出力し、ユーザに検証した文書の最新性が確認できなかったことを通知する。 Steps S1651 and S1652 are the same as steps S1451 and S1452, and therefore will be omitted. In step S1653, the version information database described above is queried, and in step S1654, it is determined whether the verified document is the latest. For example, the version information database is searched for a record in which the document hash value of the transaction acquired in step S1651 is used as the original document hash value. If the corresponding record is included in the version information database, it can be determined that the document having the searched document hash value is not the latest version. On the other hand, if the corresponding record is not included in the version information database, it can be determined that the document having the searched document hash value is the latest version. If the document is confirmed to be up-to-date, the process proceeds to step S1655, and if not, the process proceeds to step S1656. In step S1655, a verification OK screen is output to notify the user that the verified document is up-to-date. In step S1656, a verification NG screen is output to notify the user that the verified document is not up-to-date.
以上、本実施形態におけるバージョン情報を管理するデータベースの例と、それを用いたトランザクションの登録や検証の処理について説明した。この構成でも同様に文書の内容の最新性の動的な検証を可能としつつ、ブロックチェーン装置111を用いた処理やそれに伴う通信を最小限にできる。
The above describes an example of a database that manages version information in this embodiment, and the process of registering and verifying transactions using the database. This configuration also enables dynamic verification of the up-to-dateness of document contents, while minimizing processing using the
また、本発明はこの実施形態に限るものではない。例えば、実施形態1と同様に、検証NG表示画面で理由を表示しても良く、メジャー・マイナー情報を登録や検証時の判断にしても良く、それらをポリシー情報から動的に切り替えても良い。 The present invention is not limited to this embodiment. For example, as in embodiment 1, the reason may be displayed on the verification NG display screen, or major/minor information may be determined at the time of registration or verification, and these may be dynamically switched from policy information.
<実施形態4>
実施形態1や実施形態3では、バージョン情報を利用し、内容の最新性を判断する方法について述べた。一方で、バージョン情報を管理する必要があるため、管理コストの増加という課題がある。また、実施形態2では最新版ではなくなった文書のトランザクションを疑似的に無効化することにより、バージョン情報を使わずに最新性を検証できるようにしたが、これにもトランザクションの登録数がかさばるという課題がある。そこで本実施形態では、文書がオリジナルか複製かを示す文書属性という概念を導入することにより、上記の課題を解決しつつ文書の最新性の動的な検証を可能とする方法について、実施形態1との差分を中心に述べる。
<Embodiment 4>
In the first and third embodiments, a method for determining the latestness of contents using version information has been described. However, the need to manage version information poses a problem of increased management costs. In the second embodiment, transactions of documents that are no longer the latest version are pseudo-invalidated, making it possible to verify the latestness without using version information, but this also poses the problem of a large number of transaction registrations. In this embodiment, therefore, a method for dynamically verifying the latestness of a document while solving the above problems by introducing a concept of a document attribute that indicates whether the document is an original or a copy will be described, focusing on the differences from the first embodiment.
図9は、実施形態4におけるブロックチェーン装置111に保持するトランザクション901とそのトランザクションを複数格納したブロックのデータ構造について示したブロック図である。文書属性902はその文書が「オリジナル」か「複製」かを示す情報であり、このどちらかを示せればよいため、文字列でもbool値でもよい。「オリジナル」というのはその文書が原本であること、すなわち元文書がないことを意味する。例えば新規作成した電子文書や、それを更新した電子文書が「オリジナル」にあたる。「オリジナル」の文書からしか「オリジナル」の文書には派生せず、かつ派生する「オリジナル」は単一であり、ある版の文書について、「オリジナル」は一つにしかならない。「複製」というのはその文書が複製であることを意味し、電子文書を内容更新せずコピーしたものや、印刷文書がそれにあたる。また、「オリジナル」から「複製」になることはあるが、「複製」から「オリジナル」になることはない。これらの規則があるため、この文書属性はシステムが自動で判定して決定するのが望ましい。
9 is a block diagram showing a
図17Aは、本実施形態における、画像形成装置101のブロックチェーンアプリケーション406や、文書管理装置103のブロックチェーンプラグイン506が行う、トランザクション901の生成処理を示すフローチャートである。これも実施形態1と同様に、図11のステップS1106や図12のステップS1209の処理である。
Figure 17A is a flowchart showing the generation process of a
ステップS1701~S1704は、ステップS1501~S1504と同様であるため、省略する。ステップS1705では、文書属性902の決定のため、文書の内容に更新があるかを判定する。内容の更新の有無は例えば比較対象となる2つの文書の文書ハッシュ値を比較し、異なっていれば更新があると判定してもよい。更新がある場合、ステップS1706に進み、更新がない場合、ステップS1707に進む。ステップS1706では文書属性902に「オリジナル」を設定し、ステップS1707では「複製」を設定する。ステップS1708でこれらの情報をもとにトランザクションを生成し、一連の処理を終了する。
Steps S1701 to S1704 are the same as steps S1501 to S1504, and will not be described here. In step S1705, it is determined whether the document contents have been updated in order to determine the
図17Bは、本実施形態における、画像形成装置101のアプリケーション406が、ブロックチェーン装置111を使って、文書の最新性を検証する処理を示すフローチャートである。これは図13のステップS1309の処理である。
Figure 17B is a flowchart showing the process in this embodiment in which the
ステップS1751、S1752はステップS1451、S1452と同様のため、省略する。ステップS1753では、取得したトランザクションの文書ハッシュ値602を記憶する。ステップS1754では、取得したトランザクションの文書属性902を参照し、「オリジナル」であるかを判定する。「オリジナル」であった場合はステップS1756に、そうでない場合はステップS1755に進む。ステップS1755では、取得したトランザクションから元文書ハッシュ値606を取得し、それを文書ハッシュ値602として持つトランザクションをブロックチェーンサービスで取得する。その後、ここで取得したトランザクションについて、ステップS1753から処理をやり直す。これにより、検証文書が「複製」であった場合に、その派生元である「オリジナル」まで遡ることができる。
Steps S1751 and S1752 are the same as steps S1451 and S1452, and therefore will be omitted. In step S1753, the
ステップS1756では、直近に取得したトランザクションの文書ハッシュ値602について、それを元文書ハッシュ値606として持つトランザクションをブロックチェーンサービスで取得する。ステップS1757では、ステップS1756で取得した各トランザクションに、それ以前の処理で取得したものと異なるトランザクションが含まれているかを判定する。含まれていた場合はステップS1758に、そうでない場合はステップS1759に進む。
In step S1756, the blockchain service obtains transactions that have the
ステップS1758では、ステップS1757で判定した異なるトランザクションの中に、文書属性902として「オリジナル」を持つトランザクションがあるかを判定し、ある場合はステップS1760に進み、ない場合はステップS1759に進む。ステップS1759に進んだ場合、検証した「オリジナル」の文書、あるいは検証した文書から辿った「オリジナル」の文書から、「オリジナル」の文書が派生してないことを示しており、検証文書から内容が更新されてないことを意味する。そのため、検証OK画面を出力し、ユーザに検証文書の内容の最新性が確認できた旨を通知する。ステップS1760に進んだ場合、検証文書のトランザクションが確認できなかったか、検証文書の「オリジナル」から「オリジナル」が派生している、つまり内容が更新されているため、検証文書の最新性が失われているかである。そのため、検証NG画面を出力し、ユーザに検証文書の最新性を確認できなかった旨を通知する。以上で一連の処理を終了する。
In step S1758, it is determined whether there is a transaction with "original" as the
以上、本実施形態におけるトランザクション901の例と、それに含まれる文書属性902を利用した最新性の検証方法について説明した。この構成ではバージョン情報は管理せず、「オリジナル」か「複製」かを示す文書属性をトランザクションに設定することで、文書の内容の最新性の動的な検証を可能としている。
The above describes an example of a
また、本発明はこの実施形態に限るものではない。例えば、実施形態1と同様に、検証NG表示画面で理由を表示しても良く、メジャー・マイナー情報を登録や検証時の判断にしても良く、それらをポリシー情報から動的に切り替えても良い。あるいは、文書属性として「印刷」や「電子コピー」などより詳細な情報を設定しても良く、それらをユーザに通知するために出力画面に追加しても良い。 The present invention is not limited to this embodiment. For example, as in embodiment 1, the reason may be displayed on the verification NG display screen, or major/minor information may be determined at the time of registration or verification, and these may be dynamically switched from the policy information. Alternatively, more detailed information such as "print" or "electronic copy" may be set as document attributes, and these may be added to the output screen to notify the user.
<その他の実施例>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピューターにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である
発明は上記の実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。
<Other Examples>
The present invention can also be realized by supplying a program that realizes one or more of the functions of the above-mentioned embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program. It can also be realized by a circuit (e.g., ASIC) that realizes one or more of the functions. The invention is not limited to the above-mentioned embodiments, and various modifications and changes are possible within the scope of the gist of the invention.
101 画像形成装置、102 情報処理装置、111 印刷データ生成装置、112 ブロックチェーン生成装置 101 Image forming device, 102 Information processing device, 111 Print data generating device, 112 Blockchain generating device
Claims (13)
登録対象である文書に関する文書関連情報を前記ブロックチェーンサービスに登録する登録手段と、
検証の対象となる対象文書に関する前記文書関連情報を、前記ブロックチェーンサービスから取得する取得手段と、
前記ブロックチェーンサービスから取得した前記文書関連情報に基づいて、前記対象文書が最新か否かを判定する判定手段と、
前記取得手段により前記対象文書の前記文書関連情報を取得できなかった場合、及び、前記判定手段により前記対象文書が最新でないと判定された場合には、前記対象文書の検証の失敗を出力する出力手段と、を有する
ことを特徴とする文書管理装置。 A document management device that cooperates with a blockchain service that manages information by associating each block with at least the previous block,
A registration means for registering document-related information relating to a document to be registered in the blockchain service;
An acquisition means for acquiring the document-related information relating to a target document to be verified from the block chain service;
A determination means for determining whether the target document is the latest or not based on the document-related information acquired from the block chain service;
a document management device that is provided with a document management system that is capable of managing documents in a manner that is consistent with the document management system and ...
前記文書関連情報には、文書のバージョン情報と他の文書間との派生関係を示す情報とが含まれ、
前記取得手段は、前記対象文書が派生した元文書から派生したすべての文書の前記文書関連情報を取得し、
前記判定手段は、前記対象文書の前記文書関連情報が取得できた場合には、取得した前記文書関連情報に含まれた前記バージョン情報のうち、前記対象文書のバージョンが最新であれば前記対象文書が最新であると判定する
ことを特徴とする文書管理装置。 2. The document management device according to claim 1,
The document-related information includes version information of the document and information indicating a derivation relationship between the document and other documents;
The acquiring means acquires the document-related information of all documents derived from an original document from which the target document is derived,
The document management device is characterized in that, when the document-related information of the target document is obtained, the determination means determines that the target document is the latest if the version of the target document is the latest among the version information contained in the obtained document-related information.
前記文書関連情報にはさらに前記文書関連情報に係る文書とその元文書との相違が軽微な相違か否かを示すメジャー・マイナー情報が含まれ、
前記判定手段は、前記対象文書のバージョン情報が、取得した前記文書関連情報に含まれた前記バージョン情報のうちで前記対象文書が最新ではない場合であっても、前記対象文書よりも新しいバージョンの文書の前記メジャー・マイナー情報が、当該文書と前記元文書との相違が軽微な相違であることを示している場合には、前記対象文書が最新であると判定する
ことを特徴とする文書管理装置。 3. The document management device according to claim 2,
The document-related information further includes major/minor information indicating whether a difference between the document related to the document-related information and its original document is minor or not;
The document management device is characterized in that the determination means determines that the target document is the latest even if the version information of the target document is not the latest among the version information contained in the acquired document-related information, if the major/minor information of a document newer than the target document indicates that the difference between the document and the original document is minor.
前記登録手段は、登録対象の文書が新規の文書でない場合には前記文書の元文書との前記派生関係を示す情報と、前記バージョン情報と、前記メジャー・マイナー情報とを含む前記文書関連情報を前記ブロックチェーンサービスに登録する
ことを特徴とする文書管理装置。 4. The document management device according to claim 3,
The document management device is characterized in that the registration means registers the document-related information, including information indicating the derivation relationship with the original document of the document, the version information, and the major/minor information, in the blockchain service if the document to be registered is not a new document.
前記文書関連情報には、他の文書関連情報が、バージョンが最新の文書の文書関連情報ではないことを示す文書関連情報が含まれ、
前記判定手段は、前記対象文書の前記文書関連情報が取得できた場合には、前記対象文書の文書関連情報について、バージョンが最新の文書の文書関連情報ではないことを示す文書関連情報が前記ブロックチェーンサービスに登録されていなければ、前記対象文書が最新であると判定する
ことを特徴とする文書管理装置。 2. The document management device according to claim 1,
the document-related information includes document-related information indicating that the other document-related information is not document-related information of a document having a latest version;
The document management device is characterized in that, when the document-related information of the target document can be obtained, if no document-related information indicating that the document-related information of the target document is not the document-related information of a document whose version is the latest is registered in the blockchain service, the determination means determines that the target document is the latest.
前記登録手段は、
前記登録対象の文書の前記文書関連情報を登録し、
前記登録対象の文書が新規に登録する文書でない場合には、前記登録対象の文書の元文書の前記文書関連情報と、前記元文書から派生した前記登録対象の文書以外の文書の前記文書関連情報とについて、バージョンが最新の文書の文書関連情報ではないことを示す文書関連情報を登録する
ことを特徴とする文書管理装置。 6. The document management device according to claim 5,
The registration means includes:
registering the document-related information of the document to be registered;
A document management device characterized in that, when the document to be registered is not a newly registered document, the document management device registers document related information indicating that the document related information of the original document of the document to be registered and the document related information of documents other than the document to be registered that are derived from the original document are not the document related information of the latest version.
前記文書関連情報が登録されている文書のバージョン情報を格納する格納手段を更に有し、
前記判定手段は、前記対象文書の前記文書関連情報が取得できた場合には、前記格納手段に格納された前記対象文書のバージョン情報が最新のバージョンであれば、前記対象文書が最新であると判定する
ことを特徴とする文書管理装置。 2. The document management device according to claim 1,
The document-related information is registered in the document storage device.
The document management device is characterized in that, when the document-related information of the target document is obtained, the determination means determines that the target document is the latest if the version information of the target document stored in the storage means is the latest version.
前記登録手段により前記登録対象の文書の前記文書関連情報を登録した場合には、前記格納手段に、前記登録対象の文書のバージョン情報を登録する第2の登録手段を更に有する
ことを特徴とする文書管理装置。 The document management device according to claim 7,
A document management device characterized in that it further comprises a second registration means for registering version information of the document to be registered in the storage means when the document-related information of the document to be registered is registered by the registration means.
前記文書関連情報には、他の文書間との派生関係を示す情報と、文書が元文書の複製であるか否かを示す文書属性とが含まれ、
前記判定手段は、前記対象文書の前記文書関連情報が取得できた場合には、前記対象文書の前記文書属性が複製を示していなければ前記対象文書を元文書として、前記対象文書の前記文書属性が複製を示していれば、前記対象文書が派生した、前記文書属性が複製を示していない文書を元文書として、当該元文書から前記文書属性が複製を示していない文書が派生しているか判定し、前記文書属性が複製を示していない文書が派生していないと判定した場合には、前記対象文書が最新であると判定する
ことを特徴とする文書管理装置。 2. The document management device according to claim 1,
The document-related information includes information indicating a derivation relationship between other documents and a document attribute indicating whether the document is a copy of an original document;
The document management device is characterized in that, when the document-related information of the target document can be obtained, if the document attributes of the target document do not indicate a duplication, the target document is treated as the original document, and if the document attributes of the target document indicate a duplication, the determination means determines whether a document whose document attributes do not indicate a duplication is derived from the original document from which the target document is derived, and if it is determined that a document whose document attributes do not indicate a duplication is not derived, it determines that the target document is the latest.
前記登録手段は、登録対象の文書が新規の文書でない場合には、前記登録対象の文書の内容とその元文書の内容とに差がない場合には前記文書属性が複製を示し、前記登録対象の文書の内容とその元文書の内容とに差がある場合には前記文書属性が複製を示していないような前記文書関連情報を前記ブロックチェーンサービスに登録する
ことを特徴とする文書管理装置。 10. The document management device according to claim 9,
The registration means registers the document-related information in the blockchain service such that, when the document to be registered is not a new document, the document attributes indicate a duplication if there is no difference between the content of the document to be registered and the content of its original document, and the document attributes do not indicate a duplication if there is a difference between the content of the document to be registered and the content of its original document.
前記登録手段が、登録対象である文書に関する文書関連情報を前記ブロックチェーンサービスに登録し、
前記取得手段が、検証の対象となる対象文書に関する前記文書関連情報を、前記ブロックチェーンサービスから取得し、
前記判定手段が、前記ブロックチェーンサービスから取得した前記文書関連情報に基づいて、前記対象文書が最新か否かを判定し、
前記応答手段が、前記取得手段により前記対象文書の前記文書関連情報を取得できなかった場合、及び、前記判定手段により前記対象文書が最新でないと判定された場合には、前記対象文書の検証の失敗を出力する
ことを特徴とする文書管理方法。 A document management method executed by a document management device linked to a block chain service that manages information for each block by associating it with at least the previous block, the document management device having a registration means, an acquisition means, a determination means, and a response means,
The registration means registers document-related information regarding the document to be registered in the block chain service;
The acquiring means acquires the document-related information regarding the target document to be verified from the block chain service;
The determination means determines whether the target document is the latest or not based on the document-related information acquired from the block chain service;
A document management method characterized in that the response means outputs a failure to verify the target document when the acquisition means is unable to acquire the document-related information of the target document and when the determination means determines that the target document is not up to date.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022194406A JP2024081008A (en) | 2022-12-05 | 2022-12-05 | Document management device, document management method, image forming device, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022194406A JP2024081008A (en) | 2022-12-05 | 2022-12-05 | Document management device, document management method, image forming device, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024081008A true JP2024081008A (en) | 2024-06-17 |
Family
ID=91483214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022194406A Pending JP2024081008A (en) | 2022-12-05 | 2022-12-05 | Document management device, document management method, image forming device, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2024081008A (en) |
-
2022
- 2022-12-05 JP JP2022194406A patent/JP2024081008A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5407209B2 (en) | Document management apparatus, document management program, and document management system | |
US20090044283A1 (en) | Document management apparatus, document management system and method, and computer-readable medium | |
JP6499423B2 (en) | Information processing system, information processing apparatus, and control method and program thereof | |
JP2009038795A (en) | Image forming apparatus management system, image forming apparatus, management device, image forming method, image forming program, management method, and management program | |
JP2008257317A (en) | Information processing apparatus, information processing system and program | |
US7904424B2 (en) | Method for managing document data and data structure | |
JP2010191596A (en) | Operation-definition file creating apparatus, system, image forming apparatus, operation-definition file creating method and program | |
JP4305510B2 (en) | Information processing system, information processing apparatus, and program | |
JP4698211B2 (en) | Information processing apparatus, image forming apparatus, and method for canceling movement of electronic data | |
JP5573357B2 (en) | Image processing apparatus, print control apparatus, print control system, print control method, print control program, and recording medium recording the program | |
US7912859B2 (en) | Information processing apparatus, system, and method for managing documents used in an organization | |
US20090287709A1 (en) | Information processing apparatus for editing document having access right settings, method of information processing, and program | |
JP5045118B2 (en) | Document management apparatus, document management system, and program | |
JP6161278B2 (en) | Image processing system, management apparatus, image processing apparatus, image processing method, and computer program | |
JP5082460B2 (en) | Information processing apparatus, program, and information processing system | |
JP4485785B2 (en) | Electronic data processing system and electronic data processing method | |
JP2006218649A (en) | Image forming apparatus and host apparatus, and printing system | |
JP2024081008A (en) | Document management device, document management method, image forming device, and program | |
JP4444641B2 (en) | Information processing apparatus, image forming apparatus, and electronic data transfer method | |
JP2010073012A (en) | Document management apparatus, document management system and program | |
JP2023113422A (en) | System, information processing device, and method for controlling the same | |
JP2005352901A (en) | Information processor and output status management method | |
JP2006293448A (en) | Documentation management system, document management method and program | |
JP5309664B2 (en) | Document management apparatus and program | |
JP7442569B2 (en) | Information processing system, print control method, program |