以下、図面を参照して本発明の好適な実施の形態について説明する。まず、本実施形態のシステムにおいて入力デバイスとして使用される電子ペンの概要について説明する。
[電子ペン]
図1は電子ペンの使用形態を模式的に示す図であり、図2は電子ペンの構造を示す機能ブロック図である。図1に示すように、電子ペン10は、ドットパターンが印刷された専用ペーパー20と組み合わせて使用される。電子ペン10は、通常のインクペンと同様のペン先部17を備えており、利用者は通常のインクペンと同様に専用ペーパー20上に文字などを書くことになる。
図2に示すように、電子ペン10は、その内部にプロセッサ11、メモリ12、データ通信ユニット13、バッテリー14、LED15、カメラ16及び圧力センサ18を備える。また、電子ペン10は通常のインクペンと同様の構成要素としてインクカートリッジ(図示せず)などを有する。
電子ペン10は、ペン先部17により専用ペーパー20上に描かれたインクの軌跡をデータ化するのではなく、専用ペーパー20上で電子ペン10が移動した軌跡座標をデータ化する。LED15が専用ペーパー20上のペン先部17近傍を照明しつつ、カメラ16が専用ペーパー20に印刷されているドットパターンを読み取り、データ化する。つまり、電子ペン10は専用ペーパー20上で利用者が電子ペン10を移動させることにより生じるストロークを画像データ又はベクトルデータとして取得することができる。ここで、電子ペン10が取得した画像データ又はベクトルデータは、ドットパターン上における軌跡の座標情報の集合体であり、本実施形態では「ストロークデータ」と呼ぶ。このストロークデータは、所定の加工をしなければ業務上意味を成さないが電子ペン10が最初に取得するデータである。
圧力センサ18は、利用者が電子ペン10により専用ペーパー上に文字などを書く際にペン先部17に与えられる圧力、即ち筆圧を検出し、プロセッサ11へ供給する。プロセッサ11は、圧力センサ18から与えられる筆圧データに基づいて、LED15及びカメラ16のスイッチオン/オフの切換を行う。即ち、利用者が電子ペン10で専用ペーパー20上に文字などを書くと、ペン先部17には筆圧がかかる。よって、所定値以上の筆圧が検出されたときに、利用者が記述を開始したと判定して、LED15及びカメラ16を作動する。
カメラ16は専用ペーパー20上のドットパターンを読み取り、そのパターンデータをプロセッサ11に供給する。プロセッサ11は、供給されたドットパターンから、専用ペーパー20上でのX,Y座標を算出する。
プロセッサ11は、利用者の記述が行われる間に、筆圧の配列データ及びX,Y座標データを取得し、タイムスタンプ(時間情報)と関連付けてメモリ12に記憶していく。よって、メモリ12内には利用者の記述内容に対応するデータが時系列で記憶されていく。メモリ12の容量は例えば1Mバイト程度とすることができる。
利用者により送信指示がなされるまでは、取得された全てのデータはメモリ12内に保持される。そして、利用者が送信指示を行うと、データ通信ユニット13により、電子ペン10と所定距離内にある端末装置25へメモリ12内のデータが送信される。基本的には、一度送信指示がなされると、電子ペン10はメモリ12内に記憶していた全てのデータを端末装置25へ送信するため、メモリ12内はクリアされる。よって、送信後にもう一度同じ情報を端末装置25へ送信したい場合には、利用者は専用ペーパー20上に再度記述を行う必要がある。なお、この場合、利用者は専用ペーパー20上にインクペンで書かれた文字などをなぞればよいことになる。
電子ペン10自体は、送信ボタンなどの機能ボタンを備えておらず、送信指示その他の指示は、利用者が専用ペーパー20上の所定位置に設けられた専用ボックスを電子ペン10でチェックすることにより実行される。専用ボックスの位置座標には、予め送信指示が対応付けられており、プロセッサ11は専用ボックスの位置座標を受信すると、データ通信ユニット13にメモリ12内のデータを供給し、端末装置25への送信を行わせる。なお、電子ペン10は、データの送信完了を電子ペンの振動により示すことができる。
バッテリー14は電子ペン10内の各要素に電源供給するためのものであり、例えば電子ペンのキャップ(図示せず)により電子ペン10自体の電源のオン/オフを行うことができる。
このように、電子ペン10は利用者が専用ペーパー20上に記述した文字などに対応する座標データ及び筆圧データを取得して近傍の端末装置25へ送信する機能を有するが、電子ペン10のペン先部17は通常のインクペンとなっているため、専用ペーパー20上に記述した内容はオリジナルの原本として残るという特徴がある。即ち、紙の原本に対して記述するのと同時に、その内容を座標データなどの形態でリアルタイムに電子化することができる。
なお、電子ペン10の標準機能によれば、電子ペン10により得られるストロークデータは、原則として座標データ又はベクトルデータの形態であり、テキストデータではない。但し、電子ペン10は標準機能として、専用ペーパー20上に設けられた専用エリアに記述することにより、英数字に限り加工した上でテキスト化する機能は備えている。
また、電子ペン10内には、ペン自体及びその所有者に関するプロパティ情報(ペン情報及びペン所有者情報)を保持することができ、アプリケーションから参照することができる。ペン情報としては、バッテリーレベル、ペンID、ペン製造者番号、ペンソフトウェアのバージョン、サブスクリプションプロバイダのIDなどを保持できる。また、ペン所有者情報としては、国籍、言語、タイムゾーン、emailアドレス、空きメモリ容量、名称、住所、ファックス/電話番号、携帯電話番号などを保持することができる。
なお、上記の例におけるデータ通信ユニット13では、Bluetooth(登録商標)の無線伝送、USBケーブルを使用した有線伝送、端子などの接触によるデータ伝送など、各種の方法によって電子ペン10から端末装置25へのデータ送信を行うことが考えられる。
次に、電子ペンにより利用者が記述した内容のX,Y座標データを取得する方法について説明する。前述のように専用ペーパー20には、所定のドットパターンが印刷されている。電子ペン10のカメラ16は、利用者が専用ペーパー20上に記述したインクの軌跡を読み取るのではなく、専用ペーパー20上のドットパターンを読み取る。実際、図1に示すように、LED15による照明エリア及びカメラ16の撮影エリア(照明エリア内に位置する)は、ペン先部17が専用ペーパー20に接触する位置とはずれている。
ドットパターンはカーボンを含む専用インキなどで印刷されており、カメラ16はその専用インキによるパターンのみを認識することができる。専用インキ以外のインキ(カーボンを含まない)により、専用ペーパー上に罫線や枠などを印刷しても、電子ペンはそれらを認識することはない。よって、専用ペーパーを利用して各種申込書などの帳票を作成する際は、専用インキ以外のインキで入力枠や罫線、注意書きなどを印刷する。
ドットパターンは、図3に例示するように、各ドットの位置がデータに対応付けされている。図3の例では、ドットの位置を格子の基準位置(縦線及び横線の交差点)から上下左右にシフトすることにより、0〜3の2ビット情報を表示した例である。このようにして表現された情報の組合せにより、専用ペーパー上の位置座標が決定される。図4(a)に例示するように、縦横2mmの範囲内に36個のドットが格子状に配置され、これらのドットにより示されるデータの配列(図4(b))が、その専用ペーパー上の位置座標と対応付けされている。よって、電子ペン10のカメラ16が図4(a)に示すようなドットパターンを撮影すると、プロセッサ11はカメラ16から入力されるドットパターンのデータに基づいて図4(b)に示すデータ配列を取得し、それに対応する専用ペーパー上の位置座標(即ち、そのドットパターンがその専用ペーパー上のどの位置にあるのか)をリアルタイムで算出する。なお、ドットパターンを認識する最小単位は2mm×2mmであり、カメラ16は毎秒100回程度の撮影を行う。
次に、専用ペーパーについて説明する。専用ペーパーの構造の一例を図5に示す。図示のように、専用ペーパー20は、台紙30上にドットパターン32が印刷され、その上に罫線などの図案34が印刷されている。台紙30は通常は紙であり、ドットパターン32は前述のようにカーボンを含んだ専用インキにより印刷される。また、通常のインキなどにより図案34が印刷される。ドットパターンと図案とは同時に印刷してもよいし、いずれかを先に印刷してもよい。
図案34の例を図6に示す。図6は、ある申込書36の例であり、複数の記入欄38や送信ボックス39が印刷されている。図6には明確に図示されておらず、詳細は後述するが、実際にはドットパターンが申込書36の全面に印刷されており、その上に記入欄38や送信ボックス39が通常のインキにより印刷されている。利用者は、ドットパターンを意識することなく、従来からある申込書と同様に、電子ペン10を使用して必要事項を申込書36の各記入欄38に記入すればよい。
専用ペーパー20上のエリアは大きく2種類のエリアに分けることができる。1つは記入エリアであり、電子ペン10による記述内容をそのまま情報として取り扱うエリアである。図6の例では複数の記入欄38がこれに該当する。もう1つは機能エレメントであり、対応するエリア内を電子ペン10でチェックした際に、予めそのエリアに対して定義されているアクション、指示などを実行するようになっている。図6の例における送信ボックス39がこれに該当する。
送信ボックス39は前述したように電子ペン10内に記憶されているデータを近傍の端末装置25へ送信するための指示を行う際に使用される。利用者が送信ボックス39内に電子ペン10でチェックを入れると、電子ペン10が送信ボックス内のドットパターンを読み取る。当該パターンは送信指示に対応付けられており、電子ペン10内のプロセッサ11はデータ通信ユニット13にメモリ12内の記憶データの送信命令を発する。
ドットパターンの割り当ては、通常、アプリケーション(用紙の種類)毎に行われる。即ち、ある申込書内のドットパターンは1枚の用紙の中で重複することはないが、同一の申込書には全て同じドットパターンが印刷されている。よって、利用者が電子ペン10で必要事項を入力すると、その入力事項がその申込書のどの項目に対するものであるかを、申込書上の座標データから特定することができる。
このように、ドットパターンを印刷した専用ペーパー上に所定の図案を印刷することにより、専用ペーパーを利用した各種申込書が作成できる。利用者は電子ペン10を使用して通常の要領で必要事項を記入すれば、その電子データが自動的に取得される。
上記の例では、ドットパターンは専用ペーパー上にカーボンを含むインキにより印刷されているが、プリンタ及びカーボンを含むインクを使用してドットパターンを通常の紙上にプリントすることも可能である。さらに、専用ペーパー上の図案も印刷ではなく、プリンタにより形成することも可能である。ドットパターンをプリンタにより紙上に形成する場合には、1枚1枚に異なるドットパターンを形成することが可能である。よって、形成されたドットパターンの違いにより、それらの用紙1枚1枚を識別し、区別することが可能となる。
なお、本明細書においては、「印刷」の語は、通常の印刷のみならず、プリンタによるプリントも含む概念とする。
次に、電子ペンにより取得したデータの送信処理について図2を参照して説明する。電子ペン10が取得したデータは、主として利用者が入力した事項のデータであるが、通常はそのデータの送信先であるサービスサーバがどこであるかの情報は含まれていない。その代わりに、その専用ペーパーに関するアプリケーションやサービスを特定する情報が専用ペーパー上のドットパターンに含まれており、利用者の入力作業中に専用ペーパーからその情報が取得されている。よって、電子ペン10からストロークデータを受け取った端末装置25は、まず、問い合わせサーバ26に対して、その専用ペーパーに対して入力されたデータをどのサービスサーバ27へ送信すべきかの問い合わせを行う。問い合わせサーバ26は、専用ペーパー毎に、対応するサービスサーバの情報を有しており、端末装置25からの問い合わせに応じて、当該専用ペーパーに関するサービスなどを行うサービスサーバ27の情報(URLなど)を端末装置25へ回答する。それから、端末装置25は、電子ペンから取得したストロークデータをそのサービスサーバ27へ送信することになる。
また、上記の例では端末装置25、問い合わせサーバ26及びサービスサーバ27が別個に構成されているが、これらの幾つか又は全てを1つの装置として構成することも可能である。本実施形態において、後述するサーバは、問い合わせサーバ26及びサービスサーバ27を兼ねているものとする。
[契約処理システム]
次に、本実施形態の契約処理システムについて説明する。図7に契約処理システム100の概略構成を示す。図7に示す契約処理システム100は、利用者が電子ペン用帳票(以下、「帳票」と呼ぶ。)3に記入した情報をストロークデータとして取得し、当該ストロークデータと後述するフォーム証明書とを1つのファイルとした原本データを作成するシステムである。また、契約処理システム100は、作成した原本データに基づいて、所定の契約の審査を行うシステムである。
図7に示すように、契約処理システム100は、端末装置25及びサーバ5がネットワーク2を通じて接続されることにより構成される。ここで、ネットワーク2の1つの好適な例はインターネットである。また、端末装置25とは、所定の契約に関わる販売店等が保有するPCやPDA(Personal Digital Assistants)といったネットワーク2を介してデータの授受が可能な端末である。また、サーバ5は、帳票3に記入されたストロークデータと、当該帳票3を製造した印刷会社から取得したフォーム証明書とに基づいて、原本データを作成し、審査を行うことで契約処理を行うサーバである。サーバ5は、フォーム証明書DB6及び原本データDB7に接続されている。
まず、図8乃至図13を参照して、本システムにおける契約処理方法の概要を述べておく。図8は、所定の契約書である帳票3の例である。図9は、ドットパターン版及びレイアウト版から構成される帳票3を示す図である。図10は、フォーム証明書の構成を示す図である。図11は、フィールド定義データの構成を示す図である。図12は、ストロークデータ及びフォーム証明書に基づく照合を説明する図である。図13は、原本データの構成を示す図である。
帳票3は、上述の専用ペーパーとして作成された契約書であり、図8に示すように、電子ペン10により住所や署名が記入される複数の項目から構成されている。また、帳票3は、所定の契約に関する規約が印刷されている。原則として、署名項目への記入は、当該規約に承諾した場合にのみ行われるものとする。
また、帳票3は、図9に示すように、ドットパターン版とレイアウト版で構成されている。ドットパターン版とは、上述のように、電子ペン10が位置座標を認識するために必要であって、人間が認識不可能なドットパターンである。一方、レイアウト版とは、項目や規約のように、人間が認識可能な背景の画像データ(イメージデータ)である。帳票3は、ドットパターン版とレイアウト版を重ね合わせた構造となっている。
帳票3は、所定の印刷会社等により製造される。印刷会社は、帳票3を製造する際、当該帳票3の原本性を保証するため、図10に示すようなフォーム証明書を作成する。フォーム証明書は、図示のように、製造タイムスタンプ、フィールド定義データ及びレイアウトデータを1つのファイルとしたものである。具体的に、印刷会社は、帳票3の製造時や出荷時に、フィールド定義データとレイアウトデータをXML(eXtensible Markup Language)デジタル封筒化し、製造タイムスタンプを付与することによりフォーム証明書を作成する。作成されたフォーム証明書は、サーバ5が取得し、フォーム証明書DB6で管理する。ここで、XMLデジタル封筒技術とは、XML形式の電子封筒を使用して複数の情報を1つのファイルにまとめることができる技術である。このようなXMLデジタル封筒技術を用いることで、複数の情報を1つのファイルにし、管理を簡便にすることができる。
ここで、製造タイムスタンプについて説明する。製造タイムスタンプとは、例えば特定時刻認証局業務認定資格を保有する第三者認証機関が発行した時刻を含む電子署名とすることができる。具体的に、印刷会社は、帳票3の製造時に、当該帳票3のハッシュ値を第三者認証機関に送信することで製造時刻の証明、即ち本実施形態における製造タイムスタンプを取得することができる。サーバ5は、この製造タイムスタンプの有効性を検証することにより、フォーム証明書に含まれるフィールド定義データ及びレイアウトデータの改ざんの有無を確認することができる。また、帳票3の製造時刻や出荷時刻を第三者機関が認定した時刻として認識することができる。
なお、本実施形態では、フォーム証明書が有する電子署名を、帳票の製造時刻を証明する製造タイムスタンプとしているが、本発明はこれに限定されるものではなく、第三者人称機関が当該印刷会社が製造したことを証明する電子署名としてもよい。これによれば、サーバ5は、電子署名の有効性を検証することにより、帳票3が確かに当該印刷会社により製造されたか否かを確認することができる。
フィールド定義データとは、帳票3においてどこが入力欄であるか等をサーバ5が認識するために必要な情報であり、入力欄等であるフィールドと、帳票3のドットパターン上の位置座標との関係性を示す情報である。つまり、帳票3には複数のフィールドが定義されているが、本実施形態では、各フィールドが項目に対応しているものとする。そのため、本実施形態のフィールド定義データは、図11に示すように、各項目を識別する項目IDと、各項目のドットパターン上の位置座標を示す座標データとを対応付けた情報を有している。なお、フィールド定義データは、これに限定されるものではなく、フィールドと、当該フィールドのドットパターン上の位置座標との関係性を示すものであれば、データ形式は任意である。
また、フィールド定義データは、図11に示すように、帳票3に割り当てられたドットパターンの領域を識別するパターンアドレスを有している。サーバ5は、パターンアドレスにより、帳票3を識別することが可能となる。本実施形態では、帳票3を識別する情報としてパターンアドレスを使用しているが、本発明はこれに限定されるものではなく、帳票3を識別する様式IDを使用することとしてもよい。換言すると、本実施形態では、様式IDとして、パターンアドレスを利用しているのである。
なお、フィールド定義データの印刷権利は印刷会社にあるので、印刷会社が不正をしない限りフォーム証明書は正しいとすることができる。即ち、原本性を保証することができる。
レイアウトデータとは、帳票3を構成するレイアウト版と同様に、項目や規約のように、人間が認識可能な画像データ(イメージデータ)のことである。
帳票3を製造する印刷会社は、図10に示すようなXMLデジタル封筒化されたフォーム証明書を作成し、サーバ5へ送信する。サーバ5は、予め印刷会社から取得したフォーム証明書をフォーム証明書DB6により管理している。フォーム証明書は、図示のように、製造タイムスタンプ、フィールド定義データ及びレイアウトデータが1つのファイルとして印刷会社により作成されているため、サーバ5を管理する契約会社(例えば、所定の契約に関わる販売店等)が、当該フォーム証明書の中身を改ざんすることは事実上不可能である。換言すると、フォーム証明書を構成するレイアウトデータが改ざんされることはないといえる。つまり、サーバ5を管理する契約会社により契約書に記載された規約のみを改ざんされるといった不正を防止することができる。
利用者は、所定の契約を行う場合、まず、図8に示すような帳票3に電子ペン10を使用して必要事項を記入する。電子ペン10は、記入された内容に対応するストロークデータを取得し、電子ペン10内のメモリに一時的に記憶した後、当該ストロークデータを端末装置25へ送信する。端末装置25は、電子ペン10からストロークデータを受信し、ネットワーク2を通じてサーバ5へ送信する。サーバ5は、利用者が電子ペン10により帳票3に記入した文字等に関する情報としてストロークデータを取得する。
サーバ5は、ストロークデータに基づいて、利用者が電子ペン10で記入した帳票3のパターンアドレスを特定する。ストロークデータは、上述のようにドットパターン上における軌跡の座標情報の集合体であり、帳票3に割り当てられたドットパターンの領域を識別するパターンアドレスも含んでいるものである。ここで、ストロークデータに基づいて特定したパターンアドレスを「ストロークパターンアドレス」と呼ぶ。
また、サーバ5は、フォーム証明書DB6から抽出したフォーム証明書に基づいて、フィールド定義データに含まれるパターンアドレスを特定する。ここで、フォーム証明書に基づいて特定したパターンアドレスを「フォームパターンアドレス」と呼ぶ。
さらに、サーバ5は、図12に示すように、ストロークパターンアドレスとフォームパターンアドレスを比較する。ストロークパターンアドレスとフォームパターンアドレスが一致する場合、サーバ5は、当該フォーム証明書を、当該ストロークデータに対応するものと特定する。即ち、ストロークデータとフォーム証明書を紐付ける。具体的には、ストロークデータと、フォーム証明書を構成するレイアウトデータとを紐付ける。通常、契約においては、どのレイアウトデータにストロークデータが書き込まれたかが最も重要だと思われるが、これによりその真正性が確認できる。
なお、ストロークパターンアドレスとフォームパターンアドレスが一致しない場合、サーバ5は、フォーム証明書DB6から新たなフォーム証明書を抽出し、同様の処理を行う。
そして、サーバ5は、紐付けたストロークデータとレイアウトデータに基づいて合成画像データを作成する。具体的に、サーバ5は、ストロークデータに基づいて生成された表示用データとレイアウトデータを合成することで合成画像データを作成する。ここで、表示用データとは、ストロークデータを変換してイメージ化したイメージデータや、ストロークデータをOCR(Optical Character Reader)変換してテキスト化したテキストデータなどのことである。この合成画像データと、紐付けたストロークデータ及びフォーム証明書とを一括にXMLデジタル封筒化し、原本タイムスタンプを付与することで、図13に示すような原本データを作成する。この原本データにより、どの帳票3にどんな内容をいつ記入したのかが証明できるようになる。
ここで、原本タイムスタンプとは、例えば特定時刻認証局業務認定資格を保有する第三者認証機関が発行した時刻を含む電子署名とすることができる。なお、上述の製造タイムスタンプ及び原本タイムスタンプの対象は、広く柔軟に対応でき、タイムスタンプ以外にもそのデータを証明できる種々の方法の使用が考えられる。
また、電子ペン10は、電子ペン10から送信されるデータの暗号化機能を有しているものとする。具体的に、電子ペン10は、端末間暗号技術を使って通信を行うため、電子ペン10で記入された文字等のメッセージは送信する前にペン内部で暗号化される。従って、メッセージは電子ペン10から送信されるその瞬間より保護され、意図された正しい受取人(正しい鍵を有するサーバや端末装置)のみがそれを解読することができる。
このように、サーバ5は、図13に示すような原本データを作成し、原本データDB7に記憶・管理する。そして、サーバ5は、この原本データに基づいて、所定の契約に関する審査を行い、審査結果を端末装置25へ送信する。なお、原本データは、販売店の控えとして端末装置25が適宜ダウンロードすることが可能である。
これによれば、電子ペン10を使用して所定の契約の審査を行うため、従来のようにコピーやFAXを使用する場合と比べて、契約書記入から商品引渡しまでの処理を迅速に行うことができる。
また、これによれば、個人情報である契約書の内容が、審査を行うサーバ5へ電子ペン10によって暗号化された状態で送信することもできる。さらに、従来は販売店控えとして残していた個人情報が記入された紙媒体の保存が不要となる。よって、セキュリティ面を強化することができる。
また、XMLデジタル封筒化により1つのファイルとしたフォーム証明書によってレイアウトデータの真正性が証明できると共に、サーバが管理する原本データによって合成画像データの原本性を証明することができる。具体的に、原本データに含まれる合成画像データのレイアウトデータと、原本データに含まれるフォーム証明書のレイアウトデータとを比較することにより、レイアウトデータが改ざんされているか否かを検証することができる。さらに、原本データにより、利用者がどの帳票3にどのような内容をいつ記入したのかを明確に証明することができる。
[サーバ]
次に、サーバ5について詳しく説明する。図14は、契約処理システム100における、特にサーバ5の内部構成を示す。
図示のように、サーバ5は、契約処理プログラム101、フォーム証明書記憶機能102、ストロークデータ取得機能103、ストロークパターンアドレス特定機能104、フォームパターンアドレス特定機能105、パターンアドレス比較機能106、製造タイムスタンプ検証機能107、合成画像データ作成機能108、原本データ作成機能109、原本データ記憶機能110、審査機能111及び審査結果送信機能112から構成されている。
なお、各機能は、サーバ5が有するCPUが予め用意されたプログラムを実行することにより実現される。
契約処理プログラム101は、電子ペン10から取得したストロークデータ及び印刷会社から取得したフォーム証明書に基づいて、原本データを作成し、所定の契約の審査を行うプログラムである。
フォーム証明書記憶機能102は、契約処理プログラム101を実行することにより、帳票3を製造する印刷会社から取得したフォーム証明書を、フォーム証明書DB6に記憶する機能である。
ストロークデータ取得機能103は、契約処理プログラム101を実行することにより、利用者が電子ペン10を使用して帳票3に記入した文字等に関するストロークデータを取得する機能である。
ストロークパターンアドレス特定機能104は、ストロークデータ取得機能103が取得したストロークデータに基づいて、電子ペン10で記入した帳票3に割り当てられたドットパターンの領域を識別するパターンアドレスをストロークパターンアドレスとして特定する機能である。
フォームパターンアドレス特定機能105は、フォーム証明書DB6から抽出したフォーム証明書に基づいて、当該フォーム証明書のフィールド定義データに定義されたパターンアドレスをフォームパターンアドレスとして特定する機能である。
パターンアドレス比較機能106は、ストロークパターンアドレス特定機能104が特定したストロークパターンアドレスと、フォームパターンアドレス特定機能105が特定したフォームパターンアドレスとを比較する機能である。また、パターンアドレス比較機能106が有するフォーム証明書特定機能は、ストロークパターンアドレスと一致するフォームパターンアドレスに対応するフォーム証明書を、ストロークデータに紐付くフォーム証明書であると特定する機能である。つまり、ストロークデータとフォーム証明書を紐付ける機能である。
製造タイムスタンプ検証機能107は、製造タイムスタンプの有効性を検証する機能である。製造タイムスタンプ検証機能107は、改ざん検証機能及び記入時刻検証機能を有している。改ざん検証機能は、製造タイムスタンプとしてフォーム証明書に付与された電子署名を検証することにより、フォーム証明書を構成するフィールド定義データ及びレイアウトデータに改ざんがないことを検証する機能である。記入時刻検証機能は、製造タイムスタンプを用いて時刻認証をすることにより証明される帳票3の製造時刻と、ストロークデータに基づく帳票3への記入時刻とを比較することにより、製造時刻が記入時刻より前であることを検証する機能である。
合成画像データ作成機能108は、製造タイムスタンプ検証機能107の検証結果に問題がない場合に、ストロークデータ取得機能103が取得したストロークデータと、フォーム証明書特定機能が特定したフォーム証明書を構成するレイアウトデータとに基づいて、合成画像データを作成する機能である。
原本データ作成機能109は、ストロークデータ取得機能103が取得したストロークデータと、合成画像データ作成機能108が作成した合成画像データと、フォーム証明書特定機能が特定したフォーム証明書と、を一括にXMLデジタル封筒化し、原本タイムスタンプを付与することで、原本データを作成する機能である。
原本データ記憶機能110は、原本データ作成機能109が作成した原本データを原本データDB7に記憶する機能である。
審査機能111は、原本データ記憶機能110が記憶した原本データに基づいて、所定の契約の審査を行う機能である。具体的に、審査機能111は、原本データに基づいて、契約書に記入した項目の内容、契約者との過去の取引状況、信用情報機関を利用した他社の利用状況等を審査するが、個々の処理については便宜上説明を省略する。
審査結果送信機能112は、審査機能111による審査の結果を端末装置25へ送信する機能である。
[契約処理]
次に、契約処理システム100により実行される契約処理について説明する。図15は、契約処理のフローチャートである。
なお、契約処理を実行するサーバ5は、予め印刷会社よりフォーム証明書を取得し、フォーム証明書DB6にて管理しているものとする。
利用者は、まず、電子ペン10を使用して帳票3に必要事項を記入する。このとき、利用者は、帳票3の規約に承諾する場合に限り、署名を行う。帳票3への記入が終了すると、利用者は、送信ボックス39にチェックマークを記入することにより、販売店等に設置された端末装置25を介してストロークデータをサーバ5へ送信する。
サーバ5は、端末装置25からストロークデータを取得する(ステップS1)。そして、サーバ5は、ストロークデータに基づいて、ストロークパターンアドレスを特定する(ステップS2)。また、サーバ5は、フォーム証明書DB6から抽出したフォーム証明書に基づいて、フォームパターンアドレスを特定する(ステップS3)。さらに、サーバ5は、特定したストロークパターンアドレスとフォームパターンアドレスを比較する。そして、ストロークパターンアドレスと一致するフォームパターンアドレスに対応するフォーム証明書を特定する。つまり、ストロークデータに紐付くフォーム証明書を特定する(ステップS4)。
次に、サーバ5は、特定したフォーム証明書に付与された製造タイムスタンプを検証する(ステップS5)。検証結果に問題がある場合(ステップS6;No)、改ざん等の不正が行われた可能性があるため、サーバ5は契約処理を終了する。一方、検証結果に問題がない場合(ステップS6;Yes)、サーバ5は、ストロークデータと、特定したフォーム証明書を構成するレイアウトデータとに基づいて合成画像データを作成する(ステップS7)。そして、サーバ5は、ストロークデータと、合成画像データと、特定したフォーム証明書とを一括にXMLデジタル封筒化し、原本タイムスタンプを付与することで原本データを作成する。作成した原本データは、原本データDB7に記憶し、管理する(ステップS8)。さらに、サーバ5は、管理している原本データに基づいて、所定の契約の審査を行う(ステップS9)。そして、サーバ5は、審査結果を端末装置25に送信することにより、契約処理を完了する(ステップS10)。
なお、本実施形態では、端末装置25が販売店等に設置されており、サーバ5が所定の契約に関する処理を行うこととしている。具体的に、本発明は、商品のクレジット契約、生命保険、住宅ローン等審査が必要な任意の契約処理に適用することができる。
また、本実施形態では、フォーム証明書は、製造タイムスタンプ、フィールド定義データ及びレイアウトデータを1つのファイルとしたものであるが、本発明はこれに限定されるものではなく、フィールド定義データ及びレイアウトデータを1つのファイルとしたものであってもよい。さらに、本実施形態では、フィールド定義データ及びレイアウトデータは、データ形式の異なる別個のものであるとしているが、本発明はこれに限定されるものではなく、情報としてフィールド定義データ及びレイアウトデータの要素が含まれていれば、そのデータ形式は任意である。つまり、本実施形態のように、フィールド定義データとレイアウトデータが独立した2つのデータとして存在する場合の他、組み合わさった1つのデータとして存在する場合や3つ以上に分割したデータとして存在する場合等も本発明を適用することが可能である。
また、本実施形態では、原本データは、原本タイムスタンプ、ストロークデータ、合成画像データ及びフォーム証明書を1つのファイルとしたものであるが、本発明はこれに限定されるものではなく、ストロークデータ及びフォーム証明書を1つのファイルとしたものであってもよい。つまり、合成画像データ及び原本タイムスタンプを原本データに含めるか否かは任意とすることができる。
このように、本実施形態によれば、電子ペン10を使用して所定の契約の審査等を行うため、従来のようにコピーやFAXを使用する場合と比べて、契約書記入から商品引渡しまでの処理を迅速に行うことができる。
また、XMLデジタル封筒化により1つのファイルとしたフォーム証明書によってレイアウトデータの真正性が証明できると共に、サーバが管理する原本データによって合成画像データの原本性を証明することができる。つまり、レイアウトデータや合成画像データの改ざんを検出することが可能となるため、契約書の原本性を保証し、セキュリティを確保することができる。具体的には、レイアウトデータである規約等を、サーバ5を管理する契約会社が勝手に改ざんするような不正を検出することができる。換言すると、サーバ5を管理する契約会社は、原本データにより、レイアウトデータを改ざんしていないことを容易に証明することができる。
[第1変形例]
上記実施形態では、合成画像を作成した後、すぐに原本データを作成して審査を行うこととしているが、本発明はこれに限定されるものではなく、原本データを作成する前に合成画像データを端末装置25へ送信し、利用者の承諾を得ることとしてもよい。
ここで、合成画像データについて詳しく説明する。合成画像データは、フォーム証明書が有するレイアウトデータと、ストロークデータに基づいて生成された表示用データとを合成したものである。具体的に、表示用データとは、ストロークデータを変換してイメージ化したイメージデータや、ストロークデータをOCR変換してテキスト化したテキストデータなどのことである。つまり、表示用データにより、利用者は、自身が記入した記入事項/入力内容を確認することができる。
利用者の承諾を得る場合、サーバ5は、作成した合成画像データを端末装置25へ送信する。端末装置25は、取得した合成画像データを画面上に表示させる。利用者は、端末装置25に表示された合成画像データを確認し、自身が記入した記入事項/入力内容に対応する表示用データに間違いないと判断した場合、所定のボタン(例えば、画面上の「承認ボタン」等)を押下することでストローク承認データをサーバ5へ送信する。また、利用者は、端末装置25に表示された合成画像データを確認し、規約等が帳票3のレイアウトデータに間違いないと判断した場合、所定のボタンを押下することでレイアウト承認データをサーバ5へ送信する。
サーバ5は、ストローク承認データ及びレイアウト承認データの双方を受信した場合に限り、合成画像データと、ストロークデータと、フォーム証明書とを一括にXMLデジタル封筒化し、原本タイムスタンプを付与することで原本データを作成する。
このとき、サーバ5は、原本データに、端末装置25から受信したストローク承認データ及びレイアウト承認データを含めることとしてもよい。これによれば、サーバ5は、契約締結後、原本データを検証することにより、容易に利用者が合成画像データに基づいて、ストロークデータ及びレイアウトデータを承認していることを証明することができる。
また、サーバ5は、原本データを作成するまでのプロセスをプロセスデータとして原本データに含めることとしてもよい。具体的に、プロセスデータとは、合成画像データを端末装置に送信したこと及びその時刻や、審査が終了したこと及びその時刻など、事象とその時刻に関するデータである。
[第2変形例]
上記実施形態では、図13に示すように、原本データは、原本タイムスタンプ、ストロークデータ、合成画像データ及びフォーム証明書を1つのファイルとしたものであるが、本発明はこれに限定されるものではなく、合成画像データを除いた原本タイムスタンプ、ストロークデータ及びフォーム証明書を1つのファイルとしたものであってもよい。この場合、ストロークデータ及びフォーム証明書に含まれるレイアウトデータに基づき、必要に応じて合成画像データを作成する。これによれば、容量の大きい合成画像データを原本データに含める必要がないため、原本データの容量を軽減することができる。
また、原本タイムスタンプ及びストロークデータを構成要素とする複数のデータと、各データに共通するフォーム証明書とを予め紐付けて保存しておき、必要に応じて適宜、合成画像データや原本データを作成することとしてもよい。この場合も、ストロークデータ及び紐づけられたフォーム証明書に含まれるレイアウトデータに基づき、合成画像データを作成する。さらに、作成した合成画像データ、ストロークデータ、原本タイムスタンプ及びフォーム証明書に基づいて原本データを作成する。これによれば、図13に示すような原本データを常に保存しておく必要がないため、サーバ5は、記憶容量を効率的に使用することができる。