Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4183982B2 - Digital signature system - Google Patents
[go: Go Back, main page]

JP4183982B2 - Digital signature system - Google Patents

Digital signature system Download PDF

Info

Publication number
JP4183982B2
JP4183982B2 JP2002184071A JP2002184071A JP4183982B2 JP 4183982 B2 JP4183982 B2 JP 4183982B2 JP 2002184071 A JP2002184071 A JP 2002184071A JP 2002184071 A JP2002184071 A JP 2002184071A JP 4183982 B2 JP4183982 B2 JP 4183982B2
Authority
JP
Japan
Prior art keywords
signature
digital signature
command
response
creation
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.)
Expired - Fee Related
Application number
JP2002184071A
Other languages
Japanese (ja)
Other versions
JP2004032248A (en
Inventor
富己男 半田
義博 矢野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2002184071A priority Critical patent/JP4183982B2/en
Publication of JP2004032248A publication Critical patent/JP2004032248A/en
Application granted granted Critical
Publication of JP4183982B2 publication Critical patent/JP4183982B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

【0001】
【発明の属する技術分野】
本発明はデジタル署名システムに関し、特に、ICカードなどの携帯型の署名作成装置を利用したデジタル署名システムに関する。
【0002】
【従来の技術】
インターネットを中心とする世界的規模のネットワーク環境が広まったことにより、社会生活上の様々な分野において、紙媒体の書類が電子媒体の書類に置き換わりつつあり、書類の作成者を確認し、書類への改竄の有無を検出するための方法として、従来の署名に代えて、デジタル署名の利用が普及し始めている。現在、一般に利用されているデジタル署名は、個人個人にそれぞれ固有の秘密データを与え、この秘密データを利用した所定のアルゴリズムに基づく演算により作成される。秘密データは、各個人の管理下にあるICカードなどの情報処理装置に格納され、各個人の秘密データに対応した個人別公開データは、信頼ある認証局のコンピュータに格納される。各個人が、署名付きのメッセージを相手に送信したい場合には、デジタル署名の対象となるメッセージデータと個人用の秘密データとを用いて、所定のアルゴリズムに基づく演算を行わせることによりデジタル署名を作成し、このデジタル署名をもとのメッセージデータに添付して相手方に送信すればよい。相手方は、個人別公開データの真正性を認証局に照会し、受信したメッセージデータとデジタル署名とを個人別公開データを用いて検証することにより、デジタル署名が確かに送信主のものであるか、そして、受信したメッセージデータに改竄が行われていないか、を確認することができる。
【0003】
デジタル署名を作成するための演算には、公開鍵暗号方式が用いられており、作成されたデジタル署名や個人別公開データからは各個人の秘密データを求めることはできない。したがって、デジタル署名を入手した第三者が、このデジタル署名に基づいてもとの秘密データを知得することはできない配慮がなされている。しかしながら、秘密データ自体が不正な手段で読み出されてしまうと、デジタル署名の偽造が可能になってしまう。このため、秘密データを格納し、この秘密データを用いてデジタル署名を作成する署名作成装置としては、可能な限りセキュリティの高い装置を用いるのが好ましい。
【0004】
このような理由から、現在、実用化されているデジタル署名システムは、ICカードからなる署名作成装置と、このICカードに対するアクセス機能をもったリーダライタ装置およびこれを制御するためのコンピュータからなるメッセージ処理装置と、を組み合わせたものが主流である。個人個人にICカードを配付し、このICカード内に各個人用の秘密データを格納するようにすれば、秘密データを十分なセキュリティの下に管理することが可能になる。署名作成装置として機能するICカード内には、秘密データを用いてデジタル署名を作成するための所定のアルゴリズムに基づく演算プログラムが組み込まれており、秘密データを用いた演算はすべてICカードの内部で実行されることになる。デジタル署名の対象となるメッセージデータは、メッセージ処理装置として機能するコンピュータ側で用意し、これをリーダライタ装置を介してICカードへと送信すればよい。ICカードは、与えられたメッセージデータと、内部に格納されていた秘密データと、を用いた所定の演算を実行し、与えられたメッセージデータについてのデジタル署名を作成し、これをリーダライタ装置を介してコンピュータ側へと返信する。かくして、コンピュータ側に用意された任意のメッセージデータに対して、デジタル署名を得ることが可能になる。
【0005】
【発明が解決しようとする課題】
上述したICカードを利用したデジタル署名システムでは、個人用の秘密データはICカード内に格納され、不正な方法で外部に読み出されることのないような十分なセキュリティ対策が講じられている。しかしながら、メッセージ処理装置として機能するコンピュータと、署名作成装置として機能するICカードと、の間の通信が傍受されると、秘密データ自体が直接読み出されることはないものの、「特定のメッセージデータに対して、特定のデジタル署名が得られた」という事実は外部に漏れてしまうことになる。このような通信傍受は、リーダライタ装置とICカードとの間の信号経路において行うことも可能であるし、コンピュータとリーダライタ装置との間の信号経路において行うことも可能である。更に、コンピュータ内のメモリを探索することによっても、通信傍受と同等の結果を得ることができる。最近は、このような通信傍受機能をもったコンピュータウイルスを配付することにより不正行為を行う例も少なくない。このような不正行為により、「特定のメッセージデータと特定のデジタル署名との対応関係」が多数入手されると、これらを解析することにより、ICカード内の秘密データが推定されてしまう危険性が出てくる。また、通信傍受により、デジタル署名を作成させるためのコマンドコードを割り出すことも可能であり、不正アクセス者が、意図的に作成した都合のよいメッセージデータを、割り出したコマンドコードとともにICカードに与えることにより、当該メッセージデータについてのデジタル署名を入手する、という不正行為(いわゆる適応的選択文書攻撃)が可能になり、様々な方法で偽造署名を用いた犯罪が行われる可能性がある。
【0006】
そこで本発明は、デジタル署名の対象となるメッセージデータと、これについてのデジタル署名との対応関係が、不正な方法で傍受される蓋然性を低減し、よりセキュリティを向上させることが可能なデジタル署名システムを提供することを目的とする。
【0007】
【課題を解決するための手段】
(1) 本発明の第1の態様は、所定のメッセージデータに対して個人認証用のデジタル署名を作成するためのシステムにおいて、
内部に個人用の秘密データを記憶し、与えられたメッセージデータに対してこの秘密データを利用した所定のアルゴリズムに基づく演算を内部で実行することにより、当該メッセージデータに対する個人認証用のデジタル署名を作成する機能をもった署名作成装置と、
この署名作成装置に接続することができ、デジタル署名の対象となる所定のメッセージデータを用意する機能と、用意したメッセージデータを署名処理装置に送信する機能と、署名処理装置の内部で作成されたデジタル署名を受信する機能と、を有するメッセージ処理装置と、
を用意し、
署名作成装置とメッセージ処理装置との間の情報のやりとりは、メッセージ処理装置から署名作成装置に対して所定のコマンドを送信する送信処理と、署名作成装置からメッセージ処理装置に対してコマンドに応じたレスポンスを返信する返信処理と、を実行することによりなされるように構成し、
メッセージ処理装置は、デジタル署名の対象となる所定のメッセージデータを含んだ「署名作成コマンド」を署名作成装置に対して送信し、これに応じて署名作成装置から返信されてくるレスポンスを受信する第1の能動処理と、デジタル署名の返信を要求するための「署名返信コマンド」を署名作成装置に対して送信し、これに応じて署名作成装置から返信されてくるレスポンスを受信し、受信したレスポンスに含まれているデジタル署名を取り出す第2の能動処理と、第1の能動処理としてのコマンド送信およびレスポンス受信を行った後、第2の能動処理としてのコマンド送信およびレスポンス受信を行うまでの間に、本来は意味のない「ダミーコマンド」を署名作成装置に対して送信し、これに応じて署名作成装置から返信されてくるレスポンスを受信するダミー能動処理と、を行う機能を有し、
署名作成装置は、「署名作成コマンド」が送信されてきたときに、当該コマンドに含まれているメッセージデータに対して秘密データを利用した所定のアルゴリズムに基づく演算を内部で実行することにより、当該メッセージデータに対する個人認証用のデジタル署名を作成する処理を実行し、作成したデジタル署名を内部に記憶し、当該「署名作成コマンド」に応じたレスポンスとして、作成した当該メッセージデータについてのデジタル署名を含まない所定のレスポンスを返信する第1の受動処理と、「署名返信コマンド」が送信されてきたときに、当該「署名返信コマンド」に応じたレスポンスとして、記憶されていたデジタル署名を含む所定のレスポンスを返信する第2の受動処理と、「ダミーコマンド」が送信されてきたときに、当該「ダミーコマンド」に応じたレスポンスとして、本来は意味のない「ダミーレスポンス」を返信するダミー受動処理と、を行う機能を有するようにしたものである。
【0008】
(2) 本発明の第2の態様は、上述の第1の態様に係るデジタル署名システムにおいて、
ICカードを署名作成装置として用い、当該ICカードにアクセスする機能をもったリーダライタ装置およびこのリーダライタ装置を制御するためのコンピュータをメッセージ処理装置として用いるようにしたものである。
【0009】
(3) 本発明の第3の態様は、上述の第1または第2の態様に係るデジタル署名システムにおいて、
メッセージ処理装置に、署名を行う個人に、デジタル署名の対象となるメッセージデータを入力させるメッセージ入力処理と、当該個人に、メッセージデータに対する署名の意思確認のための入力を行わせる署名確認入力処理と、を行う機能をもたせ、メッセージ入力処理が完了した時点で第1の能動処理を実行し、署名確認入力処理が完了した時点で第2の能動処理を実行し、メッセージ入力処理の完了時から署名確認入力処理の完了時までの期間に、「ダミーコマンド」を送信する処理を1回もしくは複数回行うようにしたものである。
【0010】
(4) 本発明の第4の態様は、上述の第3の態様に係るデジタル署名システムにおいて、
メッセージ処理装置が、ディスプレイ画面上にメッセージデータを入力するための入力欄を表示し、当該入力欄への入力操作が完了する指示が与えられた時点で、メッセージ入力処理が完了したものと判断して第1の能動処理を実行するとともに、ディスプレイ画面上において署名の意思確認のための確認ボタンを操作可能状態とし、確認ボタンに対する操作が行われた時点で、署名確認入力処理が完了したものと判断して第2の能動処理を実行するようにしたものである。
【0013】
(5) 本発明の第5の態様は、上述の第1〜第4の態様に係るデジタル署名システムにおいて、
メッセージ処理装置が、第2の能動処理として送信する「署名返信コマンド」に、デジタル署名の対象となるメッセージデータとは無関係なダミーメッセージデータを含ませるようにしたものである。
【0014】
(6) 本発明の第6の態様は、上述の第1〜第5の態様に係るデジタル署名システムにおいて、
署名作成装置が、第1の受動処理として返信する「署名作成コマンドに応じたレスポンス」に、作成したデジタル署名とは無関係なダミーデジタル署名を含ませるようにしたものである。
【0015】
(7) 本発明の第7の態様は、上述の第1〜第6の態様に係るデジタル署名システムにおいて、
署名作成装置が、「署名返信コマンド」に基づく第2の受動処理を行った後に、これまで記憶されていたデジタル署名の消去処理を行うようにしたものである。
【0016】
(8) 本発明の第8の態様は、上述の第1〜第6の態様に係るデジタル署名システムにおいて、
署名作成装置が、新たな「署名作成コマンド」に基づく第1の受動処理により作成された新たなデジタル署名を記憶するときに、前回の「署名作成コマンド」に基づく第1の受動処理により作成されて記憶されていたデジタル署名を消去する処理を実行するようにしたものである。
【0017】
(9) 本発明の第9の態様は、上述の第1〜第6の態様に係るデジタル署名システムにおいて、
署名作成装置内に不揮発性メモリを設け、「署名作成コマンド」に基づいて作成したデジタル署名が不揮発性メモリに記憶されるようにし、
署名作成装置に対する電源供給が遮断され、再び電源供給が開始されたときに、「署名返信コマンド」に基づいて、電源供給遮断前に不揮発性メモリに記憶されていたデジタル署名についての返信処理を行う際には、アクセス権の認証が行われることを条件として当該返信処理が実行されるようにしたものである。
【0018】
(10) 本発明の第10の態様は、上述の第1〜第6の態様に係るデジタル署名システムにおいて、
署名作成装置内に不揮発性メモリを設け、「署名作成コマンド」に基づいて作成したデジタル署名が不揮発性メモリに記憶されるようにし、
署名作成装置に対する電源供給が遮断され、再び電源供給が開始されたときに、「署名作成コマンド」に先んじて「署名返信コマンド」が与えられた場合には、不揮発性メモリに記憶されていたデジタル署名ついての返信処理を実行せずに、エラーを示すレスポンスが返信されるようにしたものである。
【0019】
(11) 本発明の第11の態様は、上述の第1〜第6の態様に係るデジタル署名システムにおいて、
署名作成装置が、「署名作成コマンド」を受け取った後、予め定められた特定のイベントが発生するまでの間に「署名返信コマンド」を受け取らなかった場合には、「署名作成コマンド」に基づいて作成されて記憶されていたデジタル署名を消去する処理を実行するようにしたものである。
【0020】
(12) 本発明の第12の態様は、上述の第11の態様に係るデジタル署名システムにおいて、
「署名作成コマンド」を受け取ってから所定の時間が経過すること、を特定のイベントとして定め、所定の時間が経過したときに、これまで記憶されていたデジタル署名の消去処理が行われるようにしたものである。
【0021】
(13) 本発明の第13の態様は、上述の第11の態様に係るデジタル署名システムにおいて、
「署名作成コマンド」を受け取ってから、「署名返信コマンド」を受け取ることなしに新たな「署名作成コマンド」を受け取ること、を特定のイベントとして定め、新たな「署名作成コマンド」を受け取ったときに、これまで記憶されていたデジタル署名の消去処理が行われるようにしたものである。
【0022】
(14) 本発明の第14の態様は、上述の第11の態様に係るデジタル署名システムにおいて、
署名作成装置に対する電源供給が遮断されること、を特定のイベントとして定め、電源供給の遮断のための準備が行われた時点で、これまで記憶されていたデジタル署名の消去処理が行われるようにしたものである。
【0023】
(15) 本発明の第15の態様は、上述の第1〜第14の態様に係るデジタル署名システムにおいて、
署名作成装置に対して「署名返信コマンド」が与えられたにも拘らず、返信対象となるデジタル署名が記憶されていない場合には、エラーを示すレスポンスが返信されるようにしたものである。
【0024】
(16) 本発明の第16の態様は、所定のメッセージデータに対して個人認証用のデジタル署名を作成する機能をもった署名作成装置において、
個人用の秘密データを記憶するための秘密データ記憶部と、
外部に接続されたメッセージ処理装置との間で情報のやりとりを行う情報通信部と、
与えられたメッセージデータに対して秘密データを利用した所定のアルゴリズムに基づく演算を実行することにより、当該メッセージデータに対する個人認証用のデジタル署名を作成する署名作成部と、
作成したデジタル署名を記憶する署名記憶部と、
を設け、
情報通信部が、メッセージ処理装置から、デジタル署名の対象となる所定のメッセージデータを含んだ「署名作成コマンド」が送信されてきた場合には、当該メッセージデータを署名作成部に与えて署名の作成処理を実行させるとともに、当該「署名作成コマンド」に応じたレスポンスとして、作成された当該メッセージデータについてのデジタル署名を含まない所定のレスポンスをメッセージ処理装置へ返信する第1の処理と、メッセージ処理装置から、デジタル署名の返信を要求するための「署名返信コマンド」が送信されてきた場合には、当該「署名返信コマンド」に応じたレスポンスとして、署名記憶部に記憶されていたデジタル署名を含む所定のレスポンスをメッセージ処理装置へ返信する第2の処理と、メッセージ処理装置から、本来は意味のない「ダミーコマンド」が送信されてきた場合には、当該「ダミーコマンド」に応じたレスポンスとして、本来は意味のない「ダミーレスポンス」を返信するダミー処理と、を行うようにしたものである。
【0025】
(17) 本発明の第17の態様は、上述の第16の態様に係る署名作成装置に接続して情報のやりとりを行うメッセージ処理装置において、
デジタル署名の対象となる所定のメッセージデータを含んだ「署名作成コマンド」を署名作成装置に対して送信し、これに応じて署名作成装置から返信されてくるレスポンスを受信する第1の能動処理部と、
デジタル署名の返信を要求するための「署名返信コマンド」を署名作成装置に対して送信し、これに応じて署名作成装置から返信されてくるレスポンスを受信し、受信したレスポンスに含まれているデジタル署名を取り出す第2の能動処理部と、
第1の能動処理としてのコマンド送信およびレスポンス受信を行った後、第2の能動処理としてのコマンド送信およびレスポンス受信を行うまでの間に、本来は意味のない「ダミーコマンド」を署名作成装置に対して送信し、これに応じて署名作成装置から返信されてくるレスポンスを受信するダミー能動処理部と、
を設けるようにしたものである。
【0026】
(18) 本発明の第18の態様は、上述の第17の態様に係るメッセージ処理装置としてコンピュータを機能させるためのプログラムを用意したものである。
【0028】
【発明の実施の形態】
以下、本発明を図示する実施形態に基づいて説明する。
§1.本発明の基本的な実施形態
図1は、本発明の基本的な実施形態に係るデジタル署名システムの構成を示すブロック図である。このデジタル署名システムは、図示のとおり、メッセージ処理装置100と、署名作成装置200とによって構成されている。この実施形態では、メッセージ処理装置100は、コンピュータ110とリーダライタ装置120とによって構成されており、署名作成装置200は、ICカードによって構成されている。ICカードからなる署名作成装置200には、図示のとおり、情報通信部210、秘密データ記憶部220、署名作成部230、署名記憶部240なる構成要素が設けられている。もっとも、これらの各構成要素は、ICカードのソフトウエア上の機能に着目した構成を示すものであり、ハードウエア上の構成要素の観点からは、ICカードは、CPUと、メモリ(RAM,ROM,EEPROM)と、入出力インターフェイスと、を備えており、情報通信部210は入出力インターフェイスにより構成され、秘密データ記憶部220および署名記憶部240はメモリ(ここに示す実施形態の場合は、不揮発性メモリであるEEPROM内の領域が、秘密データ記憶部220および署名記憶部240として用いられている)により構成され、署名作成部230はメモリに格納されたプログラムに基づいて動作するCPUにより構成される。
【0029】
ICカードからなる署名作成装置200は、携帯型の情報処理装置であり、各ユーザが携帯することができ、必要に応じて、メッセージ処理装置100に接続して利用することができる。最近は、既に種々の用途でICカードが利用され始めている。したがって、署名作成装置200は、必ずしも署名作成機能のみを果たす専用のICカードとして提供する必要はなく、実用上は、複数の用途に共用される汎用のICカードを署名作成装置200として利用することが可能である。リーダライタ装置120は、このICカードからなる署名作成装置200と接続して、情報のやりとりを行う機能を有しており、ICカードに対する直接のアクセスは、すべてリーダライタ装置120によって実行される。一方、コンピュータ110は、周辺機器として接続されたリーダライタ装置120を制御する機能を有し、たとえば、個人用のパーソナルコンピュータによって構成することができる。
【0030】
ここでは、このコンピュータ110に、インターネットに接続してWebページを閲覧するWebブラウザソフトウエアが組み込まれており、ユーザがインターネットを介して、特定のサイトに、デジタル署名付きメッセージデータを送信する場合を例にとって、このシステムの基本動作を説明する。このような基本動作は、メッセージ処理装置100と署名作成装置200との分業によって行われる。
【0031】
すなわち、まず、メッセージ処理装置100側において、デジタル署名の対象となるメッセージデータが用意される。メッセージデータは、コンピュータ110のキーボードなどを利用して、ユーザからの直接入力により用意するようにしてもよいし、記憶装置内のファイルなどから読み出すことにより用意するようにしてもよい。もちろん、ネットワークを介して、コンピュータ110内に取り込むことにより、メッセージデータを用意することも可能である。こうしてコンピュータ110内に用意されたメッセージデータは、リーダライタ装置120を介して、署名作成装置200へと送信される。より具体的には、メッセージデータは、情報通信部210によって受信され、署名作成部230へと与えられる。一方、秘密データ記憶部220内には、この署名作成装置200(ICカード)の所有者であるユーザ個人が、個人認証用のデジタル署名を行うための秘密データが記憶されている。署名作成部230は、情報通信部210から与えられたメッセージデータに対して、秘密データ記憶部220内の秘密データを利用した所定のアルゴリズムに基づく演算を実行することにより、当該メッセージデータに対する個人認証用のデジタル署名を作成する処理を行う。こうして作成されたデジタル署名は、署名記憶部240内に一時的に格納された後、情報通信部210を介してリーダライタ装置120へと返信され、コンピュータ110へと伝達される。
【0032】
結局、署名作成装置200は、メッセージ処理装置100側から送信されてきたメッセージデータに対して、秘密データ記憶部220内の秘密データを用いてデジタル署名を作成し、作成したデジタル署名をメッセージ処理装置100へと返信する機能を果たす装置ということになり、メッセージ処理装置100は、デジタル署名の対象となる所定のメッセージデータを用意し、この用意したメッセージデータを署名作成装置200に送信し、署名作成装置200の内部で作成されたデジタル署名を受信する機能を果たす装置ということになる。こうして、コンピュータ110内に、所定のメッセージデータと、これに対するデジタル署名とが整ったら、これらをインターネットを介して所定のサイトへと送信することができる。当該サイト側では、受信したメッセージデータとデジタル署名との正当性を所定の認証局へ問い合わせることにより、正当なユーザから正当なメッセージデータが送信されてきたことを確認することができる。
【0033】
続いて、以上の基本動作を、具体的なデータを用いて説明してみよう。ここでは、「特許太郎」なる特定のユーザが、コンピュータ110を用いて特定のWebサイトにアクセスし、当該Webサイトが運営するオンライン書店に、百科事典の発注を行うという具体的な例をとりあげてみる。まず、このような発注を行うために、ユーザ「特許太郎」は、図2に示すようなメッセージデータM(「百科事典一式を注目します。」なる文字列からなるデータ)をコンピュータ110に入力する。すると、このメッセージデータMは、リーダライタ装置120を介して情報通信部210へと送信され、署名作成部230へ与えられる。ここで、このユーザ「特許太郎」の所持するICカード内には、図2に示すような秘密データH(この例では、便宜上、「ABC123」なる文字列であったとする)が格納されていたものとしよう。具体的には、秘密データ記憶部220(この例では、EEPROM)内に、秘密データHが格納されていることになる。なお、秘密データHは、このICカードをユーザ「特許太郎」に発行する際に、発行元において所定の方法で書き込まれる。
【0034】
さて、署名作成部230は、予め用意されていた所定のアルゴリズムに基づいて、メッセージデータMに対して、秘密データHを利用した所定の演算を実行し、メッセージデータMに対する個人認証用のデジタル署名Dを作成する。ここでは、たとえば、図2に示すようなデジタル署名D(この例では、便宜上、「456789」なる数値であったとする)が作成されたものとしよう。このようなデジタル署名を作成するアルゴリズムは、ICカード内のROMなどのメモリに予めプログラムとして用意されていることになる。デジタル署名作成のための具体的なアルゴリズムとしては、たとえば、「メッセージデータMを構成する文字列に、秘密データHを構成する文字列を付加し、これら文字列を16進数に置き換えて数値化し、この数値にハッシュ関数を作用させたハッシュ値をデジタル署名とする」というようなアルゴリズムを用いればよい。ある元になる数値にハッシュ関数を作用させることにより得られるハッシュ値は一義的に定まるが、ハッシュ値から元になる数値を逆算することはできないので、メッセージデータMと秘密データHとが与えられれば、署名作成部230によって、ハッシュ値として与えられるデジタル署名Dを一義的に求めることができるが、逆に、デジタル署名DとメッセージデータMとが既知であったとしても、それらから秘密データHを求めることはできない。
【0035】
こうして、署名作成部230によって作成された「456789」なる数値からなるデジタル署名Dは、署名記憶部240に格納された後、情報通信部210およびリーダライタ装置120を介して、コンピュータ110へと返信される。そこで、コンピュータ110は、メッセージデータMとともにデジタル署名Dを、「特許太郎」なるユーザからの注文として、オンライン書店のサイトへと送信して、百科事典の発注を行うことになる。
【0036】
一方、秘密データ記憶部220内に格納されている秘密データHは、信頼すべき認証局にも、「特許太郎」なるユーザの個人認証用秘密データとして登録されている。したがって、「百科事典一式注文します。」なるメッセージデータMと、「456789」なるデジタル署名Dとを、「特許太郎」なるユーザからの注文として受信したオンライン書店は、これらを認証局に照会することにより、メッセージデータMおよびデジタル署名Dの組み合わせが、確かに「特許太郎」から発信されたものであることを確認することができる。すなわち、認証局において、「百科事典一式注文します。」なるメッセージデータMと、特許太郎の秘密データHとして登録されている「ABC123」なるデータとを用いて、所定のアルゴリズム(署名作成部230により実行される署名作成処理と同じアルゴリズム)による演算を実行し、「456789」なる同一のデジタル署名Dが得られれば、「百科事典一式注文します。」なるメッセージデータMと、「456789」なるデジタル署名Dとの組み合わせが、確かに「特許太郎」なるユーザが発信したものであることが確認されることになる。もちろん、メッセージデータMの一部が改竄された場合には、得られるデジタル署名が異なることになるため、正しい認証結果は得られなくなる。
【0037】
さて、このように、メッセージ処理装置100側でメッセージデータMを用意し、これを署名作成装置200側に与えて、署名作成装置200側の内部演算でデジタル署名Dを作成させ、このデジタル署名Dを再びメッセージ処理装置100側へ返信させる、という基本動作を行うためには、当然ながら、メッセージ処理装置100と署名作成装置200との間で情報のやりとりを行う必要がある。一般に、ICカードとリーダライタ装置との間の情報のやりとりは、リーダライタ装置側から所定のコマンドをICカード側へと送信し、このコマンドに応じた所定のレスポンスをICカード側からリーダライタ装置側へと返信させる、という交信処理を交互に実行することによりなされる。
【0038】
ICカード側に署名作成処理を実行させるタイプの従来の一般的なデジタル署名システムの場合、まず、リーダライタ装置からICカードに対して、たとえば図3(a) に示すような署名コマンドを与え、これに応じて、ICカードからリーダライタ装置に対して、たとえば図3(b) に示すようなレスポンスを返信させる、という処理を行い、所定のメッセージデータMに対するデジタル署名Dを作成させている。図3に示す具体的な例の場合、署名コマンドは、「SIGN」なるコマンドコード(当該コマンドが、署名作成を要求するためのコマンドであることを示すコード)からなる見出部と、「百科事典一式を注文します。」なる文字列のメッセージデータMからなる本体部と、によって構成されており、この署名コマンドに対するレスポンスは、「OK」なるステータスコード(与えられたコマンドが正しく処理されたことを示すコード)からなる本体部と、「456789」なるデジタル署名Dからなる後続部と、によって構成されている。ICカード側に、図3(a) に示すような署名コマンドを理解し、この署名コマンドの本体部に含まれるメッセージデータMと、内部に記憶されている秘密データHと、を用いてデジタル署名Dを作成し、作成したデジタル署名Dを後続部に含ませたレスポンスを返信する処理を実行する機能をもたせておけば、このICカードに対して、図3(a) に示すような署名コマンドを与えると、図3(b) に示すようなレスポンスが返信されることになり、所定のメッセージデータMについてのデジタル署名Dを得ることができる。
【0039】
しかしながら、このように、デジタル署名の対象となるメッセージデータMをメッセージ処理装置100側で用意し、このメッセージデータMを含むコマンドを署名作成装置200(ICカード)に与え、署名作成装置200からメッセージ処理装置100に返信されてくるレスポンスとして、作成されたデジタル署名Dを得る、という方法を採る以上、メッセージ処理装置100と署名作成装置200との間の交信傍受などの不正手段による攻撃を受ける可能性があり、秘密データHを推測する手掛かりを与えてしまうおそれがあることは既に述べたとおりである。たとえば、図3に示す例の場合、交信傍受などの方法により、図3(a) に示す署名コマンドに対して、図3(b) に示すレスポンスが返信された、という事実が認識できれば、「百科事典一式を注文します。」なるメッセージデータMに対応するデジタル署名Dが「456789」であることがわかってしまう。もちろん、このようなメッセージデータMとデジタル署名Dとの組み合わせ1組だけでは、秘密データ記憶部220内の秘密データHを推測することは非常に困難であるが、交信傍受を継続すれば、メッセージデータMとデジタル署名Dとの多数の組み合わせが蓄積でき、このような蓄積が多くなればなるほど、秘密データHの推測確率が高まってゆく。また、署名コマンドのコードが「SIGN」であることが認識できれば、不正者自身が任意のメッセージデータMを含んだ署名コマンドをICカードに与え、これに対応するレスポンスを得ることができるようになるので、秘密データHは、より推測しやすくなる。
【0040】
本発明は、このように、メッセージ処理装置100から署名作成装置200に対して所定のコマンドを送信する送信処理と、署名作成装置200からメッセージ処理装置100に対して当該コマンドに応じたレスポンスを返信する返信処理と、を交互に実行することにより、両者間における情報のやりとりが行われるデジタル署名システムにおいて、セキュリティの向上を図ることを目的とするものである。その要点は、デジタル署名の対象となるメッセージデータMをメッセージ処理装置100から署名作成装置200へと送信して署名作成を要求するためのコマンド(ここでは、署名作成コマンドという)と、署名作成装置200側で作成されたデジタル署名Dをメッセージ処理装置100側へと返信させるためのコマンド(ここでは、署名返信コマンドという)と、を別個独立したコマンドとして用意しておき、署名作成コマンドに対するレスポンスには、作成したデジタル署名を含ませないようにし、署名返信コマンドに対するレスポンスに、作成したデジタル署名を含ませて返信させるようにする点にある。
【0041】
すなわち、本発明に係るデジタル署名システムでは、図1に示すメッセージ処理装置100と署名作成装置200との間で、図4に示すようなコマンドおよびレスポンスのやりとりが行われることになる。まず、メッセージ処理装置100から署名作成装置200に対して、図4(a) に示すような署名作成コマンドが与えられる。この例では、署名作成コマンドは、「MAKE」なるコマンドコードからなる見出部と、「百科事典一式を注文します。」なる文字列のメッセージデータMからなる本体部と、によって構成されている。このような署名作成コマンドを受信した情報通信部210は、メッセージデータMの部分を署名作成部230に与えてデジタル署名Dを作成させる。前述のように、署名作成部230は、メッセージデータMと秘密データ記憶部220内の秘密データHとに対して、所定のアルゴリズムに基づく演算を施し、たとえば「456789」のようなデジタル署名Dを作成し、これを署名記憶部240に書き込む処理を行う。一方、情報通信部210は、与えられた署名作成コマンドに対するレスポンスをメッセージ処理装置100へと返信することになるが、このレスポンスには、署名作成部230によって作成され、署名記憶部240内に書き込まれた「456789」なるデジタル署名Dは含まれないようにする。具体的には、たとえば、図4(b) に示すようなレスポンスを返信する処理が実行される。このレスポンスは、「OK」なるステータスコードからなる本体部のみからなるレスポンスであり、後続部は存在しない。結局、このレスポンスは、与えられた署名作成コマンドが支障なく実行されたことのみを示す情報となる。別言すれば、図4(a) に示すような署名作成コマンドを与えても、作成された「456789」なるデジタル署名Dは、当該署名作成コマンドに対するレスポンスとしては返信されてこないことになる。
【0042】
本発明では、作成されたデジタル署名Dを得るために、メッセージ処理装置100から署名作成装置200に対して、図4(c) に示すような署名返信コマンドを与える必要がある。この例では、署名返信コマンドは、「BACK」なるコマンドコードからなる見出部のみから構成され、本体部は存在しない。このような署名返信コマンドを受信した情報通信部210は、署名記憶部240内に格納されていた「456789」なるデジタル署名Dを読み出し、このデジタル署名Dを含むレスポンスを、メッセージ処理装置100へと返信する処理を行う。このレスポンスは、具体的には、たとえば、図4(d) に示すようなレスポンスになる。このレスポンスは、「OK」なるステータスコードからなる本体部に、「456789」なる後続部を加えたレスポンスであり、与えられた署名返信コマンドが支障なく実行されたことを示すとともに、返信対象となるデジタル署名Dが「456789」であることを示す情報となる。別言すれば、図4(c) に示す署名返信コマンドは、過去に与えた図4(a) に示す署名作成コマンドによって作成されたデジタル署名Dの返信を求めるコマンドということになる。なお、署名返信コマンドが与えられたのに、署名記憶部240内にデジタル署名Dが格納されていない場合(すなわち、署名作成コマンドが与えられていない状態で、署名返信コマンドが与えられてしまった場合)には、当該署名返信コマンドに対しては、本体部にエラーを示すステータスが書き込まれたレスポンスが返信されることになる。
【0043】
結局、本発明に係るデジタル署名システムでは、所定のメッセージデータMについてのデジタル署名Dを得るために、メッセージ処理装置100および署名作成装置200において、それぞれ次のような処理が行われることになる。なお、ここでは、説明の便宜上、メッセージ処理装置100側の処理を「能動処理」、署名作成装置200側の処理を「受動処理」と呼んで区別することにする。
【0044】
まず、メッセージ処理装置100側では、次のような処理が行われる。はじめに、デジタル署名の対象となる所定のメッセージデータMを含んだ「署名作成コマンド」を署名作成装置200に対して送信し、これに応じて返信されてくるレスポンスを受信する第1の能動処理が行われる。すなわち、この第1の能動処理は、図4(a) に示すような署名作成コマンドを送信し、これに応じて返信されてくる図4(b) に示すようなレスポンスを受信する処理ということになる。続いて、デジタル署名の返信を要求するための「署名返信コマンド」を署名作成装置200に対して送信し、これに応じて返信されてくるレスポンスを受信し、受信したレスポンスに含まれているデジタル署名を取り出す第2の能動処理が行われる。すなわち、この第2の能動処理は、図4(c) に示すような署名返信コマンドを送信し、これに応じて送信されてくる図4(d) に示すようなレスポンスを受信し、後続部に含まれている「456789」なるデジタル署名Dを取り出す処理ということになる。
【0045】
もちろん、この第1の能動処理と第2の能動処理とは、必ずしも連続して実行する必要はなく、両処理の間に別な処理(メッセージ処理装置100側から何らかのコマンドを送信し、これに応じて何らかのレスポンスを受信する処理)を実行してもかまわない。また、署名作成装置200に対するコマンド送信作業は、ユーザの直接的な指示に基づいて行われるわけではなく、メッセージ処理装置100を構成するコンピュータ110上で実行されているプログラムの指示に基づいて行われることになる。したがって、上述した第1の能動処理や第2の能動処理の手順は、このコンピュータ110上で実行されるプログラムに記述されていることになる。
【0046】
一方、署名作成装置200側では、個々のコマンドが与えられるたびに、このコマンドの内容に応じた所定の処理が実行され、所定のレスポンスを返信する処理が実行されることになる。具体的には、まず、上述した「署名作成コマンド」が送信されてきたときには、当該コマンドに含まれているメッセージデータMに対して、秘密データHを利用した所定のアルゴリズムに基づく演算を内部で実行し、当該メッセージデータMに対する個人認証用のデジタル署名Dを作成する処理を実行し、作成したデジタル署名Dを内部に記憶し、当該「署名作成コマンド」に応じたレスポンスとして、作成した当該メッセージデータMについてのデジタル署名Dを含まない所定のレスポンスを返信する第1の受動処理が行われる。すなわち、この第1の受動処理は、メッセージ処理装置100から情報通信部210に対して、図4(a) に示すような、デジタル署名の対象となる所定のメッセージデータMを含んだ「署名作成コマンド」が送信されてきた場合に、当該メッセージデータMを署名作成部230に与えて署名の作成処理を実行させるとともに、当該「署名作成コマンド」に応じたレスポンスとして、作成された当該メッセージデータMについてのデジタル署名Dを含まない、たとえば図4(b) に示すような所定のレスポンスをメッセージ処理装置100へ返信する処理ということになる。
【0047】
また、上述した「署名返信コマンド」が送信されてきたときには、当該「署名返信コマンド」に応じたレスポンスとして、記憶されていたデジタル署名Dを含む所定のレスポンスを返信する第2の受動処理が行われる。すなわち、この第2の受動処理は、メッセージ処理装置100から情報通信部210に対して、図4(c) に示すような、デジタル署名の返信を要求するための「署名返信コマンド」が送信されてきた場合に、当該「署名返信コマンド」に応じたレスポンスとして、署名記憶部240に記憶されていたデジタル署名Dを含む、たとえば図4(d) に示すような所定のレスポンスをメッセージ処理装置100へ返信する処理ということになる。なお、上述したように、「署名返信コマンド」が送信されてきたのにも拘わらず、署名記憶部240内に、返信すべきデジタル署名Dが記憶されていなかった場合には、エラーを示すレスポンスが返信されることになる。
【0048】
もちろん、この第1の受動処理と第2の受動処理とは、実際には、署名作成装置200を構成するICカード内のCPUが、ROMやEEPROMなどに予め格納されているプログラムに基づいて実行する処理である。したがって、上述した第1の受動処理や第2の受動処理の手順は、このICカード上で実行されるプログラムに記述されていることになる。
【0049】
§2.本発明の実用的な実施形態
以上、本発明の基本的な実施形態について述べたが、ここでは、より実用的な実施形態を示しておく。
【0050】
本発明の特徴は、メッセージ処理装置100側から署名作成装置200側にメッセージデータMを受け渡して署名作成を指示する署名作成コマンドと、署名作成装置200側で作成されたデジタル署名Dをメッセージ処理装置100側にレスポンスとして返信することを指示する署名返信コマンドとを別個にし、1回のコマンド/レスポンスという交信でやりとりされる情報の中に、メッセージデータMとこれに対応するデジタル署名Dとの双方が含まれることを避け、交信傍受などの攻撃に対するセキュリティを向上させようとする点にある。すなわち、従来のデジタル署名システムでは、図3に示すように、1回のコマンド/レスポンスという交信でやりとりされる情報の中に、メッセージデータMとこれに対応するデジタル署名Dとの双方が含まれてしまうことになるのに対し、本発明のデジタル署名システムでは、図4(a) ,(b) に示すような1回のコマンド/レスポンスという交信でやりとりされる情報の中には、メッセージデータMのみしか含まれておらず、また、図4(c) ,(d) に示すような1回のコマンド/レスポンスという交信でやりとりされる情報の中にも、デジタル署名Dのみしか含まれていない。このため、交信傍受などの不正手段によって、個々のコマンド/レスポンス対について、その内容解析が行われたとしても、メッセージデータMとデジタル署名Dとの対が露呈しにくく、また、署名作成を要求するコマンドコード(図4の例の場合「MAKE」)や署名返信を要求するコマンドコード(図4の例の場合「BACK」)も露呈しにくくなる。
【0051】
このように、本発明によるセキュリティの向上効果は、署名作成コマンドを送信するタイミング(第1の能動処理を実行するタイミング)と、署名返信コマンドを送信するタイミング(第2の能動処理を実行するタイミング)とに大きく左右されることになる。実用上は、これらの2つのタイミングが離れていればいるほど、より大きなセキュリティの向上効果が期待できる。もっとも、メッセージ処理装置100側で行われる第1の能動処理のタイミングや第2の能動処理のタイミングは、すべてメッセージ処理装置100を構成するコンピュータ110上で動作しているプログラムにより決められる。そこで、以下に、コンピュータ110上で動作しているプログラムとの関連において、第1の能動処理および第2の能動処理を実行すべきタイミングについての実例を示しておく。
【0052】
前述したように、コンピュータ110は、デジタル署名の対象となるメッセージデータMを用意する機能を有しており、このようなメッセージデータMは、通常、署名を行うユーザ自身がキーボードなどから入力することになる。したがって、コンピュータ110には、デジタル署名の対象となるメッセージデータMを入力させるメッセージ入力処理を行う機能が備わっている。また、「デジタル署名」という行為は、通常、物品の購入契約の締結など、法律的に意味のある行為に付随して行われることが多く、「デジタル署名」を行う前に、署名を行うユーザ自身に、メッセージデータMに対する署名の意思確認のための入力を行わせるのが好ましい。したがって、通常、コンピュータ110には、署名確認入力処理(たとえば、署名ボタンなどをユーザにクリックさせるような処理)を行う機能が備わっている。
【0053】
ここで述べる実施形態では、上述した各入力処理機能を利用して、第1の能動処理および第2の能動処理を実行させるようなプログラムがなされている。すなわち、ユーザによるメッセージ入力処理が完了した時点で第1の能動処理を実行し、署名確認入力処理が完了した時点で第2の能動処理を実行するようなプログラムがなされている。具体的には、ディスプレイ画面上にメッセージデータMを入力するための入力欄を表示し、当該入力欄への入力操作が完了する指示が与えられた時点で、メッセージ入力処理が完了したものと判断して第1の能動処理を実行するとともに、ディスプレイ画面上において署名の意思確認のための確認ボタンを操作可能状態とし、この確認ボタンに対する操作が行われた時点で、署名確認入力処理が完了したものと判断して第2の能動処理を実行するようにすることができる。
【0054】
これをより具体的な例について説明しよう。たとえば、コンピュータ110のディスプレイ画面上に、図5に示すようなウインドウを表示させるようにした場合を考えてみる。このウインドウは、インターネットを介して所定のサイトに、署名付文書を送信するためのウインドウであり、ユーザは、このウインドウ上で、送信対象となるメッセージデータMを入力するメッセージ入力処理と署名確認入力処理とを行うことができる。メッセージ入力処理は、3つの入力欄I1,I2,I3のそれぞれに所定の文字列を入力する作業によって行われる。図示の例は、住所を入力すべき入力欄I1に、「東京都新宿区○○」なる文字列が入力済みとなっており、氏名を入力すべき入力欄I2に、「特許太郎」なる文字列が入力済みとなっており、内容を入力すべき入力欄I3に、「百科事典一式を」なる文字列までが入力された状態が示されている。このような入力作業は、キーボードやマウスなどを操作することにより実行される。この例では、その下に「署名」なるボタンB1と、「取消」なるボタンB2が表示されている。ボタンB1は、デジタル署名の意思確認のための確認ボタンであるが、この時点では、まだ操作可能状態にはなっていない。すなわち、図では破線で描かれており、ボタンB1は、クリックしても反応しない状態となっている。一方、ボタンB2は、常に操作可能状態になっている。ユーザが、このボタンB2をクリックすることにより、この署名付文書の送信手続を取り消すことができる。
【0055】
さて、ユーザが、入力欄I3に、「百科事典一式を注文します。」なる全文の入力を完了し、EnterキーやTabキーなどを押して入力完了の操作を行うと、3つの入力欄I1,I2,I3のすべてについての入力操作が完了した旨の指示が与えられたことになる。この実施形態では、このタイミングで、第1の能動処理を行うようにしている。すなわち、3つの入力欄I1,I2,I3のすべてについての入力操作の終了により、署名対象となるメッセージデータMの入力処理が完了することになるので、この時点で、コンピュータ110からリーダライタ装置120を介して署名作成装置200側に、図4(a) に示すような署名作成コマンド(ただし、本体部は、「東京都新宿区○○/特許太郎/百科事典一式を注文します。」なる文字列になる)が送信され、これに応じて、図4(b) に示すようなレスポンスが得られることになる。そして、この時点で、ボタンB1が操作可能状態となり、ウインドウの表示は、図6に示すようなものになる。すなわち、コンピュータ110は、署名対象となるメッセージデータMの入力処理が完了したと判断した時点で、第1の能動処理を実行するとともに、ディスプレイ画面上において署名の意思確認のための確認ボタンB1を操作可能状態とする処理を実行することになる。
【0056】
もちろん、ユーザには、コマンドの送信やレスポンスの受信といった処理が行われていることは認識することができない。したがって、ユーザの観点からは、入力欄I3への文字列の入力を完了した時点(たとえば、EnterキーやTabキーを入力した時点)で、図6に示すように、ボタンB1の表示が変化し、クリック可能な状態になった、との認識がなされることになる。ここで、操作可能状態となったボタンB1は、ユーザに対して、デジタル署名の意思確認を求めており、ユーザがこのボタンB1をクリックした時点で、最終的なデジタル署名の意思確認がなされたことになる。もっとも、実際には、ウインドウの表示が図6のような状態になった時点で、既に、署名作成装置200内部では、メッセージデータMに対するデジタル署名Dが演算により求められ、署名記憶部240内に格納されていることになる。
【0057】
ユーザが、図6に示すボタンB1をクリックすると、署名の意思確認のための確認ボタンに対する操作が行われたことになり、署名確認入力処理が完了したものと判断される。この実施形態では、このタイミングで、第2の能動処理を行うようにしている。すなわち、署名確認入力処理が完了した時点で、コンピュータ110からリーダライタ装置120を介して署名作成装置200側に、図4(c) に示すような署名返信コマンドが送信され、これに応じて、図4(d) に示すようなレスポンスが得られることになる。こうして、コンピュータ110内には、メッセージデータMと、これに対応したデジタル署名Dが用意できた状態になるので、これらを所定のサイトへ送信する処理が行われる。
【0058】
このように、ディスプレイ画面上にメッセージデータMを入力するための入力欄を表示し、当該入力欄への入力操作が完了する指示が与えられた時点で、メッセージ入力処理が完了したものと判断して第1の能動処理を実行するとともに、ディスプレイ画面上において署名の意思確認のための確認ボタンを操作可能状態とし、この確認ボタンに対する操作が行われた時点で、署名確認入力処理が完了したものと判断して第2の能動処理を実行するようにすれば、メッセージデータMの入力から署名の意思確認という一連の流れの手順をユーザ自身が行ってゆくだけで、自動的に第1の能動処理および第2の能動処理のタイミングが指示されることになる。こうして指示された第1の能動処理のタイミングから第2の能動処理のタイミングまでの時間は、CPUのマシンサイクルに比べれば非常に長い時間となり、また、各タイミングは、ユーザ自身の入力操作によってランダムに決定されるタイミングとなるため、不正な攻撃に対してより高いセキュリティが確保されることになる。すなわち、図4(a) の署名作成コマンドが与えられるタイミングと、図4(c) の署名返信コマンドが与えられるタイミングとの間に、十分な時間が確保でき、しかも、この時間はユーザの操作に起因するランダムな時間ということになる。
【0059】
なお、セキュリティをより向上させる上では、図4(a) の署名作成コマンドの送信および図4(b) のレスポンスの返信が行われた後、図4(c) の署名返信コマンドの送信および図4(d) のレスポンスの返信が行われるまでの間に、別なコマンド/レスポンスの対が挿入されるようにするのが好ましい。すなわち、第1の能動処理としてのコマンド送信およびレスポンス受信を行った後、第2の能動処理としてのコマンド送信およびレスポンス受信を行うまでの間に、第1の能動処理および第2の能動処理とは無関係なコマンド送信およびレスポンス受信を1回もしくは複数回行うようにすれば、図4(a) の署名作成コマンドに含まれるメッセージデータMと、図4(d) の署名返信コマンドに対するレスポンスに含まれるデジタル署名Dとの間に、無関係なコマンド/レスポンスが介挿されることになるので、メッセージデータMとデジタル署名Dとの対応関係がより把握されにくくなる。
【0060】
図4(a) の署名作成コマンドの送信および図4(b) のレスポンスの返信が行われた時点と、図4(c) の署名返信コマンドの送信および図4(d) のレスポンスの返信が行われた時点との時間的間隔がある程度離れていた場合には、システムによっては、何らかの意味のある別なコマンド/レスポンスの対が自動的に挿入されるケースもありえよう。ただ、実用上は、メッセージ処理装置100と署名処理装置200との間で、第1の能動処理としてのコマンド送信および第1の受動処理としてのレスポンス返信が行われた後に、本来は意味のないダミーコマンドの送信およびダミーレスポンスの返信が行われるようにするのが好ましい。
【0061】
また、図4(b) に示す「署名作成コマンドに対するレスポンス」には、接続部が存在しないが、実用上は、この第1の受動処理として返信する「署名作成コマンドに対するレスポンス」には、作成したデジタル署名とは無関係なダミーデジタル署名を含ませるようにするのが好ましい。同様に、図4(c) に示す「署名返信コマンド」には、本体部が存在しないが、実用上は、この第2の能動処理として送信する「署名返信コマンド」には、デジタル署名の対象となるメッセージデータとは無関係なダミーメッセージデータを含ませるようにするのが好ましい。
【0062】
図7は、このようなダミーコマンド,ダミーレスポンス、ダミーデジタル署名、ダミーメッセージデータを含ませたメッセージ処理装置100と署名作成装置200との間のコマンド/レスポンスのやりとりの一例を示す図である。まず、▲1▼署名作成コマンドは、正規のコマンドであり、メッセージデータMについてデジタル署名を作成する旨の指示を示すコマンドである。このコマンドにより、署名作成部230がデジタル署名Dを作成し、署名記憶部240に書き込む処理を行う点は既に述べたとおりである。続く、▲2▼署名作成コマンドに対するレスポンスは、▲1▼のコマンドに対する正規のレスポンスである。ただし、このレスポンスには、「123789」なるダミーデジタル署名Dが含まれている。前述したように、▲1▼のコマンドに対するレスポンスは、本来、当該コマンドが支障なく実行された旨を示す「OK」なるステータスの情報が含まれていれば足り、このレスポンスに、作成したデジタル署名D「456789」を含ませないようにする点が、本発明の重要なポイントである。しかしながら、このレスポンスに、本来のデジタル署名D「456789」の代わりに、全く違うダミーデジタル署名D「123789」を含ませておくことは、不正アクセス者の攻撃を受けたときに、不正アクセス者の解析を惑わす上で有益である。
【0063】
また、▲3▼ダミーコマンド(その1)、▲4▼ダミーレスポンス(その1)、▲5▼ダミーコマンド(その2)、▲6▼ダミーレスポンス(その2)は、いずれも意味のある正規のコマンド/レスポンスではなく、全く意味のないダミーのコマンド/レスポンスである。このようなダミーのコマンド/レスポンス対をいくつか挿入することにより、不正アクセス者の解析を更に惑わすことができる。
【0064】
続く▲7▼署名返信コマンドは、正規のコマンドであり、過去に作成されたデジタル署名を返信する旨の指示を示すコマンドである。このコマンドに応じて、署名記憶部240に記憶されていたデジタル署名D「456789」を含むレスポンスが、▲8▼署名返信コマンドに対するレスポンスとして返信されることは、既に述べたとおりである。ただし、図示の▲7▼署名返信コマンドには、「明日の天気は晴れでしょう。」なるダミーメッセージデータMが含まれている。前述したように、署名返信コマンドには、本来、メッセージデータMを添付する必要はなく、このコマンドに、メッセージデータMを含ませないようにする点が、本発明の重要なポイントである。しかしながら、このコマンドに、本来のメッセージデータMである「百科事典一式を注文します。」なる文字列の代わりに、「明日の天気は晴れでしょう。」なる全く異なる内容のダミーメッセージデータMを含ませておくことは、やはり、不正アクセス者の解析を惑わす上で有益である。
【0065】
実際、図7に示すような一連のコマンド/レスポンス対を通信傍受などの不正手段で入手した不正アクセス者は、「百科事典一式を注文します」なるメッセージデータと「123789」なるデジタル署名との組み合わせ、「春夏秋冬」なるメッセージデータと「123123」なるデジタル署名との組み合わせ、「子丑寅卯辰巳」なるメッセージデータと「456456」なるデジタル署名との組み合わせ、「明日の天気は晴れでしょう。」なるメッセージデータと「456789」なるデジタル署名との組み合わせ、という、4組の不正確な組み合わせを取得することになり、これらに基づく解析を行っても、秘密データHを推定することはできない。
【0066】
ところで、ICカード内の署名記憶部240には、署名作成コマンドが与えられると、署名作成部230で作成されたデジタル署名Dが書き込まれることになるが、実用上は、所定のタイミングで、署名記憶部240内に格納されているデジタル署名Dを消去する消去処理を行うようにするのが好ましい。消去処理は、たとえば、署名返信コマンドに基づく第2の受動処理を行った後に行うことができる。すなわち、署名返信コマンドにより、署名記憶部240内に格納されたデジタル署名Dが読み出され、レスポンスとして返信された後は、もはやデジタル署名Dを格納しておく必要がなくなるので、この時点で、デジタル署名Dを消去するようにすればよい。もちろん、コンピュータ110側に用意されるプログラムによっては、1回の署名作成コマンドで作成されたデジタル署名Dを、複数回の署名返信コマンドで何回も繰り返して返信させるような利用形態を採ることも可能であるが、そのような利用形態は特殊な利用形態である。通常は、1回の署名作成コマンドで作成されたデジタル署名Dは、1回の署名返信コマンドでのみ返信させて利用することになるので、返信が終了したときに消去するのが最も自然な方法である。
【0067】
あるいは、返信が終了したときには、まだ消去処理を行わずに、新たな「署名作成コマンド」に基づく第1の受動処理により、新たに作成されたデジタル署名を記憶するときに、前回の「署名作成コマンド」に基づく第1の受動処理により作成されて記憶されていたデジタル署名を消去する処理を実行するようにしてもかまわない。この場合は、新たな「署名作成コマンド」が与えられるまでは、前回の「署名作成コマンド」によって作成されたデジタル署名Dが、署名記憶部240内に残ったままの状態となる。
【0068】
ここに示す実施形態では、署名記憶部240として、ICカード内のEEPROMを用いている。このような不揮発性メモリを署名記憶部240として用いる場合には、署名作成装置200(ICカード)をメッセージ処理装置100(リーダライタ装置120)から切り離し、ユーザが署名作成装置200を単体で携帯している状態においても、署名記憶部240内には、デジタル署名Dが記憶されたままの状態となる。すなわち、通常、ICカードへの電源供給は、リーダライタ装置側から行われるため、ICカードをリーダライタ装置から切り離すと、ICカードに対する電源供給は遮断されることになる。したがって、ICカード内のRAMなど、揮発性メモリの記憶内容は、ICカードをリーダライタ装置から切り離すことにより失われてしまう。ところが、EEPROMなどの不揮発性メモリの記憶内容は、電源供給が遮断された後もそのまま維持される。このため、ICカードを再びリーダライタ装置に接続して電源供給を開始すれば、EEPROM内に残っていたデジタル署名Dを読み出すことが可能である。このような状況は、セキュリティの面からは好ましくない。たとえば、正規のユーザが携帯中のICカードを紛失し、これを拾得した不正アクセス者が、独自に開発したリーダライタ装置120を用いてアクセスを試みた場合、EEPROM内に残っていたデジタル署名Dが読み出されてしまうおそれがある。
【0069】
このような不正な攻撃に対するセキュリティ対策としては、ICカード(署名作成装置200)に対する電源供給が遮断され、再び電源供給が開始されたときに、「署名返信コマンド」に基づいて、電源供給遮断前に不揮発性メモリに記憶されていたデジタル署名についての返信処理を行う際には、アクセス権の認証が行われることを条件として当該返信処理が実行されるようにしておけばよい。あるいは、ICカード(署名作成装置200)に対する電源供給が遮断され、再び電源供給が開始されたときに、「署名作成コマンド」に先んじて「署名返信コマンド」が与えられた場合には、不揮発性メモリに記憶されていたデジタル署名ついての返信処理を実行せずに、エラーを示すレスポンスが返信されるようにしてもよい。いずれの場合も、ICカードを拾得した不正アクセス者が、EEPROM内に残っていた正規のデジタル署名Dを不正な方法で読み出すことを防止することができる。
【0070】
このように、署名記憶部240内に正規のデジタル署名Dが長い時間にわたって記憶され続けていることは、セキュリティ上、好ましいことではない。そこで、実用上は、「署名作成コマンド」を受け取った後、「予め定められた特定のイベント」が発生するまでの間に「署名返信コマンド」を受け取らなかった場合には、「署名作成コマンド」に基づいて作成され、署名記憶部240内に記憶されていたデジタル署名を消去する処理が実行されるように、ICカードをプログラムしておくのが好ましい。
【0071】
たとえば、「署名作成コマンドを受け取ってから所定の時間が経過すること」を特定のイベントとして定め、所定の時間が経過したときに、これまで記憶されていたデジタル署名の消去処理が行われるようにすることができる。具体的には、たとえば、「署名作成コマンドを受け取ってから1分経過すること」を特定のイベントとして定めておき、1分経過したら、署名記憶部240内に格納されているデジタル署名Dを消去する処理を行うようにすればよい。もちろん、ICカード側にこのような設定を行った場合には、コンピュータ110側のプログラムにも、たとえば、署名作成コマンドを送信してから1分経過しても署名返信コマンドの送信が行われなかった場合には、再度、署名作成コマンドの送信を行う、などの配慮を行う必要がある。
【0072】
また、「署名作成コマンド」を受け取ってから、「署名返信コマンド」を受け取ることなしに新たな「署名作成コマンド」を受け取ること、を特定のイベントとして定め、新たな「署名作成コマンド」を受け取ったときに、これまで記憶されていたデジタル署名の消去処理が行われるようにしてもよい。あるいは、ICカード(署名処理装置200)に対する電源供給が遮断されること、を特定のイベントとして定め、電源供給の遮断のための準備が行われた時点で、これまで記憶されていたデジタル署名の消去処理が行われるようにしてもよい。具体的には、ICカードをリーダライタ装置120から切り離すための準備処理(たとえば、リーダライタ装置120に対するエジェクト操作)が行われたときに、EEPROM内のデジタル署名を消去する処理が行われるようにしておけばよい。
【0073】
以上、本発明を図示するいくつかの実施形態に基づいて説明したが、本発明はこれらの実施形態に限定されるものではなく、この他にも種々の形態で実施可能である。たとえば、上述の実施形態では、デジタル署名を求めるアルゴリズムとしてハッシュ関数を用いた方法を述べたが、署名作成装置200において行われるデジタル署名作成のアルゴリズムは、ハッシュ関数を用いた方法に限定されるものではなく、要するに、秘密データ記憶部220内の秘密データHと与えられたメッセージデータMとに基づいて、一義的に定まる何らかのデータが得られれば、どのようなアルゴリズムを用いてもかまわない。また、上述の実施形態では、署名作成装置200としてICカードを用いた例を示したが、署名作成装置200は必ずしもICカードによって構成する必要はなく、十分なセキュリティをもって秘密データHを格納することができ、内部でデジタル署名を作成する演算を行う機能をもち、メッセージ処理装置100とは別体となった情報処理装置であれば、どのような装置を用いて構成してもかまわない。また、本発明にいう「デジタル署名」とは、いわゆる公開鍵暗号方式を用いた暗号化によって作成されるデータに限定されるものではなく、たとえば、共有する秘密鍵を用いた「メッセージ認証符号(Message Authentication Code:MAC)」などのデータを広く含むものであり、本発明は、ISO/IEC 9797,JIS X5055や、HMAC:RFC2104などに規定されたメッセージ認証符号を作成するシステムにも適用可能である。
【0074】
【発明の効果】
以上のとおり本発明によれば、デジタル署名の対象となるメッセージデータと、これについてのデジタル署名との対応関係が、不正な方法で傍受される蓋然性を低減することができ、よりセキュリティを向上させたデジタル署名システムを実現できる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るデジタル署名システムの基本構成を示すブロック図である。
【図2】一般的なデジタル署名システムで用いられるメッセージデータM、秘密データH、デジタル署名Dの具体例を示す図である。
【図3】従来のデジタル署名システムにおいて、デジタル署名を得るために用いられるコマンド/レスポンスの一例を示す図である。
【図4】本発明に係るデジタル署名システムにおいて、デジタル署名を得るために用いられるコマンド/レスポンスの一例を示す図である。
【図5】本発明に係るデジタル署名システムにおいて、デジタル署名の対象となるメッセージデータの入力作業を行うための表示ウインドウの一例を示す図である。
【図6】本発明に係るデジタル署名システムにおいて、デジタル署名の意思確認の入力作業を行うための表示ウインドウの一例を示す図である。
【図7】本発明に係るデジタル署名システムにおいて、デジタル署名を得るために用いられるコマンド/レスポンスのより実用的な一例を示す図である。
【符号の説明】
100…メッセージ処理装置
110…コンピュータ
120…リーダライタ装置
200…署名作成装置
210…情報通信部
220…秘密データ記憶部
230…署名作成部
240…署名記憶部
B1,B2…ボタン
D…デジタル署名
…ダミーデジタル署名
H…秘密データ
I1,I2,I3…入力欄
M…メッセージデータ
…ダミーメッセージデータ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a digital signature system, and more particularly to a digital signature system using a portable signature creation device such as an IC card.
[0002]
[Prior art]
Due to the spread of the global network environment centering on the Internet, paper documents are being replaced by electronic media in various fields of social life. As a method for detecting the presence or absence of tampering, the use of digital signatures instead of conventional signatures is becoming widespread. At present, a digital signature that is generally used is created by a calculation based on a predetermined algorithm using secret data unique to each individual person and using the secret data. The secret data is stored in an information processing device such as an IC card under the management of each individual, and the individual public data corresponding to the secret data of each individual is stored in a computer of a trusted certificate authority. When each individual wants to send a signed message to the other party, the digital signature is obtained by performing an operation based on a predetermined algorithm using the message data to be digitally signed and the personal private data. It is only necessary to create it, attach this digital signature to the original message data, and send it to the other party. The other party checks the authenticity of the individual public data with the certificate authority and verifies the received message data and digital signature using the individual public data, so that the digital signature is indeed the sender's. Then, it is possible to confirm whether the received message data has been tampered with.
[0003]
The public key cryptosystem is used for the calculation for creating the digital signature, and the private data of each individual cannot be obtained from the created digital signature or individual public data. Accordingly, consideration is given to the fact that a third party who has obtained a digital signature cannot obtain the original secret data based on the digital signature. However, if the secret data itself is read by unauthorized means, it becomes possible to forge a digital signature. For this reason, it is preferable to use a device with the highest possible security as a signature creation device that stores secret data and creates a digital signature using this secret data.
[0004]
For these reasons, a digital signature system that is currently in practical use is a message comprising a signature creation device comprising an IC card, a reader / writer device having an access function for the IC card, and a computer for controlling the reader / writer device. The combination of the processing apparatus is the mainstream. If an IC card is distributed to an individual and the secret data for each individual is stored in the IC card, the secret data can be managed with sufficient security. An IC card that functions as a signature creation device incorporates a calculation program based on a predetermined algorithm for creating a digital signature using secret data, and all calculations using secret data are performed inside the IC card. Will be executed. Message data to be digitally signed may be prepared on the computer functioning as a message processing device and transmitted to the IC card via the reader / writer device. The IC card executes a predetermined operation using the given message data and the secret data stored therein, creates a digital signature for the given message data, and uses this as a reader / writer device. To the computer. Thus, a digital signature can be obtained for any message data prepared on the computer side.
[0005]
[Problems to be solved by the invention]
In the digital signature system using the above-described IC card, sufficient security measures are taken so that personal secret data is stored in the IC card and is not read out by an unauthorized method. However, if the communication between the computer functioning as the message processing device and the IC card functioning as the signature creation device is intercepted, the secret data itself is not directly read out. The fact that a specific digital signature has been obtained will leak to the outside. Such communication interception can be performed in a signal path between the reader / writer device and the IC card, or can be performed in a signal path between the computer and the reader / writer device. Further, a result equivalent to the communication interception can be obtained by searching the memory in the computer. In recent years, there have been many examples of fraudulent activities by distributing computer viruses with such a communication interception function. If a large number of “correspondences between specific message data and specific digital signatures” are obtained due to such illegal acts, there is a risk that secret data in the IC card is estimated by analyzing them. Come out. It is also possible to determine a command code for creating a digital signature by intercepting communications, and an unauthorized access person can give a convenient message data intentionally created to the IC card together with the calculated command code. Thus, an illegal act (so-called adaptive selection document attack) of obtaining a digital signature for the message data becomes possible, and a crime using a forged signature may be performed in various ways.
[0006]
Therefore, the present invention provides a digital signature system capable of reducing the probability that the correspondence between the message data to be digitally signed and the digital signature about the message data is intercepted by an unauthorized method, and further improving security. The purpose is to provide.
[0007]
[Means for Solving the Problems]
  (1) According to a first aspect of the present invention, there is provided a system for creating a digital signature for personal authentication for predetermined message data.
  Personal secret data for personal use is stored internally, and a digital signature for personal authentication is applied to the message data by executing an operation based on a predetermined algorithm using the secret data for the given message data. A signature creation device with a function to create;
  A function that can be connected to this signature creation device, prepares predetermined message data to be a digital signature, a function that sends the prepared message data to the signature processing device, and is created inside the signature processing device A message processing device having a function of receiving a digital signature;
  Prepare
  Information exchange between the signature creation device and the message processing device is performed according to the transmission processing for transmitting a predetermined command from the message processing device to the signature creation device and the command from the signature creation device to the message processing device. A reply process that sends back a response,
  The message processing device transmits a “signature creation command” including predetermined message data to be digitally signed to the signature creation device, and receives a response returned from the signature creation device in response to the transmission. 1 and sends a “signature reply command” for requesting a digital signature reply to the signature creation apparatus, and receives a response sent back from the signature creation apparatus in response to the response. A second active process for retrieving a digital signature contained inAfter performing command transmission and response reception as the first active process, until a command transmission and response reception as the second active process is performed, a “dummy command” that is essentially meaningless is sent to the signature generation apparatus. A dummy active process for sending a response and receiving a response returned from the signature creation device in response to this,Have the ability to
  When a “signature creation command” is transmitted, the signature creation device internally executes an operation based on a predetermined algorithm using secret data on the message data included in the command, thereby Executes processing to create a digital signature for personal authentication of message data, stores the created digital signature inside, and includes the digital signature for the created message data as a response according to the "signature creation command" First response processing that returns a predetermined response that is not included, and a predetermined response that includes the stored digital signature as a response to the “signature response command” when the “signature response command” is transmitted A second passive process that returnsWhen a “dummy command” is sent, as a response in response to the “dummy command”, a dummy passive process that returns a “dummy response” that is originally meaningless;It has a function to perform.
[0008]
(2) According to a second aspect of the present invention, in the digital signature system according to the first aspect described above,
An IC card is used as a signature creation device, and a reader / writer device having a function of accessing the IC card and a computer for controlling the reader / writer device are used as a message processing device.
[0009]
  (3) According to a third aspect of the present invention, in the digital signature system according to the first or second aspect described above,
  A message input process for causing the message processing apparatus to input message data to be digitally signed, and a signature confirmation input process for allowing the individual to input the signature for the message data. The first active process is executed when the message input process is completed, and the second active process is executed when the signature confirmation input process is completed.Then, during the period from the completion of the message input process to the completion of the signature confirmation input process, the process of transmitting the “dummy command” is performed once or a plurality of times.It is what I did.
[0010]
(4) According to a fourth aspect of the present invention, in the digital signature system according to the third aspect described above,
When the message processing device displays an input field for inputting message data on the display screen and an instruction to complete the input operation to the input field is given, it is determined that the message input process has been completed. The first active process is executed, the confirmation button for confirming the intention of signature on the display screen is made operable, and the signature confirmation input process is completed when the confirmation button is operated. It is determined and the second active process is executed.
[0013]
  (Five)   Of the present invention5thThe above-mentioned aspects are the first to the above-mentioned4thIn the digital signature system according to the aspect of
  The “signature reply command” transmitted by the message processing apparatus as the second active process includes dummy message data unrelated to the message data to be digitally signed.
[0014]
  (6)   Of the present invention6thThe above-mentioned aspects are the first to the above-mentioned5thIn the digital signature system according to the aspect of
  The signature creation apparatus includes a dummy digital signature unrelated to the created digital signature in the “response according to the signature creation command” returned as the first passive process.
[0015]
  (7)   Of the present invention7thThe above-mentioned aspects are the first to the above-mentioned6thIn the digital signature system according to the aspect of
  The signature creation device performs the second passive processing based on the “signature reply command” and then erases the digital signature stored so far.
[0016]
  (8)   Of the present invention8thThe above-mentioned aspects are the first to the above-mentioned6thIn the digital signature system according to the aspect of
  When the signature creation device stores a new digital signature created by the first passive processing based on the new “signature creation command”, the signature creation device is created by the first passive processing based on the previous “signature creation command”. The process of deleting the digital signature stored in this way is executed.
[0017]
  (9)   Of the present invention9thThe above-mentioned aspects are the first to the above-mentioned6thIn the digital signature system according to the aspect of
  A non-volatile memory is provided in the signature creation device so that a digital signature created based on the “signature creation command” is stored in the non-volatile memory,
  When the power supply to the signature creation device is cut off and the power supply is started again, a reply process for the digital signature stored in the nonvolatile memory before the power supply cut-off is performed based on the “signature reply command”. In this case, the reply process is executed on condition that the access right is authenticated.
[0018]
  (Ten)  Of the present invention10thThe above-mentioned aspects are the first to the above-mentioned6thIn the digital signature system according to the aspect of
  A non-volatile memory is provided in the signature creation device so that a digital signature created based on the “signature creation command” is stored in the non-volatile memory,
  When the power supply to the signature creation device is shut off and the power supply is started again, if the “signature reply command” is given prior to the “signature creation command”, the digital data stored in the non-volatile memory A response indicating an error is returned without executing a reply process for a signature.
[0019]
  (11)  Of the present invention11thThe above-mentioned aspects are the first to the above-mentioned6thIn the digital signature system according to the aspect of
  If the signature creation device does not receive the “signature reply command” after receiving the “signature creation command” and before the occurrence of a predetermined specific event, A process of deleting the digital signature that has been created and stored is executed.
[0020]
  (12)  Of the present invention12thAspects of the above11thIn the digital signature system according to the aspect of
  A specific event is defined as the elapse of a predetermined time after receiving the “signature creation command”, and when the predetermined time elapses, the stored digital signature is deleted. Is.
[0021]
  (13)  Of the present invention13thAspects of the above11thIn the digital signature system according to the aspect of
  When a new “signature creation command” is received after a “signature creation command” is received and a new “signature creation command” is received without receiving a “signature reply command”. The digital signature stored so far is erased.
[0022]
  (14)  Of the present invention14thAspects of the above11thIn the digital signature system according to the aspect of
  It is determined that the power supply to the signature creation device is cut off as a specific event, and when the preparation for cutting off the power supply is made, the digital signature stored so far is deleted. It is a thing.
[0023]
  (15)  Of the present invention15thThe above-mentioned aspects are the first to the above-mentioned14thIn the digital signature system according to the aspect of
  When a “signature reply command” is given to the signature creation apparatus but no digital signature to be returned is stored, a response indicating an error is returned.
[0024]
  (16) According to a sixteenth aspect of the present invention, there is provided a signature creating apparatus having a function of creating a digital signature for personal authentication for predetermined message data.
A secret data storage unit for storing private secret data;
An information communication unit for exchanging information with an externally connected message processing device;
A signature creation unit that creates a digital signature for personal authentication of the message data by performing an operation based on a predetermined algorithm using secret data for given message data;
A signature storage unit for storing the created digital signature;
Provided,
When the information communication unit receives a “signature creation command” including predetermined message data to be digitally signed from the message processing device, the information communication unit gives the message data to the signature creation unit to create a signature. A first process for executing a process and returning a predetermined response not including a digital signature for the created message data to the message processing apparatus as a response corresponding to the “signature creation command”; When a “signature reply command” for requesting a reply of a digital signature is transmitted, a predetermined response including the digital signature stored in the signature storage unit as a response corresponding to the “signature reply command” is sent. From the message processing device and the second processing for returning the response to the message processing device When a “dummy command” that is originally meaningless is sent, a dummy process that returns a “dummy response” that is originally meaningless is performed as a response to the “dummy command”. Is.
[0025]
  (17) According to a seventeenth aspect of the present invention, there is provided a message processing apparatus for exchanging information by connecting to the signature generating apparatus according to the sixteenth aspect described above.
A first active processing unit that transmits a “signature creation command” including predetermined message data that is a target of a digital signature to the signature creation device and receives a response returned from the signature creation device in response thereto When,
Sends a “signature reply command” for requesting a digital signature reply to the signature creation device, receives a response sent back from the signature creation device in response to this, and receives the digital contained in the received response A second active processing unit for retrieving the signature;
After performing command transmission and response reception as the first active process, until a command transmission and response reception as the second active process is performed, a “dummy command” that is essentially meaningless is sent to the signature generation apparatus. A dummy active processing unit that transmits a response to the response and receives a response returned from the signature creation device in response thereto;
Is provided.
[0026]
  (18) According to an eighteenth aspect of the present invention, a program for causing a computer to function as the message processing apparatus according to the seventeenth aspect described above is prepared.
[0028]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, the present invention will be described based on the illustrated embodiments.
§1. Basic embodiment of the present invention
FIG. 1 is a block diagram showing a configuration of a digital signature system according to a basic embodiment of the present invention. As shown in the figure, this digital signature system includes a message processing device 100 and a signature creation device 200. In this embodiment, the message processing device 100 is configured by a computer 110 and a reader / writer device 120, and the signature creation device 200 is configured by an IC card. As shown in the figure, the signature creating apparatus 200 composed of an IC card is provided with components such as an information communication unit 210, a secret data storage unit 220, a signature creation unit 230, and a signature storage unit 240. However, each of these components shows a configuration that focuses on the function of the IC card on the software, and from the viewpoint of the components on the hardware, the IC card includes a CPU and a memory (RAM, ROM). , EEPROM) and an input / output interface, the information communication unit 210 is configured by the input / output interface, and the secret data storage unit 220 and the signature storage unit 240 are non-volatile in the embodiment shown here. The area in the EEPROM, which is a volatile memory, is used as the secret data storage unit 220 and the signature storage unit 240), and the signature creation unit 230 is configured by a CPU that operates based on a program stored in the memory. The
[0029]
The signature creation device 200 formed of an IC card is a portable information processing device that can be carried by each user, and can be used by connecting to the message processing device 100 as necessary. Recently, IC cards have already begun to be used for various purposes. Therefore, the signature creation apparatus 200 does not necessarily have to be provided as a dedicated IC card that performs only the signature creation function. In practice, a general-purpose IC card that is shared for a plurality of uses is used as the signature creation apparatus 200. Is possible. The reader / writer device 120 has a function of exchanging information by connecting to the signature creation device 200 made up of the IC card. All direct access to the IC card is executed by the reader / writer device 120. On the other hand, the computer 110 has a function of controlling the reader / writer device 120 connected as a peripheral device, and can be configured by a personal computer for personal use, for example.
[0030]
Here, a case where Web browser software for browsing a Web page by connecting to the Internet is incorporated in the computer 110, and a user transmits message data with a digital signature to a specific site via the Internet. As an example, the basic operation of this system will be described. Such a basic operation is performed by division of work between the message processing apparatus 100 and the signature creation apparatus 200.
[0031]
That is, first, message data to be digitally signed is prepared on the message processing apparatus 100 side. The message data may be prepared by direct input from the user using the keyboard of the computer 110 or may be prepared by reading from a file in the storage device. Of course, it is also possible to prepare message data by taking it into the computer 110 via a network. The message data prepared in the computer 110 in this way is transmitted to the signature creation device 200 via the reader / writer device 120. More specifically, the message data is received by the information communication unit 210 and given to the signature creation unit 230. On the other hand, the secret data storage unit 220 stores secret data for the individual user who is the owner of the signature creation device 200 (IC card) to perform a digital signature for personal authentication. The signature creation unit 230 performs an operation based on a predetermined algorithm using the secret data in the secret data storage unit 220 on the message data given from the information communication unit 210, thereby personal authentication for the message data. Process to create a digital signature. The digital signature created in this way is temporarily stored in the signature storage unit 240 and then returned to the reader / writer device 120 via the information communication unit 210 and transmitted to the computer 110.
[0032]
Eventually, the signature creation apparatus 200 creates a digital signature for the message data transmitted from the message processing apparatus 100 using the secret data in the secret data storage unit 220, and uses the created digital signature as the message processing apparatus. The message processing apparatus 100 prepares predetermined message data to be a digital signature, transmits the prepared message data to the signature creation apparatus 200, and creates a signature. This means a device that functions to receive a digital signature created inside the device 200. Thus, when predetermined message data and a digital signature corresponding to the predetermined message data are prepared in the computer 110, they can be transmitted to a predetermined site via the Internet. On the site side, it is possible to confirm that legitimate message data has been transmitted from a legitimate user by inquiring a predetermined certificate authority about the legitimacy of the received message data and the digital signature.
[0033]
Next, let us explain the above basic operation using specific data. Here, a specific example in which a specific user “Taro Taro” accesses a specific Web site using the computer 110 and orders an encyclopedia from an online bookstore operated by the Web site is taken. View. First, in order to place such an order, the user “Taro Tokkyo” inputs message data M (data consisting of a character string “Look at the encyclopedia set”) as shown in FIG. To do. Then, the message data M is transmitted to the information communication unit 210 via the reader / writer device 120 and given to the signature creation unit 230. Here, the secret data H as shown in FIG. 2 (in this example, for the sake of convenience, the character string “ABC123”) is stored in the IC card possessed by the user “Taro Taro”. Let's take it. Specifically, the secret data H is stored in the secret data storage unit 220 (in this example, the EEPROM). The secret data H is written by a predetermined method at the issuer when the IC card is issued to the user “Taro Taro”.
[0034]
The signature creation unit 230 executes a predetermined operation using the secret data H on the message data M based on a predetermined algorithm prepared in advance, and a digital signature for personal authentication on the message data M is obtained. D is created. Here, for example, it is assumed that a digital signature D as shown in FIG. 2 (in this example, it is assumed that it is a numerical value “456789” for convenience) is created. Such an algorithm for creating a digital signature is prepared in advance as a program in a memory such as a ROM in the IC card. As a specific algorithm for creating a digital signature, for example, “a character string that configures secret data H is added to a character string that configures message data M, and these character strings are replaced with hexadecimal numbers to be digitized. An algorithm such as “a hash value obtained by applying a hash function to this numerical value is used as a digital signature” may be used. A hash value obtained by applying a hash function to a certain numerical value is uniquely determined. However, since the original numerical value cannot be calculated backward from the hash value, message data M and secret data H are given. For example, the signature creation unit 230 can uniquely determine the digital signature D given as the hash value. Conversely, even if the digital signature D and the message data M are known, the secret data H can be obtained from them. Cannot be asked.
[0035]
Thus, the digital signature D composed of the numerical value “456789” created by the signature creation unit 230 is stored in the signature storage unit 240 and then returned to the computer 110 via the information communication unit 210 and the reader / writer device 120. Is done. Therefore, the computer 110 sends the digital signature D together with the message data M to the online bookstore site as an order from the user “Patent Taro”, and orders the encyclopedia.
[0036]
On the other hand, the secret data H stored in the secret data storage unit 220 is also registered in the certificate authority to be trusted as the secret data for personal authentication of the user “Taro Taro”. Therefore, the online bookstore that has received the message data M “Encyclopedia complete set” and the digital signature D “456789” as an order from the user “Taro Taro” inquires them from the certificate authority. Thus, it can be confirmed that the combination of the message data M and the digital signature D is surely transmitted from “Taro Tokkyo”. That is, in the certificate authority, a predetermined algorithm (signature generation unit 230) is used by using message data M “I order a complete encyclopedia.” And data “ABC123” registered as secret data H of Patent Taro. If the same digital signature D “456789” is obtained, message data M “Encyclopedia complete order” and “456789” are obtained. It will be confirmed that the combination with the digital signature D is certainly sent by the user “Taro Taro”. Of course, when a part of the message data M is tampered with, the obtained digital signature is different, so that a correct authentication result cannot be obtained.
[0037]
Now, in this way, message data M is prepared on the message processing apparatus 100 side, this is given to the signature creating apparatus 200 side, and a digital signature D is created by an internal operation on the signature creating apparatus 200 side. In order to perform the basic operation of returning the message to the message processing apparatus 100 again, it is naturally necessary to exchange information between the message processing apparatus 100 and the signature creation apparatus 200. In general, information exchange between an IC card and a reader / writer device is performed by transmitting a predetermined command from the reader / writer device side to the IC card side and transmitting a predetermined response corresponding to the command from the IC card side to the reader / writer device. This is done by alternately executing a communication process of returning to the side.
[0038]
In the case of a conventional general digital signature system of the type in which a signature creation process is executed on the IC card side, first, for example, a signature command as shown in FIG. In response to this, a process of returning a response as shown in FIG. 3B, for example, from the IC card to the reader / writer device is performed to create a digital signature D for the predetermined message data M. In the specific example shown in FIG. 3, the signature command includes a head part including a command code “SIGN” (a code indicating that the command is a command for requesting signature creation), and “encyclopedia”. I will order a complete encyclopedia. ”And a body part consisting of message data M with a string of characters. The response to this signature command is a status code“ OK ”(the given command has been processed correctly) For example) and a subsequent part consisting of a digital signature D “456789”. The IC card side understands the signature command as shown in FIG. 3 (a), and uses the message data M included in the main body of the signature command and the secret data H stored therein to create a digital signature. If a function for executing a process of creating a D and sending back a response including the created digital signature D in the subsequent part is provided, a signature command as shown in FIG. Is given, a response as shown in FIG. 3B is returned, and the digital signature D for the predetermined message data M can be obtained.
[0039]
However, in this way, message data M to be digitally signed is prepared on the message processing device 100 side, a command including this message data M is given to the signature creation device 200 (IC card), and the message from the signature creation device 200 is sent to the message. As long as a method of obtaining the created digital signature D as a response returned to the processing device 100 is adopted, it is possible to be attacked by unauthorized means such as interception of communication between the message processing device 100 and the signature creation device 200. As described above, there is a possibility of giving a clue to guess the secret data H. For example, in the case of the example shown in FIG. 3, if the fact that the response shown in FIG. 3 (b) is returned to the signature command shown in FIG. It will be understood that the digital signature D corresponding to the message data M is “456789”. Of course, it is very difficult to guess the secret data H in the secret data storage unit 220 with only one combination of the message data M and the digital signature D. However, if the communication interception is continued, the message A large number of combinations of the data M and the digital signature D can be accumulated. The more such accumulation, the higher the estimation probability of the secret data H. If it can be recognized that the signature command code is “SIGN”, the unauthorized person can give the IC card a signature command including arbitrary message data M and obtain a response corresponding to the signature command. Therefore, it becomes easier to guess the secret data H.
[0040]
As described above, the present invention transmits a predetermined command from the message processing apparatus 100 to the signature creating apparatus 200, and returns a response corresponding to the command from the signature creating apparatus 200 to the message processing apparatus 100. It is an object of the present invention to improve security in a digital signature system in which information is exchanged between the two by alternately executing a reply process. The main points are a command (herein referred to as a signature creation command) for requesting signature creation by transmitting message data M to be a digital signature from the message processing device 100 to the signature creation device 200, and a signature creation device. A command (herein referred to as a signature reply command) for returning the digital signature D created on the 200 side to the message processing apparatus 100 side is prepared as a separate and independent command, and a response to the signature creation command is prepared. Is that the created digital signature is not included, and the response to the signature reply command is returned including the created digital signature.
[0041]
That is, in the digital signature system according to the present invention, the command and response shown in FIG. 4 are exchanged between the message processing device 100 and the signature creation device 200 shown in FIG. First, a signature creation command as shown in FIG. 4A is given from the message processing device 100 to the signature creation device 200. In this example, the signature creation command is composed of a head part composed of a command code “MAKE” and a main body part composed of message data M of a character string “I order a complete encyclopedia”. . The information communication unit 210 that has received such a signature creation command gives the message data M part to the signature creation unit 230 to create a digital signature D. As described above, the signature creation unit 230 performs an operation based on a predetermined algorithm for the message data M and the secret data H in the secret data storage unit 220, and generates a digital signature D such as “456789”, for example. A process of creating and writing this in the signature storage unit 240 is performed. On the other hand, the information communication unit 210 returns a response to the given signature creation command to the message processing apparatus 100. The response is created by the signature creation unit 230 and written in the signature storage unit 240. The digital signature D “456789” is not included. Specifically, for example, a process of returning a response as shown in FIG. This response is a response consisting only of the main body part having the status code “OK”, and there is no subsequent part. Eventually, this response is information indicating only that the given signature creation command has been executed without any problem. In other words, even if a signature creation command as shown in FIG. 4A is given, the created digital signature D “456789” is not returned as a response to the signature creation command.
[0042]
In the present invention, in order to obtain the created digital signature D, it is necessary to give a signature reply command as shown in FIG. 4C from the message processing device 100 to the signature creation device 200. In this example, the signature reply command is composed only of the finding part consisting of the command code “BACK”, and there is no main part. Upon receiving such a signature reply command, the information communication unit 210 reads the digital signature D “456789” stored in the signature storage unit 240 and sends a response including the digital signature D to the message processing apparatus 100. Process to reply. Specifically, this response is, for example, a response as shown in FIG. This response is a response obtained by adding the subsequent part “456789” to the main body part having the status code “OK”, indicating that the given signature reply command has been executed without any problem, and is a reply target. This is information indicating that the digital signature D is “456789”. In other words, the signature reply command shown in FIG. 4C is a command for requesting a reply of the digital signature D created by the signature creation command shown in FIG. 4A given in the past. If a signature reply command is given but the digital signature D is not stored in the signature storage unit 240 (that is, the signature reply command is given in the state where the signature creation command is not given). In this case, a response in which a status indicating an error is written in the main body is returned to the signature reply command.
[0043]
After all, in the digital signature system according to the present invention, in order to obtain the digital signature D for the predetermined message data M, the following processing is performed in the message processing device 100 and the signature creation device 200, respectively. Here, for convenience of explanation, the processing on the message processing device 100 side is referred to as “active processing”, and the processing on the signature creation device 200 side is referred to as “passive processing”.
[0044]
First, the following processing is performed on the message processing apparatus 100 side. First, a first active process for transmitting a “signature creation command” including predetermined message data M to be a digital signature to the signature creation apparatus 200 and receiving a response returned in response thereto is performed. Done. In other words, this first active process is a process for transmitting a signature creation command as shown in FIG. 4A and receiving a response as shown in FIG. become. Subsequently, a “signature reply command” for requesting a reply of the digital signature is transmitted to the signature creation apparatus 200, a response returned in response to the response is received, and the digital included in the received response is received. A second active process for retrieving the signature is performed. That is, the second active process transmits a signature reply command as shown in FIG. 4 (c), receives a response as shown in FIG. That is, a process of extracting the digital signature D “456789” included in.
[0045]
Of course, the first active process and the second active process do not necessarily need to be executed continuously, and another process (some command is sent from the message processing apparatus 100 side between the two processes). In response to this, a process for receiving a response may be executed. In addition, the command transmission work to the signature creation apparatus 200 is not performed based on a user's direct instruction, but based on an instruction of a program executed on the computer 110 constituting the message processing apparatus 100. It will be. Therefore, the procedure of the first active process and the second active process described above is described in a program executed on the computer 110.
[0046]
On the other hand, each time an individual command is given, the signature creating apparatus 200 side executes a predetermined process according to the content of the command and executes a process of returning a predetermined response. Specifically, first, when the above-mentioned “signature creation command” is transmitted, an operation based on a predetermined algorithm using the secret data H is internally performed on the message data M included in the command. Execute the process for creating the digital signature D for personal authentication for the message data M, store the created digital signature D therein, and create the message as a response according to the “signature creation command” A first passive process for returning a predetermined response not including the digital signature D for the data M is performed. That is, the first passive processing is performed by the message processing apparatus 100 to the information communication unit 210 as “signature creation including predetermined message data M to be digitally signed as shown in FIG. When the “command” is transmitted, the message data M is given to the signature creation unit 230 to execute the signature creation process, and the created message data M is sent as a response according to the “signature creation command”. For example, a predetermined response as shown in FIG. 4B is returned to the message processing apparatus 100 without including the digital signature D.
[0047]
When the above-mentioned “signature reply command” is transmitted, a second passive process for returning a predetermined response including the stored digital signature D as a response corresponding to the “signature reply command” is performed. Is called. That is, in the second passive processing, a “signature reply command” for requesting a digital signature reply as shown in FIG. 4C is transmitted from the message processing apparatus 100 to the information communication unit 210. When the message processing apparatus 100 receives a predetermined response as shown in FIG. 4D, for example, including the digital signature D stored in the signature storage unit 240 as a response to the “signature reply command”. It will be processing to reply to. As described above, if the digital signature D to be returned is not stored in the signature storage unit 240 even though the “signature reply command” has been transmitted, a response indicating an error. Will be replied.
[0048]
Of course, the first passive processing and the second passive processing are actually executed by the CPU in the IC card constituting the signature creation apparatus 200 based on a program stored in advance in ROM, EEPROM, or the like. It is processing to do. Therefore, the procedure of the first passive process and the second passive process described above is described in a program executed on this IC card.
[0049]
§2. Practical embodiments of the present invention
Although the basic embodiment of the present invention has been described above, a more practical embodiment is shown here.
[0050]
A feature of the present invention is that the message processing apparatus 100 receives a signature creation command for transferring the message data M from the message processing apparatus 100 side to the signature creation apparatus 200 side and instructing signature creation, and a digital signature D created on the signature creation apparatus 200 side. Separately from the signature reply command instructing the reply to the 100 side as a response, both the message data M and the corresponding digital signature D are included in the information exchanged by one command / response communication. Is to avoid the inclusion of security, and to improve security against attacks such as communication interception. That is, in the conventional digital signature system, as shown in FIG. 3, both the message data M and the corresponding digital signature D are included in the information exchanged by one command / response communication. On the other hand, in the digital signature system of the present invention, message data is included in information exchanged by a single command / response communication as shown in FIGS. 4 (a) and 4 (b). Only M is included, and only the digital signature D is included in the information exchanged by one command / response communication as shown in FIGS. 4 (c) and 4 (d). Absent. For this reason, even if the contents of individual command / response pairs are analyzed by unauthorized means such as communication interception, the pair of message data M and digital signature D is difficult to be exposed, and a signature must be created. Command code (“MAKE” in the example of FIG. 4) and a command code requesting a signature reply (“BACK” in the example of FIG. 4) are not easily exposed.
[0051]
As described above, the security improvement effect according to the present invention is that the timing for transmitting the signature creation command (timing for executing the first active process) and the timing for transmitting the signature reply command (timing for executing the second active process). ). In practical use, the greater the distance between these two timings, the greater the effect of improving security. Of course, the timing of the first active processing and the timing of the second active processing performed on the message processing device 100 side are all determined by a program operating on the computer 110 constituting the message processing device 100. Therefore, in the following, an example of the timing at which the first active process and the second active process should be executed in relation to a program running on the computer 110 will be shown.
[0052]
As described above, the computer 110 has a function of preparing message data M to be digitally signed, and such message data M is usually input by the user who performs the signature from the keyboard or the like. become. Therefore, the computer 110 has a function of performing message input processing for inputting the message data M to be digitally signed. In addition, the act of “digital signature” is usually performed in conjunction with legally meaningful acts such as the conclusion of purchase contracts for goods, and the user who performs the signature before performing “digital signature” It is preferable that the user inputs an input for confirming the signature of the message data M. Therefore, the computer 110 normally has a function of performing a signature confirmation input process (for example, a process for causing the user to click a signature button or the like).
[0053]
In the embodiment described here, there is a program for executing the first active process and the second active process by using the above-described input processing functions. That is, there is a program that executes the first active process when the message input process by the user is completed, and executes the second active process when the signature confirmation input process is completed. Specifically, an input field for inputting the message data M is displayed on the display screen, and it is determined that the message input process has been completed when an instruction to complete the input operation to the input field is given. Then, the first active process is executed, and a confirmation button for confirming the intention of signature is made operable on the display screen, and when the confirmation button is operated, the signature confirmation input process is completed. It can be determined that the second active process is executed.
[0054]
Let me explain this more concretely. For example, consider a case where a window as shown in FIG. 5 is displayed on the display screen of the computer 110. This window is a window for transmitting a signed document to a predetermined site via the Internet. On this window, a user inputs a message input process for inputting message data M to be transmitted and a signature confirmation input. Processing. The message input process is performed by inputting a predetermined character string in each of the three input fields I1, I2, and I3. In the example shown in the figure, the character string “Shinjuku-ku, Tokyo” has already been entered in the input field I1 where the address is to be entered, and the character “Taro Tokkyo” is entered in the input field I2 where the name is to be entered. The column has already been input, and a state where up to a character string “Encyclopedia encyclopedia” is input is shown in the input field I3 into which the content is to be input. Such an input operation is executed by operating a keyboard, a mouse, or the like. In this example, a “signature” button B1 and a “cancel” button B2 are displayed below the button. The button B1 is a confirmation button for confirming the intention of the digital signature, but at this point, it is not yet operable. That is, it is drawn with a broken line in the figure, and the button B1 is in a state where it does not react even if it is clicked. On the other hand, the button B2 is always operable. The user can cancel the procedure for sending the signed document by clicking this button B2.
[0055]
Now, when the user completes the input of the entire sentence “I want to order a complete encyclopedia” in the input field I3 and presses the Enter key or Tab key to complete the input, the three input fields I1, An instruction to the effect that the input operation for all of I2 and I3 has been completed is given. In this embodiment, the first active process is performed at this timing. That is, when the input operation for all the three input fields I1, I2, and I3 is completed, the input processing of the message data M to be signed is completed. At this time, the reader / writer device 120 is transferred from the computer 110 to the reader / writer device 120. The signature creation command as shown in FIG. 4 (a) is sent to the signature creation apparatus 200 side through the above (however, the main body part is “Shinjuku-ku, Tokyo / Taro Patent / Encyclopedia complete set.” In response to this, a response as shown in FIG. 4B is obtained. At this point, the button B1 becomes operable, and the window display is as shown in FIG. In other words, when the computer 110 determines that the input process of the message data M to be signed is completed, the computer 110 executes the first active process and presses the confirmation button B1 for confirming the signature intention on the display screen. Processing to make the operation ready is executed.
[0056]
Of course, the user cannot recognize that processing such as command transmission and response reception is being performed. Therefore, from the user's point of view, when the input of the character string into the input field I3 is completed (for example, when the Enter key or Tab key is input), the display of the button B1 changes as shown in FIG. It will be recognized that the clickable state has been reached. Here, the button B1 in the operable state requires the user to confirm the intention of the digital signature. When the user clicks the button B1, the final confirmation of the digital signature is confirmed. It will be. However, in practice, when the window display is in the state as shown in FIG. 6, the digital signature D for the message data M is already obtained by calculation in the signature creating apparatus 200 and stored in the signature storage unit 240. Will be stored.
[0057]
When the user clicks the button B1 shown in FIG. 6, it is determined that the operation for the confirmation button for confirming the intention of signature has been performed, and that the signature confirmation input process has been completed. In this embodiment, the second active process is performed at this timing. That is, when the signature confirmation input process is completed, a signature reply command as shown in FIG. 4 (c) is transmitted from the computer 110 to the signature creating apparatus 200 via the reader / writer apparatus 120. A response as shown in FIG. 4 (d) is obtained. Thus, since the message data M and the digital signature D corresponding to the message data M are prepared in the computer 110, processing for transmitting them to a predetermined site is performed.
[0058]
In this way, the input field for inputting the message data M is displayed on the display screen, and when the instruction to complete the input operation to the input field is given, it is determined that the message input process has been completed. The first active process is executed, and the confirmation button for confirming the intention of the signature is made operable on the display screen, and when the confirmation button is operated, the signature confirmation input process is completed. If it is determined that the second active process is executed, the first active operation is automatically performed only by the user himself / herself through a series of procedures from the input of the message data M to the signature confirmation. The timing of the process and the second active process will be instructed. The time from the timing of the first active processing instructed in this way to the timing of the second active processing is very long compared to the machine cycle of the CPU, and each timing is randomly determined by the user's own input operation. Therefore, higher security is secured against unauthorized attacks. That is, a sufficient time can be secured between the timing when the signature creation command shown in FIG. 4 (a) is given and the timing when the signature reply command shown in FIG. 4 (c) is given. It will be a random time due to.
[0059]
In order to further improve security, after the signature creation command shown in FIG. 4 (a) and the response shown in FIG. 4 (b) are sent back, the signature reply command shown in FIG. It is preferable that another command / response pair is inserted before the response of 4 (d) is returned. That is, after performing command transmission and response reception as the first active process, and before performing command transmission and response reception as the second active process, the first active process and the second active process If irrelevant command transmission and response reception are performed once or multiple times, the message data M included in the signature creation command in FIG. 4 (a) and the response to the signature reply command in FIG. 4 (d) are included. Since an irrelevant command / response is inserted between the digital signature D and the digital signature D, the correspondence between the message data M and the digital signature D is more difficult to grasp.
[0060]
When the signature creation command in FIG. 4 (a) is sent and the response in FIG. 4 (b) is sent back, the signature reply command in FIG. 4 (c) is sent and the response in FIG. 4 (d) is sent back. If the time interval from the point in time is some distance away, some system may automatically insert some other meaningful command / response pair. However, in practice, after the command transmission as the first active process and the response return as the first passive process are performed between the message processing apparatus 100 and the signature processing apparatus 200, there is essentially no meaning. It is preferable to send a dummy command and return a dummy response.
[0061]
In addition, the “response to the signature creation command” shown in FIG. 4B does not have a connection part. However, in practice, the “response to the signature creation command” sent back as the first passive process is created in the “response to the signature creation command”. It is preferable to include a dummy digital signature unrelated to the digital signature. Similarly, the “signature reply command” shown in FIG. 4 (c) has no main body, but in practice, the “signature reply command” transmitted as the second active process is subject to a digital signature. It is preferable that dummy message data unrelated to the message data to be included is included.
[0062]
FIG. 7 is a diagram illustrating an example of command / response exchange between the message processing apparatus 100 and the signature creation apparatus 200 including such a dummy command, dummy response, dummy digital signature, and dummy message data. First, {circle around (1)} signature creation command is a legitimate command and is a command indicating an instruction to create a digital signature for message data M. As described above, the signature creation unit 230 performs the process of creating the digital signature D and writing it in the signature storage unit 240 by this command. The subsequent response to (2) signature creation command is a regular response to the command (1). However, a dummy digital signature D “123789” is included in this response.*It is included. As described above, the response to the command {circle around (1)} only needs to include status information “OK” indicating that the command has been executed without any problem, and this response includes the created digital signature. The point that D “456789” is not included is an important point of the present invention. However, in this response, a completely different dummy digital signature D is used instead of the original digital signature D “456789”.*The inclusion of “123789” is useful for deceiving an analysis of an unauthorized access person when an unauthorized access person is attacked.
[0063]
In addition, (3) dummy command (part 1), (4) dummy response (part 1), (5) dummy command (part 2), and (6) dummy response (part 2) are all meaningful legitimate. It is not a command / response but a dummy command / response that has no meaning. By inserting a number of such dummy command / response pairs, the analysis of the unauthorized access person can be further deceived.
[0064]
The following (7) signature reply command is a legitimate command and is a command indicating an instruction to reply a digital signature created in the past. In response to this command, the response including the digital signature D “456789” stored in the signature storage unit 240 is returned as a response to the {8} signature reply command, as already described. However, in the (7) signature reply command shown in the figure, dummy message data M “Tomorrow's weather will be fine.”*It is included. As described above, it is not necessary to attach the message data M to the signature reply command, and it is an important point of the present invention that the message data M is not included in the command. However, instead of the original message data M, “I will order a complete encyclopedia.” For this command, dummy message data M with completely different contents “Tomorrow ’s weather will be sunny.”*It is useful to confuse the analysis of unauthorized users.
[0065]
In fact, an unauthorized accessor who obtained a series of command / response pairs as shown in FIG. 7 by unauthorized means such as communication interception, the message data “I will order a complete encyclopedia” and the digital signature “123789” The combination of the message data “Spring, Summer, Fall and Winter” and the digital signature “123123”, the message data “Children” and the digital signature “456456”, “Tomorrow ’s weather will be sunny. 4 combinations of inaccurate message data and a digital signature of “456789” are acquired, and the secret data H cannot be estimated even if an analysis based on these combinations is performed.
[0066]
By the way, when a signature creation command is given to the signature storage unit 240 in the IC card, the digital signature D created by the signature creation unit 230 is written, but in practice, the signature is written at a predetermined timing. It is preferable to perform an erasure process for erasing the digital signature D stored in the storage unit 240. The erasure process can be performed after the second passive process based on the signature reply command, for example. That is, since the digital signature D stored in the signature storage unit 240 is read by the signature reply command and returned as a response, it is no longer necessary to store the digital signature D. At this time, The digital signature D may be erased. Of course, depending on the program prepared on the computer 110 side, it is possible to adopt a usage form in which the digital signature D created by one signature creation command is repeatedly returned by a plurality of signature reply commands. Although possible, such a usage pattern is a special usage pattern. Normally, the digital signature D created by a single signature creation command is returned and used only by a single signature reply command, so it is the most natural method to delete it when the reply is completed. It is.
[0067]
Alternatively, when the reply is completed, the previous “signature creation” is performed when the newly created digital signature is stored by the first passive process based on the new “signature creation command” without performing the erasure process yet. The digital signature created and stored by the first passive process based on the “command” may be deleted. In this case, the digital signature D created by the previous “signature creation command” remains in the signature storage unit 240 until a new “signature creation command” is given.
[0068]
In the embodiment shown here, an EEPROM in an IC card is used as the signature storage unit 240. When such a non-volatile memory is used as the signature storage unit 240, the signature creation device 200 (IC card) is disconnected from the message processing device 100 (reader / writer device 120), and the user carries the signature creation device 200 alone. Even in this state, the digital signature D is still stored in the signature storage unit 240. In other words, power supply to the IC card is normally performed from the reader / writer device side. Therefore, when the IC card is disconnected from the reader / writer device, the power supply to the IC card is cut off. Therefore, the contents stored in the volatile memory such as the RAM in the IC card are lost when the IC card is disconnected from the reader / writer device. However, the contents stored in a nonvolatile memory such as an EEPROM are maintained as they are even after the power supply is cut off. Therefore, if the IC card is connected again to the reader / writer device and the power supply is started, the digital signature D remaining in the EEPROM can be read. Such a situation is not preferable from the viewpoint of security. For example, when a legitimate user loses an IC card being carried and an unauthorized accessor who has picked up the IC card attempts to access it using the reader / writer device 120 originally developed, the digital signature D remaining in the EEPROM is stored. May be read out.
[0069]
As a security measure against such an unauthorized attack, when the power supply to the IC card (signature generation apparatus 200) is shut off and the power supply is started again, the power supply is cut off based on the “signature reply command”. When the reply process for the digital signature stored in the nonvolatile memory is performed, the reply process may be executed on condition that the access right is authenticated. Alternatively, when the “signature reply command” is given prior to the “signature creation command” when the power supply to the IC card (signature creation apparatus 200) is shut off and the power supply is started again, the non-volatile A response indicating an error may be returned without executing the reply process for the digital signature stored in the memory. In any case, it is possible to prevent an unauthorized accesser who has picked up an IC card from reading out a legitimate digital signature D remaining in the EEPROM by an unauthorized method.
[0070]
As described above, it is not preferable in terms of security that the regular digital signature D is continuously stored in the signature storage unit 240 for a long time. Therefore, practically, after receiving the “signature creation command”, if the “signature reply command” is not received before the “predetermined specific event” occurs, the “signature creation command” It is preferable to program the IC card so that the process of deleting the digital signature created based on the above and stored in the signature storage unit 240 is executed.
[0071]
For example, “determining that a predetermined time has elapsed since receiving a signature creation command” is defined as a specific event, and when a predetermined time has elapsed, the digital signature stored so far is deleted. can do. Specifically, for example, “one minute has elapsed after receiving the signature creation command” is defined as a specific event, and when one minute has elapsed, the digital signature D stored in the signature storage unit 240 is deleted. What is necessary is just to perform the process to perform. Of course, when such a setting is made on the IC card side, the signature reply command is not transmitted to the program on the computer 110 side, for example, even if one minute has passed since the signature creation command was transmitted. In such a case, it is necessary to consider such as sending a signature creation command again.
[0072]
Also, after receiving the “signature creation command”, receiving a new “signature creation command” without receiving a “signature reply command” is defined as a specific event, and a new “signature creation command” is received. Sometimes, the digital signature stored so far may be erased. Alternatively, the fact that the power supply to the IC card (signature processing apparatus 200) is cut off is determined as a specific event, and the digital signature stored so far can be stored when preparations for cutting off the power supply are made. An erasing process may be performed. Specifically, when a preparation process for separating the IC card from the reader / writer device 120 (for example, an eject operation on the reader / writer device 120) is performed, a process of deleting the digital signature in the EEPROM is performed. Just keep it.
[0073]
As mentioned above, although this invention was demonstrated based on some embodiment shown in figure, this invention is not limited to these embodiment, In addition, it can implement with a various form. For example, in the above-described embodiment, a method using a hash function as an algorithm for obtaining a digital signature has been described. However, an algorithm for digital signature creation performed in the signature creation apparatus 200 is limited to a method using a hash function. Rather, in short, any algorithm may be used as long as some uniquely determined data is obtained based on the secret data H in the secret data storage unit 220 and the given message data M. In the above-described embodiment, an example is shown in which an IC card is used as the signature creation apparatus 200. However, the signature creation apparatus 200 does not necessarily have to be configured with an IC card, and stores secret data H with sufficient security. Any information processing apparatus may be used as long as the information processing apparatus has a function of performing an operation for creating a digital signature internally and is separate from the message processing apparatus 100. The “digital signature” in the present invention is not limited to data created by encryption using a so-called public key cryptosystem. For example, a “message authentication code ( Message authentication code (MAC) ”and the like, and the present invention can be applied to a system for creating a message authentication code defined in ISO / IEC 9797, JIS X5055, HMAC: RFC2104, and the like. is there.
[0074]
【The invention's effect】
As described above, according to the present invention, it is possible to reduce the probability that the correspondence between message data that is the subject of a digital signature and the digital signature for this will be intercepted in an unauthorized manner, thereby further improving security. Digital signature system can be realized.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a basic configuration of a digital signature system according to an embodiment of the present invention.
FIG. 2 is a diagram showing specific examples of message data M, secret data H, and digital signature D used in a general digital signature system.
FIG. 3 is a diagram illustrating an example of a command / response used to obtain a digital signature in a conventional digital signature system.
FIG. 4 is a diagram showing an example of a command / response used for obtaining a digital signature in the digital signature system according to the present invention.
FIG. 5 is a diagram showing an example of a display window for performing input work of message data to be a digital signature in the digital signature system according to the present invention.
FIG. 6 is a diagram showing an example of a display window for performing an input operation of digital signature intention confirmation in the digital signature system according to the present invention.
FIG. 7 is a diagram showing a more practical example of a command / response used for obtaining a digital signature in the digital signature system according to the present invention.
[Explanation of symbols]
100: Message processing device
110: Computer
120: Reader / writer device
200 ... Signature creation device
210: Information communication unit
220: Secret data storage unit
230 ... Signature generator
240: Signature storage unit
B1, B2 ... button
D ... Digital signature
D*... Dummy digital signature
H ... Secret data
I1, I2, I3 ... Input fields
M: Message data
M*... Dummy message data

Claims (18)

所定のメッセージデータに対して個人認証用のデジタル署名を作成するためのシステムであって、
内部に個人用の秘密データを記憶し、与えられたメッセージデータに対して前記秘密データを利用した所定のアルゴリズムに基づく演算を内部で実行することにより、当該メッセージデータに対する個人認証用のデジタル署名を作成する機能をもった署名作成装置と、
前記署名作成装置に接続することができ、デジタル署名の対象となる所定のメッセージデータを用意する機能と、用意したメッセージデータを前記署名処理装置に送信する機能と、前記署名処理装置の内部で作成されたデジタル署名を受信する機能と、を有するメッセージ処理装置と、
を備え、
前記署名作成装置と前記メッセージ処理装置との間の情報のやりとりは、前記メッセージ処理装置から前記署名作成装置に対して所定のコマンドを送信する送信処理と、前記署名作成装置から前記メッセージ処理装置に対してコマンドに応じたレスポンスを返信する返信処理と、を実行することによりなされるように構成されており、
前記メッセージ処理装置は、デジタル署名の対象となる所定のメッセージデータを含んだ「署名作成コマンド」を前記署名作成装置に対して送信し、これに応じて前記署名作成装置から返信されてくるレスポンスを受信する第1の能動処理と、デジタル署名の返信を要求するための「署名返信コマンド」を前記署名作成装置に対して送信し、これに応じて前記署名作成装置から返信されてくるレスポンスを受信し、受信したレスポンスに含まれているデジタル署名を取り出す第2の能動処理と、前記第1の能動処理としてのコマンド送信およびレスポンス受信を行った後、前記第2の能動処理としてのコマンド送信およびレスポンス受信を行うまでの間に、本来は意味のない「ダミーコマンド」を前記署名作成装置に対して送信し、これに応じて前記署名作成装置から返信されてくるレスポンスを受信するダミー能動処理と、を行う機能を有し、
前記署名作成装置は、前記「署名作成コマンド」が送信されてきたときに、当該コマンドに含まれているメッセージデータに対して前記秘密データを利用した前記所定のアルゴリズムに基づく演算を内部で実行することにより、当該メッセージデータに対する個人認証用のデジタル署名を作成する処理を実行し、作成したデジタル署名を内部に記憶し、当該「署名作成コマンド」に応じたレスポンスとして、前記作成したデジタル署名を含まない所定のレスポンスを返信する第1の受動処理と、前記「署名返信コマンド」が送信されてきたときに、当該「署名返信コマンド」に応じたレスポンスとして、記憶されていたデジタル署名を含む所定のレスポンスを返信する第2の受動処理と、前記「ダミーコマンド」が送信されてきたときに、当該「ダミーコマンド」に応じたレスポンスとして、本来は意味のない「ダミーレスポンス」を返信するダミー受動処理と、を行う機能を有することを特徴とするデジタル署名システム。
A system for creating a digital signature for personal authentication for predetermined message data,
Personal secret data for personal use is stored therein, and a digital signature for personal authentication is applied to the message data by executing an operation based on a predetermined algorithm using the secret data for the given message data. A signature creation device with a function to create;
A function that can be connected to the signature creation device and prepares predetermined message data to be digitally signed, a function that transmits the prepared message data to the signature processing device, and creation inside the signature processing device A message processing device having a function of receiving the digital signature
With
Information exchange between the signature creation device and the message processing device includes transmission processing for transmitting a predetermined command from the message processing device to the signature creation device, and from the signature creation device to the message processing device. In response to the command, a response process that returns a response is performed.
The message processing device transmits a “signature creation command” including predetermined message data to be digitally signed to the signature creation device, and in response thereto, a response returned from the signature creation device. The first active process to be received and a “signature reply command” for requesting a digital signature reply are transmitted to the signature creation apparatus, and a response returned from the signature creation apparatus is received accordingly. Then, after performing a second active process for extracting a digital signature included in the received response, a command transmission as the first active process and a response reception, a command transmission as the second active process and Until the response is received, a “dummy command”, which is essentially meaningless, is sent to the signature creation device and responds accordingly. Has a function to perform a dummy active process, the receiving a response returned from the signature generation apparatus Te,
When the “signature creation command” is transmitted, the signature creation device internally performs an operation based on the predetermined algorithm using the secret data for the message data included in the command Thus, a process for creating a digital signature for personal authentication for the message data is executed, the created digital signature is stored therein, and the created digital signature is included as a response according to the “signature creation command”. A first passive process that returns a predetermined response and a predetermined signature including a digital signature stored as a response corresponding to the “signature reply command” when the “signature reply command” is transmitted. when the second passive processing of transmitting the response, the "dummy command" is transmitted, those Digital signature system, characterized in that as a response corresponding to the "dummy command", originally having a function of a dummy passive processing of transmitting the "dummy response" meaningless, the.
請求項1に記載のデジタル署名システムにおいて、
ICカードを署名作成装置として用い、当該ICカードにアクセスする機能をもったリーダライタ装置およびこのリーダライタ装置を制御するためのコンピュータをメッセージ処理装置として用いたことを特徴とするデジタル署名システム。
The digital signature system of claim 1, wherein
A digital signature system using an IC card as a signature creation device, a reader / writer device having a function of accessing the IC card, and a computer for controlling the reader / writer device as a message processing device.
請求項1または2に記載のデジタル署名システムにおいて、
メッセージ処理装置が、署名を行う個人に、デジタル署名の対象となるメッセージデータを入力させるメッセージ入力処理と、当該個人に、前記メッセージデータに対する署名の意思確認のための入力を行わせる署名確認入力処理と、を行う機能を有し、前記メッセージ入力処理が完了した時点で第1の能動処理を実行し、前記署名確認入力処理が完了した時点で第2の能動処理を実行し、前記メッセージ入力処理の完了時から前記署名確認入力処理の完了時までの期間に、「ダミーコマンド」を送信する処理を1回もしくは複数回行うことを特徴とするデジタル署名システム。
The digital signature system according to claim 1 or 2,
A message input process in which a message processing apparatus causes a person who performs a signature to input message data to be digitally signed, and a signature confirmation input process in which the individual performs input for confirming the signature of the message data. If has a function to perform, the message input process executes the first active treatment at the time of completion, perform the second active treatment at the time of the signature confirmation input process is completed, the message input processing A digital signature system, wherein a process of transmitting a “dummy command” is performed once or a plurality of times during a period from the completion of the signature to the completion of the signature confirmation input process .
請求項3に記載のデジタル署名システムにおいて、
メッセージ処理装置が、ディスプレイ画面上にメッセージデータを入力するための入力欄を表示し、当該入力欄への入力操作が完了する指示が与えられた時点で、メッセージ入力処理が完了したものと判断して第1の能動処理を実行するとともに、前記ディスプレイ画面上において署名の意思確認のための確認ボタンを操作可能状態とし、前記確認ボタンに対する操作が行われた時点で、署名確認入力処理が完了したものと判断して第2の能動処理を実行することを特徴とするデジタル署名システム。
The digital signature system according to claim 3.
When the message processing device displays an input field for inputting message data on the display screen and an instruction to complete the input operation to the input field is given, it is determined that the message input process has been completed. The first active process is executed, the confirmation button for confirming the intention of signature on the display screen is made operable, and the signature confirmation input process is completed when the confirmation button is operated. A digital signature system characterized in that the second active process is executed based on the judgment.
請求項1〜4のいずれかに記載のデジタル署名システムにおいて、The digital signature system according to any one of claims 1 to 4,
メッセージ処理装置が、第2の能動処理として送信する「署名返信コマンド」に、デジタル署名の対象となるメッセージデータとは無関係なダミーメッセージデータを含ませることを特徴とするデジタル署名システム。  A digital signature system characterized in that dummy message data unrelated to message data to be digitally signed is included in a “signature reply command” transmitted as a second active process by a message processing apparatus.
請求項1〜5のいずれかに記載のデジタル署名システムにおいて、The digital signature system according to any one of claims 1 to 5,
署名作成装置が、第1の受動処理として返信する「署名作成コマンドに応じたレスポンス」に、作成したデジタル署名とは無関係なダミーデジタル署名を含ませることを特徴とするデジタル署名システム。  A digital signature system characterized in that a dummy digital signature unrelated to a created digital signature is included in a “response according to a signature creation command” returned as a first passive process by a signature creation device.
請求項1〜6のいずれかに記載のデジタル署名システムにおいて、The digital signature system according to any one of claims 1 to 6,
署名作成装置が、「署名返信コマンド」に基づく第2の受動処理を行った後に、これまで記憶されていたデジタル署名の消去処理を行うことを特徴とするデジタル署名システム。  A digital signature system, wherein the signature creation apparatus performs a second passive process based on a “signature reply command” and then erases the digital signature stored so far.
請求項1〜6のいずれかに記載のデジタル署名システムにおいて、The digital signature system according to any one of claims 1 to 6,
署名作成装置が、新たな「署名作成コマンド」に基づく第1の受動処理により作成された新たなデジタル署名を記憶するときに、前回の「署名作成コマンド」に基づく第1の受動処理により作成されて記憶されていたデジタル署名を消去する処理を実行することを特徴とするデジタル署名システム。  When the signature creation device stores a new digital signature created by the first passive processing based on the new “signature creation command”, the signature creation device is created by the first passive processing based on the previous “signature creation command”. A digital signature system that executes a process of erasing a digital signature stored in the memory.
請求項1〜6のいずれかに記載のデジタル署名システムにおいて、The digital signature system according to any one of claims 1 to 6,
署名作成装置内に不揮発性メモリを設け、「署名作成コマンド」に基づいて作成したデジタル署名が前記不揮発性メモリに記憶されるようにし、  A non-volatile memory is provided in the signature creation device, and a digital signature created based on the “signature creation command” is stored in the non-volatile memory,
署名作成装置に対する電源供給が遮断され、再び電源供給が開始されたときに、「署名返信コマンド」に基づいて、電源供給遮断前に前記不揮発性メモリに記憶されていたデジタル署名についての返信処理を行う際には、アクセス権の認証が行われることを条件として当該返信処理が実行されるようにしたことを特徴とするデジタル署名システム。  When the power supply to the signature creation device is cut off and the power supply is started again, a reply process for the digital signature stored in the nonvolatile memory before the power supply cut-off is performed based on the “signature reply command”. A digital signature system characterized in that the reply process is executed on condition that the access right is authenticated.
請求項1〜6のいずれかに記載のデジタル署名システムにおいて、The digital signature system according to any one of claims 1 to 6,
署名作成装置内に不揮発性メモリを設け、「署名作成コマンド」に基づいて作成したデジタル署名が前記不揮発性メモリに記憶されるようにし、  A non-volatile memory is provided in the signature creation device, and a digital signature created based on the “signature creation command” is stored in the non-volatile memory,
署名作成装置に対する電源供給が遮断され、再び電源供給が開始されたときに、「署名作成コマンド」に先んじて「署名返信コマンド」が与えられた場合には、前記不揮発性メモリに記憶されていたデジタル署名ついての返信処理を実行せずに、エラーを示すレスポンスが返信されるようにしたことを特徴とするデジタル署名システム。  When the power supply to the signature creation device is cut off and the power supply is started again, if the “signature reply command” is given prior to the “signature creation command”, it is stored in the nonvolatile memory. A digital signature system characterized in that a response indicating an error is returned without executing a reply process for a digital signature.
請求項1〜6のいずれかに記載のデジタル署名システムにおいて、The digital signature system according to any one of claims 1 to 6,
署名作成装置が、「署名作成コマンド」を受け取った後、予め定められた特定のイベントが発生するまでの間に「署名返信コマンド」を受け取らなかった場合には、前記「署名作成コマンド」に基づいて作成されて記憶されていたデジタル署名を消去する処理を実行することを特徴とするデジタル署名システム。  If the signature creation device does not receive a “signature reply command” after receiving a “signature creation command” and before a specific event occurs in advance, it is based on the “signature creation command”. A digital signature system that executes a process of deleting a digital signature that has been created and stored.
請求項11に記載のデジタル署名システムにおいて、The digital signature system of claim 11, wherein
「署名作成コマンド」を受け取ってから所定の時間が経過すること、を特定のイベントとして定め、所定の時間が経過したときに、これまで記憶されていたデジタル署名の消去処理が行われるようにしたことを特徴とするデジタル署名システム。  A specific event is defined as the elapse of a predetermined time after receiving the “signature creation command”, and when the predetermined time elapses, the stored digital signature is deleted. A digital signature system characterized by that.
請求項11に記載のデジタル署名システムにおいて、The digital signature system of claim 11, wherein
「署名作成コマンド」を受け取ってから、「署名返信コマンド」を受け取ることなしに新たな「署名作成コマンド」を受け取ること、を特定のイベントとして定め、前記新たな「署名作成コマンド」を受け取ったときに、これまで記憶されていたデジタル署名の消去  When receiving a new “signature creation command” after receiving a “signature creation command” and receiving a new “signature creation command” without receiving a “signature reply command” And erase the digital signature that was previously stored 処理が行われるようにしたことを特徴とするデジタル署名システム。A digital signature system characterized in that processing is performed.
請求項11に記載のデジタル署名システムにおいて、The digital signature system of claim 11, wherein
署名作成装置に対する電源供給が遮断されること、を特定のイベントとして定め、前記電源供給の遮断のための準備が行われた時点で、これまで記憶されていたデジタル署名の消去処理が行われるようにしたことを特徴とするデジタル署名システム。  It is determined that the power supply to the signature creation device is cut off as a specific event, and the stored digital signature is erased when the preparation for the power supply cut-off is made. A digital signature system characterized by
請求項1〜14のいずれかに記載のデジタル署名システムにおいて、The digital signature system according to any one of claims 1 to 14,
署名作成装置に対して「署名返信コマンド」が与えられたにも拘らず、返信対象となるデジタル署名が記憶されていない場合には、エラーを示すレスポンスが返信されるようにしたことを特徴とするデジタル署名システム。  A response indicating an error is returned when a digital signature to be returned is not stored even though a “signature reply command” is given to the signature creation device. Digital signature system.
所定のメッセージデータに対して個人認証用のデジタル署名を作成する機能をもった署名作成装置であって、A signature creation device having a function of creating a digital signature for personal authentication for predetermined message data,
個人用の秘密データを記憶するための秘密データ記憶部と、  A secret data storage unit for storing private secret data;
外部に接続されたメッセージ処理装置との間で情報のやりとりを行う情報通信部と、  An information communication unit for exchanging information with an externally connected message processing device;
与えられたメッセージデータに対して前記秘密データを利用した所定のアルゴリズムに基づく演算を実行することにより、当該メッセージデータに対する個人認証用のデジタル署名を作成する署名作成部と、  A signature creation unit that creates a digital signature for personal authentication of the message data by performing an operation based on a predetermined algorithm using the secret data for given message data;
作成したデジタル署名を記憶する署名記憶部と、  A signature storage unit for storing the created digital signature;
を備え、  With
前記情報通信部は、前記メッセージ処理装置から、デジタル署名の対象となる所定のメッセージデータを含んだ「署名作成コマンド」が送信されてきた場合には、当該メッセージデータを前記署名作成部に与えて署名の作成処理を実行させるとともに、当該「署名作成コマンド」に応じたレスポンスとして、作成された当該メッセージデータについてのデジタル署名を含まない所定のレスポンスを前記メッセージ処理装置へ返信する第1の処理と、前記メッセージ処理装置から、デジタル署名の返信を要求するための「署名返信コマンド」が送信されてきた場合には、当該「署名返信コマンド」に応じたレスポンスとして、前記署名記憶部に記憶されていた前記デジタル署名を含む所定のレスポンスを前記メッセージ処理装置へ返信する第2の処理と、前記メッセージ処理装置から、本来は意味のない「ダミーコマンド」が送信されてきた場合には、当該「ダミーコマンド」に応じたレスポンスとして、本来は意味のない「ダミーレスポンス」を返信するダミー処理と、を行う機能を有することを特徴とする署名作成装置。  The information communication unit, when a “signature creation command” including predetermined message data to be digitally signed is transmitted from the message processing device, gives the message data to the signature creation unit. A first process for executing a signature creation process and returning a predetermined response not including a digital signature for the created message data to the message processing apparatus as a response to the “signature creation command”; When a “signature reply command” for requesting a digital signature reply is transmitted from the message processing device, it is stored in the signature storage unit as a response corresponding to the “signature reply command”. A second response that returns a predetermined response including the digital signature to the message processing device; When a “dummy command” that is originally meaningless is sent from the message processing apparatus, a “dummy response” that is originally meaningless is returned as a response corresponding to the “dummy command”. A signature creation device having a function of performing dummy processing.
請求項16に記載の署名作成装置に接続して情報のやりとりを行うメッセージ処理装置であって、A message processing device that connects to the signature creation device according to claim 16 and exchanges information,
デジタル署名の対象となる所定のメッセージデータを含んだ「署名作成コマンド」を前記署名作成装置に対して送信し、これに応じて前記署名作成装置から返信されてくるレスポンスを受信する第1の能動処理部と、  A first active device that transmits a “signature creation command” including predetermined message data to be digitally signed to the signature creation device, and receives a response returned from the signature creation device in response to this. A processing unit;
デジタル署名の返信を要求するための「署名返信コマンド」を前記署名作成装置に対して送信し、これに応じて前記署名作成装置から返信されてくるレスポンスを受信し、受信したレスポンスに含まれているデジタル署名を取り出す第2の能動処理部と、  A "signature reply command" for requesting a digital signature reply is transmitted to the signature creation apparatus, and a response returned from the signature creation apparatus is received in response to this, and is included in the received response A second active processing unit for retrieving a digital signature that is present;
前記第1の能動処理としてのコマンド送信およびレスポンス受信を行った後、前記第2の能動処理としてのコマンド送信およびレスポンス受信を行うまでの間に、本来は意味のない「ダミーコマンド」を前記署名作成装置に対して送信し、これに応じて前記署名作成装置から返信されてくるレスポンスを受信するダミー能動処理部と、  After performing the command transmission and response reception as the first active process, and before performing the command transmission and response reception as the second active process, a “dummy command” that is essentially meaningless is added to the signature. A dummy active processing unit that transmits to the creation device and receives a response sent back from the signature creation device in response thereto;
を有することを特徴とするメッセージ処理装置。  A message processing apparatus comprising:
コンピュータを請求項17に記載のメッセージ処理装置として機能させるためのプログラム。A program for causing a computer to function as the message processing device according to claim 17.
JP2002184071A 2002-06-25 2002-06-25 Digital signature system Expired - Fee Related JP4183982B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002184071A JP4183982B2 (en) 2002-06-25 2002-06-25 Digital signature system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002184071A JP4183982B2 (en) 2002-06-25 2002-06-25 Digital signature system

Publications (2)

Publication Number Publication Date
JP2004032248A JP2004032248A (en) 2004-01-29
JP4183982B2 true JP4183982B2 (en) 2008-11-19

Family

ID=31180068

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002184071A Expired - Fee Related JP4183982B2 (en) 2002-06-25 2002-06-25 Digital signature system

Country Status (1)

Country Link
JP (1) JP4183982B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4710232B2 (en) * 2004-02-18 2011-06-29 富士電機株式会社 Electronic data storage system that stores electronic data while guaranteeing the evidence

Also Published As

Publication number Publication date
JP2004032248A (en) 2004-01-29

Similar Documents

Publication Publication Date Title
US8510572B2 (en) Remote access system, gateway, client device, program, and storage medium
CN103348357B (en) Sensitive data processing device and method
US20130268444A1 (en) Three-factor user authentication method for generating otp using iris information and secure mutual authentication system using otp authentication module of wireless communication terminal
Smith Secure coprocessing applications and research issues
CN105427105A (en) Mobile payment method, system and device
JPH11306088A (en) IC card and IC card system
CN101441689A (en) Login protection method
JP4998518B2 (en) Information processing apparatus, information processing system, and program
JP2007249805A (en) Electronic authentication method and electronic authentication system
TW201937394A (en) System and method for program security protection
JP5993285B2 (en) User authentication device and user authentication program
CN108959883A (en) A kind of network identity real name identification method based on quick response matrix code
CN117370960A (en) Data destruction method, system and equipment
JP4998314B2 (en) Communication control method and communication control program
JP4183982B2 (en) Digital signature system
JP2000078128A (en) Communication system, IC card, and recording medium
JP5164372B2 (en) Game machine control chip and its ROM writer
JP4226582B2 (en) Data update system
JP7652999B2 (en) Data processing method for a trusted execution environment using smart contracts and computer-readable recording medium containing commands for performing the data processing method
JP2003143130A (en) System and method for constant authentication, and system and method for constant authentication of ic card
JP2005065035A (en) Agent authentication system using IC card
WO2011058629A1 (en) Information management system
JP4183986B2 (en) Cryptographic processing system
US20230419325A1 (en) Method for processing an operation involving secret data, terminal, system and corresponding computer program
JP2007272600A (en) User authentication method linked with environment authentication, user authentication system linked with environment authentication, and program for user authentication linked with environment authentication

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050616

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080415

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080613

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080902

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080903

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110912

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4183982

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110912

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120912

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120912

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130912

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees