JP2004320589A - Electronic signature system and its method - Google Patents
Electronic signature system and its method Download PDFInfo
- Publication number
- JP2004320589A JP2004320589A JP2003113826A JP2003113826A JP2004320589A JP 2004320589 A JP2004320589 A JP 2004320589A JP 2003113826 A JP2003113826 A JP 2003113826A JP 2003113826 A JP2003113826 A JP 2003113826A JP 2004320589 A JP2004320589 A JP 2004320589A
- Authority
- JP
- Japan
- Prior art keywords
- electronic signature
- signature
- node
- data
- transmission data
- 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
Images
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、情報セキュリティを保持するための電子署名システムおよびその方法に関する。
【0002】
【従来の技術】
例えば、特許文献1,2は、電子署名を用いて文書データを保存する方法を開示する。
特許文献1,2に開示された電子署名を行うためには、一般に、クライアントに対してサービスを提供するアプリケーションに対する大幅な変更が必要とされる。
このことが、電子署名の普及の障壁になっているという意見もある。
また、非特許文献1には、「True Pass(商標)」と呼ばれる電子署名システムが開示されている。
【0003】
【特許文献1】特開2002−215827号公報
【特許文献2】特開2002−183653号公報
【非特許文献1】http://www.entrust.co.jp/products/truepass60.html
【0004】
【発明が解決しようとする課題】
本発明は、上述した背景からなされたものであり、サービスを提供するアプリケーションをほとんど変更せずに、電子署名処理を実現可能な電子署名システムおよびその方法を提供することを目的とする。
また、本発明は、上述した非特許文献1に開示された方法とは異なる電子署名システムおよびその方法を提供することを目的とする。
【0005】
【課題を解決するための手段】
[電子署名システム]
上記目的を達成するために、本発明に係る電子署名システムは、第1のノードと、第2のノードと、第3のノードとを有する電子署名システムであって、前記第1のノードは、所定の伝送データを、前記第3のノードに対して送信する伝送データ送信手段と、前記第3のノードが送信した第1の電子署名を受信し、前記受信された第1の電子署名を検証する検証手段と、前記伝送データから、前記第2の電子署名を生成し、前記生成された第2の電子署名を、前記第3のノードに対して送信する第1の署名手段と、少なくとも前記第1の電子署名が正常と検証されたときに、前記第2のノードに対してアクセスするアクセス手段とを有し、前記第3のノードは、前記送信された伝送データを受信する伝送データ受信手段と、前記受信された伝送データから、前記第1の電子署名を生成し、前記生成された第1の電子署名を、前記第1のノードに対して送信する第2の署名手段と、前記送信された第2の電子署名を受信し、前記受信された第2の電子署名を保持する署名保持手段とを有する。
【0006】
[電子署名装置]
また、本発明に係る電子署名装置は、第1のノードに対して電子署名処理を実行させる電子署名装置であって、前記第1のノードは、所定の伝送データを送信し、第1の電子署名を正常と検証したときに、第2のノードに対してアクセスし、前記伝送データから、前記第2の電子署名を生成して送信する電子署名処理を行い、前記送信された伝送データを受信し、前記受信された伝送データから、前記第1の電子署名を生成する署名生成手段と、前記生成された第1の電子署名を、前記第1のノードに対して送信する署名送信手段と、前記送信された第2の電子署名を受信し、前記受信された第2の電子署名を保持する署名保持手段とを有する。
【0007】
[電子署名方法]
また、本発明に係る電子署名装置は、第1のノードに対して電子署名処理を実行させる電子署名方法であって、前記第1のノードは、所定の伝送データを送信し、第1の電子署名を正常と検証したときに、第2のノードに対してアクセスし、前記伝送データから、前記第2の電子署名を生成して送信する電子署名処理を行い、前記送信された伝送データを受信し、前記受信された伝送データから、前記第1の電子署名を生成し、前記生成された第1の電子署名を、前記第1のノードに対して送信し、前記送信された第2の電子署名を受信し、前記受信された第2の電子署名を保持する。
【0008】
[プログラム]
また、本発明に係るプログラムは、第1のノードに対して電子署名処理を実行させるプログラムであって、前記第1のノードは、所定の伝送データを送信し、第1の電子署名を正常と検証したときに、第2のノードに対してアクセスし、前記伝送データから、前記第2の電子署名を生成して送信する電子署名処理を行い、
前記送信された伝送データを受信し、前記受信された伝送データから、前記第1の電子署名を生成するステップと、前記生成された第1の電子署名を、前記第1のノードに対して送信するステップと、前記送信された第2の電子署名を受信し、前記受信された第2の電子署名を保持するステップとをコンピュータに実行させる。
【0009】
【発明の実施の形態】
以下、本発明の実施形態を説明する。
【0010】
[ネットワークシステム1]
図1は、本発明に係る電子署名方法が適応されるネットワークシステム1の構成を示す図である。
図1に示すように、ネットワークシステム1は、m台(m≧1;図1においてはm=3)のクライアントコンピュータ(CLコンピュータ)2−1〜2−3と、署名サーバ3およびログデータベース(ログDB)4と、アプリケーションサーバ(APサーバ)5とが、LAN、WANあるいはインターネットなどのネットワーク10を介して接続された構成を採る。
【0011】
なお、以下、CLコンピュータ2−1〜2−3など、複数ある構成部分のいずれかを、特定せずに示す場合には、単にCLコンピュータ2などと略記する場合がある。
また、以下、CLコンピュータ2、署名サーバ3、ログDB4およびAPサーバ5などを総称して、ノードと記載することがある。
ネットワークシステム1においては、これらの構成により、CLコンピュータ2と署名サーバ3との間で電子署名処理が行われ、APサーバ5からCLコンピュータ2に対して様々なサービス・機能が提供される。
なお、CLコンピュータ2、署名サーバ3、APサーバ5との間の通信に用いられるプロトコルは何でもよいが、以下、これらの間で、HTTP(HyperText Transport Protocol)により通信が行われる場合を具体例とする。
【0012】
[ハードウェア構成]
図2は、図1に示したCLコンピュータ2、署名サーバ3、ログDB4およびAPサーバ5のハードウェア構成を例示する図である。
図2に示すように、CLコンピュータ2、署名サーバ3、ログDB4およびAPサーバ5は、CPU102、メモリ104およびこれらの周辺回路などを含む本体100、表示装置、キーボードおよびマウスなどを含む表示・入力装置106、ネットワークシステム1あるいは他のノードとの通信を行う通信装置110、および、HD装置およびCD装置などの記録装置112から構成される。
つまり、CLコンピュータ2、署名サーバ3、ログDB4およびAPサーバ5は、通信機能を有するコンピュータとしての構成部分を有している。
【0013】
[APサーバ5]
図3は、図1,図2に示したAPサーバ5が、CLコンピュータ2に送信する入力フォームが示すGUI(Graphical User Interface)画像を例示する図である。
図4は、図3に示した入力フォームの伝送に用いられる伝送フレームを例示する図である。
なお、以下、各伝送フレームを示す図においては、本発明の説明に関連がないデータは、適宜、省略されている。
【0014】
APサーバ5は、例えば、Webアプリケーションを動作させるWebサーバであって、CLコンピュータ2との間で通信を行って、CLコンピュータ2のユーザに対して、様々な機能・サービスの提供を行う。
APサーバ5は、必要に応じて、図3に例示するように、CLコンピュータのユーザに対して、入力すべきデータの項目を示し、データの入力を促す入力フォームを、CLコンピュータ2に対して送信する。
【0015】
つまり、例えば、CLコンピュータ2のユーザが、商品を注文するための操作を行ったときに、この操作を受けたAPサーバ5は、XMLあるいはHTMLにより記述された商品注文受付用のGUI画像(図3)を、CLコンピュータ2の表示・入力装置106(図2)に表示させる入力フォームを、CLコンピュータ2に対して送信する。
なお、この入力フォームは、例えば、図4に例示するように、送信先のURLとしてCLコンピュータ2のURLを含み、送信元のURLとしてAPサーバ5のURLを含む伝送フォーマットに収容されて伝送される。
また、図4に示した各データは、SSL(Secure Socket Layer)などの方式により暗号化され、ノード間を伝送されてもよい(以下、各伝送フレームについての説明において同じ)。
【0016】
[フォームデータ]
図5は、図3に対するユーザによるデータ入力操作を例示する図である。
図5に例示するように、CLコンピュータ2の表示・入力装置106に表示された入力フォームの各項目に対してユーザがデータを入力する操作を行うと、CLコンピュータ2において、下表1に示すように、HTTP形式のフォームデータが生成される。
なお、以下の表1,2においては、本発明に係る電子署名方法の説明に関係がないデータは、適宜、省略されている。
このフォームデータには、図3に示した入力フォームの各項目を示すデータと、これらの項目それぞれに対して、図5に示したようにユーザが入力したデータそれぞれとが、対応付けられて含まれている。
【0017】
【表1】
【0018】
なお、表1に示したフォームデータと同じ内容を、例えば、HTTPよりも拡張性および汎用性に優れているXML(eXtensible Markup Language)で記述すると、下表2に示すように、入力フォームの各項目に対して入力されたデータが、各項目を示すタグで仕切られて含まれるフォームデータ(以下の説明において、XMLで記述されたフォームデータを、XMLデータとも記す)が得られる。
【0019】
【表2】
【0020】
[ログDB4]
ログDB4は、署名サーバ3が生成したログ(図6,図10などを参照して後述)を記憶し、管理する。
また、ログDB4は、署名サーバ3からの検索に応じて、記憶・管理したログを、署名サーバ3に対して出力する。
【0021】
[署名サーバプログラム30]
図6は、図1,図2に示した署名サーバ3上で実行される署名サーバプログラム30の構成を示す図である。
なお、図示の簡略化・明確化のために、以下の各構成図においては、データなどの流れを示す線は、適宜、省略されることがある。
図6に示すように、署名サーバプログラム30は、ユーザインターフェース部(UI部)300、サーバ側秘密鍵記憶部302、通信制御部308およびサーバ側署名モジュール(SSM)32から構成される。
SSM32は、署名制御部320、ハッシュ値生成部322、署名生成部324、クライアント側署名モジュール(CLSM)送信部326、XML署名検証部330、ログ生成部332およびログ検証部334から構成される。
【0022】
なお、署名サーバ3とAPサーバ5とは、必ずしも別々に構成される必要はなく、署名サーバプログラム30は、APサーバ5の機能を提供するアプリケーションを含んでいてもよい。
また、同様に、署名サーバ3とログDB4とは必ずしも別々に構成される必要はなく、これらは一体に構成されてもよい。
署名サーバプログラム30は、例えば、記録媒体114(図2)を介して署名サーバ3に供給され、メモリ104にロードされて実行される。
署名サーバプログラム30は、これらの構成部分により、例えば、CLコンピュータ2からフォームデータ(表1)を受けたときに、電子署名処理を行う。
【0023】
署名サーバプログラム30において、UI部300は、署名サーバ3の表示・入力装置106(図2)に対するユーザの操作を受け入れて、必要なデータを署名サーバプログラム30の構成部分に対して出力する。
また、UI部300は、署名サーバプログラム30の動作状態、および、他のノードから受信されたデータなどを、表示・入力装置106に対して表示する。
サーバ側秘密鍵記憶部302は、例えば、UI部300を介して署名サーバ3に設定された秘密鍵を記憶し、署名生成部324に対して出力する。
通信制御部308は、他のノードとの間の通信に必要な通信制御を行う。
【0024】
SSM32において、署名制御部320は、SSM32の各構成部分の処理を制御し、ログDB4およびAPサーバ5との間の電子署名処理を実現する。
また、署名制御部320は、他のノードから通信制御部308を介してデータを受信し、電子署名処理に必要なデータを、SSM32の各構成部分に対して出力する。
また、署名制御部320は、SSM32の各構成部分から入力されたデータを、必要に応じて、通信制御部308を介して他のノードに対して送信する。
【0025】
図7は、CLコンピュータ2が署名サーバ3に対してフォームデータを送信するために用いる伝送フレームを例示する図である。
CLコンピュータ2(CLSM22;図11)において生成されたフォームデータは、APサーバ5に対してではなく、署名サーバ3に対して送信される。
このフォームデータの伝送のためには、例えば、図7に示すように、送信先として署名サーバ3のURLを含み、送信元URLとしてCLコンピュータ2のURLを含み、さらに、フォームデータを含む伝送フレームが用いられる。
ハッシュ値生成部322は、CLコンピュータ2から、通信制御部308を介して署名制御部320が受信したフォームデータのハッシュ値を生成する。
ハッシュ値生成部322は、生成したフォームデータのハッシュ値を、署名生成部324に対して出力する。
【0026】
署名生成部324は、生成されたフォームデータのハッシュ値を、署名サーバ3に対して設定され、サーバ側秘密鍵記憶部302に記憶されている秘密鍵を用いて暗号化し、サーバ側署名とする。
署名生成部324は、署名制御部320から入力されるフォームデータと、サーバ側署名とを、CLSM送信部326に対して出力する。
【0027】
なお、ハッシュ値生成部322は、SSM32において必須ではなく、署名生成部324は、ハッシュ値とされていないフォームデータ自体(表1)を署名サーバ3の秘密鍵により暗号化して、サーバ側署名とし、このサーバ側署名と、フォームデータとを、CLSM送信部326に対して送信してもよい。
一方、ハッシュ値生成部322は、フォームデータから一定のデータ長(例えば128バイト)のハッシュ値を生成する。
従って、ハッシュ値生成部322を用いると、フォームデータが、非常に長いようなときには、ネットワーク10(図1)を介して伝送するデータ量を減らすことができ、電子署名処理を効率化することができる。
以下、本発明に係る電子署名方法の明確化のために、ハッシュ値生成部322が用いられる場合を具体例とする。
【0028】
図8は、図6に示したCLSM送信部326が、CLSM22(図11)をCLコンピュータ2に対して送信するために用いる伝送フレームを例示する図である。
CLSM送信部326は、署名生成部324から入力されたサーバ側署名と、フォームデータと、CLコンピュータ2にダウンロードされて実行されるCLSM22(図11を参照して後述)とを、署名制御部320および通信制御部308などを介して、CLコンピュータ2に対して送信する。
【0029】
CLSM送信部326は、例えば、図8に示す伝送フレームを用いて、サーバ側署名と、フォームデータとを初期値として付して、CLSM22を、CLコンピュータ2に対して送信する。
この伝送フレームには、送信先URLとしてCLコンピュータ2のURLが含まれ、送信元URLとして署名サーバ3のURLが含まれる。
【0030】
図9は、CLコンピュータ2上で実行されるCLSM22から署名サーバ3に対して、XMLデータ(表2)などを伝送するために用いられる伝送フレームを例示する図である。
CLコンピュータ2上で実行されるCLSM22(図11)は、上述のように署名サーバ3から伝送されてきたHTTP形式のフォームデータ(場合によってはCLコンピュータ2において生成されたフォームデータ;表1)を、XML形式のフォームデータ(XMLデータ;表2)に変換する。
CLコンピュータ2は、XMLデータを、CLコンピュータ2の秘密鍵によりXMLデータを暗号化して得られる署名(以下、XML署名とも記す)、および、CLコンピュータ2の公開鍵を含む証明書(公開鍵証明書)とともに、署名サーバ3に対して伝送する。
【0031】
XML署名検証部330は、図9に示したようにCLSM22から送られてきたXML署名を、公開鍵証明書に含まれるCLコンピュータ2の公開鍵を用いて復号してXMLデータ(表2)とし、CLSM22から送られてきたXMLデータと、復号の結果として得られたXMLデータとを比較する。
XML署名検証部220は、これらのXMLデータが一致するときには、CLSM22から送られてきたXML署名が正常であると検証し、これらが一致しない場合には、CLSM22から送られてきたXML署名に異常が生じていると検証する。
このように、XML署名検証部330は、CLコンピュータ2(CLSM22)の認証と、CLSM22から送られてきたXMLデータに改ざんが加えられているか否かを検証する。
XML署名検証部330は、XML署名に異常が生じている場合には、CLコンピュータ2(CLSM22)に対して、その旨を通知する。
【0032】
図10は、図6に示したログ生成部332が生成するログを例示する図である。
ログ生成部332は、CLコンピュータ2からXMLデータ、XML署名および公開鍵証明書を含むデータ(図9)が送られてくると、署名制御部320を介してこれらを受け、図10に示すように、これらXMLデータ、XML署名および公開鍵証明書を含むログを生成し、ログDB4に記憶させる。
【0033】
ログ検証部334は、署名サーバ3に対するユーザの操作、あるいは、CLコンピュータ2からの要求に応じて、ログDB4に対する検索を行い、正当性の検証が要求されたログ読み出し、読み出したログの正当性を検証する。
ログ検証部344は、読み出したログ(図10)に含まれるXML署名を、公開鍵証明書に含まれる公開鍵を用いて復号してXMLデータとし、復号の結果として得られたXMLデータと、ログに含まれるXMLデータとが一致した場合に、読み出したログが正常であると検証し、一致しない場合に、このログが異常を示すと検証する。
【0034】
[CLプログラム20]
図11は、図1,図2に示したCLコンピュータ2上で実行されるクライアントプログラム(CLプログラム)20の構成を示す図である。
図11に示すように、CLプログラム20は、UI部200、Webブラウザ202、通信制御部206、ダウンローダ208、サーバ公開鍵記憶部210、クライアント秘密鍵記憶部(CL秘密鍵記憶部)212およびCLSM22から構成される。
CLSM22は、受信処理部220、署名検証部222、XMLデータ生成部224、署名生成部226、送信処理部228およびアプリケーション呼出部(AP呼出部)230から構成される。
【0035】
CLプログラム20の内、CLSM22以外の各構成部分は、例えば、記録媒体114(図2)を介してCLコンピュータ2に供給され、メモリ104にロードされて実行される。
CLSM22は、署名サーバプログラム30のCLSM送信部326により、署名サーバ3からCLコンピュータ2にダウンロードされ、実行される。
CLプログラム20は、これらの構成部分により、CLコンピュータ2とAPサーバ5との間の通信、および、CLコンピュータ2と署名サーバ3との間の電子署名処理を行う。
なお、CLSM22は、電子署名処理が行われるたびに署名サーバからCLコンピュータ2にダウンロードされ、電子署名処理が終わるたびに消去されてもよく、あるいは、一度、CLコンピュータ2にダウンロードされた後に、継続的に、CLコンピュータ2において使用されてもよい。
【0036】
UI部200は、表示・入力装置106(図2)に対するユーザの操作を受け入れて、処理に必要なデータを、CLプログラム20の各構成要素に対して出力する。
また、UI部200は、CLプログラム20の動作状態、および、Webブラウザ202から入力される画像などを、表示・入力装置106に表示する。
【0037】
また、UI部200は、APサーバ5からWebブラウザ202などを介して入力フォーム(図3)を受け入れ、CLコンピュータ2の表示・入力装置106(図2)に表示する。
さらに、UI部200は、表示した入力フォームに対するユーザの操作(図5)を受け入れてフォームデータ(表1)を生成し、Webブラウザ202および通信制御部206を介して、署名サーバ3に対して送信する。
なお、図11に点線で示すように、CLSM22のXMLデータ生成部224が、UI部200が生成したフォームデータからXMLデータを作成する場合、あるいは、署名検証部222が、UI部200が生成したフォームデータを用いてXML署名の検証を行う場合には、UI部200からXMLデータ生成部224および署名検証部222に対して、フォームデータが出力される。
【0038】
Webブラウザ202は、WWW閲覧のための機能を提供する。
また、Webブラウザ202は、電子署名処理に必要なデータをCLSM22に対して出力し、また、CLSM22から入力されるデータを、他のノードに対して送信する。
通信制御部206は、CLコンピュータ2と他のノードとの間の通信に必要とされる通信制御を行う。
ダウンローダ208は、署名サーバ3(CLSM送信部326)から伝送されてきたCLSM22を、例えば、Webブラウザ220を介して受け、メモリ104上にロードして実行可能な状態とする。
サーバ公開鍵記憶部210は、UI部200などを介して入力される署名サーバ3の公開鍵を記憶し、CLSM22の署名検証部222に対して出力する。
CL秘密鍵記憶部212は、UI部200などを介して入力されるCLコンピュータ2側の秘密鍵を記憶し、CLSM22の署名生成部226に対して出力する。
【0039】
CLSM22において、受信処理部220は、通信制御部206およびWebブラウザ202などを介して他のノードから送られてくる電子署名に関するデータを受信し、SSM32の各構成部分に対して出力する。
送信処理部228は、CLSM22の各構成部分から入力される電子署名に関するデータを、通信制御部206およびWebブラウザ202などを介して、他のノードに対して送信する。
【0040】
署名検証部222は、図6に示したように、署名サーバ3からCLSM22などとともに送られてきたサーバ側署名を、サーバ公開鍵記憶部210に記憶されている署名サーバ3の公開鍵を用いて復号し、HTTP形式のフォームデータ(表1)とする。
署名検証部222は、署名サーバ3からCLSM22などとともに送られてきたフォームデータ(場合によってはUI部200から入力されたフォームデータ;表1)と、上記復号の結果として得られたフォームデータとが一致する場合に、署名サーバ3から送られてきたフォームデータが正常であると検証し、一致しない場合には、署名サーバ3から送られてきたフォームデータに異常が生じていると判断する。
このように、署名検証部222は、署名サーバ3の認証と、送られてきたデータに対する改ざんが行われたか否かの検証とを行う。
【0041】
XMLデータ生成部224は、署名検証部222から入力されるHTTP形式のフォームデータ(場合によってはUI部200から入力されるフォームデータ;表1)を、XML形式に変換し、XMLデータ(表2)とする。
なお、以下、説明の明確化のために、XMLデータ生成部224が、他の形式のフォームデータをXML形式に変換する場合を具体例とする。
しかしながら、XMLデータ生成部224は、CLSM22にとって必須ではなく、署名生成部226は、XML形式に変換されないフォームデータから署名を作成してもよい。
【0042】
署名生成部226は、XMLデータ生成部224から入力されるXMLデータを、CL秘密鍵記憶部212から入力されるCLコンピュータ2の秘密鍵を用いて暗号化し、XML署名とする。
このように、署名生成部226が、XMLデータのハッシュ値を、CLコンピュータ2の秘密鍵で暗号化してXML署名とすることにより、署名サーバ3側における、XML署名の改ざんが不可能になる。
【0043】
署名検証部222が、署名サーバ3から送られてきたフォームデータが正当であるという検証結果を出したとき、送信処理部228は、XMLデータと、署名生成部226から入力されるXML署名および公開鍵証明書とを含むデータ(図9)を、署名サーバ3に対して送信する。
送信処理部228は、データの宛先(送信先)のURLを、APサーバ5のURLから署名サーバ3のURLとし、送信元のURLをCLコンピュータ2のURLとして、図9に示したデータを生成する。
署名検証部222が、署名サーバ3から送られてきたフォームデータが正当でないとという検証結果を出したときには、送信処理部228は、署名サーバ3に対して、その旨を通知するデータを、署名サーバ3に対して送信する。
【0044】
図12は、図11に示したCLSM22からAPサーバ5に対してフォームデータを送るために用いられる伝送フレームを示す図である。
署名検証部222が、署名サーバ3から送られてきたフォームデータが正当であると検証したときには、AP呼出部230は、APサーバ5に対して、フォームデータを送信し、APサーバ5上のアプリケーションを呼び出して、そのサービスの提供を受ける。
【0045】
AP呼出部230は、図12に示すように、送信先のURLとしてAPサーバ5のURLを含み、送信元のURLとしてCLコンピュータ2のURLを含み、さらにフォームデータ(表1)を含む伝送フレームを、APサーバ5に対して送信する。
なお、署名サーバ3において、XML署名が正常と検証されたときに、署名サーバ3からCLSM22に対してその旨が通知されるようにして、AP呼出部230が、この通知を受けた後に、APサーバ5に対してフォームデータ(表1)を送信するようにしてもよい。
【0046】
[ネットワークシステム1の動作]
図13は、ネットワークシステム1(図1など)における電子署名処理が、正常終了する場合(S10)の通信シーケンス図である。
図13に示すように、ステップ100(S100)に示すように、CLコンピュータ2上で動作するWebブラウザ202(図11)とAPサーバ5との間で、一般的な通信が行われる。
ステップ102(S102)において、CLコンピュータ2のWebブラウザ202が、APサーバ5に対して、入力フォーム(図3)の送信を要求する。
【0047】
ステップ104(S104)において、APサーバ5は、図4に示した伝送フレームを用いて、CLコンピュータ2のWebブラウザ202に対して、入力フォームを送信する。
Webブラウザ202は、APサーバ5から入力フォームを受信して、入力フォームを、UI部200を介してCLコンピュータ2の表示・入力装置106(図2)に表示する。
ユーザが、表示された入力フォームの各項目に対して必要なデータを入力すると、UI部200は、フォームデータ(表1)を生成し、Webブラウザ202に対して出力する。
【0048】
ステップ106(S106)において、Webブラウザ202は、生成されたフォームデータを、APサーバ5に対して送信する。
ステップ108(S108)において、署名サーバ3は、図8に示した伝送フォームを用いて、Webブラウザ202に対して、フォームデータと、サーバ側署名と、CLSM22(図11)とを送信する。
ダウンローダ208は、署名サーバ3からCLSM22を受信してCLコンピュータ2にロードし、起動する。
CLSM22は、署名サーバ3から受信されたサーバ側署名を、正常であると検証する。
【0049】
ステップ110(S110)において、CLSM22は、XMLデータと、XML署名と、XML署名の公開鍵証明書を作成し、図9に示した伝送フレームを用いて、署名サーバ3に対して送信する。
ステップ112(S112)において、署名サーバ3は、CLコンピュータ2のCLSM22から送られてきたXML署名を、正常であると検証し、図10に示したログを生成し、ログDB4に記憶する。
【0050】
ステップ114(S114)において、CLSM22は、APサーバ5にアクセスし、アプリケーションの呼び出しを行う。
ステップ116(S116)において、CLコンピュータ2とAPサーバ5との間で、呼び出されたアプリケーションによるサービスを提供するための通信が行われる。
【0051】
なお、既に述べたように、図13に点線で示すように、署名サーバ3が、CLSM22に対して、XML署名が正常と検証されたことを通知(ACKを送出)するようにして、このACKを待って、CLSM22がアプリケーションの呼び出しを行うようにしてもよい。
図13を参照すると分かるように、本発明に係る電子署名方式を組み込んでも、既存のシステムにおける通信シーケンスを、ほとんど変更しなくて済む。
つまり、既存の通信シーケンスに、S108〜S112までの処理を追加し、S108の処理における送信先を、APサーバ5のURLから署名サーバ3のURLに変更するだけでよい。
従って、本発明に係る電子署名方式によれば、既存の通信システムに対して適応しやすく、容易に、既存の通信システムに、電子認証処理機能を追加することができる。
【0052】
図14は、ネットワークシステム1(図1など)における電子署名処理が、サーバ署名が異常と検証されて終了する場合(S12)の通信シーケンス図である。
なお、以下の各シーケンス図において、実質的に共通な処理には、共通の符号が付してある。
S100〜S108の処理において、図13に示したように、APサーバ5との間の通信から、CLSM22の実行までの処理が行われる。
【0053】
ステップ120(S120)において、CLSM22は、署名サーバ3から受信したサーバ側署名が、異常であると検証し、異常処理を行い、さらに、サーバ側署名が異常であると検証された旨を、Webブラウザ202を介して、CLコンピュータ2の表示・入力装置106(図2)に表示する。
ステップ122(S122)において、CLSM22は、署名サーバ3に対して、サーバ側署名が異常であると検証された旨を通知する。
この通知を受けて、署名サーバ3は、異常処理を行う。
【0054】
図15は、ネットワークシステム1(図1など)における電子署名処理が、XML署名が異常と検証されて終了する場合(S14)の通信シーケンス図である。
S100〜S110の処理において、図13に示したように、APサーバ5との間の通信から、XML署名などの送信までの処理が行われる。
【0055】
ステップ140(S140)において、署名サーバ3は、CLSM22から送られてきたXML署名が異常であると検証する。
署名サーバ3は、異常処理を行い、CLSM22に対して、XML署名が異常であると検証された旨を通知する。
ステップ142(S142)において、CLSM22は、Webブラウザ202を介して、CLコンピュータ2の表示・入力装置106に、XML署名が異常であると検証された旨を通知する。
【0056】
図16は、CLコンピュータ2(図1,図2など)が、署名サーバ3にXML署名の検証を要求し、署名サーバ3が、ログの検証を行う場合(S16)を示す通信シーケンス図である。
図16に示すように、ステップ160(S160)において、CLコンピュータ2は、ユーザの操作に応じて、XML署名の検証要求を、署名サーバ3に対して送信する。
【0057】
ステップ162(S162)において、署名サーバ3は、ログDB4を検索して、検証の対象となるログを取り出す。
ステップ164(S164)において、署名サーバ3は、ログに対する検証の結果を、CLコンピュータ2に通知する。
【0058】
[変形例]
CLコンピュータ2が、署名サーバ3からXML署名を受けるようにして、上記XML署名などの検証処理を、CLコンピュータ2が行うようにしてもよい。また、上記XML署名などの検証処理は、署名サーバ3に対するユーザの操作に応じて行われてもよい。
【0059】
図17は、署名サーバ3(図1,図2)からCLコンピュータ2へのCLSM22の送信と、サーバ側署名データなどの送信を別とした電子署名を用いた検証の変形例(S18)を示す通信シーケンス図である。
図18は、図17に示した変形例において、署名サーバ3(図1,図2)からCLコンピュータ2にCLSM22を送るための伝送フレームの構成を示す図である。
図19は、図17に示した変形例において、署名サーバ3(図1,図2)からCLコンピュータ2にフォームデータなどを送るための伝送フレームの構成を示す図である。
なお、以上説明した処理においては、図8に示したように、署名サーバ3からCLコンピュータ2に対して、CLSM22と、サーバ側署名などとが一緒に送信される場合を具体例としたが、図17〜図19に示すように、署名サーバ3から、CLコンピュータ2に対して、CLSM22と、XML署名などとが別々に送られるようにしてもよい。
【0060】
図17に示すように、S100〜S106の処理において、図13に示したように、CLコンピュータ2とAPサーバ5との通信から、Webブラウザ202から署名サーバ3へのフォームデータの送信までの処理が行われる。
ステップ180(S180)において、署名サーバ3は、図18に示す伝送フレームを用いて、CLコンピュータ2に対してCLSM22(図9)を送信する。
【0061】
ステップ182(S182)において、CLコンピュータ2は、CLSM22の受信および動作準備が完了すると、署名サーバ3に対して、ACK信号を返す。
ステップ(S184)において、署名サーバ3は、CLコンピュータ2に対して、図19に示す伝送フレームを用いて、フォームデータおよびサーバ側署名とを送信する。
S110〜S116の処理において、サーバ側署名の検証から、CLコンピュータ2とAPサーバ5との間の通信までの処理が行われる
【0062】
【発明の効果】
以上説明したように、本発明に係る電子検証システムおよびその方法によれば、サービスを提供するアプリケーションをほとんど変更せずに、電子検証を実現可能である。
【図面の簡単な説明】
【図1】本発明に係る電子署名方法が適応されるネットワークシステムの構成を示す図である。
【図2】図1に示したCLコンピュータ、署名サーバ、ログDBおよびAPサーバのハードウェア構成を例示する図である。
【図3】図1,図2に示したAPサーバが、CLコンピュータに送信する入力フォームが示すGUI(Graphical User Interface)画像を例示する図である。
【図4】図3に示した入力フォームの伝送に用いられる伝送フレームを例示する図である。
【図5】図3に対するユーザによるデータ入力操作を例示する図である。
【図6】図1,図2に示した署名サーバ上で実行される署名サーバプログラムの構成を示す図である。
【図7】CLコンピュータが署名サーバに対してフォームデータを送信するために用いる伝送フレームを例示する図である。
【図8】図6に示したCLSM送信部が、CLSM(図11)をCLコンピュータに対して送信するために用いる伝送フレームを例示する図である。
【図9】CLコンピュータ上で実行されるCLSMから署名サーバに対して、XMLデータ(表2)などを伝送するために用いられる伝送フレームを例示する図である。
【図10】図6に示したログ生成部が生成するログを例示する図である。
【図11】図1,図2に示したCLコンピュータ上で実行されるクライアントプログラム(CLプログラム)の構成を示す図である。
【図12】図11に示したCLSMからAPサーバに対してフォームデータを送るために用いられる伝送フレームを示す図である。
【図13】ネットワークシステム(図1など)における電子署名処理が、正常終了する場合(S10)の通信シーケンス図である。
【図14】ネットワークシステム(図1など)における電子署名処理が、サーバ署名が異常と検証されて終了する場合(S12)の通信シーケンス図である。
【図15】ネットワークシステム(図1など)における電子署名処理が、XML署名が異常と検証されて終了する場合(S14)の通信シーケンス図である。
【図16】CLコンピュータ2(図1,図2など)が、署名サーバにXML署名の検証を要求し、署名サーバが、ログの検証を行う場合(S16)を示す通信シーケンス図である。
【図17】署名サーバ(図1,図2)からCLコンピュータへのCLSMの送信と、サーバ側署名データなどの送信を別とした電子署名を用いた検証の変形例(S18)を示す通信シーケンス図である。
【図18】図17に示した変形例において、署名サーバ(図1,図2)からCLコンピュータにCLSMを送るための伝送フレームの構成を示す図である。
【図19】図17に示した変形例において、署名サーバ(図1,図2)からCLコンピュータにフォームデータなどを送るための伝送フレームの構成を示す図である。
【符号の説明】
1・・・ネットワークシステム、
2・・・CLコンピュータ、
100・・・本体、
102・・・CPU、
104・・・メモリ、
106・・・表示・入力装置、
110・・・通信装置、
112・・・記録装置、
114・・・記録媒体、
20・・・CLプログラム、
200・・・UI部、
202・・・Webブラウザ、
204・・・ユーザ検証部、
206・・・通信制御部、
208・・・ダウンローダ、
210・・・サーバ公開鍵記憶部、
212・・・CL秘密鍵記憶部、
22・・・CLSM、
220・・・受信処理部、
222・・・署名検証部、
224・・・XMLデータ生成部、
226・・・署名生成部、
228・・・送信処理部、
230・・・XML署名DB、
3・・・署名サーバ、
30・・・WSプログラム、
300・・・UI部、
302・・・サーバ側秘密鍵記憶部、
308・・・通信制御部、
310・・・アプリケーション、
32・・・SSM、
320・・・署名制御部、
322・・・ハッシュ値生成部、
324・・・署名生成部、
326・・・CLSM送信部、
330・・・XML署名検証部、
332・・・ログ生成部、
334・・・ログ検証部、
4・・・ログDB、
5・・・APサーバ、[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a digital signature system and a method for maintaining information security.
[0002]
[Prior art]
For example,
In order to perform the electronic signature disclosed in
Some say that this is a barrier to the spread of electronic signatures.
Non-Patent
[0003]
[Patent Document 1] JP-A-2002-215827
[Patent Document 2] JP-A-2002-183653
[Non-patent document 1] http: // www. entrust. co. jp / products / truepass60. html
[0004]
[Problems to be solved by the invention]
The present invention has been made in view of the above-described background, and has as its object to provide an electronic signature system and an electronic signature method capable of performing an electronic signature process with almost no change in an application that provides a service.
Another object of the present invention is to provide a digital signature system and a method different from the method disclosed in Non-Patent
[0005]
[Means for Solving the Problems]
[Digital signature system]
In order to achieve the above object, an electronic signature system according to the present invention is an electronic signature system including a first node, a second node, and a third node, wherein the first node comprises: Transmission data transmitting means for transmitting predetermined transmission data to the third node; receiving a first electronic signature transmitted by the third node; verifying the received first electronic signature; Verifying means for generating the second digital signature from the transmission data, and transmitting the generated second digital signature to the third node; Access means for accessing the second node when the first electronic signature is verified to be normal, wherein the third node receives the transmitted transmission data. Means and said received transmission Second signature means for generating the first electronic signature from the data and transmitting the generated first electronic signature to the first node; and the transmitted second electronic signature And a signature holding unit for holding the received second electronic signature.
[0006]
[Digital signature device]
An electronic signature device according to the present invention is an electronic signature device that causes a first node to execute an electronic signature process, wherein the first node transmits predetermined transmission data, When the signature is verified to be normal, a second node is accessed, an electronic signature process for generating and transmitting the second electronic signature from the transmission data is performed, and the transmitted transmission data is received. A signature generation unit configured to generate the first electronic signature from the received transmission data; a signature transmission unit configured to transmit the generated first electronic signature to the first node; Signature holding means for receiving the transmitted second electronic signature and holding the received second electronic signature.
[0007]
[Digital signature method]
Also, the electronic signature device according to the present invention is an electronic signature method for causing a first node to execute an electronic signature process, wherein the first node transmits predetermined transmission data, When the signature is verified to be normal, a second node is accessed, an electronic signature process for generating and transmitting the second electronic signature from the transmission data is performed, and the transmitted transmission data is received. And generating the first electronic signature from the received transmission data, transmitting the generated first electronic signature to the first node, and transmitting the second electronic signature to the first node. Receiving a signature and holding the received second electronic signature.
[0008]
[program]
Further, a program according to the present invention is a program for causing a first node to execute an electronic signature process, wherein the first node transmits predetermined transmission data and determines that the first electronic signature is normal. When the verification is performed, an electronic signature process for accessing the second node and generating and transmitting the second electronic signature from the transmission data is performed,
Receiving the transmitted transmission data and generating the first electronic signature from the received transmission data; transmitting the generated first electronic signature to the first node; And receiving the transmitted second electronic signature, and holding the received second electronic signature.
[0009]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described.
[0010]
[Network system 1]
FIG. 1 is a diagram showing a configuration of a
As shown in FIG. 1, the
[0011]
In the following, when any of a plurality of components such as the CL computers 2-1 to 2-3 is indicated without being specified, it may be simply abbreviated as the CL computer 2.
Hereinafter, the CL computer 2, the signature server 3, the log DB 4, the AP server 5, and the like may be collectively referred to as a node.
In the
The protocol used for communication between the CL computer 2, the signature server 3, and the AP server 5 may be any protocol. Hereinafter, a specific example will be described in which communication is performed by HTTP (HyperText Transport Protocol) between them. I do.
[0012]
[Hardware configuration]
FIG. 2 is a diagram illustrating a hardware configuration of the CL computer 2, the signature server 3, the log DB 4, and the AP server 5 shown in FIG.
As shown in FIG. 2, the CL computer 2, the signature server 3, the log DB 4, and the AP server 5 are a
That is, the CL computer 2, the signature server 3, the log DB 4, and the AP server 5 have components as a computer having a communication function.
[0013]
[AP server 5]
FIG. 3 is a diagram exemplifying a GUI (Graphical User Interface) image indicated by an input form transmitted from the AP server 5 shown in FIGS. 1 and 2 to the CL computer 2.
FIG. 4 is a diagram illustrating a transmission frame used for transmitting the input form shown in FIG.
Hereinafter, in the figures showing each transmission frame, data that is not relevant to the description of the present invention is omitted as appropriate.
[0014]
The AP server 5 is, for example, a Web server that operates a Web application, and communicates with the CL computer 2 to provide various functions and services to the user of the CL computer 2.
If necessary, the AP server 5 indicates an item of data to be input to the user of the CL computer and prompts the CL computer 2 to input an input form to the CL computer 2 as shown in FIG. Send.
[0015]
That is, for example, when the user of the CL computer 2 performs an operation for ordering a product, the AP server 5 that has received the operation displays a GUI image for accepting a product order described in XML or HTML (see FIG. 3) is transmitted to the CL computer 2 on the display / input device 106 (FIG. 2) of the CL computer 2.
This input form is transmitted as accommodated in a transmission format including the URL of the CL computer 2 as the URL of the transmission destination and the URL of the AP server 5 as the URL of the transmission source as exemplified in FIG. You.
Further, each data shown in FIG. 4 may be encrypted by a method such as SSL (Secure Socket Layer) and transmitted between nodes (the same applies to the description of each transmission frame hereinafter).
[0016]
[Form data]
FIG. 5 is a diagram illustrating a data input operation performed by the user with respect to FIG.
As illustrated in FIG. 5, when the user performs an operation of inputting data for each item of the input form displayed on the display /
In Tables 1 and 2 below, data irrelevant to the description of the electronic signature method according to the present invention is omitted as appropriate.
The form data includes data indicating each item of the input form illustrated in FIG. 3 and data input by the user as illustrated in FIG. 5 for each of these items in association with each other. Have been.
[0017]
[Table 1]
[0018]
If the same contents as the form data shown in Table 1 are described in, for example, XML (extensible Markup Language), which is more extensible and versatile than HTTP, as shown in Table 2 below, As a result, form data (in the following description, form data described in XML is also referred to as XML data) in which data input for an item is separated by a tag indicating each item is included.
[0019]
[Table 2]
[0020]
[Log DB4]
The log DB 4 stores and manages logs generated by the signature server 3 (described later with reference to FIGS. 6, 10 and the like).
The log DB 4 outputs the stored and managed log to the signature server 3 in response to the search from the signature server 3.
[0021]
[Signature server program 30]
FIG. 6 is a diagram showing a configuration of the signature server program 30 executed on the signature server 3 shown in FIGS.
For simplicity and clarity of illustration, lines indicating the flow of data and the like may be appropriately omitted in the following configuration diagrams.
As shown in FIG. 6, the signature server program 30 includes a user interface unit (UI unit) 300, a server-side secret
The
[0022]
Note that the signature server 3 and the AP server 5 do not necessarily need to be separately configured, and the signature server program 30 may include an application that provides the function of the AP server 5.
Similarly, the signature server 3 and the log DB 4 do not necessarily need to be separately configured, and may be configured integrally.
The signature server program 30 is, for example, supplied to the signature server 3 via the recording medium 114 (FIG. 2), loaded into the
With these components, the signature server program 30 performs an electronic signature process when it receives form data (Table 1) from the CL computer 2, for example.
[0023]
In the signature server program 30, the
Further, the
The server-side secret
The
[0024]
In the
Further, the signature control unit 320 receives data from another node via the
Further, the signature control unit 320 transmits data input from each component of the
[0025]
FIG. 7 is a diagram illustrating a transmission frame used by the CL computer 2 to transmit form data to the signature server 3.
The form data generated in the CL computer 2 (
In order to transmit this form data, for example, as shown in FIG. 7, a transmission frame including the URL of the signature server 3 as the transmission destination, the URL of the CL computer 2 as the transmission source URL, and further including the form data Is used.
The hash
The hash
[0026]
The
The
[0027]
Note that the hash
On the other hand, the hash
Therefore, when the hash
Hereinafter, a specific example will be described in which the hash
[0028]
FIG. 8 is a diagram exemplifying a transmission frame used by the
The
[0029]
The
This transmission frame includes the URL of the CL computer 2 as the transmission destination URL, and the URL of the signature server 3 as the transmission source URL.
[0030]
FIG. 9 is a diagram illustrating a transmission frame used for transmitting XML data (Table 2) and the like from the
The CLSM 22 (FIG. 11) executed on the CL computer 2 converts the HTTP form data (form data generated by the CL computer 2 in some cases; Table 1) transmitted from the signature server 3 as described above. , XML form data (XML data; Table 2).
The CL computer 2 encrypts the XML data with a secret key of the CL computer 2 and obtains a signature (hereinafter also referred to as an XML signature) obtained by encrypting the XML data, and a certificate including the public key of the CL computer 2 (public key certification). To the signature server 3 together with the signature.
[0031]
The XML
The XML
As described above, the XML
The XML
[0032]
FIG. 10 is a diagram illustrating a log generated by the
When the data (FIG. 9) including the XML data, the XML signature, and the public key certificate is sent from the CL computer 2, the
[0033]
The
The log verification unit 344 decrypts the XML signature included in the read log (FIG. 10) using the public key included in the public key certificate into XML data, and obtains the XML data obtained as a result of the decryption. If the XML data included in the log matches, the read log is verified as normal, and if not, the log is verified as indicating an abnormality.
[0034]
[CL program 20]
FIG. 11 is a diagram showing a configuration of a client program (CL program) 20 executed on the CL computer 2 shown in FIGS.
As shown in FIG. 11, the CL program 20 includes a
The
[0035]
Each component of the CL program 20 other than the
The
The CL program 20 performs communication between the CL computer 2 and the AP server 5 and digital signature processing between the CL computer 2 and the signature server 3 using these components.
The
[0036]
The
Further, the
[0037]
Further, the
Further, the
As shown by the dotted line in FIG. 11, when the XML
[0038]
The
Further, the
The
The
The server public
The CL secret
[0039]
In the
The
[0040]
As shown in FIG. 6, the
The
As described above, the
[0041]
The XML
Hereinafter, for clarification of the description, a specific example in which the XML
However, the XML
[0042]
The
In this way, the
[0043]
When the
The
When the
[0044]
FIG. 12 is a diagram showing a transmission frame used for transmitting form data from the
When the
[0045]
As shown in FIG. 12, the
Note that when the signature server 3 verifies that the XML signature is normal, the signature server 3 notifies the
[0046]
[Operation of Network System 1]
FIG. 13 is a communication sequence diagram when the digital signature processing in the network system 1 (such as FIG. 1) ends normally (S10).
As shown in FIG. 13, as shown in step 100 (S100), general communication is performed between the Web browser 202 (FIG. 11) operating on the CL computer 2 and the AP server 5.
In step 102 (S102), the
[0047]
In step 104 (S104), the AP server 5 transmits the input form to the
The
When the user inputs necessary data for each item of the displayed input form, the
[0048]
In step 106 (S106), the
In step 108 (S108), the signature server 3 transmits the form data, the server-side signature, and the CLSM 22 (FIG. 11) to the
The
The
[0049]
In step 110 (S110), the
In step 112 (S112), the signature server 3 verifies that the XML signature sent from the
[0050]
In step 114 (S114), the
In step 116 (S116), communication for providing a service by the called application is performed between the CL computer 2 and the AP server 5.
[0051]
As described above, as shown by the dotted line in FIG. 13, the signature server 3 notifies the
As can be seen from FIG. 13, even if the digital signature scheme according to the present invention is incorporated, the communication sequence in the existing system hardly needs to be changed.
That is, it is only necessary to add the processes of S108 to S112 to the existing communication sequence and change the transmission destination in the process of S108 from the URL of the AP server 5 to the URL of the signature server 3.
Therefore, according to the electronic signature method according to the present invention, it is easy to adapt to an existing communication system, and an electronic authentication processing function can be easily added to the existing communication system.
[0052]
FIG. 14 is a communication sequence diagram in a case where the electronic signature processing in the network system 1 (FIG. 1 or the like) ends when the server signature is verified as being abnormal (S12).
In the following sequence diagrams, substantially common processes are denoted by common reference numerals.
In the processing of S100 to S108, as shown in FIG. 13, processing from communication with the AP server 5 to execution of the
[0053]
In step 120 (S120), the
In step 122 (S122), the
Upon receiving this notification, the signature server 3 performs an abnormal process.
[0054]
FIG. 15 is a communication sequence diagram in a case where the digital signature processing in the network system 1 (FIG. 1 or the like) ends when the XML signature is verified to be abnormal (S14).
In the processing of S100 to S110, as shown in FIG. 13, processing from communication with the AP server 5 to transmission of an XML signature or the like is performed.
[0055]
In step 140 (S140), the signature server 3 verifies that the XML signature sent from the
The signature server 3 performs abnormality processing and notifies the
In step 142 (S142), the
[0056]
FIG. 16 is a communication sequence diagram showing a case where the CL computer 2 (FIGS. 1 and 2 or the like) requests the signature server 3 to verify the XML signature, and the signature server 3 verifies the log (S16). .
As shown in FIG. 16, in step 160 (S160), the CL computer 2 transmits an XML signature verification request to the signature server 3 in response to a user operation.
[0057]
In step 162 (S162), the signature server 3 searches the log DB 4 and extracts a log to be verified.
In step 164 (S164), the signature server 3 notifies the CL computer 2 of the result of the log verification.
[0058]
[Modification]
The CL computer 2 may receive the XML signature from the signature server 3 so that the CL computer 2 performs the above-described verification processing such as the XML signature. Further, the verification process such as the XML signature may be performed according to a user operation on the signature server 3.
[0059]
FIG. 17 shows a modified example (S18) of the verification using an electronic signature that is different from the transmission of the
FIG. 18 is a diagram showing a configuration of a transmission frame for sending the
FIG. 19 is a diagram showing a configuration of a transmission frame for transmitting form data and the like from the signature server 3 (FIGS. 1 and 2) to the CL computer 2 in the modification shown in FIG.
In the above-described processing, as shown in FIG. 8, a specific example is shown in which the
[0060]
As shown in FIG. 17, in the processing of S100 to S106, as shown in FIG. 13, processing from communication between the CL computer 2 and the AP server 5 to transmission of form data from the
In step 180 (S180), the signature server 3 transmits the CLSM 22 (FIG. 9) to the CL computer 2 using the transmission frame shown in FIG.
[0061]
In step 182 (S182), the CL computer 2 returns an ACK signal to the signature server 3 when the reception of the
In step (S184), the signature server 3 transmits the form data and the server-side signature to the CL computer 2 using the transmission frame shown in FIG.
In the processing of S110 to S116, processing from verification of the server-side signature to communication between the CL computer 2 and the AP server 5 is performed.
[0062]
【The invention's effect】
As described above, according to the electronic verification system and the method thereof according to the present invention, electronic verification can be realized with almost no change in the application providing the service.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration of a network system to which an electronic signature method according to the present invention is applied.
FIG. 2 is a diagram illustrating a hardware configuration of a CL computer, a signature server, a log DB, and an AP server shown in FIG. 1;
FIG. 3 is a diagram exemplifying a GUI (Graphical User Interface) image shown by an input form transmitted to the CL computer by the AP server shown in FIGS. 1 and 2;
FIG. 4 is a diagram illustrating a transmission frame used for transmitting the input form shown in FIG. 3;
FIG. 5 is a diagram illustrating a data input operation by the user with respect to FIG. 3;
FIG. 6 is a diagram showing a configuration of a signature server program executed on the signature server shown in FIGS. 1 and 2.
FIG. 7 is a diagram illustrating a transmission frame used by a CL computer to transmit form data to a signature server.
8 is a diagram illustrating a transmission frame used by the CLSM transmitting unit shown in FIG. 6 to transmit CLSM (FIG. 11) to a CL computer.
FIG. 9 is a diagram exemplifying a transmission frame used to transmit XML data (Table 2) and the like from a CLSM executed on a CL computer to a signature server.
FIG. 10 is a diagram illustrating a log generated by a log generation unit illustrated in FIG. 6;
FIG. 11 is a diagram showing a configuration of a client program (CL program) executed on the CL computer shown in FIGS. 1 and 2.
12 is a diagram showing a transmission frame used to send form data from the CLSM shown in FIG. 11 to the AP server.
FIG. 13 is a communication sequence diagram in a case where the digital signature processing in the network system (such as FIG. 1) ends normally (S10).
FIG. 14 is a communication sequence diagram when the electronic signature processing in the network system (such as FIG. 1) ends when the server signature is verified as being abnormal (S12).
FIG. 15 is a communication sequence diagram in a case where the digital signature processing in the network system (such as FIG. 1) ends when the XML signature is verified as being abnormal (S14).
FIG. 16 is a communication sequence diagram showing a case where the CL computer 2 (FIG. 1, FIG. 2, etc.) requests the signature server to verify an XML signature, and the signature server verifies a log (S16).
FIG. 17 is a communication sequence showing a modification (S18) of verification using an electronic signature in which transmission of a CLSM from a signature server (FIGS. 1 and 2) to a CL computer and transmission of server-side signature data and the like are separate. FIG.
18 is a diagram showing a configuration of a transmission frame for sending a CLSM from the signature server (FIGS. 1 and 2) to the CL computer in the modification shown in FIG.
FIG. 19 is a diagram showing a configuration of a transmission frame for transmitting form data and the like from the signature server (FIGS. 1 and 2) to the CL computer in the modification shown in FIG.
[Explanation of symbols]
1 ... Network system,
2 ... CL computer,
100 ... body,
102 ... CPU,
104 ... memory,
106 ・ ・ ・ Display / input device,
110 ... communication device,
112 ・ ・ ・ Recording device,
114 ・ ・ ・ Recording medium,
20 CL program,
200: UI unit,
202: Web browser,
204 ... user verification unit,
206: a communication control unit,
208 ... Downloader,
210: server public key storage unit
212 CL storage unit,
22 ... CLSM,
220 ... reception processing unit,
222 ... signature verification unit,
224 ... XML data generation unit,
226... Signature generation unit
228 ... transmission processing unit,
230 ... XML signature DB,
3 ... Signature server
30 WS program,
300 ... UI unit,
302 ... server-side secret key storage unit
308 ・ ・ ・ Communication control unit
310 ・ ・ ・ Application,
32 ... SSM,
320 ... signature control unit,
322... Hash value generation unit,
324... Signature generation unit
326 CLSM transmission unit
330... XML signature verification unit
332... Log generation unit
334... Log verification unit
4 ... log DB,
5 ... AP server,
Claims (14)
前記第1のノードは、
所定の伝送データを、前記第3のノードに対して送信する伝送データ送信手段と、
前記第3のノードが送信した第1の電子署名を受信し、前記受信された第1の電子署名を検証する検証手段と、
前記伝送データから、前記第2の電子署名を生成し、前記生成された第2の電子署名を、前記第3のノードに対して送信する第1の署名手段と、
少なくとも前記第1の電子署名が正常と検証されたときに、前記第2のノードに対してアクセスするアクセス手段と
を有し、
前記第3のノードは、
前記送信された伝送データを受信する伝送データ受信手段と、
前記受信された伝送データから、前記第1の電子署名を生成し、前記生成された第1の電子署名を、前記第1のノードに対して送信する第2の署名手段と、
前記送信された第2の電子署名を受信し、前記受信された第2の電子署名を保持する署名保持手段と
を有する
電子署名システム。An electronic signature system having a first node, a second node, and a third node,
The first node comprises:
Transmission data transmission means for transmitting predetermined transmission data to the third node;
Verification means for receiving the first electronic signature transmitted by the third node and verifying the received first electronic signature;
First signature means for generating the second electronic signature from the transmission data and transmitting the generated second electronic signature to the third node;
Access means for accessing the second node when at least the first electronic signature is verified to be normal;
The third node comprises:
Transmission data receiving means for receiving the transmitted transmission data,
Second signature means for generating the first electronic signature from the received transmission data, and transmitting the generated first electronic signature to the first node;
A signature holding unit that receives the transmitted second electronic signature and holds the received second electronic signature.
前記送信された伝送データを受信し、前記受信された伝送データから、前記第1の電子署名を生成する署名生成手段と、
前記生成された第1の電子署名を、前記第1のノードに対して送信する署名送信手段と、
前記送信された第2の電子署名を受信し、前記受信された第2の電子署名を保持する署名保持手段と
を有する電子署名装置。An electronic signature device for causing a first node to execute an electronic signature process, wherein the first node transmits predetermined transmission data and verifies that the first electronic signature is normal. Performing an electronic signature process of generating and transmitting the second electronic signature from the transmission data,
Signature generating means for receiving the transmitted transmission data and generating the first electronic signature from the received transmission data;
Signature transmitting means for transmitting the generated first electronic signature to the first node;
An electronic signature device comprising: a signature holding unit that receives the transmitted second electronic signature and holds the received second electronic signature.
前記受信された伝送データを、前記電子署名装置に対して設定された秘密鍵を用いて暗号化して第1の暗号化データとし、
前記受信された伝送データと、前記第1の暗号化データとを含む前記前記第1の電子署名を生成し、
前記第1のノードにおける電子署名処理は、
前記第1の電子署名データに含まれる前記第1の暗号化データを、前記電子署名装置に対して設定された公開鍵を用いて復号して前記伝送データとし、
前記第1の電子署名に含まれる伝送データと、前記復号された伝送データとに基づいて、前記第1の電子署名が正常であるか否かを検証する
請求項2に記載の電子署名装置。The signature generation means,
Encrypting the received transmission data using a secret key set for the electronic signature device to obtain first encrypted data;
Generating the first electronic signature including the received transmission data and the first encrypted data;
The electronic signature processing in the first node includes:
Decrypting the first encrypted data included in the first electronic signature data using the public key set for the electronic signature device as the transmission data;
The electronic signature device according to claim 2, wherein whether or not the first electronic signature is normal is verified based on transmission data included in the first electronic signature and the decrypted transmission data.
前記受信された伝送データのハッシュ値を、前記電子署名装置に対して設定された秘密鍵を用いて暗号化して第1の暗号化データとし、
前記受信された伝送データと、前記生成された第1の暗号化データとを含む前記前記第1の電子署名を生成し、
前記第1のノードにおける電子署名処理は、
前記第1の電子署名データに含まれる前記第1の暗号化データを、前記電子署名装置に対して設定された公開鍵を用いて復号して前記伝送データのハッシュ値とし、
前記第1の電子署名に含まれる伝送データのハッシュ値と、前記復号された伝送データのハッシュ値とに基づいて、前記第1の電子署名が正常であるか否かを検証する
請求項2に記載の電子署名装置。The signature generation means,
A hash value of the received transmission data is encrypted using a secret key set for the electronic signature device to obtain first encrypted data,
Generating the first electronic signature including the received transmission data and the generated first encrypted data;
The electronic signature processing in the first node includes:
Decrypting the first encrypted data included in the first electronic signature data using a public key set for the electronic signature device, as a hash value of the transmission data;
3. The method according to claim 2, wherein verifying whether the first electronic signature is normal based on a hash value of the transmission data included in the first electronic signature and a hash value of the decrypted transmission data. 4. Electronic signature device as described.
をさらに有する請求項2〜4のいずれか3に記載の電子署名装置。The electronic signature device according to claim 2, further comprising a verification unit that verifies the received second electronic signature.
請求項5に記載の電子署名装置。The electronic signature device according to claim 5, wherein the verification unit further verifies the stored second electronic signature.
請求項5または6に記載の電子署名装置。7. The electronic signature device according to claim 5, wherein the signature holding unit holds the received second electronic signature when the received second electronic signature is verified to be normal.
前記検証手段は、
前記第2の電子署名データに含まれる前記第2の暗号化データを、前記第1のノードに対して設定された公開鍵を用いて復号して前記伝送データとし、
前記第2の電子署名に含まれる伝送データと、前記復号された伝送データとに基づいて、前記第2の電子署名が正常であるか否かを検証する
請求項5〜7のいずれかに記載の電子署名装置。The electronic signature processing in the first node encrypts the transmission data using a secret key set for the first node to generate second encrypted data, and the transmission data and the second Generating the second digital signature including the encrypted data of
The verification means,
Decrypting the second encrypted data included in the second electronic signature data using a public key set for the first node, as the transmission data;
The device according to any one of claims 5 to 7, wherein whether or not the second electronic signature is normal is verified based on transmission data included in the second electronic signature and the decrypted transmission data. Electronic signature device.
請求項8に記載の電子署名装置。9. The electronic signature device according to claim 8, wherein the signature holding unit holds the second encrypted data, the transmission data, and a public key set for the first node.
前記検証手段は、
前記第2の電子署名データに含まれる前記第2の暗号化データを、前記第1のノードに対して設定された公開鍵を用いて復号して前記変換データとし、
前記第2の電子署名に含まれる変換データと、前記復号された変換データとに基づいて、前記第2の電子署名が正常であるか否かを検証する
請求項5〜6のいずれかに記載の電子署名装置。The electronic signature processing in the first node performs predetermined conversion processing on the transmission data to obtain conversion data, and encrypts the conversion data using a secret key set for the first node. And generates the second digital signature including the converted data and the second encrypted data.
The verification means,
Decrypting the second encrypted data included in the second digital signature data using a public key set for the first node, as the converted data;
7. The device according to claim 5, wherein whether or not the second electronic signature is normal is verified based on the converted data included in the second electronic signature and the decrypted converted data. 8. Electronic signature device.
請求項10に記載の電子署名装置。The electronic signature device according to claim 10, wherein the signature holding unit holds the second encrypted data, the converted data, and a public key set for the first node.
をさらに有し、
前記第1のノードが、前記送信された署名モジュールを受信して実行することにより、前記第1のノードにおける電子署名処理が実現される
請求項2〜11のいずれかに記載の電子署名装置。Signature module transmitting means for transmitting a signature module for executing a digital signature process in the first node to the first node;
The electronic signature device according to claim 2, wherein the first node receives and executes the transmitted signature module to implement an electronic signature process in the first node. 13.
前記送信された伝送データを受信し、前記受信された伝送データから、前記第1の電子署名を生成し、
前記生成された第1の電子署名を、前記第1のノードに対して送信し、
前記送信された第2の電子署名を受信し、前記受信された第2の電子署名を保持する
電子署名方法。An electronic signature method for causing a first node to execute an electronic signature process, wherein the first node transmits predetermined transmission data and verifies that the first electronic signature is normal. Performing an electronic signature process of generating and transmitting the second electronic signature from the transmission data,
Receiving the transmitted transmission data, generating the first electronic signature from the received transmission data,
Transmitting the generated first electronic signature to the first node;
An electronic signature method for receiving the transmitted second electronic signature and holding the received second electronic signature.
前記送信された伝送データを受信し、前記受信された伝送データから、前記第1の電子署名を生成するステップと、
前記生成された第1の電子署名を、前記第1のノードに対して送信するステップと、
前記送信された第2の電子署名を受信し、前記受信された第2の電子署名を保持するステップと
をコンピュータに実行させるプログラム。A program for causing a first node to execute an electronic signature process, wherein the first node transmits predetermined transmission data and verifies that the first electronic signature is normal. Performing an electronic signature process of generating and transmitting the second electronic signature from the transmission data;
Receiving the transmitted transmission data and generating the first electronic signature from the received transmission data;
Transmitting the generated first electronic signature to the first node;
Receiving the transmitted second electronic signature and holding the received second electronic signature.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003113826A JP2004320589A (en) | 2003-04-18 | 2003-04-18 | Electronic signature system and its method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003113826A JP2004320589A (en) | 2003-04-18 | 2003-04-18 | Electronic signature system and its method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004320589A true JP2004320589A (en) | 2004-11-11 |
Family
ID=33473604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003113826A Pending JP2004320589A (en) | 2003-04-18 | 2003-04-18 | Electronic signature system and its method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004320589A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020184744A (en) * | 2019-04-26 | 2020-11-12 | カシオ計算機株式会社 | Server device, program, information processing system and information processing method |
-
2003
- 2003-04-18 JP JP2003113826A patent/JP2004320589A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020184744A (en) * | 2019-04-26 | 2020-11-12 | カシオ計算機株式会社 | Server device, program, information processing system and information processing method |
JP7095709B2 (en) | 2019-04-26 | 2022-07-05 | カシオ計算機株式会社 | Benefit provision system and privilege provision method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10305867B2 (en) | System and method for secured content delivery | |
JP7007985B2 (en) | Resource locator with key | |
US6941459B1 (en) | Selective data encryption using style sheet processing for decryption by a key recovery agent | |
US6978367B1 (en) | Selective data encryption using style sheet processing for decryption by a client proxy | |
JP6545136B2 (en) | System and method for encrypted transmission of web pages | |
US9673984B2 (en) | Session key cache to maintain session keys | |
US6961849B1 (en) | Selective data encryption using style sheet processing for decryption by a group clerk | |
US6931532B1 (en) | Selective data encryption using style sheet processing | |
RU2332711C2 (en) | PROTECTED CLIENT SYSTEM MANDATE PROCESSING FOR ACCESSING Web-BASED RESOURCES | |
JP4596554B2 (en) | Method and system for mapping encrypted HTTPS network packets to specific URL names and other data without decryption outside the secure web server (mapping) | |
JP4632315B2 (en) | Method and system for single sign-on operation providing grid access and network access | |
JP5284758B2 (en) | Computer-implemented method, computer program product, data processing system (secure digital signature system) | |
KR20060100920A (en) | Trusted third party authentication for web services | |
AU2009200629A1 (en) | Method and apparatus for securely invoking a rest API | |
US20190190722A1 (en) | Script verification using a hash | |
JP2009514262A (en) | Method and system for stepping up to certificate-based authentication without interrupting existing SSL sessions | |
JP2004513453A (en) | Method and system for establishing a reliable distributed peer-to-peer network | |
US20080165970A1 (en) | runtime mechanism for flexible messaging security protocols | |
US20080168273A1 (en) | Configuration mechanism for flexible messaging security protocols | |
US20130046988A1 (en) | Systems and methods for providing a cryptographic key manager for an application server | |
US8520840B2 (en) | System, method and computer product for PKI (public key infrastructure) enabled data transactions in wireless devices connected to the internet | |
Gui-hong et al. | Building a secure web server based on OpenSSL and apache | |
US11258766B2 (en) | VNF package signing system and VNF package signing method | |
CN107026828A (en) | A kind of anti-stealing link method cached based on internet and internet caching | |
US20090157823A1 (en) | Apparatus and method for facilitating secure email services using multiple protocols |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20041210 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041217 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20041213 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071106 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080205 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080815 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090128 |