JP2005318299A - 電子データの証拠性を確保しながら同データを保管する電子データ保管システム - Google Patents

電子データの証拠性を確保しながら同データを保管する電子データ保管システム Download PDF

Info

Publication number
JP2005318299A
JP2005318299A JP2004134273A JP2004134273A JP2005318299A JP 2005318299 A JP2005318299 A JP 2005318299A JP 2004134273 A JP2004134273 A JP 2004134273A JP 2004134273 A JP2004134273 A JP 2004134273A JP 2005318299 A JP2005318299 A JP 2005318299A
Authority
JP
Japan
Prior art keywords
key
authentication code
encryption key
electronic data
generating
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.)
Granted
Application number
JP2004134273A
Other languages
English (en)
Other versions
JP4765262B2 (ja
Inventor
Koji Nishida
廣治 西田
Junichi Iijima
淳一 飯島
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Holdings 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 Fuji Electric Holdings Ltd filed Critical Fuji Electric Holdings Ltd
Priority to JP2004134273A priority Critical patent/JP4765262B2/ja
Publication of JP2005318299A publication Critical patent/JP2005318299A/ja
Application granted granted Critical
Publication of JP4765262B2 publication Critical patent/JP4765262B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

【課題】 タンパ性のあるICカードやUSBキーなどを必要とすることなく、電子データを管理するサーバ側で大量のデータを高速にMAC付きデジタル署名することを可能とする。
【解決手段】 電子データ保管装置において電子データの証拠性を認証コードと電子署名で確保する方法を与える。認証コードを生成するための第1の鍵と認証コードを生成するプログラムを一時の鍵暗号化鍵で暗号化した暗号化鍵情報をアクセス制限をされた二次記憶装置に格納する。鍵暗号化鍵を生成するための乱数を読み書き可能な記憶媒体に格納する。新たな認証コードを生成する場合、個人識別番号を入力させる。入力された個人識別番号と格納されている乱数から鍵暗号化鍵を生成する。生成した鍵暗号化鍵を用いて暗号化鍵情報を復号することにより第1の鍵を求める。求めた第1の鍵を用いて新たな認証コードを生成する。
【選択図】図1

Description

本発明は,電子ファイルなどの電子データを保管する電子データ保管装置に関し、さらに詳細には、そのような電子データ保管装置において保管されている電子データが改竄されていないとの証拠性を長期にわたって確保する技術に関する。
本発明は、「あるデータに対する署名を生成する際にMAC(Message Authentication Code)をあわせて生成し、署名が偽造されたと疑われる場合にはMACの検証を行って署名生成をしたハードウェアを確認し、偽造の有無を判定する」(非特許文献1)という技術に関する。従来、電子ファイルなどの電子データが改竄されていないとの証拠性を示す技術にMAC付きデジタル署名がある。
従来の方式では、外部装置としてICカード、クライアントとしてPC(パーソナルコンピュータ)が想定されている。外部装置であるICカードが電子署名と認証コードの両方の処理を行うため、秒単位の処理時間を必要とする。したがって、クライアントで高速かつ大量の電子データを処理する必要がある場合、処理速度が障害となり、それを解決するためには、多数のパソコンとICカードを用意し並列処理をする必要がある。
そこで、出願人は、ROM領域とRAM領域とを備え、サーバに電気的かつ機械的に結合されるタンパ性のあるICカードまたはUSBキーと、製造時に製造業者により書換え不可能な記憶域に秘密鍵が焼き付けられた読み出し専用記憶媒体を用いて運用する電子データ保管サーバを提案した(特許文献1)。ICカードは、読み出し専用記憶媒体からコピーした秘密鍵をもとに一時秘密鍵を生成するアルゴリズムをROM領域に備え、一時秘密鍵をRAM領域に格納し、かつ一時秘密鍵と所与の電子データから認証コードを生成するプログラムの少なくとも一部をオブジェクトとしてROM領域に格納する。サーバは、上記アルゴリズム、上記オブジェクト、および一時秘密鍵を読み出し、読み出したアルゴリズム、上記オブジェクト、および一時秘密鍵と連携し、電子データから電子データの認証コードを生成し、電子データおよび認証コードを保管する。これにより、クライアントから相互認証のち送られてくる保管すべき電子データに対し、データ保管サーバ側で認証コード生成処理および署名生成処理を少なくとも重要な部分はICカードに保存されている認証コード生成オブジェクトにより集中して行うことで、高速かつ大量のデータ処理をMAC付きデジタル署名の方式で行うことが可能となった。
宇根正志、「デジタル署名生成用秘密鍵の漏洩を巡る問題とその対策」、日本銀行金融研究所、Discussion Paper No.2002-J-32(2002年) 特願2004−041183
しかし、上記の方式では、ハードウェアとしてサーバに耐タンパ性を持つICカードリーダライタなどの接続、秘密鍵の読み出し専用記憶媒体からICカードRAM領域へのコピー作業などが必要であり、このためコストや所要作業の面で不便があった。
本発明は、ICカードリーダライタの接続やICカードなどROMやRAMへのコピー作業などコスト面、作業面での問題を解決することを目的とする。
本発明は、上記の課題を解決するためになされたものであり、タンパ性のあるICカードやUSBキーなどの使用や面倒なキーのコピー作業などを必要とせず、クライアントを多数接続した環境でも、電子署名と認証コードの処理を高速かつ安全にサーバ側で行うことを可能とするシステムを提供することを目的とする。
本発明は、一面では、電子データ保管装置において電子データの証拠性を認証コードと電子署名で確保する方法を与える。この方法は、認証コードを生成するための第1の鍵と認証コードを生成するプログラムを一時の鍵暗号化鍵で暗号化した暗号化鍵情報をアクセス制限をされた二次記憶装置に格納するステップと、鍵暗号化鍵を生成するための乱数を読み書き可能な記憶媒体に格納するステップと、新たな認証コードを生成する場合、個人識別番号を入力させるステップと、前記の入力された個人識別番号と前記の読み書き可能な記憶媒体に格納されている前記乱数から鍵暗号化鍵を生成するステップと、前記の生成した鍵暗号化鍵を用いて暗号化鍵情報を復号することにより第1の鍵を求めるステップと、前記の求めた第1の鍵を用いて前記の新たな認証コードを生成する生成ステップとからなることを特徴とする。
また、本発明の電子データの証拠性を確保する方法は、新たな乱数を発生するステップと、前記の新たな乱数と前記の入力された個人識別番号から新たな鍵暗号化鍵を生成するステップと、第1の鍵をハッシュ化して新たな第1の鍵を生成し、古い第1の鍵を消去するステップと、前記の新たな第1の鍵、前記の新たな第1の鍵がこれまでハッシュ化された回数、およびプログラムを前記の新たな鍵暗号化鍵で暗号化して新たな暗号化鍵情報を生成するし、二次記憶装置に格納する格納ステップとをさらに含む。
格納ステップの後、前記の新たな鍵暗号化鍵を消去するステップをさらに含んでもよい。
生成ステップは、前記の求めた第1の鍵を乱数回だけハッシュ演算をするステップと、前記の乱数回だけハッシュ演算した第1の鍵を用いて前記の新たな認証コードを生成する生成ステップとを含んでもよい。
さらに、格納ステップの後、前記の新たな鍵暗号化鍵を読み書き可能な可搬型記憶媒体に記録するステップと、処理対象データの待機中に、可搬型記憶媒体に記録された前記の新たな鍵暗号化鍵を用いて前記の乱数回だけハッシュ演算した第1の鍵を暗号化するステップと、処理対象データが発生した場合、可搬型記憶媒体に記録された前記の新たな鍵暗号化鍵を用いて、前記の暗号化された第1の鍵を復号するステップを含んでもよい。
個人識別番号を入力させるステップは、指紋や虹彩などバイオメトリクス機器により個人識別番号の入力者を識別するステップを含んでもよい。
本発明は、別の面では、上述の電子データの証拠性を確保する方法を用いた電子データ保管装置を与える。
本発明は、さらに別の面では、電子データ保管装置において電子データの証拠性を認証コードと電子署名で確保するプログラムを与える。本発明のプログラムは、上述の電子データの証拠性を確保する方法と同じステップを有する。
従来は、データ保護のために、ICカードリーダライタをサーバに接続したり、ICカードをクライアントごとに配布しなければならなかったが、本発明によりサーバのDASD内で鍵暗号鍵により暗号化することにより保護することで、ICカードリーダライタの接続やICカードの配布が不要となり、コストおよび運用の両面において好都合である。
鍵暗号鍵自体は、PINとフレキシブルディスクなどのRAMに保存した一時的な乱数の両方を必要とすることにより保護されている。PIN自体もバイオメトリクス認証など個人認証技術を用いることによりさらに安全性を高めることができる。
主記憶上で復元された鍵暗号鍵は新たに乱数を生成して新暗号鍵を生成した後、消去し、新暗号鍵も新たな乱数をフレキシブルディスクなどのRAMに保存した後、すぐに消去するため盗聴から保護される。
また、主記憶上のオブジェクトで処理待ち状態の時、一時鍵暗号鍵により認証コード生成一時秘密鍵を暗号化することにより、不正アクセス者や管理者により盗聴された場合の安全性を高めることができる。RAMに格納された一時鍵暗号鍵は、RAMへのアクセス記録およびRAMへの定期的な読込によるチェックなどにより、不正アクセス、改ざん又は盗難などが発生しても容易に検知することができる。
以下、本発明の実施形態と添付図面とにより本発明を詳細に説明する。なお、複数の図面に同じ要素を示す場合には同一の参照符号を付ける。
〔第1の実施形態〕
図1は,本発明の第1の実施形態による電子データ保管システムの構成を示す略ブロック図である。図1において,本発明の電子データ保管システム1は、インターネットなどのネットワークに接続された電子データ保管サーバ10、サーバ10の操作者がサーバ10を操作するための入出力装置20、ネットワークを介してサーバ10と通信可能な複数または多数のクライアント40からなる。入出力装置20は、表示装置、キーボード、ポインティングディバイスなどからなる。また、電子データ保管サーバ10は、通常のサーバと同様、CPU(中央処理装置)11、ROM(read only memory)12、RAM(random access memory)13、ネットワークを介してクライアント40と通信を行うための通信インタフェース14、入出力装置20へのI/Oインタフェース16、フロッピィディスク(FD)32を使用するためのFDドライブ18,CD−ROM(compact disc read only memory)34や読み出し専用または読み書き可能な種々の規格のDVDなどの光ディスク(図1では、ROM/RAMと表記)36のリード/ライトが可能な光ディスクドライブ19、およびサーバ10が使用する種々のプログラムおよびデータを格納する大容量のDASD(direct access storage device)17を備える。
なお、この電子データ保管サーバ10を操作するのは、このサーバ10を運用する組織に属しサーバ10を管理する管理者、好ましくはサーバ10を運用する組織に属さずサーバ10の運用の監査を行う監査者、および上記組織ともクライアント40の利用者とも利害関係のない調停者の何れかに限ることが好ましい。
図1のシステム1は、サーバ10を原本性保証サーバ、クライアントを文書管理サーバとして、文書の長期保存原本性保証システムとすることができる。また、図1のシステム1は、サーバ10を原本性保証サーバ、クライアント40を電子申請サーバとして、電 子申請データの長期に亘るデータ証拠性保証システムとすることができる。さらに、図1のシステム1は、 サーバ10をデータ保存サーバ、 クライアントをデータ収集サーバとして、トレーサビリティデータを長期に亘って保証するデータ証拠性保証サーバとすることができる。
図1において、ROM/RAM36は、一時秘密キーである認証コード生成鍵Km、キーKmの生成に用いたハッシュ回数m、認証コード生成アルゴリズムf、認証コード生成アルゴリズム識別番号FID、認証コード生成鍵Kmの識別番号KIDmを一時鍵暗号化鍵で暗号化されたデータを格納するCD−ROMなどのROMまたはフレキシブルディスクなどのRAMである。
フレキシブルディスク(RAM)32には、乱数Soを格納する。乱数Soは鍵暗号鍵KEKoを生成する時に使用した乱数である。鍵暗号鍵KEKoは、PIN(personal identification number)と乱数Soからハッシュ関数h(PIN,So)により生成される(詳細に後述する)。RAM上の乱数Soは認証コード生成処理で生成した乱数により書き換えられる。RAM32は認証コード生成処理の生成時(システム立上時など)にサーバから読み書きされ、通常はサーバから分離して安全な場所に監査者により保管される。
ROM34は、認証コード秘密鍵Koが書き込まれた、例えば、CD−ROMのように読み出し専用記憶機能を有するものであればよい。ROM34は、ICカードやUSBキーなどでもよい。ROMは通常サーバから分離して安全な場所に保管され、認証コードの照合時のみ使用する。
通信インタフェース(IF)14は、ネットワークを経由してクライアント40から保管すべき電子データXを受け取る。この際、サーバ10とクライアント40は相互認証を行い、また伝送路上のデータも暗号化して安全性を確保する。
DASD17には、種々のプログラムが格納されている。
例えば、認証コード生成処理75は、後述するような図5〜8に示す処理を行う。本処理は、アクセス権処理94で例えばJava(登録商標)のSecurityManager機能の利用により特定のユーザおよびオブジェクトからのみアクセス可能とするなどカプセル化されたオブジェクトとする。
署名生成処理97は認証コード生成処理75からデータと認証コードを受け取り、受け取ったデータに電子署名を行う。電子署名の方式及び秘密鍵は危殆化の防止や安全性を確保するため随時変更することができる。電子署名が生成されると、保管すべきデータは、認証コードおよび電子署名とセットにして図2の形式で保管データ80として保管される。
署名検証処理99は保管データ80から取り出したデータが改竄されていないか、署名の公開鍵で電子署名を復号化してデータのダイジェストとの一致を検証する。
認証コード照合処理96は、電子署名の偽造の疑いがある場合は疑いのあるデータについて、調停者により起動される。認証コード照合処理96は、認証コード生成処理75によって当該データの認証コードを生成する。この場合、ROM34に格納されている認証コード秘密鍵Koを用いる。また、管理者は保管データ80として保管されている当該データの認証コードを取り出し、調停者に提示する。調停者は両者を比較し、一致していれば電子署名が偽造されていないと判断する。この場合、認証コード一時秘密鍵はサーバ10内で例えば図5に示すようにn回ハッシュ演算を行う。
調停者は、電子署名の偽造の疑いがある場合、当該電子データについて認証コード照合処理96によって得られた認証コードと管理者から渡される当該電子データの認証コードとを照合し、一致した場合は偽造の疑いはないと判断する。調停者はサーバ10に付属したコンソール20から認証コード照合処理96のみにアクセスできる。
さらに、DASD17には、次のようなデータやプログラムが格納されている。
・クライアント40から保管を依頼された電子データの保管処理を行うデータ保存プログラム90
・保管データ記憶部80に保管されている電子データに対してクライアント40から取り出し要求があった場合にその電子データを要求中のクライアント40に送るデータ読出しプログラム92
・アクセスが制限されたプログラムへのアクセス制限を行うアクセス制限プログラム94
・アクセス制限処理の際に参照されるポリシーテーブル82
・各種オブジェクトを起動するたびに記録されるログを格納するログテーブル84
・不正アクセスによる異常なログをチェックするログフィルタ98
なお、サーバ10とクライアント40との間の通信は、図4に示すような相互認証(ECOM ICカード利用ガイドライン1.0版(1998年3月1日))を行った上で実行することにより、不正な利用に対抗している。
管理者はサーバの管理者である。サーバ10に付属したコンソール20からサーバ10内の所定の情報をアクセスできる。監査者はログ保管84のログデータの監査やログフィルタ処理98の警告データを参照することによりサーバ10管理者の作業を監査する。また認証コード生成処理の生成時(システム立上時など)に RAM32を サーバ10に装着し、PINをサーバに付属したコンソール20から入力する。
一時鍵保管部81には、一時秘密キーである認証コード生成鍵Km、キーKmの生成に用いたハッシュ回数m、認証コード生成アルゴリズムf、認証コード生成アルゴリズム識別番号FID、認証コード生成鍵Kmの識別番号KIDmを一時鍵暗号化鍵KEKoで暗号化したKEKo(Km,m,f,KIDm,FID)が保管されている。一時鍵保管部81へのアクセスは監査者のみが許される。
以上のような構成を有する電子データ保管システム1の運用および動作を説明する。
図3は、本発明の原理による運用開始までの手順を示すフローチャートである。図3において、ROM34の製造業者は、ステップ100において、製造業者側で認証コード秘密鍵Koを生成しCDなどのROM34に焼き付ける。ROM34はメーカまたは調停者または監査者が安全な場所に保管する。ステップ102において、認証コード秘密鍵Koに対しm回ハッシュ演算を行い一時秘密鍵Kmを生成する。秘密鍵Kmは、Km=hm(Ko)で与えられる。ステップ104において、製造業者の側で、認証コード秘密鍵Km、ハッシュ回数m、認証コード生成オブジェクトf、認証コード秘密鍵Km識別子KIDmおよび認証コード生成オブジェクト識別子FIDを鍵暗号鍵KEKoで暗号化し、CDなどのROM/RAM36に焼き付ける。秘密鍵KEKoは、式KEKo =h(PIN,So )によりPINと乱数値Soとをハッシュ関数hでハッシュ演算して生成する。ここで、PBE(password-based encryption)方式によれば、h(PIN,So )は、PINとSoとの排他的論理和にハッシュ演算を行うことを意味する。したがって、KEKo =h(PIN,So )=h(PINxorSo)である。ここで、AxorBは、AとBとの排他的論理和を表す。次ぎに、ステップ106において、製造業者の側で、乱数値SoをフレキシブルディスクなどのRAM32に格納する。RAM32は、PINとともに監査者が保管する。続いて、ステップ108において、監査者が、ステップ104で作成したCDなどのROM/RAM36内のデータをサーバ10の監査者以外にアクセス制限されたディスク、即ち、DASD17にコピーする。ステップ110において、管理者が、サーバの運用を開始する。ステップ112において、監査者は、乱数値Soが格納されているフレキシブルディスクなどのRAM32をサーバ10に装着しPINを入力する。これにより認証コード生成処理75が開始される。
通常の運用では,クライアントの要求に応じてクライアントからの電子データをサーバ10に保管するデータ保存処理90、クライアントの要求に応じて、サーバ10に保管していたデータをクライアントに送るデータ読出し92が行われる。
<データ保存>
クライアント40側でデータ保管サーバ10に保管すべきデータが発生した場合、クライアント40は、このデータをコンピュータ読み取り可能な形式にして暗号化したものを電子データとして、保管または登録要求とともにネットワークを介してデータ保管サーバ10に送る。この場合、先ずクライアント40の操作者は、自分のPIN(個人識別番号)をデータ保管サーバ10に送り、データ保管サーバ10では、そのクライアント40の使用を許された人員のPINリスト(図示せず)に、受信したPINがある場合のみ、そのクライアント40に以降の操作を許す。また、電子データの通信に先立ち、クライアント40とデータ保管サーバ10との間では、上記のように図4に示した相互認証を行う。
データ保管サーバ10は、クライアント40から電子データ(Xとする)の保管または登録要求を受け取ると、後述の認証コード生成処理を行う。データ保管サーバ10は、認証コードを生成した後、電子データXに電子署名を行い、図2で既に述べたように電子データX、認証コードおよび電子署名を一組にして保管データ記録部80に保管する。
〔第1の実施形態〕
図5は、本発明の第1の実施形態によりCPU11が認証コードを生成する動作を示すフローチャートである。認証コード生成処理は、例えばJava(登録商標)のSecurity Manager機能の利用などアクセス権処理により不正な処理からの利用ができないよう保護される。ハードディスクなどDASD17には一時鍵暗号化鍵で暗号化された認証コード生成一時秘密鍵とハッシュ回数m、即ち、KEKo(Km,m,f,KIDm,FID)が格納されている。認証コード生成処理のプログラムオブジェクト75も監査者権限以外はアクセスできないよう保護される。図5において認証コードを生成が開始されると、まず、ステップ120において、図6の
MAC鍵復号/暗号化処理を実行する。
図6において、DASD17には、認証コード生成鍵Km、キーKmの生成に用いたハッシュ回数m、認証コード生成アルゴリズムf、認証コード生成アルゴリズム識別番号FID、および認証コード生成鍵Kmの識別番号KIDmを一時鍵暗号化鍵KEKoで暗号化したKEKo(Km,m,f,KIDm,FID)が保管されている。鍵暗号鍵KEKoはあらかじめ製造業者によりハッシュ関数h(PIN,So)を使用して生成されたものである。DASDは、図1のアクセス権処理94で監査者以外のアクセスから保護されている。まず、CPU11は、DASD17から暗号化鍵情報KEKo(Km,m,f,KIDm,FID)を読み出す(ステップ200)。図1のRAM32を管理する監査者がRAM32をサーバに装着すると、CPU11は、RAMであるFD32からSoを読み出し(ステップ202)、PINの入力を要求する(204)。監査者は、これに応じて、PINを入力し(ステップ206)たのち、RAM32をサーバ10から取り出し、安全な場所に保管する。この場合、PIN入力のセキュリティレベルを高めたい場合は、指紋や虹彩などバイオメトリクス機器をサーバに接続し、監査者本人であることを識別するようにしても良い。次に、ステップ208において、鍵暗号鍵KEKoをハッシュ関数h(PIN,So)により再生成する。ステップ210において、乱数S1を生成する。ステップ212において、新たな鍵暗号鍵KEK1をハッシュ関数h(PIN,S1)により生成し、PINを消去する。ステップ214において、ステップ208で再生成した鍵暗号鍵KEKoを用いてKEKo(Km,m,f,KIDm,FID)を復号化し、Km,mを得たのち、KEKoを消去する。次に、ステップ216において、認証コード生成一時秘密鍵Km+1=h(Km)を計算し、これを秘密鍵として、Kmを消去する。ステップ218において、認証コード生成一時秘密鍵Km+1を新たな鍵暗号鍵KEK1で暗号化し、KEK1(Km+1,m+1,f,KIDm+1,FID)を生成する。ステップ220において、乱数S1をRAM32に書き込む。続いて、新たな暗号化鍵情報KEK1(Km+1,m+1,f,KIDm+1,FID)をDASD17の一時鍵保持位置81に書き込み(ステップ222)、古い暗号化鍵情報KEKo(Km,m,f,KIDm,FID)を消去し(ステップ224)、KEK1を消去する(226)。このようにして、新たな認証コード生成鍵Km+1、即ち、新たな暗号化鍵情報KEK1(Km+1,m+1,f,KIDm+1,FID)を生成する。
ここで、次に、図5に戻り、ステップ122において、Km+1をメッセージ認証コード(MAC=message authentication code)の暗号鍵Kmとして用いることにする。次に、ステップ124において、データ入力処理により保管対象ファイルXを取り込み乱数nによる秘密鍵Kmのn回ハッシュ演算Kmn=hn(Km) をし、これを秘密鍵とする。なおこの時、性能に配慮しサーバ負荷を低減するなどの理由により、乱数に上限値を設けるといったことも可能である。KmはKmnを生成した後消去し、以降はKmnをKmに充てる。またmn=m+nとし、mを消去する。なお、ステップ130から戻ってきた場合、Kmおよびmは、Kmnおよびmnを用いる。
続いて、ステップ126において、ステップ124で求めたデータKm(実際には、Kmnを求めたが、もはやKmとして扱っている)から認証コード MAC(X)=f(X、Km)(=f(X、Kmn):Kmnはステップ124で求めた値)を生成し、乱数nによる現在の秘密鍵Kmのn回ハッシュ演算Kmn=hn(Km)を行い、これを秘密鍵とし、古いKmnを消去する。MAC生成アルゴリズムは、HMACまたはUMACなどのアルゴリズムを使用する。またmn=mn+nとする。
次に、ステップ128において、取得したデータ及び認証コードを署名生成処理97に渡し、ステップ126で使用したKmおよびmnを消去する。認証コードは、MAC(X)、ハッシュ回数m=0,n=mn、認証コード生成アルゴリムFIDおよび認証コード生成秘密鍵KIDmから構成される。ハッシュ回数はICカードなどROM/RAMを利用する方式と整合をとるためICカードなどROM/RAMで行うハッシュ回数m=0としている。この時、秘密情報の盗聴・漏洩防止のためハッシュ回数m,nを暗号化して保存することも可能である。
判断ステップ130において、管理者から処理終了を示す指示を受け取ったか否かを判断する。この指示は管理者の判断で随時行うことができる。処理終了を受け取っていなければ、ステップ124に戻る。終了処理指示を受け取った場合、ステップ132に進み、Kmnおよびmnを消去して、認証コード生成処理を終了する。
クライアントから送られた保管すべきデータXに対して、以上のようにして認証コード生成を生成し、図2に示すように、データX,認証コードおよび電子署名が保管データ80として保管される。
<データ読み出し>
クライアント40が、保管データ記録部80に保管されている電子データを必要とする場合、必要な電子データを識別できる情報(電子データ識別情報)とともに電子データ読み出し要求をネットワークを介してデータ保管サーバ10に送る。勿論、この場合も、クライアント40は、図6の相互認証およびPINによるアクセス制限を受ける。
データ保管サーバ10では、この電子データ読み出し要求と電子データ識別情報を受け取ると、データ読み出しプログラム92が、保管データ記録部80から電子データ識別情報で特定される電子データの記録を取りだし、取り出した電子データが改竄されていないか否かを、署名の公開鍵で電子署名を復号化して、データのダイジェストとの一致を検証する。一致し、署名検証が成功裏に終わった場合、データ読み出しプログラム92は、読み出した電子データをネットワーク経由で要求元のクライアント40に送る。一致せず、署名検証に失敗した場合、データ読み出しプログラム92は、その旨をネットワーク経由でクライアント40に通知するとともに、視覚的警報、聴覚的警報、またはこれらの両方を発して、管理者にも知らせる。
<認証コード照合>
管理者、クライアント40の操作者、またはクライアント40を通してサービスを受けた利用者の何れかが、何らかの保管データ(Xとする)の電子署名に偽造の疑いがあると判断した場合、調停者に疑いのある保管データXの認証コード照合を依頼することができる。図9は、本発明の一実施形態による認証コード照合の手順を示すフローチャートである。図9において、認証コード照合を行う場合、ステップ400において、調停者は認証コード秘密鍵K0を格納したCDなどのROM34をサーバ10に装着する。ステップ402において、管理者は調停者の指定した電子データXの認証コードMAC(X)、ハッシュ回数m,n、認証コード生成アルゴリムFID、および認証コード生成秘密鍵KIDmを調整者に渡す。システム404において、調停者はサーバ10の認証コード照合処理96を起動する。
ステップ406において、認証コード照合処理は1の認証コード秘密鍵K0をCDなどのROMから読み込み、またデータXをCDやフレキシブルディスクから読み込む。監査者は乱数値Soが格納されているRAM32と認証コード生成アルゴリズムfが鍵暗号鍵KEKoで暗号化されて格納されているCDなどのROM/RAM36をサーバ10に装着し、PINを入力する。これにより鍵暗号鍵KEKoで暗号化されていた認証コード生成アルゴリズムfがh(PIN,S0)を生成することにより復号化される。調整者によってサーバのコンソールから入力されたハッシュ回数m,nにより認証コードMACm+n(X)=f(hm+n(K0),X)を計算する。この際、認証コード照合処理の認証コード生成アルゴリムFIDが調整者によってサーバのコンソールから入力された認証コード生成アルゴリムFIDと一致していることを確認する。
ステップ408において、調停者はステップ402で渡された認証コードMAC(X)とステップ404で生成した認証コードMACm+n(X)の一致が確認された場合、電子データXは改竄されていないと判定する。一致が確認されない場合、電子データXは改竄されていると判定する。
このようにして、電子データXの正真性を確かめることができる。
〔第2の実施形態〕
上記の実施形態では、秘密鍵KEKoは、Kmやmを暗号化した後、ステップ226において消去した。本発明は、秘密鍵KEKoをKm、mの暗号化に使用した後、RAMに格納しておき、サーバ内オブジェクトで処理待ち状態の時、RAMに格納しておいたKEKoを用いて、認証コード生成一時秘密鍵を暗号化することによりサーバ内オブジェクトの認証コード生成一時秘密鍵の安全性を高めるようにしたものである。
図7は、主記憶内の書きを暗号化する場合の認証コード生成のフローチャートを示す。図7のフローチャートは、ステップ120および132がステップ120aおよび332に置き換わり、かつステップ340および342が追加されたことを除けば、図5のフローチャート同じである。また、ステップ120aでは、図8のMAC鍵復号/暗号化サブルーチンを実行するが、図8のサブルーチンも、ステップ226がステップ230〜238に置き換わった点を除けば、図6のサブルーチンと同じである。したがって、相違点のみを説明する。
まず、図8の主記憶内の鍵を暗号化する場合のMAC鍵復号/暗号化処理では、
ステップ224において、DASD17の暗号化鍵情報KEKo(Km,m,f,KIDm,FID)を消去した後、CPU11が、RAM入れ替え要求を発すると(ステップ230)、監査者はこれに応じてRAMを入れ替え(ステップ232)、CPU11がRAM入れ替え完了を検出する(ステップ234)。ステップ236において、鍵KEK1を入れ替えたRAM32aに書き込み、以降、定期的に、RAM32aの読み込みチェックを行う。ステップ238において、鍵KEK1を消去して、MAC鍵復号/暗号化処理を修了する。このようにして、新たな認証コード生成鍵Km+1、即ち、新たな暗号化鍵情報KEK1(Km+1,m+1,f,KIDm+1,FID)が生成される。
図7の認証コード生成においては、判断ステップ130において、処理終了指示を受信した場合、ステップ332において、Kmnおよびmnを消去し、図8のステップ236で開始したRAM32aの定期的な読み込みチェックを停止する。
また、判断ステップ130において、処理終了指示を受け取っていない場合、ステップ340において、データ入力処理の対象ファイル待の場合、RAMからKEKoを読込みKmn,mnを暗号化してKEKo(Kmn,mn)を求めた後、KEKoを消去する。さらに、ステップ342において、
データ入力処理の対象ファイルが発生した場合、RAMからKEKoを読込みKmn,mnを復号化したのち、KEKoを消去する。こうして、 認証コード生成処理を終了する。
クライアントから送られた保管すべきデータXに対して、以上のようにして認証コード生成を生成し、図2に示すように、データX,認証コードおよび電子署名が保管データ80として保管することができる。
以上は、本発明の説明のために実施例を掲げたに過ぎない。したがって、本発明の技術思想または原理に沿って上述の実施例に種々の変更、修正または追加を行うことは、当業者には容易である。
例えば、第1の実施形態では、クライアント40からの電子データX全体に対して認証コードを生成したが、電子データXを複数に分割し、分割した各データに対して認証コードを生成しもよい。
以上の実施形態では、電子データ保管サーバ10を1台のみ使用したが、複数の電子データ保管サーバからなる証拠性保証型の電子データ保管システムを構成することも可能である。
上記の例では、データ保管サーバは、ネットワークを介して複数のクライアントと接続されていたが、ネットワークを介さず1台の端末との間で電子データの授受を行うことも可能である。
初期の認証コード秘密鍵を格納するROMに対して、Alpha-ROMまたはSecure ROMなどのコピー防止技術を適用することによって、安全性を高めてもよい。
なお、上述の実施形態では、初期の認証コード秘密鍵Koを製造業者がROMの焼き付けたが、鍵Koを生成するプログラム自体をサーバ10のDASD17にロードし、このプログラムを用いてKoをサーバ10で生成し、認証コード生成に用いてもよい。
図6および8のステップ216において、Kmを1回ハッシュ化して新たな認証コード生成鍵を生成したが、この時のハッシュ化の回数は1回である必要はない。
本発明の一実施形態による証拠性保証型の電子データ保管システム1の構成例を示す略ブロックである。 図1の保管データ記録部80に保管される電子データの記録例を示す図である。 本発明によるサーバ運用開始までの手順を示すフローチャートである。 図1の電子データ保管システム1が行う相互認証におけるデータおよび処理の流れ示す相関チャートである。 本発明の第1の実施形態により認証コードを生成する動作を示すフローチャートである。 図5のステップ120で実行されるMAC鍵復号/暗号化サブルーチンのフローチャートである。 本発明の第2の実施形態により認証コードを生成する(主記憶内暗号化)動作を示すフローチャートである。 図7のステップ120aで実行されるMAC鍵復号/暗号化サブルーチンのフローチャートである。 本発明の一実施形態による認証コード照合処理の流れを示すフローチャートである。
符号の説明
1 本発明の電子データ保管システム
10 本発明のデータ保管サーバ
11 CPU
12 ROM
13 RAM
14 通信インタフェース
16 I/Oインタフェース
17 DASD
18 FDドライブ
19 光ディスクドライブ
32 フロッピィディスク
34 ROM
36 ROMまたはRAM
75 認証コード生成オブジェクト
80 保管データ記憶部
82 ポリシーテーブル
84 ログテーブル
90 データ保存プログラム
92 データ読み出しプログラム
94 アクセス制限
96 認証コード照合
97 署名生成処理プログラム
98 ログフィルタ処理プログラム
99 署名検証処理プログラム

Claims (16)

  1. 電子データ保管装置において電子データの証拠性を認証コードと電子署名で確保する方法であり、
    前記認証コードを生成するための第1の鍵と前記認証コードを生成するプログラムを一時の鍵暗号化鍵で暗号化した暗号化鍵情報をアクセス制限をされた二次記憶装置に格納するステップと、
    前記鍵暗号化鍵を生成するための乱数を読み書き可能な記憶媒体に格納するステップと、
    新たな認証コードを生成する場合、個人識別番号を入力させるステップと、
    前記の入力された個人識別番号と前記の読み書き可能な記憶媒体に格納されている前記乱数から鍵暗号化鍵を生成するステップと、
    前記の生成した鍵暗号化鍵を用いて前記暗号化鍵情報を復号することにより前記第1の鍵を求めるステップと、
    前記の求めた第1の鍵を用いて前記の新たな認証コードを生成する生成ステップとからなることを特徴とする電子データの証拠性を確保する方法。
  2. 新たな乱数を発生するステップと、
    前記の新たな乱数と前記の入力された個人識別番号から新たな鍵暗号化鍵を生成するステップと、
    前記第1の鍵をハッシュ化して新たな第1の鍵を生成し、古い第1の鍵を消去するステップと、
    前記の新たな第1の鍵、前記の新たな第1の鍵がこれまでハッシュ化された回数、および前記プログラムを前記の新たな鍵暗号化鍵で暗号化して新たな暗号化鍵情報を生成するし、二次記憶装置に格納する格納ステップとをさらに含む
    ことを特徴とする請求項1記載の電子データの証拠性を確保する方法。
  3. 前記格納ステップの後、前記の新たな鍵暗号化鍵を消去するステップをさらに含むことを特徴とする請求項2記載の電子データの証拠性を確保する方法。
  4. 前記生成ステップが、
    前記の求めた第1の鍵を乱数回だけハッシュ演算をするステップと、
    前記の乱数回だけハッシュ演算した第1の鍵を用いて前記の新たな認証コードを生成する生成ステップとを含む
    ことを特徴とする請求項1記載の電子データの証拠性を確保する方法。
  5. 前記格納ステップの後、前記の新たな鍵暗号化鍵を読み書き可能な可搬型記憶媒体に記録するステップと、
    処理対象データの待機中に、前記可搬型記憶媒体に記録された前記の新たな鍵暗号化鍵を用いて前記の乱数回だけハッシュ演算した第1の鍵を暗号化するステップと、
    前記処理対象データが発生した場合、前記可搬型記憶媒体に記録された前記の新たな鍵暗号化鍵を用いて、前記の暗号化された第1の鍵を復号するステップとをさらに含む
    ことを特徴とする請求項4記載の電子データの証拠性を確保する方法。
  6. 前記の個人識別番号を入力させるステップが、指紋や虹彩などバイオメトリクス機器により前記個人識別番号の入力者を識別するステップを含む
    ことを特徴とする請求項1乃至5の何れか一項に記載の電子データの証拠性を確保する方法。
  7. 前記鍵暗号化鍵を生成する場合、乱数を用いず前記個人識別番号のみにより前記鍵暗号化鍵を生成する
    ことを特徴とする請求項1乃至6の何れか一項に記載の電子データの証拠性を確保する方法。
  8. 前記鍵暗号化鍵を予め読み書き又は読み込み可能な記憶媒体に格納し、前記鍵暗号化鍵を復号する際に、前記の読み書き又は読み込み可能な記憶媒体から前記鍵暗号化鍵を読み込んで、これを復号化する
    ことを特徴とする請求項1乃至7の何れか一項に記載の電子データの証拠性を確保する方法。
  9. 前記の生成した鍵暗号化鍵を用いる代わりに、前記鍵暗号化鍵を読み書き又は読み込み可能な記憶媒体に予め格納しておき、前記認証コードを生成する際に、前記の読み書き又は読み込み可能な記憶媒体から前記鍵暗号化鍵を読み込んで使用する
    ことを特徴とする請求項1乃至8の何れか一項に記載の電子データの証拠性を確保する方法。
  10. 前記第1の鍵を生成するプログラムを予め前記の読み書き又は読み込み可能な記憶媒体に格納しておき、前記認証コードを生成する際に、前記の読み書き又は読み込み可能な記憶媒体から前記プログラムを読み込んで前記第1の鍵を生成し、前記の読み込んだ第1の鍵により認証コードを生成する
    ことを特徴とする請求項9記載の電子データの証拠性を確保する方法。
  11. 請求項1乃至5の何れか一項に記載の電子データの証拠性を確保する方法を用いた電子データ保管装置。
  12. 電子データ保管装置において電子データの証拠性を認証コードと電子署名で確保するプログラムであり、
    前記認証コードを生成するための第1の鍵と前記認証コードを生成するプログラムを一時の鍵暗号化鍵で暗号化した暗号化鍵情報をアクセス制限をされた二次記憶装置に格納するステップと、
    前記鍵暗号化鍵を生成するための乱数を読み書き可能な記憶媒体に格納するステップと、
    新たな認証コードを生成する場合、個人識別番号を入力させるステップと、
    前記の入力された個人識別番号と前記の読み書き可能な記憶媒体に格納されている前記乱数から鍵暗号化鍵を生成するステップと、
    前記の生成した鍵暗号化鍵を用いて前記暗号化鍵情報を復号することにより前記第1の鍵を求めるステップと、
    前記の求めた第1の鍵を用いて前記の新たな認証コードを生成する生成ステップとからなることを特徴とする電子データの証拠性を確保するプログラム。
  13. 前記鍵暗号化鍵を生成する場合、乱数を用いず前記個人識別番号のみにより前記鍵暗号化鍵を生成する
    ことを特徴とする請求項12記載の電子データの証拠性を確保するプログラム。
  14. 前記鍵暗号化鍵を予め読み書き又は読み込み可能な記憶媒体に格納し、前記鍵暗号化鍵を復号する際に、前記の読み書き又は読み込み可能な記憶媒体から前記鍵暗号化鍵を読み込んで、これを復号化する
    ことを特徴とする請求項12または13記載の電子データの証拠性を確保するプログラム。
  15. 前記の生成した鍵暗号化鍵を用いる代わりに、前記鍵暗号化鍵を読み書き又は読み込み可能な記憶媒体に予め格納しておき、前記認証コードを生成する際に、前記の読み書き又は読み込み可能な記憶媒体から前記鍵暗号化鍵を読み込んで使用する
    ことを特徴とする請求項12乃至14の何れか一項に記載の電子データの証拠性を確保するプログラム。
  16. 前記第1の鍵を生成するプログラムを予め前記の読み書き又は読み込み可能な記憶媒体に格納しておき、前記認証コードを生成する際に、前記の読み書き又は読み込み可能な記憶媒体から前記プログラムを読み込んで前記第1の鍵を生成し、前記の読み込んだ第1の鍵により認証コードを生成する
    ことを特徴とする請求項15記載の電子データの証拠性を確保するプログラム。
JP2004134273A 2004-04-28 2004-04-28 電子データ保管装置、プログラム Expired - Lifetime JP4765262B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004134273A JP4765262B2 (ja) 2004-04-28 2004-04-28 電子データ保管装置、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004134273A JP4765262B2 (ja) 2004-04-28 2004-04-28 電子データ保管装置、プログラム

Publications (2)

Publication Number Publication Date
JP2005318299A true JP2005318299A (ja) 2005-11-10
JP4765262B2 JP4765262B2 (ja) 2011-09-07

Family

ID=35445267

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004134273A Expired - Lifetime JP4765262B2 (ja) 2004-04-28 2004-04-28 電子データ保管装置、プログラム

Country Status (1)

Country Link
JP (1) JP4765262B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011105350A1 (ja) * 2010-02-24 2011-09-01 ルネサスエレクトロニクス株式会社 無線通信装置及び認証処理方法
JP2013026840A (ja) * 2011-07-21 2013-02-04 Nippon Telegr & Teleph Corp <Ntt> 鍵管理方法、鍵管理システム、端末装置、鍵管理装置及びコンピュータプログラム
WO2016209536A1 (en) * 2015-06-26 2016-12-29 Intel Corporation Keyed-hash message authentication code processors, methods, systems, and instructions
CN108629207A (zh) * 2017-03-22 2018-10-09 温科尼克斯多夫国际有限公司 基于***设备的信息生成加密密钥的***和方法
WO2021181736A1 (ja) * 2020-03-13 2021-09-16 株式会社ソリトンシステムズ 機密データ管理装置、プログラム及び記録媒体

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6278644A (ja) * 1985-10-02 1987-04-10 Matsushita Electric Ind Co Ltd パスワ−ド記憶装置
JPH09130376A (ja) * 1995-11-06 1997-05-16 Nippon Telegr & Teleph Corp <Ntt> 利用者パスワード認証方法
JP2000010931A (ja) * 1998-06-19 2000-01-14 Oki Electric Ind Co Ltd ログインシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6278644A (ja) * 1985-10-02 1987-04-10 Matsushita Electric Ind Co Ltd パスワ−ド記憶装置
JPH09130376A (ja) * 1995-11-06 1997-05-16 Nippon Telegr & Teleph Corp <Ntt> 利用者パスワード認証方法
JP2000010931A (ja) * 1998-06-19 2000-01-14 Oki Electric Ind Co Ltd ログインシステム

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011105350A1 (ja) * 2010-02-24 2011-09-01 ルネサスエレクトロニクス株式会社 無線通信装置及び認証処理方法
US9432197B2 (en) 2010-02-24 2016-08-30 Renesas Electronics Corporation Wireless communications device and authentication processing method
JP2013026840A (ja) * 2011-07-21 2013-02-04 Nippon Telegr & Teleph Corp <Ntt> 鍵管理方法、鍵管理システム、端末装置、鍵管理装置及びコンピュータプログラム
WO2016209536A1 (en) * 2015-06-26 2016-12-29 Intel Corporation Keyed-hash message authentication code processors, methods, systems, and instructions
US10313129B2 (en) 2015-06-26 2019-06-04 Intel Corporation Keyed-hash message authentication code processors, methods, systems, and instructions
CN108629207A (zh) * 2017-03-22 2018-10-09 温科尼克斯多夫国际有限公司 基于***设备的信息生成加密密钥的***和方法
CN108629207B (zh) * 2017-03-22 2024-02-20 温科尼克斯多夫国际有限公司 基于***设备的信息生成加密密钥的***和方法
WO2021181736A1 (ja) * 2020-03-13 2021-09-16 株式会社ソリトンシステムズ 機密データ管理装置、プログラム及び記録媒体
US11924337B2 (en) 2020-03-13 2024-03-05 Soliton Systems K.K. Sensitive data management system

Also Published As

Publication number Publication date
JP4765262B2 (ja) 2011-09-07

Similar Documents

Publication Publication Date Title
JP3748155B2 (ja) 改ざん防止/検出機能を有するファイル管理システム
US7210043B2 (en) Trusted computer system
US20130124861A1 (en) Shielding a sensitive file
EP1365306A2 (en) Data protection system
CN102948114A (zh) 用于访问加密数据的单次使用认证方法
JP2001117823A (ja) アクセス資格認証機能付きデータ記憶装置
JP2008072717A (ja) 埋込認証を有するハードディスク・ストリーミング暗号操作
JP2000151583A (ja) アクセス資格認証方法および装置ならびに証明用補助情報作成方法および装置
JP4662138B2 (ja) 情報漏洩防止方法及びシステム
JPH10312335A (ja) データ処理方法およびデータ処理装置
CN105740725A (zh) 一种文件保护方法与***
CN109214204B (zh) 数据处理方法和存储设备
JP2005197912A (ja) 情報開示制御方法、情報開示制御プログラム、ならびに、耐タンパ装置
CN110837634B (zh) 基于硬件加密机的电子签章方法
JP4266412B2 (ja) データ保存システム
JP2007094879A (ja) オペレーティングシステム用基本プログラムの認証システム、これに用いるコンピュータ、およびコンピュータプログラム
JP4765262B2 (ja) 電子データ保管装置、プログラム
JP2007188445A (ja) 情報漏えい防止システム及び情報漏えい防止方法
CN115913560B (zh) 一种密件授权和使用的***
CN101099207A (zh) 带有水印功能的便携数据载体
JP4104801B2 (ja) Icカード読取装置及びicカードシステム
JP4710232B2 (ja) 電子データの証拠性を保証しながら同データを保管する電子データ保管システム
Xu et al. A PKI based secure audit web server
JP2006221259A (ja) 外部記憶媒体へのデータ記録方式とこれに使用するデータ転送制御インタフェース・ソフトウェアー
TWI444849B (zh) 透過伺服器驗證並授權解密以監控個資檔案之系統及方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100622

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110420

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: 20110517

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110530

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4765262

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: 20140624

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term