JP4829654B2 - データ秘匿方法、秘匿データ復元方法、データ秘匿プログラム、秘匿データ復元プログラム、コンピュータ - Google Patents

データ秘匿方法、秘匿データ復元方法、データ秘匿プログラム、秘匿データ復元プログラム、コンピュータ Download PDF

Info

Publication number
JP4829654B2
JP4829654B2 JP2006086633A JP2006086633A JP4829654B2 JP 4829654 B2 JP4829654 B2 JP 4829654B2 JP 2006086633 A JP2006086633 A JP 2006086633A JP 2006086633 A JP2006086633 A JP 2006086633A JP 4829654 B2 JP4829654 B2 JP 4829654B2
Authority
JP
Japan
Prior art keywords
data
password
original data
digest
original
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
JP2006086633A
Other languages
English (en)
Other versions
JP2007264841A (ja
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006086633A priority Critical patent/JP4829654B2/ja
Publication of JP2007264841A publication Critical patent/JP2007264841A/ja
Application granted granted Critical
Publication of JP4829654B2 publication Critical patent/JP4829654B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、データ秘匿方法、秘匿データ復元方法、データ秘匿プログラム、秘匿データ復元プログラム、情報処理装置に関し、たとえば、電子的にデータを格納あるいは通信するシステムにおけるデータ秘匿に適用して有効な技術に関する。
近年、文字コード、画像データ等の様々な種類のデータがコンピュータで扱われるようになるのに伴い、取り扱われるデータ量も増大している。このため、蓄積媒体や通信媒体では、データの符号化による圧縮が一般化している。
一方、インターネットおよび携帯端末の普及に伴い、データを格納・通信するときのセキュリティに対する意識が高くなってきている。
このため、データの格納・通信にデータ量削減だけでなく、データ秘匿機能が必要とされるケースが増えてきた。
この要求に答え、参考技術として、データ圧縮を行うソフトウェアにパスワード機能をつけることが考えられる。すなわち、図9Aに示されるように、圧縮データにパスワード情報から生成されたハッシュ値を添付し、復元側では、図9Bに示されるように、圧縮データに添付されているハッシュ値と、復元時に入力されるパスワードのハッシュ値とが一致した場合のみ圧縮データの復元処理を行うものである。
前述した参考技術では、圧縮データから直接復元する手段を封じたとしても、パスワード情報を一般的なエディタで書き換えることができ、簡単に展開できてしまうという技術的課題があった。
具体的な展開方法を図10に示す。まず、図10の左側のように、適当なデータを2つの異なるパスワードaaaとbbbで圧縮し、2つの圧縮データを比較して異なる位置と内容(「AAA」と「BBB」)を確認する。
次に、図10の右側のように、パスワードが未知の圧縮データCに対して、さきほどの求めた位置のビット列を例えばパスワードaaaに対応した「AAA」の内容に書き換えることで、圧縮データCは、パスワードaaaで展開できるように加工することができる。
このように、単に、パスワードを圧縮データに付加しただけでは、簡単にデータ秘匿機能が無効になってしまう。
なお、特許文献1には、原本データの先頭部に一定長の乱数データを付加した状態で動的可変長符号化によるデータ圧縮を行うことで、圧縮データの生成側と復元側とで情報を共有することなく、圧縮データの秘匿性を向上させる技術が開示されている。
しかし、この特許文献1の技術では、パスワードを付加するデータ秘匿技術については言及していない。
特許文献2には、ICカード内の暫く不要なアプリケーションを、圧縮および暗号化して外部媒体に保存することで、ICカード内の記憶容量を有効に活用しようとする技術が開示されているが、暗号鍵の煩雑な管理等が必要になり、パスワード付きで圧縮データ等の簡易な秘匿性を実現するものではない。
特許文献3には、ユーザIDおよび当該ユーザIDと暗証番号から生成されたハッシュ値を第1の照合用データとしてカード等の媒体に格納しておき、当該媒体と媒体の所有者が入力した暗証番号と、前記媒体内のユーザIDとから生成された第2の照合用データと、媒体内の第1の照合用データとを照合することで本人確認を行う技術が開示されている。
しかし、この特許文献3の場合も、圧縮データ等にパスワードを添付するデータ秘匿化に関しては言及がない。
特開2005−217842号公報 特開2002−279376号公報 特開2002−353958号公報
本発明の目的は、パスワード入力なしに直接に原本データを復元することを許さない環境における簡易的なデータ秘匿機能を実現することにある。
本発明の他の目的は、原本データを符号化した符号化データにパスワードを添付することによって原本データの簡易的なデータ秘匿を行う場合の秘匿性能の向上を実現することにある。
本発明の第1の観点は、原本データから秘匿データを生成するデータ秘匿方法であって、コンピュータに、パスワードと前記原本データを準備する第1ステップと、前記パスワードと前記原本データからダイジェストを計算する第2ステップと、前記原本データから符号化データを生成する第3ステップと、前記ダイジェストと前記符号化データを前記秘匿データとして出力する第4ステップと、実行させ、前記第1ステップでは、ユニークで推測不可なビット列を前記原本データに付加し、前記第2ステップでは、前記原本データに付加される前記ビット列とパスワードから前記ダイジェストを計算し、前記第3ステップでは、前記原本データおよび前記ビット列から前記符号化データを生成するデータ秘匿方法を提供する。
本発明の第2の観点は、秘匿データから元の原本データを生成する秘匿データ復元方法であって、コンピュータに、パスワードと秘匿データを準備する第1ステップと、前記秘匿データを第1ダイジェストと符号化データに分割する第2ステップと、前記符号化データから前記原本データを復元する第3ステップと、前記パスワードと復元した前記原本データから第2ダイジェストを計算する第4ステップと、前記第2ダイジェストと前記第1ダイジェストとが一致する場合に、復元した前記原本データを出力し、一致しない場合に復元した前記原本データを出力しない第5ステップと、を実行させる秘匿データ復元方法を提供する。
本発明の第3の観点は、原本データから秘匿データを生成するデータ秘匿プログラムであって、コンピュータに、パスワードと前記原本データを準備する第1ステップと、前記パスワードと前記原本データからダイジェストを計算する第2ステップと、前記原本データから符号化データを生成する第3ステップと、前記ダイジェストと前記符号化データを前記秘匿データとして出力する第4ステップと、を実行させ、前記第1ステップでは、ユニークで推測不可なビット列を前記原本データに付加し、前記第2ステップでは、前記原本データに付加される前記ビット列とパスワードから前記ダイジェストを計算し、前記第3ステップでは、前記原本データおよび前記ビット列から前記符号化データを生成するデータ秘匿プログラムを提供する。
本発明の第4の観点は、秘匿データから元の原本データを生成する秘匿データ復元プログラムであって、コンピュータに、パスワードと秘匿データを準備する第1ステップと、前記秘匿データを第1ダイジェストと符号化データに分割する第2ステップと、前記符号化データから前記原本データを復元する第3ステップと、前記パスワードと復元した前記原本データから第2ダイジェストを計算する第4ステップと、前記第2ダイジェストと前記第1ダイジェストとが一致する場合に、復元した前記原本データを出力し、一致しない場合に復元した前記原本データを出力しない第5ステップと、を実行させる秘匿データ復元プログラムを提供する。
本発明の第5の観点は、原本データから秘匿データを生成する情報処理装置であって、パスワードを入力するパスワード入力部と、前記原本データを入力する原本データ入力部と、前記パスワードと前記原本データからダイジェストを計算するダイジェスト作成部と、前記原本データから符号化データを生成する符号化部と、前記ダイジェストと前記符号化データを前記秘匿データとして出力する出力部と、を含む秘匿データ生成論理を備えた情報処理装置を提供する。
本発明の第6の観点は、原本データから秘匿データを生成する情報処理装置であって、パスワードを入力するパスワード入力部と、ユニークで推測不可なビット列を入力するビット列入力部と、前記パスワードと前記ビット列入力部にて入力した前記ビット列からダイジェストを計算するダイジェスト作成部と、前記原本データを入力する原本データ入力部と、前記原本データに前記ビット列入力部にて入力した前記ビット列を付与するビット列付与部と、前記原本データに前記ビット列を付与したデータから符号化データを生成する符号化部と、前記ダイジェストと前記符号化データを前記秘匿データとして出力する出力部と、を含む秘匿データ生成論理を備えた情報処理装置を提供する。
本発明の第7の観点は、秘匿データから元の原本データを生成する情報処理装置であって、パスワードを入力するパスワード入力部と、前記秘匿データを入力し、第1ダイジェストと符号化データに分割する秘匿データ入力部と、前記符号化データから前記原本データを復元する復元部と、前記パスワードと前記復元部にて復元した前記原本データから第2ダイジェストを計算するダイジェスト作成部と、前記第2ダイジェストと前記第1ダイジェストとを比較するダイジェスト比較部と、前記ダイジェスト比較部にて2つの前記第2および第1ダイジェストが一致した場合に前記原本データの出力を許可する出力許可部と、前記出力許可部にて出力許可された場合に前記復元部にて復元した前記原本データを出力する出力部と、を含む秘匿データ復元論理を備えた情報処理装置を提供する。
本発明の第8の観点は、秘匿データから元の原本データを生成する情報処理装置であって、パスワードを入力するパスワード入力部と、前記秘匿データを入力し、第1ダイジェストと符号化データに分割する秘匿データ入力部と、前記符号化データからビット列が付与された前記原本データを復元する復元部と、前記復元部にて復元したデータから前記原本データと付与された前記ビット列とを分割するビット列分割部と、前記パスワードと前記ビット列から第2ダイジェストを計算するダイジェスト作成部と、と前記第2ダイジェストと前記第1ダイジェストとを比較するダイジェスト比較部と、前記ダイジェスト比較部にて2つの前記第2および第1ダイジェストが一致した場合に前記原本データの出力を許可する出力許可部と、前記出力許可部にて出力許可された場合に前記原本データを出力する出力部と、を含む秘匿データ復元論理を備えた情報処理装置を提供する。
本発明では、たとえば、エディタでは書換えできない「復元制御コード」を圧縮データ等の符号化データに添付する方法を開示する。圧縮前の原本データの全部または一部とパスワードからダイジェスト(ハッシュ値)をとり、このダイジェストを「復元制御コード」として、圧縮データに添付する。
あるいは、所望の方法でユニークに生成されたビット列を原本データに添付するとともに、このビット列を用いて圧縮時のダイジェストを生成して「復元制御コード」として、圧縮データに添付する。
復元時には、保護されたメモリ上に圧縮データを復元し、復元した原本データ(あるいは圧縮時に付加されたユニークなビット列)および復元時に入力されたパスワードから作成されたダイジェストと、圧縮データに添付されたダイジェストとを比較し、一致するときにのみ原本データを出力する。
このように、本発明では、原本データまたは当該原本データに付加されたユニークなビット列を「復元制御コード」の生成に用いているため、原本データを入手せずにパスワードを変更することはできず、パスワードを変更することはできない。このことから、圧縮データから直接復元できない環境を準備するだけで、簡単に、秘匿性能の高いデータ秘匿機能を実現することができる。
本発明によれば、パスワード入力なしに直接に原本データを復元することを許さない環境における簡易的なデータ秘匿機能を実現することができる。
また、原本データを符号化した符号化データにパスワードを添付することによって原本データの簡易的なデータ秘匿を行う場合の秘匿性能の向上を実現することができる。
以下、図面を参照しながら、本発明の実施の形態について詳細に説明する。
図1Aは、本発明の第1実施の形態であるデータ秘匿方法、データ秘匿プログラムの作用の一例を示す概念図である。図1Bは、本発明の第1実施の形態である秘匿データ復元方法、秘匿データ復元プログラムの作用の一例を示す概念図である。
図2Aは、本発明の第1実施の形態であるデータ秘匿方法を実施するデータ秘匿プログラムの機能構成の一例を示す概念図である。図2Bは、本発明の第1実施の形態である秘匿データ復元方法を実施する秘匿データ復元プログラムの機能構成の一例を示す概念図である。
図3Aは、本発明の第1実施の形態であるデータ秘匿方法、データ秘匿プログラムの作用の一例を示すフローチャートである。図3Bは、本発明の第1実施の形態である秘匿データ復元方法、秘匿データ復元プログラムの作用の一例を示すフローチャートである。
図1Aに例示されるように、本実施の形態のデータ秘匿方法では、原本データ10と、この原本データ10を秘匿するためのパスワード20を準備する。
そして、パスワード20と、原本データ10の一部または全部を用いて、一方向ハッシュ関数にてダイジェストとしてのハッシュ値32を生成する。
同時に、原本データ10を所望のアルゴリズムで、たとえばデータ圧縮等の符号化を行って符号データ31を生成する。
そして、ハッシュ値32と符号データ31を含む秘匿データ30を出力する。
一方、図1Bに例示されるように、この秘匿データ30を復元する本実施の形態の秘匿データ復元方法では、まず、秘匿データ30とパスワード21を準備する。
そして、秘匿データ30からハッシュ値32と符号データ31を分離して取り出し、符号データ31から原本データ10を復号する。
さらに、この原本データ10とパスワード21から一方向ハッシュ関数にてハッシュ値40を生成する。
そして、生成されたハッシュ値40と、秘匿データ30に添付されていたハッシュ値32とを照合し、一致している場合のみ、原本データ10を出力する。
すなわち、ハッシュ値40とハッシュ値32が一致するのは、秘匿データ30の生成時のパスワード20と、復元時のパスワード21が一致する場合のみであり、これにより、原本データ10をデータ圧縮で符号化した符号データ31を含む秘匿データ30の秘匿性が維持される。
また、ハッシュ値32とハッシュ値40は、それぞれパスワード20と原本データ10、およびパスワード21と原本データ10から生成されるため、原本データ10を知ることなしに、パスワード20から生成されたハッシュ値32を改竄することは困難であり、秘匿性も向上する。
なお、本実施の形態では、ハッシュ値32やハッシュ値40等のダイジェストの生成には、例えばSHA−1やHMACなどを用いるが、次の(1)および(2)の2つの条件を保証する方法であればなんでもよい。(1)ダイジェスト(ハッシュ値32)から原本データ10やパスワード20が推測できない。(2)原本データ10やパスワード20が1ビットでも変更されれば、ダイジェスト(ハッシュ値32)も変更される。
また、パスワード20、パスワード21は、手入力の文字列でも、スマートカード等に保管されたビット列など、なんらかの認証サービスから提供されるビット列でもよい。
本実施の形態の場合、原本データ10の符号化には、例えばスプレイ符号化(圧縮方法の1つ)を用いるが、復元しないと原本データ10の内容がわからない処理であれば他の符号化方法でもよい。例えば、一対一に対応づけられた変換テーブルに基づいてビット列を変換するスクランブル処理を用いてもよい。
図2Aに例示されるように、本実施の形態のデータ秘匿方法を実施するデータ秘匿プログラム200は、パスワード入力部211、原本データ入力部212、ダイジェスト作成部213、符号化部214、秘匿データ出力部215を含んでいる。
パスワード入力部211は、ユーザ等からのパスワード20を受け付ける。
原本データ入力部212は、原本データ10を入力する。
ダイジェスト作成部213は、パスワード入力部211から入力されたパスワード20と原本データ入力部212から入力された原本データ10からダイジェストとしてハッシュ値32を生成する。
符号化部214は、原本データ入力部212から入力された原本データ10に対してデータ圧縮等の符号化を実施し符号データ31として出力する。
秘匿データ出力部215は、符号化部214から出力された符号データ31と、ダイジェスト作成部213から出力されたハッシュ値32を併合して秘匿データ30として出力する。
図2Bに例示されるように、本実施の形態の秘匿データ復元方法を実施する秘匿データ復元プログラム300は、パスワード入力部311、秘匿データ入力部312、ダイジェスト作成部313、復元部314、ダイジェスト比較部315、出力許可部316、原本データ出力部317を含んでいる。
パスワード入力部311は、パスワード21の入力を受け付ける。
秘匿データ入力部312は、秘匿データ30の入力を受け付け、秘匿データ30を符号データ31とハッシュ値32に分離して出力する。
復元部314は、秘匿データ入力部312から出力される符号データ31に復号処理(データ伸長処理)を実施して原本データ10を生成する。
ダイジェスト作成部313は、パスワード入力部311から入力されたパスワード21と、復元部314から入力された原本データ10に基づいて、ハッシュ値40を生成する。
ダイジェスト比較部315は、ダイジェスト作成部313から出力されたハッシュ値40と、秘匿データ30に含まれていたハッシュ値32と照合して両者の一致/不一致を判定する。
出力許可部316は、ダイジェスト比較部315におけるハッシュ値40とハッシュ値32の照合結果が一致である場合にのみ、原本データ出力部317に対して、原本データ10の出力を許可する。
原本データ出力部317は、復元部314から受け取った原本データ10を保持し、出力許可部316から許可された場合にのみ、当該原本データ10を外部に出力する。
図4は、本発明の一実施の形態である情報処理装置の構成の一例を示す概念図である。
本実施の形態の情報処理装置100は、中央処理装置101、主記憶102、外部記憶装置103、表示装置104、ユーザ入力装置105、ネットワークインタフェース106を含んでいる。
中央処理装置101は、マイクロプロセッサ等で構成され、主記憶102に実装されたソフトウェアを実行することで、所望の情報処理機能を実現する。
主記憶102は、中央処理装置101がアクセスするソフトウェアやデータを保持する。
本実施の形態の場合には、主記憶102には、基本ソフトウェアであるオペレーティングシステム120が実装され、このオペレーティングシステム120を実行することで、情報処理装置100の全体を制御する。
また、オペレーティングシステム120は、主記憶102のデータに対して外部から許可なくアクセスすることを阻止するメモリ保護機能を実現する。
オペレーティングシステム120の管理下で動作するアプリケーションとして、上述のデータ秘匿プログラム200、秘匿データ復元プログラム300が実装される。
なお、データ秘匿プログラム200、秘匿データ復元プログラム300の機能は、オペレーティングシステム120の一部として実装してもよい。
外部記憶装置103は、オペレーティングシステム120、データ秘匿プログラム200、秘匿データ復元プログラム300等のソフトウェアや原本データ10、秘匿データ30等のデータを持久的に記憶する。
オペレーティングシステム120、データ秘匿プログラム200、秘匿データ復元プログラム300等のソフトウェアは、必要に応じて主記憶102に読み込まれ、中央処理装置101によって実行される。
表示装置104は、情報処理装置100を利用するユーザに情報を可視化して提示する。
ユーザ入力装置105は、ユーザが情報処理装置100に情報を入力するために用いられる。本実施の形態の場合、パスワード20、パスワード21は、必要に応じてユーザ入力装置105から入力することができる。
ネットワークインタフェース106は、外部の情報ネットワーク107との間における情報の授受を制御する。
このような本実施の形態の情報処理装置100において、たとえば、外部記憶装置103に格納されている原本データ10から秘匿データ30を生成する場合には、データ秘匿プログラム200を外部記憶装置103から主記憶102にロードして実行する。
そして、データ秘匿プログラム200に対して、外部記憶装置103から原本データ10を入力し、ユーザ入力装置105からはパスワード20を入力して、上述のようにして秘匿データ30を生成する。
生成された秘匿データ30は、外部記憶装置103に格納されるか、必要に応じて、ネットワークインタフェース106を経由して情報ネットワーク107に送出される。いずれの場合も、パスワード20を知らない限り、原本データ10を得ることはできず、秘匿データ30の秘匿性は維持される。
一方、秘匿データ30から原本データ10を復元する場合は、以下のようになる。
まず、外部記憶装置103から主記憶102に秘匿データ復元プログラム300をロードして実行する。
そして、外部記憶装置103またはネットワークインタフェース106を経由して到来した秘匿データ30を秘匿データ復元プログラム300に入力するとともに、ユーザ入力装置105からパスワード21を入力する。
秘匿データ復元プログラム300は、主記憶102上に秘匿データ30から原本データ10、ハッシュ値32を生成し、さらに、原本データ10とパスワード21に基づいてハッシュ値40を生成し、ハッシュ値32とハッシュ値40が一致するか、(すなわち、秘匿データ30の生成に用いられたパスワード20と、パスワード21が一致するか否か)を検証し、パスワード21が正しいと判定された場合には、原本データ10を外部記憶装置103や、表示装置104等に出力する。
なお、主記憶102はオペレーティングシステム120によって保護されているため、パスワード21の判定課程で、主記憶102上に展開されている原本データ10を外部から覗き見することはできず、ダイジェスト比較部315および出力許可部316によって許可された場合にのみ、ユーザは原本データ出力部317から出力された原本データ10を入手できる。
上述の本実施の形態におけるデータ秘匿プログラム200の動作を図3Aのフローチャートを参照して説明する。
まず、パスワード入力部211は、ユーザからのパスワード20の入力を受け付け、変数Password[]に格納する(ステップ411)。
また、原本データ入力部212は、原本データ10を読み込んで、変数Original[]に格納する(ステップ412)。
次に、変数Password[]と変数Original[]のデータから、ダイジェスト(ハッシュ値32)を計算し、変数D[]に格納する(ステップ413)。
ダイジェスト作成部213の処理と並行して、符号化部214は、変数Original[]のデータを圧縮し、変数Compress[]に格納する(ステップ414)。
秘匿データ出力部215は、変数Compress[]の符号データ31と、変数D[]のハッシュ値32を連結して、秘匿データ30として出力する(ステップ415)。
こうして生成された秘匿データ30を利用するために用いられる秘匿データ復元プログラム300の動作を、図3Bを参照して説明する。
パスワード入力部311は、秘匿データ30に含まれる原本データ10の利用を希望するユーザからのパスワード21の入力を受け付け、変数Password[]に格納する(ステップ421)。
秘匿データ入力部312は、秘匿データ30を読み込んで、符号データ31とハッシュ値32に分離し、それぞれ変数Compress[]および変数D1[]に格納する(ステップ422)。
復元部314は、変数Compress[]のデータから原本データ10を復元し、変数Original[]に格納する(ステップ423)。
ダイジェスト作成部313は、変数Password[]と変数Original[]からダイジェスト(ハッシュ値40)を計算し、変数D2[]に格納する(ステップ424)。
ダイジェスト比較部315は、変数D1[]と変数D2[]の内容が等しいか否かを判別し(ステップ425)、両者が等しい場合には、出力許可部316を介して原本データ出力部317に出力許可の指令を出し、これを受けた原本データ出力部317は、変数Original[]から原本データ10を出力する(ステップ426)。
これにより、正しいパスワード21を入力したユーザは、秘匿データ30に含まれていた原本データ10を利用することが可能になる。
上述の説明では、原本データ10をそのままのサイズで符号データ31に圧縮する場合を例示したが、原本データ10のサイズが大きい場合には、変数Compress[]や変数Original[]の設定に必要な主記憶102におけるメモリサイズが大きくなり、経済的でない。
そこで、本第1実施の形態の変形例として、図5Aに例示されるように、原本データ10を複数のブロックに分割して個々のブロックから秘匿データ30を生成する場合について説明する。
すなわち、まず、パスワード入力部211は、ユーザからのパスワード20の入力を受け付け、変数Password[]に格納する(ステップ431)。
また、原本データ入力部212は、原本データ10から、分割単位が設定された変数BlockSizeに設定された長さのデータを、原本データ10の先頭側から読み込んで、変数Original[]に格納する(ステップ432)。この時の変数Original[]の設定に必要な主記憶102のメモリサイズは、原本データ10のデータ長に関係なく、変数BlockSizeに指定されたデータ長分で済む。
次に、変数Password[]と変数Original[]のデータから、ダイジェスト(ハッシュ値32)を計算し、変数D[]に格納する(ステップ433)。
ダイジェスト作成部213の処理と並行して、符号化部214は、変数Original[]のデータを圧縮し、変数Compress[]に格納する(ステップ434)。この変数Compress[]の実装に必要な主記憶102のメモリサイズも、原本データ10のデータ長に関係なく、小さくすることができる。
秘匿データ出力部215は、変数Compress[]の符号データ31と、変数D[]のハッシュ値32を連結して、秘匿データ30として出力する(ステップ435)。
このステップ432〜ステップ435の処理を、原本データ10を分割して生成される全ブロックについて実行する(ステップ436)。
個々のブロック単位に出力される複数の秘匿データ30を、たとえばファイルに格納する場合には、秘匿データ出力部215は、ファイル名として原本データ10からブロックへの分割順序を示す符号を付与することができる。
このように、本変形例のデータ秘匿プログラム200の場合には、原本データ10のデータ長に関係なく、原本データ10から秘匿データ30を生成するデータ秘匿プログラム200における変数Original[]、変数Compress[]等の実装に必要な主記憶102のメモリサイズを小さくすることができる、という利点がある。
上述のように、原本データ10を分割したブロック単位に生成された複数の秘匿データ30を復元する場合の秘匿データ復元プログラム300の動作を図5Bのフローチャートを参照して説明する。
パスワード入力部311は、ブロック単位に生成された複数の秘匿データ30に分散して含まれる原本データ10の利用を希望するユーザからのパスワード21の入力を受け付け、変数Password[]に格納する(ステップ441)。
秘匿データ入力部312は、複数の秘匿データ30の各々を、分割時の順番に読み込んで、符号データ31とハッシュ値32に分離し、それぞれ変数Compress[]および変数D1[]に格納する(ステップ442)。
復元部314は、変数Compress[]のデータから原本データ10を復元し、変数Original[]に格納する(ステップ443)。
ダイジェスト作成部313は、変数Password[]と変数Original[]からダイジェスト(ハッシュ値40)を計算し、変数D2[]に格納する(ステップ444)。
ダイジェスト比較部315は、変数D1[]と変数D2[]の内容が等しいか否かを判別し(ステップ445)、両者が等しい場合には、出力許可部316を介して原本データ出力部317に出力許可の指令を出し、これを受けた原本データ出力部317は、変数Original[]から原本データ10を出力する(ステップ446)。なお、この時、原本データ出力部317は、先に出力されている原本データ10の末尾に順次連結されるように原本データ10を出力する。
このステップ442〜ステップ446の処理を、分割単位の複数のブロックに対応した全ての秘匿データ30に対して反復する(ステップ447)。
この秘匿データ復元プログラム300の場合にも、複数の秘匿データ30から最終的に得られる原本データ10のデータ長に関係なく、変数Original[]、変数Compress[]等の実装に必要な主記憶102のメモリサイズを小さくすることができる、という利点がある。
図6Aは、本発明の第2実施の形態であるデータ秘匿方法の一例を示す概念図である。
図6Bは、本発明の第2実施の形態である秘匿データ復元方法の一例を示す概念図である。
この図6Aおよび図6Bの場合には、原本データ10の一部にユニークなビット列を付与し、このビット列とパスワードとに基づいてデータ秘匿および秘匿データ復元を実現する場合を例示している。
すなわち、図6Aに例示される本実施の形態のデータ秘匿方法では、ユニークで推測不可能なビット列50を用意し、このビット列50を原本データ10の両端に付加して符号化(圧縮)することで、符号データ61を生成する。
また、ユーザが入力したパスワード20とビット列50から一方向ハッシュ関数でハッシュ値62を生成する。
そして、符号データ61とハッシュ値62を秘匿データ60として出力する。
一方、図6Bに例示される本実施の形態の秘匿データ復元方法では、上述の図6Aのようにして生成された秘匿データ60と、パスワード21の入力を受け付ける。
そして、秘匿データ60から符号データ61とハッシュ値62を分離し、符号データ61から、原本データ10とその両端に付加されたビット列50を復元する。
そして、パスワード21と、原本データ10の両端に付加されていたビット列50とから一方向ハッシュ関数でハッシュ値70を生成する。
そして、パスワード21とビット列50から生成されたハッシュ値70と、秘匿データ60に随伴してきたハッシュ値62を照合し、両者が一致した場合に、原本データ10を出力する。
図7Aは、図6Aに例示したデータ秘匿方法を実現するデータ秘匿プログラム201の構成例を示す概念図である。
このデータ秘匿プログラム201の場合には、ビット列50を生成するためのビット列生成部216、および原本データ10にビット列50を付加するビット列付与部217を備えたところが、上述のデータ秘匿プログラム200と異なっている。
これに対応して、ダイジェスト作成部213は、パスワード20とビット列50からハッシュ値62を生成する機能を備えている。
また、ビット列付与部217は、原本データ入力部212から符号化部214に入力される原本データ10の両端にビット列50を付加する機能を備えている。
図7Bは、図6Bに例示した秘匿データ復元方法を実現する秘匿データ復元プログラム301の構成例を示す概念図である。
この秘匿データ復元プログラム301の場合には、復元部314と原本データ出力部317の間に、ビット列分割部318が配置されている点が、上述の秘匿データ復元プログラム300と異なっている。
このビット列分割部318は、復元された原本データ10およびその両端のビット列50から、当該ビット列50を分離し、原本データ10は原本データ出力部317に入力し、ビット列50はダイジェスト作成部313に入力する処理を行う。
また、ダイジェスト作成部313は、パスワード21と、ビット列分割部318から入力されるビット列50を用いてハッシュ値70を生成する機能を備えている。ダイジェスト比較部315は、ハッシュ値70とハッシュ値62を比較する。
図8Aは、上述の図7Aに例示したデータ秘匿プログラム201の作用の一例を示すフローチャートである。
パスワード入力部211は、ユーザからのパスワード20の入力を受け付け、変数Password[]に格納する(ステップ451)。
また、ビット列生成部216は、ユニークで推測不可能なビット列50を生成し、変数R[]に格納する(ステップ452)。
ダイジェスト作成部213は、変数Password[]と変数R[]のデータからダイジェスト(ハッシュ値62)を生成する(ステップ453)。
一方、原本データ入力部212は、原本データ10を取り込み変数Original1[]に格納する(ステップ454)。
ビット列付与部217は、変数Original1[]のデータの先頭と末尾に変数R[]のデータを付加して、変数Original2[]に格納する(ステップ455)。
符号化部214は、変数Original2[]のデータを符号化(圧縮)して、変数Compress2[]に格納する(ステップ456)。
秘匿データ出力部215では、変数Compress2[]と変数D[]のデータを連結して秘匿データ60として出力する(ステップ457)。
図8Bは、上述の図7Bに例示した秘匿データ復元プログラム301の作用の一例を示すフローチャートである。
上述のデータ秘匿プログラム201から出力された秘匿データ60を、秘匿データ復元プログラム301を用いて復元する処理は以下のようになる。
パスワード入力部311は、ユーザからのパスワード20の入力を受け付け、変数Password[]に格納する(ステップ461)。
秘匿データ入力部312は、秘匿データ60を読み込んで、符号データ61とハッシュ値62に分離し、それぞれ、変数Compress2[]と変数D1[]に格納する(ステップ462)。
復元部314は、変数Compress2[]に格納された符号データ61を復元して変数Original2[]に格納する(ステップ463)。
ビット列分割部318は、変数Original2[]のデータの先頭と最後尾のビット列50を分離して変数R[]に格納し、残りの原本データ10を変数Original1[]に格納する(ステップ464)。
ダイジェスト作成部313は、変数Password[]と変数R[]のデータからダイジェスト(ハッシュ値70)を計算して変数D2[]に格納する(ステップ465)。
ダイジェスト比較部315は、変数D1[]と変数D2[]のデータが一致するか判定し、判定結果を出力許可部316に出力する(ステップ466)。
出力許可部316は、ダイジェスト比較部315における変数D1[]と変数D2[]のデータが一致した場合に、原本データ出力部317に出力を許可し、これを受けた原本データ出力部317は、変数Original1[]の原本データ10を外部に出力する(ステップ467)。
本発明の第1実施の形態によれば、パスワード20とともに、原本データ10を、「復元制御コード」として機能するハッシュ値32の生成に用いているため、原本データ10を入手せずにパスワード20を変更することはできず、パスワード20を改竄することはできない。
このことから、秘匿データ30から直接に原本データ10を復元できない環境(たとえば、オペレーティングシステム120によって保護された主記憶102を備えた情報処理装置100)を準備するだけで、簡易に原本データ10の秘匿機能を実現することができる。
上述の第2実施の形態によれば、上述の第1実施の形態と同様の効果が得られるとともに、ダイジェスト生成に使用するデータ量が減り処理負荷が低減する。たとえば、原本データ10そのものの両端部分をダイジェスト生成に用いる代わりにユニークなビット列50を用いるので、原本データ10を含む秘匿データ60の秘匿性が向上する。
すなわち、原本データ10が、たとえば特定のアプリケーションプログラムが出力するデータである場合、原本データ10の先頭や末尾には、当該アプリケーションプログラムが生成したヘッダやトレーラ等の定型的な情報が存在する場合が多い。
従って、秘匿データ60の生成時に、原本データ10の先頭部や末尾のデータをハッシュ値62の生成に用いた場合には、ハッシュ値62は、秘匿用に入力したパスワード20のみに依存して変化することとなり、パスワード20が推測される懸念がある。
これに対して、上述の第2実施の形態では、原本データ10自体の両端部の代わりに、毎回ユニークなビット列50を生成してパスワード20とともにハッシュ値62の生成に用いるので、ハッシュ値62からパスワード20が推測されることが困難となり、秘匿データ60に含まれる原本データ10の秘匿性はより高くなる。
なお、原本データ10にビット列50を付加する第2実施の形態において、入力される原本データ10を複数のブロックに分割して個々のブロック毎にビット列50を付加して、上述のように秘匿データ60を生成してもよいことは言うまでもない。また、図6Aおよび図6Bでは付与するビット列を先頭と後尾とで同じにしているが、付与するビット列を各々異なるビット列としてもよい。
なお、本発明は、上述の実施の形態に例示した構成に限らず、その趣旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
符号化部214における符号化としてはデータ圧縮に限らず、他の符号化でもよい。
(付記1)
原本データから秘匿データを生成するデータ秘匿方法であって、
パスワードと前記原本データを準備する第1ステップと、
前記パスワードと前記原本データからダイジェストを計算する第2ステップと、
前記原本データから符号化データを生成する第3ステップと、
前記ダイジェストと前記符号化データを前記秘匿データとして出力する第4ステップと、
を含むことを特徴とするデータ秘匿方法。
(付記2)
付記1記載のデータ秘匿方法において、
前記第1ステップでは、ユニークで推測不可なビット列を前記原本データに付加し、
前記第2ステップでは、前記原本データに付加される前記ビット列とパスワードから前記ダイジェストを計算し、
前記第3ステップでは、前記原本データおよび前記ビット列から前記符号化データを生成することを特徴とするデータ秘匿方法。
(付記3)
付記1または付記2記載のデータ秘匿方法において、
前記原本データを準備するステップにおいては、前記原本データを予め定めたサイズのブロックに分割し、分割した個々の前記ブロックについて前記秘匿データを生成することを特徴とするデータ秘匿方法。
(付記4)
付記1から付記3記載のデータ秘匿方法において、
前記符号化データは圧縮データであることを特徴とするデータ秘匿方法。
(付記5)
秘匿データから元の原本データを生成する秘匿データ復元方法であって、
パスワードと秘匿データを準備する第1ステップと、
前記秘匿データを第1ダイジェストと符号化データに分割する第2ステップと、
前記符号化データから前記原本データを復元する第3ステップと、
前記パスワードと復元した前記原本データから第2ダイジェストを計算する第4ステップと、
前記第2ダイジェストと前記第1ダイジェストとが一致する場合に、復元した前記原本データを出力する第5ステップと、
を含むことを特徴とする秘匿データ復元方法。
(付記6)
付記5記載の秘匿データ復元方法において、
前記第3ステップでは、前記原本データに付加されているビット列を分離し、
前記第4ステップでは、前記パスワードと前記ビット列から前記第2ダイジェストを生成する、ことを特徴とする秘匿データ復元方法。
(付記7)
付記5または付記6記載の秘匿データ復元方法において、
前記符号化データは圧縮データであることを特徴とする秘匿データ復元方法。
(付記8)
原本データから秘匿データを生成するデータ秘匿プログラムであって、
パスワードと前記原本データを準備する第1ステップと、
前記パスワードと前記原本データからダイジェストを計算する第2ステップと、
前記原本データから符号化データを生成する第3ステップと、
前記ダイジェストと前記符号化データを前記秘匿データとして出力する第4ステップと、
を情報処理装置に実行させることを特徴とするデータ秘匿プログラム。
(付記9)
秘匿データから元の原本データを生成する秘匿データ復元プログラムであって、
パスワードと秘匿データを準備する第1ステップと、
前記秘匿データを第1ダイジェストと符号化データに分割する第2ステップと、
前記符号化データから前記原本データを復元する第3ステップと、
前記パスワードと復元した前記原本データから第2ダイジェストを計算する第4ステップと、
前記第2ダイジェストと前記第1ダイジェストとが一致する場合に、復元した前記原本データを出力する第5ステップと、
を情報処理装置に実行させることを特徴とする秘匿データ復元プログラム。
(付記10)
原本データから秘匿データを生成する情報処理装置であって、
パスワードを入力するパスワード入力部と、
前記原本データを入力する原本データ入力部と、
前記パスワードと前記原本データからダイジェストを計算するダイジェスト作成部と、
前記原本データから符号化データを生成する符号化部と、
前記ダイジェストと前記符号化データを前記秘匿データとして出力する出力部と、
を含む秘匿データ生成論理を備えたことを特徴とする情報処理装置。
(付記11)
秘匿データから元の原本データを生成する情報処理装置であって、
パスワードを入力するパスワード入力部と、
前記秘匿データを入力し、第1ダイジェストと符号化データに分割する秘匿データ入力部と、
前記符号化データから前記原本データを復元する復元部と、
前記パスワードと前記復元部にて復元した前記原本データから第2ダイジェストを計算するダイジェスト作成部と、
前記第2ダイジェストと前記第1ダイジェストとを比較するダイジェスト比較部と、
前記ダイジェスト比較部にて2つの前記第2および第1ダイジェストが一致した場合に前記原本データの出力を許可する出力許可部と、
前記出力許可部にて出力許可された場合に前記復元部にて復元した前記原本データを出力する出力部と、
を含む秘匿データ復元論理を備えたことを特徴とする情報処理装置。
本発明の第1実施の形態であるデータ秘匿方法、データ秘匿プログラムの作用の一例を示す概念図である。 本発明の第1実施の形態である秘匿データ復元方法、秘匿データ復元プログラムの作用の一例を示す概念図である。 本発明の第1実施の形態であるデータ秘匿方法を実施するデータ秘匿プログラムの機能構成の一例を示す概念図である。 本発明の第1実施の形態である秘匿データ復元方法を実施する秘匿データ復元プログラムの機能構成の一例を示す概念図である。 本発明の第1実施の形態であるデータ秘匿方法、データ秘匿プログラムの作用の一例を示すフローチャートである。 本発明の第1実施の形態である秘匿データ復元方法、秘匿データ復元プログラムの作用の一例を示すフローチャートである。 本発明の一実施の形態である情報処理装置の構成の一例を示す概念図である。 本発明の第1実施の形態であるデータ秘匿方法、データ秘匿プログラムの作用の変形例を示すフローチャートである。 本発明の第1実施の形態である秘匿データ復元方法、秘匿データ復元プログラムの作用の変形例を示すフローチャートである。 本発明の第2実施の形態であるデータ秘匿方法の一例を示す概念図である。 本発明の第2実施の形態である秘匿データ復元方法の一例を示す概念図である。 図6Aに例示したデータ秘匿方法を実現するデータ秘匿プログラムの構成例を示す概念図である。 図6Bに例示した秘匿データ復元方法を実現する秘匿データ復元プログラムの構成例を示す概念図である。 図7Aに例示したデータ秘匿プログラムの作用の一例を示すフローチャートである。 図7Bに例示した秘匿データ復元プログラムの作用の一例を示すフローチャートである。 本発明の参考技術であるパスワード付き圧縮のデータ生成方法を示す概念図である。 本発明の参考技術であるパスワード付き圧縮のデータ復元方法を示す概念図である。 本発明の参考技術であるパスワード付き圧縮におけるパスワードの改竄方法を示す概念図である。
符号の説明
10 原本データ
20 パスワード
21 パスワード
30 秘匿データ
31 符号データ
32 ハッシュ値
40 ハッシュ値
50 ビット列
60 秘匿データ
61 符号データ
62 ハッシュ値
70 ハッシュ値
100 情報処理装置
101 中央処理装置
102 主記憶
103 外部記憶装置
104 表示装置
105 ユーザ入力装置
106 ネットワークインタフェース
107 情報ネットワーク
120 オペレーティングシステム
200 データ秘匿プログラム
201 データ秘匿プログラム
211 パスワード入力部
212 原本データ入力部
213 ダイジェスト作成部
214 符号化部
215 秘匿データ出力部
216 ビット列生成部
217 ビット列付与部
300 秘匿データ復元プログラム
301 秘匿データ復元プログラム
311 パスワード入力部
312 秘匿データ入力部
313 ダイジェスト作成部
314 復元部
315 ダイジェスト比較部
316 出力許可部
317 原本データ出力部
318 ビット列分割部

Claims (6)

  1. 原本データから秘匿データを生成するコンピュータに
    パスワードと前記原本データを準備する第1ステップと、
    前記パスワードと前記原本データからダイジェストを計算する第2ステップと、
    前記原本データから符号化データを生成する第3ステップと、
    前記ダイジェストと前記符号化データを前記秘匿データとして出力する第4ステップと、を実行させ、
    前記第1ステップでは、ユニークで推測不可なビット列を前記原本データに付加し、
    前記第2ステップでは、前記原本データに付加される前記ビット列とパスワードから前記ダイジェストを計算し、
    前記第3ステップでは、前記原本データおよび前記ビット列から前記符号化データを生成することを特徴とするデータ秘匿方法。
  2. 秘匿データから元の原本データを生成するコンピュータに
    パスワードと秘匿データを準備する第1ステップと、
    前記秘匿データを第1ダイジェストと符号化データに分割する第2ステップと、
    前記符号化データから前記原本データを復元する第3ステップと、
    前記パスワードと復元した前記原本データから第2ダイジェストを計算する第4ステップと、
    前記第2ダイジェストと前記第1ダイジェストとが一致する場合に、復元した前記原本データを出力し、一致しない場合に復元した前記原本データを出力しない第5ステップと、
    実行させることを特徴とする秘匿データ復元方法。
  3. 請求項2記載の秘匿データ復元方法において、
    前記第3ステップでは、前記原本データに付加されているビット列を分離し、
    前記第4ステップでは、前記パスワードと前記ビット列から前記第2ダイジェストを生成する、ことを特徴とする秘匿データ復元方法。
  4. 原本データから秘匿データを生成するコンピュータに
    パスワードと前記原本データを準備する第1ステップと、
    前記パスワードと前記原本データからダイジェストを計算する第2ステップと、
    前記原本データから符号化データを生成する第3ステップと、
    前記ダイジェストと前記符号化データを前記秘匿データとして出力する第4ステップと、を実行させ、
    前記第1ステップでは、ユニークで推測不可なビット列を前記原本データに付加し、
    前記第2ステップでは、前記原本データに付加される前記ビット列とパスワードから前記ダイジェストを計算し、
    前記第3ステップでは、前記原本データおよび前記ビット列から前記符号化データを生成することを特徴とするデータ秘匿プログラム。
  5. 秘匿データから元の原本データを生成するコンピュータに
    パスワードと秘匿データを準備する第1ステップと、
    前記秘匿データを第1ダイジェストと符号化データに分割する第2ステップと、
    前記符号化データから前記原本データを復元する第3ステップと、
    前記パスワードと復元した前記原本データから第2ダイジェストを計算する第4ステップと、
    前記第2ダイジェストと前記第1ダイジェストとが一致する場合に、復元した前記原本データを出力し、一致しない場合に復元した前記原本データを出力しない第5ステップと、
    を実行させることを特徴とする秘匿データ復元プログラム。
  6. 請求項記載のデータ秘匿プログラムおよび請求項記載の秘匿データ復元プログラムの少なくとも一方を記憶する記憶手段を含むことを特徴とするコンピュータ
JP2006086633A 2006-03-27 2006-03-27 データ秘匿方法、秘匿データ復元方法、データ秘匿プログラム、秘匿データ復元プログラム、コンピュータ Expired - Fee Related JP4829654B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006086633A JP4829654B2 (ja) 2006-03-27 2006-03-27 データ秘匿方法、秘匿データ復元方法、データ秘匿プログラム、秘匿データ復元プログラム、コンピュータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006086633A JP4829654B2 (ja) 2006-03-27 2006-03-27 データ秘匿方法、秘匿データ復元方法、データ秘匿プログラム、秘匿データ復元プログラム、コンピュータ

Publications (2)

Publication Number Publication Date
JP2007264841A JP2007264841A (ja) 2007-10-11
JP4829654B2 true JP4829654B2 (ja) 2011-12-07

Family

ID=38637794

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006086633A Expired - Fee Related JP4829654B2 (ja) 2006-03-27 2006-03-27 データ秘匿方法、秘匿データ復元方法、データ秘匿プログラム、秘匿データ復元プログラム、コンピュータ

Country Status (1)

Country Link
JP (1) JP4829654B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5787169A (en) * 1995-12-28 1998-07-28 International Business Machines Corp. Method and apparatus for controlling access to encrypted data files in a computer system
JP2000286839A (ja) * 1999-03-31 2000-10-13 Ricoh Co Ltd 情報記録装置、真正性検証方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2001023300A (ja) * 1999-07-09 2001-01-26 Fujitsu Ltd 記憶装置、記録媒体のアクセス制御装置および記録媒体のアクセス制御方法
JP2004295358A (ja) * 2003-03-26 2004-10-21 Internatl Business Mach Corp <Ibm> 情報処理装置、その暗号処理システム及び外部記憶装置の制御方法

Also Published As

Publication number Publication date
JP2007264841A (ja) 2007-10-11

Similar Documents

Publication Publication Date Title
US11108546B2 (en) Biometric verification of a blockchain database transaction contributor
JP5930235B2 (ja) 暗号ハッシュ関数の実行を保護する方法とシステム
JP2004534333A (ja) コンピュータネットワークにおける分散データ処理に関する統合された保護方法及びシステム
US20080172562A1 (en) Encryption and authentication of data and for decryption and verification of authenticity of data
CN103530535A (zh) 一种Android平台应用程序保护的加脱壳方法
JP2009510582A (ja) 生体認証テンプレートの安全な保護
CN112469036B (zh) 一种消息加解密方法、装置、移动终端和存储介质
JP2009151528A (ja) 生体情報が格納されたicカードおよびそのアクセス制御方法
CN113348455A (zh) 利用数据控制签名提供数据的认证、不可否认性、受管控的访问和孪生分辨的装置和方法
KR20140011534A (ko) 특정 포맷을 가지는 대체 데이터의 생성 및 검증
CN111066077A (zh) 加密装置、加密方法、解密装置以及解密方法
JP2004240434A (ja) 再構成可能で安全な入力装置
CN106789017A (zh) 基于生物特征加密的账户信息统一管理方法
US20090168994A1 (en) Method for providing stronger encryption using conventional ciphers
WO2021120781A1 (zh) 图片版权认证方法、装置及存储介质
JP2002135247A (ja) デジタル情報保管方法
CN112667975A (zh) 一种基于混合加固Android系统应用软件安全防护方法
JP4829654B2 (ja) データ秘匿方法、秘匿データ復元方法、データ秘匿プログラム、秘匿データ復元プログラム、コンピュータ
WO2006093238A1 (ja) 認証補助装置、認証主装置、集積回路及び認証方法
JP4385261B2 (ja) 端末認証、端末変更方法、操作端末、認証サーバ、および認証プログラム
CN111523885B (zh) 区块链钱包的加密多账户构造方法、计算机可读存储介质和区块链加密多账户钱包
Kuribayashi et al. StealthPDF: Data hiding method for PDF file with no visual degradation
CN114637985A (zh) 一种基于多环境参数的Android应用登录伪造识别方法
JP2007086845A (ja) クライアントサーバシステムおよび同システムにおけるサーバサイドプログラムの実現方法ならびにそのサーバ装置、サーバサイドプログラム
JP7103334B2 (ja) 平文暗号化復号化方法および平文暗号化復号化装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110517

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110719

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

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

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

Free format text: PAYMENT UNTIL: 20140922

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees