暗号化文書生成装置及び暗号化文書生成プログラム
【課題】平文状態の文書を作成することなく、所望の部分だけ暗号化した暗号化文書を生成することを目的とする。
【解決手段】ユーザが一区切りの文字列を入力し、変換命令を入力すると、暗号化するか、又は、暗号化しないかの選択肢を表示し、ユーザに選択させる。暗号化することを選択された場合、入力された文字列を暗号化して確定文字列に変換するとともに、暗号化しないことを選択された場合、文字列を暗号化せず確定文字列に変換して文書データを作成する。
【解決手段】ユーザが一区切りの文字列を入力し、変換命令を入力すると、暗号化するか、又は、暗号化しないかの選択肢を表示し、ユーザに選択させる。暗号化することを選択された場合、入力された文字列を暗号化して確定文字列に変換するとともに、暗号化しないことを選択された場合、文字列を暗号化せず確定文字列に変換して文書データを作成する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、文書情報のうち、所望の部分だけを部分的に暗号化した暗号化文書を生成する技術に関する。
【背景技術】
【0002】
一般的な暗号化技術では、作成された電子データ全体を暗号化して、暗号化データに変換する。したがって、暗号化データを復号すれば暗号化されていない平文状態のデータを利用することができるが、暗号化データを復号しなければ平文状態のデータを一切利用することができない。
しかし、文書データのうち個人情報や機器の設定情報等の一部の情報だけを秘密にして、他の部分は誰でも利用できるようにしたい場合もある。この場合、文書データ全体を暗号化してしまうと、誰でも利用できるようにしたい部分まで暗号化されてしまい、復号できる人以外は利用することができない。
【0003】
特許文献1には、文字列を入力した後、入力した文字列のうち所望の部分を指定して暗号文字に変換することについての記載がある。特許文献1では、文字列を一通り入力した後、暗号文字に変換する部分をカーソルで指定する。そして、指定した部分の文字列のみを暗号文字に変換する。
特許文献2−4には、文書を生成した後、文書を部分的に指定して、指定した部分のみ暗号化することについての記載がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平6−243121号公報
【特許文献2】特開平9−233067号公報
【特許文献3】特開2007−179484号公報
【特許文献4】特開平4−184643号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来の暗号化文書の作成方法では、少なくとも一時的に暗号化されていない平文状態の文書が作成される。そのため、平文状態の文書を電子的に利用される虞がある。
この発明は、平文状態の文書を作成することなく、所望の部分だけ暗号化した暗号化文書を生成することを目的とする。
【課題を解決するための手段】
【0006】
この発明に係る暗号化文書生成装置は、
入力装置により文字列を入力する文字列入力部と、
前記文字列入力部が文字列を入力すると、暗号化するか、又は、暗号化しないかを入力装置により選択する選択部と、
前記選択部が暗号化することを選択した場合、前記文字列入力部が入力した文字列を処理装置により暗号化して確定文字列に変換するとともに、前記選択部が暗号化しないことを選択した場合、前記文字列入力部が入力した文字列を暗号化せず確定文字列に変換する変換部と
を備えることを特徴とする。
【0007】
前記文字列入力部は、前記変換部が確定文字列に変換した場合、さらに文字列を入力し、
前記選択部は、前記文字列入力部がさらに文字列を入力すると、暗号化するか、又は、暗号化しないかを選択し、
前記変換部は、前記選択部が暗号化することを選択した場合、前記文字列入力部がこれまでに入力した文字列のうち、前記確定文字列となっていない未確定文字列を暗号化して確定文字列に変換するとともに、前記選択部が暗号化しないことを選択した場合、前記未確定文字列を暗号化せず文字列のまま確定文字列に変換する
ことを特徴とする。
【0008】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が文字列を入力すると、入力装置により変換命令を入力する変換命令入力部と、
前記変換命令入力部が変換命令を入力すると、複数の暗号化方式と暗号化しないこととを選択肢として表示装置に表示する選択肢表示部
を備え、
前記選択部は、前記選択肢表示部が表示した選択肢から1つを選択し、
前記変換部は、前記選択部がいずれかの暗号化方式を選択した場合、選択された暗号化方式で、文字列を暗号化して確定文字列に変換し、前記選択部が暗号化しないことを選択した場合、前記文字列入力部が入力した文字列を暗号化せず確定文字列に変換する
ことを特徴とする。
【0009】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が入力した文字列毎に、前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が入力する文字列に応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする。
【0010】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が入力した文字列を複数のグループに分類して、グループ毎に前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が入力する文字列が分類されるグループに応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする。
【0011】
前記文字列入力部は、表形式の入力フォーマットに従い、各入力エリアに文字列を入力し、
前記暗号化文書生成装置は、さらに、
前記表形式の入力フォーマットの列又は行毎に、前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が文字列を入力する入力エリアの列又は行に応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする。
【0012】
前記暗号化文書生成装置は、さらに、
前記変換部が変換した確定文字列が、文字列を暗号化して変換した確定文字列か、又は、文字列を暗号化せずに変換した確定文字列かを識別可能な暗号化識別情報を処理装置により生成する暗号化識別情報生成部
を備えることを特徴とする。
【0013】
前記暗号化識別情報生成部は、文字列を暗号化して変換した確定文字列に対して、その確定文字列の暗号化前の文字列から生成したハッシュ値と、その確定文字列の位置を示す位置情報とを、前記暗号化識別情報として生成する
ことを特徴とする。
【0014】
前記暗号化文書生成装置は、さらに、
前記変換部が変換した確定文字列が、文字列を暗号化して変換した確定文字列か、又は、文字列を暗号化せずに変換した確定文字列かを識別可能な暗号化識別情報であって、確定文字列が文字列を暗号化して変換した確定文字列である場合には、文字列を暗号化する際に用いた暗号化方式を識別可能な暗号化識別情報を処理装置により生成する暗号化識別情報生成部
を備えることを特徴とする。
【0015】
前記暗号化文書生成装置は、さらに、
前記変換部が確定文字列に変換した文書データを出力するとともに、前記文書データとは別に前記暗号化識別情報生成部が生成した暗号化識別情報を出力する出力部
を備えることを特徴とする。
【0016】
前記変換部は、文字列を暗号化する場合、暗号化した各文字が所定の文字コードにおいてコードが割り当てられている文字となるようにする
ことを特徴とする。
【0017】
前記暗号化文書生成装置は、さらに、
複数の文字列を有する文書データを入力装置により入力する文書データ入力部
を備え、
前記変換部は、前記文書データ入力部が入力した文書データに含まれる各文字列について、その文字列に対して前記方式記憶部が記憶した選択回数に基づき選択肢を特定し、特定した選択肢が暗号化方式を示す場合には、その暗号化方式でその文字列を暗号化して確定文字列に変換するとともに、特定した選択肢が暗号化しないことを示す場合には、その文字列を暗号化せずに確定文字列に変換する
ことを特徴とする。
【0018】
この発明に係る暗号化文書生成プログラムは、
文字列を入力する文字列入力処理と、
前記文字列入力処理で文字列を入力すると、暗号化するか、又は、暗号化しないかを選択する選択処理と、
前記選択処理で暗号化することを選択した場合、前記文字列入力処理で入力した文字列を暗号化して確定文字列に変換するとともに、前記選択処理で暗号化しないことを選択した場合、前記文字列入力処理で入力した文字列を暗号化せず確定文字列に変換する変換処理と
をコンピュータに実行させることを特徴とする。
【発明の効果】
【0019】
この発明に係る暗号化文書生成装置では、文字列を入力する度に、文字列を暗号化するか否かを選択する。そして、暗号化すると選択された場合には、その文字列を暗号化する。したがって、秘密にすべき文字列が平文状態となった文書が生成されることがない。
【図面の簡単な説明】
【0020】
【図1】実施の形態1に係る暗号化文書生成装置10により暗号化文書を生成する様子を示す図。
【図2】実施の形態1に係る暗号化文書生成装置10の構成図。
【図3】実施の形態1に係る暗号化文書生成装置10の処理の流れを示すフローチャート。
【図4】実施の形態1に係る変換辞書記憶部13が記憶する情報の一例を示す図。
【図5】実施の形態1に係る方式記憶部14が記憶する情報の一例を示す図。
【図6】実施の形態2に係る暗号化文書生成装置10により生成された暗号化文書の一例を示す図。
【図7】実施の形態2に係る方式記憶部14が記憶する情報の一例を示す図。
【図8】実施の形態2に係る暗号化文書生成装置10により生成された暗号化文書の他の例を示す図。
【図9】実施の形態2に係る方式記憶部14が記憶する情報の他の例を示す図。
【図10】実施の形態3に係る暗号化文書生成装置10の構成図。
【図11】実施の形態3に係る暗号化文書生成装置10の処理の流れを示すフローチャート。
【図12】平文状態の設定ファイルの一例を示す図。
【図13】暗号化文書生成装置10のハードウェア構成の一例を示す図。
【発明を実施するための形態】
【0021】
以下、図に基づき、発明の実施の形態を説明する。
以下の説明において、処理装置は後述するCPU911等である。記憶装置は後述するROM913、RAM914、磁気ディスク920等である。表示装置は後述するLCD901等である。入力装置は後述するキーボード902、マウス903等である。出力装置は、ROM913、RAM914、磁気ディスク920、LCD901等である。つまり、処理装置、記憶装置、表示装置、入力装置、出力装置はハードウェアである。
【0022】
実施の形態1.
図1は、実施の形態1に係る暗号化文書生成装置10により暗号化文書を生成する様子を示す図である。
図1では、「20時に駅で集合です。」という文章のうち、「20」と「駅」との文字列を暗号化した暗号化文書を生成する例を示している。
まず、(a)に示すように、ユーザは、キーボードにより「20」と入力する。すると、下線が付された状態で「20」が表示される。文字列に下線が付されている場合、その文字列は変換や暗号化の指示前の未確定状態(未確定文字列)であることを示す。次に、ユーザは、キーボードのALTボタンと、スペースボタンとを同時押しする。すると、複数の暗号化方式と、暗号化しないこととの選択肢が表示される。ここでは、「20」を暗号化するため、ユーザは表示された選択肢から所定の暗号化方式を選択する。すると、選択した暗号化方式で、「20」が暗号化され、「20」に代わって文字列「R#」が表示される。「20」が「R#」に変換されると、下線が取り除かれる。文字列から下線が取り除かれた場合、その文字列は変換や暗号化が済んだ確定状態(確定文字列)であることを示す。
続いて、(b)に示すように、ユーザは、入力装置により「じに」と入力する。すると、下線が付された状態で「じに」が表示される。次に、ユーザは、キーボードのスペースボタンを押す。すると、「じに」を漢字等に変換した変換文字列が表示される。ユーザは、表示された変換文字列から「時に」を選択する。さらに、ユーザは、キーボードのALTボタンと、スペースボタンとを同時押しする。すると、複数の暗号化方式と、暗号化しないこととの選択肢が表示される。ここでは、「時に」を暗号化しないため、ユーザは表示された選択肢から暗号化しないを選択する。すると、「時に」が暗号化されず、下線が取り除かれて「時に」として表示される。
続いて、(c)に示すように、ユーザは、入力装置により「えき」と入力する。すると、下線が付された状態で「えき」が表示される。次に、ユーザは、キーボードのスペースボタンを押す。すると、「えき」を漢字等に変換した変換文字列が表示される。ユーザは、表示された変換文字列から「駅」を選択する。さらに、ユーザは、キーボードのALTボタンと、スペースボタンとを同時押しする。すると、複数の暗号化方式と、暗号化しないこととの選択肢が表示される。ここでは、「駅」を暗号化するため、ユーザは表示された選択肢から所定の暗号化方式を選択する。すると、選択した暗号化方式で、「駅」が暗号化され、「駅」に代わって文字列「%qN」が表示される。「駅」が「%qN」に変換されると、下線が取り除かれる。
続いて、(d)に示すように、ユーザは、入力装置により「でしゅうごうです。」と入力する。すると、下線が付された状態で「でしゅうごうです。」が表示される。次に、ユーザは、キーボードのスペースボタンを押す。すると、「でしゅうごうです。」を漢字等に変換した変換文字列が表示される。ユーザは、表示された変換文字列から「で集合です。」を選択する。さらに、ユーザは、キーボードのALTボタンと、スペースボタンとを同時押しする。すると、複数の暗号化方式と、暗号化しないこととの選択肢が表示される。ここでは、「で集合です。」を暗号化しないため、ユーザは表示された選択肢から暗号化しないを選択する。すると、「で集合です。」が暗号化されず、下線が取り除かれて「で集合です。」として表示される。
これにより、(e)に示すように、「20時に駅で集合です。」という文章のうち、「20」と「駅」との文字列を暗号化した「R#時に%qNで集合です。」という暗号化文書が生成される。
【0023】
図2、図3に基づき、実施の形態1に係る暗号化文書生成装置10の構成及び動作について説明する。
図2は、実施の形態1に係る暗号化文書生成装置10の構成図である。
図3は、実施の形態1に係る暗号化文書生成装置10の処理の流れを示すフローチャートである。
図2に示すように、暗号化文書生成装置10は、文字列入力部11、変換命令入力部12、変換辞書記憶部13、方式記憶部14、選択肢表示部15、選択部16、変換部17、暗号化識別情報生成部18、出力部19を備える。
【0024】
(S1)では、文字列入力部11が、ユーザに入力装置により文字列を入力させる。文字列入力部11は、入力された文字列を、下線を付して未確定文字列として表示装置に表示する。
【0025】
(S2)では、変換命令入力部12が、ユーザに入力装置により、未確定文字列を漢字等へ変換させる文字変換命令と、未確定文字列を漢字等へ変換することなく暗号化させる暗号変換命令と、未確定文字列を漢字等への変換も暗号化もさせることなく確定させる確定命令とのいずれかを入力させる。
図1の例では、ユーザは、キーボードのスペースボタンを押すことにより、文字変換命令を入力することができ、ALTボタンとスペースボタンとを同時押しすることにより、暗号変換命令を入力することができる。また、ユーザは、例えば、エンターボタンを押すことにより、確定命令を入力することができる。
文字変換命令が入力された場合(S3)へ処理を進め、暗号変換命令が入力された場合(S6)へ処理を進め、確定命令が入力された場合(S8)へ処理を進める。
【0026】
(S3)では、選択肢表示部15が、入力された文字列に対する変換した文字列の候補を選択肢として表示装置に表示する。
図4は、実施の形態1に係る変換辞書記憶部13が記憶する情報の一例を示す図である。図4に示すように、変換辞書記憶部13は、入力された文字列(入力文字列)毎に、変換した文字列の候補(候補文字列)と、候補文字列が選択された回数とを記憶した記憶装置である。選択肢表示部15は、変換辞書記憶部13から入力文字列に対応する候補文字列を選択肢として取得して、選択された回数の多い順に並べて表示する。
【0027】
(S4)では、選択部16が、ユーザに入力装置により、(S3)で表示された選択肢から所望の選択肢を選択させる。選択部16は、変換辞書記憶部13における選択された選択肢の回数をインクリメントする。
【0028】
(S5)では、変換命令入力部12が、ユーザに入力装置により、未確定文字列を暗号化させる暗号変換命令と、暗号化させることなく確定させる確定命令とのいずれかを入力させる。
暗号変換命令が入力された場合(S6)へ処理を進め、確定命令が入力された場合(S8)へ処理を進める。
【0029】
(S6)では、選択肢表示部15が、入力された文字列に対する暗号化方式の候補と、暗号化しないこととを選択肢として表示装置に表示する。
図5は、実施の形態1に係る方式記憶部14が記憶する情報の一例を示す図である。図5に示すように、方式記憶部14は、入力された文字列(入力文字列)毎に、複数の暗号化方式及び暗号化しないこととを示す選択肢と、その選択肢が選択された回数とを記憶した記憶装置である。選択肢表示部15は、方式記憶部14から入力文字列に対応する選択肢を取得して、選択された回数の多い順に並べて表示する。
【0030】
(S7)では、選択部16が、ユーザに入力装置により、(S6)で表示された選択肢から所望の選択肢を選択させる。選択部16は、方式記憶部14における選択された選択肢の回数をインクリメントする。
【0031】
(S8)では、変換部17が、未確定文字列を(S4)で選択された候補文字列に変換した上で、(S7)で選択された暗号化方式で暗号化して、確定文字列に変換する。そして、変換部17が変換文字列を表示装置に表示する。
なお、変換部17は、(S5)で確定命令が入力された場合や、(S7)で暗号化しないという選択肢が選択された場合には、未確定文字列を(S4)で選択された候補文字列にして、確定文字列に変換する。
また、変換部17は、(S2)で暗号変換命令が入力され、漢字等への変換をせずに暗号化することが選択された場合には、未確定文字列を(S7)で選択された暗号化方式で暗号化して、確定文字列に変換する。
また、変換部17は、(S2)で確定命令が入力された場合には、未確定文字列をそのまま確定文字列にする。
【0032】
また、(S9)では、(S7)でいずれかの暗号化方式が選択され、未確定文字列を暗号化することが選択された場合に、暗号化識別情報生成部18が処理装置により暗号化識別情報を生成する。
暗号化識別情報は、確定文字列のうち、どの部分が暗号化されているか、どの部分が暗号化されていないかを識別可能な情報である。また、暗号化識別情報は、文字列が暗号化されている場合、どの暗号化方式で暗号化されたかを識別可能な情報である。ここでは、暗号化識別情報は、暗号化されている各確定文字列について、先頭の文字位置及び最後の文字位置と、暗号化に利用した暗号化方式とを含む情報とする。
【0033】
(S10)では、(S8)及び(S9)の処理が終了すると、文字列入力部11が、ユーザに入力装置により、続けて文字列を入力するか否かを入力させる。
例えば、ユーザは、次の文字列を入力することで、続けて文字列を入力することを示し、文書ファイルを保存することや、文書ファイルを閉じること等で、文字列の入力を終了することを示す。
続けて文字列を入力する場合、(S1)へ処理を戻す。一方、文字列の入力を終了する場合、(S11)へ処理を進める。
【0034】
(S11)では、出力部19が(S8)で変換した確定文字列からなる文書に、(S9)で生成した暗号化識別情報を添付した確定文書(暗号化文書)を、出力装置へ出力する。
【0035】
なお、暗号化方式とは、例えば、DESの16bit、DESの32bit、DESの64bit、AES、・・・等どのような暗号化の方式であっても構わない。
また、暗号化に用いる鍵は、暗号化方式が共通鍵暗号であれば、予め復号者との間で共有されているものとし、公開鍵暗号であれば、復号者の公開鍵である。
【0036】
以上のように、実施の形態1に係る暗号化文書生成装置10は、文字列を入力する度に暗号化させるか否かを選択させ、秘密にすべき文字列だけが暗号化されており、秘密にする必要のない文字列は平文のままの暗号化文書を生成する。特に、実施の形態1に係る暗号化文書生成装置10は、いわゆるIM(Input Method)あるいはFEP(Front End Processor)と呼ばれる日本語入力機能の一環として、暗号化するか否かの選択をさせる機能を持たせている。
したがって、暗号化された文字列を復号するための復号鍵を持たない者(受信者)は、一部が暗号化された状態で、その文書を利用することができる。一方、復号鍵を持つ者(解読者)は、暗号化識別情報が示す位置の文字列を、暗号化識別情報が示す暗号化方式に従い、復号鍵で復号することで、全ての文字列を平文に変換して利用することができる。
また、秘密にすべき文字列が平文の状態となることがなく、秘密にすべき文字列が平文の状態の電子ファイルを盗み取られ、利用されることがない。特に、いわゆるIMあるいはFEPの機能の一環として、暗号化するか否かの選択をさせており、秘密にすべき文字列が平文状態のまま確定文字列となることがない。そのため、秘密にすべき文字列が平文状態のまま、文書データが保存されることがない。
【0037】
また、実施の形態1に係る暗号化文書生成装置10は、暗号化する文字列毎に、どの暗号化方式で暗号化するかを選択させ、選択された暗号化方式で暗号化する。したがって、仮に一部の暗号化方式で暗号化した文字列が解読されても、暗号化した文字列全てが解読されることを防止できる。
なお、文字列の機密性に応じて用いる暗号化方式を変更するようにしてもよい。例えば、機密性の高い文字列については、安全性の高い暗号化方式を用い、機密性のそれほど高くない文字列については、安全性のそれほど高くない簡便な暗号化方式を用いてもよい。
【0038】
また、実施の形態1に係る暗号化文書生成装置10は、文字列毎に各暗号化方式を選択した回数を方式記憶部14に記録しておき、回数が多い暗号化方式ほど上になるように表示順序を変更する学習機能を備える。そのため、学習が進むに従い、暗号化方式の入力を素早く行うことができるようになる。
ここで、変換辞書記憶部13や方式記憶部14が記憶する回数は、直近の所定の期間における回数のみとして、それ以前の回数は含めないとしてもよい。これにより、最近多く選択した選択肢が上に表示されるようになる。
【0039】
なお、変換部17は、文字列を暗号化する際、暗号化した結果がテキスト形式(文字データ)になるようにする。つまり、文字列を暗号化した場合、暗号化した結果が、ASCIIコードや、UNIコード等の所定の文字コードにおいて、コードが割り当てられている値になるようにする。
暗号化した文字列がテキスト形式であるため、暗号化文書を復号することなく開いた場合であっても、形式が崩れることなく表示可能である。また、暗号化された文字列についても、暗号化されたままの状態で容易にコピーすること等が可能である。つまり、暗号化した文字列をテキスト形式にすることで、暗号化文書が利用し易くなる。
【0040】
また、上記説明では、暗号化識別情報を、暗号化されている各確定文字列について、先頭の文字位置及び最後の文字位置と、暗号化に利用した暗号化方式とを含む情報とした。しかし、暗号化識別情報は、暗号化されている各確定文字列について、先頭の文字位置又は最後の文字位置のいずれか一方と、暗号化前の文字列(漢字等へ変換した場合には変換後の文字列)から計算されたハッシュ値とを含む情報としてもよい。
先頭の文字位置とハッシュ値とを含む情報が暗号化識別情報として付されている場合に、暗号化された文字列を復号するには、先頭の文字位置の文字から1文字づつ文字を追加しながら、各暗号化方式で復号する。そして、復号した結果から計算したハッシュ値が、暗号化識別情報に含まれるハッシュ値と一致する場合には、復号に成功したと判断すればよい。暗号化識別情報が先頭の文字位置とハッシュ値とを含む情報である場合には、最後の文字位置から1文字づつ遡って追加しながら各暗号化方式で復号すればよい。
【0041】
また、上記説明では、確定文字列からなる文書に、暗号化識別情報を添付した暗号化文書を出力するとした。これは、暗号化識別情報がなければ、どの部分がどの暗号化方式で暗号化されたか識別できず、復号ができないためである。
しかし、確定文字列からなる文書と、暗号化識別情報とを別にして配布してもよい。つまり、確定文字列からなる文書を暗号化文書として公開しておき、暗号化文書を復号するための鍵の1つとして暗号化識別情報を解読者へ配布してもよい。
また、暗号化識別情報を配布する際、暗号化文書を生成するときに使用した鍵とは異なる鍵で暗号化識別情報を暗号化して、解読者へ配布してもよい。例えば、暗号化文書を生成するときには、予め共有した共通鍵を用い、暗号化識別情報を配布する際には、解読者の公開鍵で暗号化してもよい。
これにより、さらに安全性を高くすることができる。
【0042】
実施の形態2.
実施の形態1では、一般的な文書の一部の文字列を暗号化することについて説明した。実施の形態2では、設定ファイル等の特殊な文書の一部の文字列を暗号化することについて説明する。
実施の形態2では、実施の形態1と異なる部分のみを説明する。
【0043】
図6は、実施の形態2に係る暗号化文書生成装置10により生成された暗号化文書の一例を示す図である。
図6では、端末の設定情報を記述した設定ファイルを暗号化文書として生成する例を示している。特に、設定ファイルのうち、端末IDについては暗号化せず、IPアドレス、端末の設置場所、接続されたデバイスのIDといった設定内容については暗号化する例を示している。
また、図6に示す設定ファイルでは、表形式の入力フォーマットが規定されている。ここでは、1列目には端末ID、2列目にはIPアドレス、3列目には端末の設置場所、4列目には接続されたデバイスのIDが記述されることが定められている。
ユーザは、各端末について、端末ID、IPアドレス、端末の設置場所、接続されたデバイスのIDをそれぞれの入力エリアにキーボードにより順次入力する。ユーザは、各入力エリアに情報を入力する度に、いずれかの暗号化方式か、暗号化しないかを選択する。ここでは、端末IDについては暗号化しないことを選択し、IPアドレス、端末の設置場所、接続されたデバイスのIDについては、使用する暗号化方式を選択して暗号化させる。また、各項目を入力した際、漢字等へ変換が必要な場合には、暗号化方式を選択する前に変換させる。
これにより、各端末について、端末IDは平文状態であり、IPアドレス、端末の設置場所、接続されたデバイスのIDは暗号化された状態の設定ファイルが生成される。
【0044】
実施の形態1では、方式記憶部14が、文字列毎に、各暗号化方式と暗号化しないこととの各選択肢が選択された回数を記憶するとした。
しかし、図6に示すように、表の列毎に入力すべき項目が決定されている場合、列毎に各選択肢が選択された回数を記憶するとしてもよい。図7は、実施の形態2に係る方式記憶部14が記憶する情報の一例を示す図である。図7に示すように、方式記憶部14は、端末ID、IPアドレス、端末の設置場所、接続されたデバイスのIDという列項目毎に、選択肢と、その選択肢が選択された回数とを記憶している。
したがって、複数の端末について、端末ID、IPアドレス、端末の設置場所、接続されたデバイスのIDを入力し終えた後、ある端末についてIPアドレスを入力する場合、それまでにIPアドレスを入力する際に選択肢が選択された回数に基づき、
選択肢の表示順序が決定される。
なお、ここでは、列毎に入力すべき項目が決定されていたため、方式記憶部14が、列毎に選択肢と、その選択肢が選択された回数とを記憶した。しかし、行毎に入力すべき項目が決定されているのであれば、方式記憶部14は、行毎に選択肢と、その選択肢が選択された回数とを記憶すればよい。
一般的に、同じ項目については、同じ選択肢を選択する場合が多いと考えられる。したがって、このように同じ項目が入力される入力エリア毎に選択肢が選択された回数を記憶しておき、その回数に基づき表示順序を決定することで、入力をより素早く行うことが可能となる。
【0045】
図8は、実施の形態2に係る暗号化文書生成装置10により生成された暗号化文書の他の例を示す図である。
図8では、図6と同様に、端末の設定情報を記述した設定ファイルを暗号化文書として生成する例として示している。特に、設定ファイルのうち、端末IDについては暗号化せず、IPアドレス、端末の設置場所、接続されたデバイスのIDといった設定内容については暗号化する例を示している。
また、図8に示す設定ファイルでは、入力項目毎にヘッダが付されている。ここでは、端末IDには“ID=”、IPアドレスには“IP=”、端末の設置場所には“area=”、接続されたデバイスのIDには“DEV=”のヘッダが付されている。
図6の場合と同様に、ユーザは、各端末について、端末ID、IPアドレス、端末の設置場所、接続されたデバイスのIDをそれぞれのヘッダの右側にキーボードにより順次入力する。ユーザは、各入力エリアに情報を入力する度に、いずれかの暗号化方式か、暗号化しないかを選択する。ここでは、端末IDについては暗号化しないことを選択し、IPアドレス、端末の設置場所、接続されたデバイスのIDについては、使用する暗号化方式を選択して暗号化させる。また、各項目を入力した際、漢字等へ変換が必要な場合には、暗号化方式を選択する前に変換させる。
これにより、各端末について、端末IDは平文状態であり、IPアドレス、端末の設置場所、接続されたデバイスのIDは暗号化された状態の設定ファイルが生成される。
【0046】
図8に示すように、入力項目毎にヘッダが付されている場合、ヘッダ毎に各選択肢が選択された回数を記憶するとしてもよい。図9は、実施の形態2に係る方式記憶部14が記憶する情報の他の例を示す図である。図9に示すように、方式記憶部14は、“ID=”、“IP=”、・・・というヘッダ毎に、選択肢と、その選択肢が選択された回数とを記憶している。
したがって、複数の端末について、端末ID、IPアドレス、端末の設置場所、接続されたデバイスのIDを入力し終えた後、ある端末についてIPアドレスを入力する場合、それまでにIPアドレスを入力する際に選択肢が選択された回数に基づき、
選択肢の表示順序が決定される。
上述したように、一般的に、同じ項目については、同じ選択肢を選択する場合が多いと考えられる。したがって、このように同じ項目に対して付されるヘッダ毎に選択肢が選択された回数を記憶しておき、その回数に基づき表示順序を決定することで、入力をより素早く行うことが可能となる。
【0047】
管理者が上述した設定ファイルを作成し、作成された設定ファイルに基づき設定者が端末の設定を行い、利用者が端末を利用するとする。
ここで、管理者は、利用者と共有した共通鍵、あるいは利用者の公開鍵で設定ファイルにおけるIPアドレス等の設定内容については暗号化する。なお、端末IDは暗号化せず、平文状態としておく。
この場合、設定者は、端末IDは読み取れるものの、IPアドレス等の設定項目については暗号化されており、読み取ることができない。しかし、設定者は、端末IDと、列又はヘッダとから、そこに記載されている情報が、IPアドレス等の設定項目であり、どの端末に設定すべきものであるかを読み取ることができる。したがって、設定者は、暗号化されたままの状態で、IPアドレス等を各端末へ設定することができる。
そして、利用者は、管理者と共有した共通鍵、あるいは利用者の秘密鍵で暗号化されたIPアドレス等を復号する。これにより、利用者の端末の設定が完了する。なお、復号作業は、利用者の手作業で行わなくても、プログラムにより自動的に行わせることもできる。
例えば、外部業者に設定作業を依頼するような場合、外部業者に対して設定内容を秘密にしたいと考えることがある。以上のように設定ファイルを生成することで、このような場合に、外部業者に対して設定内容を秘密にすることができる。
【0048】
上記説明では、各端末についての情報を入力する際、暗号化方式を選択するようにした。しかし、1件目の端末について各項目を入力する際に選択した選択肢が、2件目以降の端末について対応する項目を入力する際にも用いられるようにしてもよい。
つまり、1件目の端末について、端末IDに対して暗号化しないという選択肢を選択した場合、2件目以降の端末について、端末IDに対しては自動的に暗号化しないという選択肢が選択されたものとして処理される。同様に、1件目の端末について、IPアドレスに対して方式1で暗号化するという選択肢を選択した場合、2件目以降の端末について、IPアドレスに対しては自動的に方式1で暗号化するという選択肢が選択されたものとして処理される。他の項目についても同様である。
これにより、2件目以降の端末について入力する場合、選択肢を選択する必要がなく、入力をより素早く行うことが可能になる。
この場合、方式記憶部14は、1件目の端末について各項目を入力する際に選択された選択肢を記憶しておく。図6に示す例の場合であれば、1件目の端末について、列毎に選択された選択肢を記憶しておく。また、図8に示す例の場合であれば、1件目の端末について、ヘッダ毎に選択された選択肢を記憶しておく。そして、2件目以降の端末について対応する項目が入力された際、選択部16が自動的に方式記憶部14が記憶した選択肢を選択すればよい。図6に示す例の場合であれば、選択部16が、入力された列に応じて方式記憶部14が記憶した選択肢を選択すればよい。また、図8に示す例の場合であれば、選択部16が、入力されたヘッダに応じて方式記憶部14が記憶した選択肢を選択すればよい。
【0049】
また、この場合、項目毎に選択肢が固定されるため、方式記憶部14が記憶した情報があれば、暗号化識別情報がなくても復号することができる。
暗号化識別情報を生成するのは、復号する際、どの部分がどの暗号化方式で暗号化されたか識別できるようにするためであった。しかし、項目毎に選択肢が固定されているのであれば、方式記憶部14が記憶した項目毎の選択肢さえわかれば、復号することができる。
したがって、項目毎に選択肢が固定される場合、図3に示す(S9)を省略し、暗号化識別情報を生成せず、代わりに方式記憶部14が記憶した情報を解読者へ配布してもよい。なお、暗号化識別情報を、暗号化文書とは別に配布する場合と同様に、方式記憶部14が記憶した情報を配布する場合、暗号化文書を生成するときに使用した鍵とは異なる鍵で暗号化して、解読者へ配布してもよい。
【0050】
実施の形態3.
実施の形態2では、ユーザが順次設定項目を入力し、暗号化するか否かを選択して設定ファイルを作成することについて説明した。実施の形態3では、実施の形態2で説明したように、設定ファイルを作成することにより方式記憶部14に蓄積された情報を使って、既に作成された平文状態の設定ファイルを暗号化することについて説明する。
【0051】
図10、図11に基づき、実施の形態3に係る暗号化文書生成装置10の構成及び動作について説明する。
図10は、実施の形態3に係る暗号化文書生成装置10の構成図である。
図11は、実施の形態3に係る暗号化文書生成装置10の処理の流れを示すフローチャートである。
図10に示すように、実施の形態3に係る暗号化文書生成装置10は、図2に示す実施の形態1に係る暗号化文書生成装置10の機能に加え、文書データ入力部20を備える。
なお、ここでは、図6に示す表形式の入力フォーマットで作成された設定ファイルを例として説明する。また、実施の形態2で説明したように、ユーザが順次設定項目を入力し、暗号化するか否かを選択して設定ファイルを作成することで、方式記憶部14が記憶する情報は、図7に示す状態となっているとする。
【0052】
(S21)では、文書データ入力部20が、ユーザに平文状態の設定ファイルを文書データとして入力させる。例えば、ユーザは、予め記憶装置に記憶された平文状態の設定ファイルを指定することにより、平文状態の設定ファイルを入力することができる。
図12は、平文状態の設定ファイルの一例を示す図である。なお、図12に示す設定ファイルは、図6に示す設定ファイルと同じ形式である。
【0053】
(S22)では、選択部16が、(S21)で入力された設定ファイルの各列について、その列の選択肢で最も選択された回数が多い選択肢を選択する。例えば、端末IDの列であれば、暗号化しないという選択肢を選択し、IPアドレスの列であれば、方式1という選択肢を選択する。
【0054】
(S23)では、変換部17が、(S21)で入力された設定ファイルの各列に設定された文字列を、(S22)で選択された選択肢で変換する。具体的には、暗号化しないという選択肢が選択されている列に設定された文字列については、変換しない。一方、暗号化方式が選択されている列に設定された文字列については、その暗号化方式で暗号化する。
【0055】
(S24)では、暗号化識別情報生成部18が、暗号化識別情報を生成する。なお、ここでの暗号化識別情報は、各列を暗号化するのに利用した暗号化方式を含む情報である。
【0056】
(S25)では、出力部19が、変換部17が変換した後の設定ファイルを出力装置へ出力する。
【0057】
以上のように、実施の形態3に係る暗号化文書生成装置10は、既に作成された平文状態の設定ファイルを、方式記憶部14に蓄積された情報に基づき暗号化して、一部の設定情報が暗号化された設定ファイルに変換する。したがって、既に平文状態で設定ファイルを生成してしまっている場合であっても、後から機械的に一部を暗号化した設定ファイルに変換することができる。
なお、変換された設定ファイルは、実施の形態2で生成した設定ファイルと同様の効果が得られる。
【0058】
上記説明では、図6に示す表形式の入力フォーマットで作成された設定ファイルを例として説明した。しかし、図8に示す入力項目毎にヘッダが付されている設定ファイルであっても同様に処理することができる。この場合、(S22)で列毎に選択肢を選択したのを、ヘッダ毎に選択肢を選択し、(S23)で設定ファイルの各文字列を、その文字列に付されたヘッダに対して(S22)で選択された選択肢で変換すればよい。
【0059】
また、上記説明では、(S24)で暗号化識別情報を生成するとした。しかし、ここで生成される設定ファイルでは、項目毎に選択肢が固定されるため、実施の形態2で説明したように、方式記憶部14が記憶した情報があれば、暗号化識別情報がなくても復号することができる。そこで、図11に示す(S24)を省略し、暗号化識別情報を生成せず、代わりに方式記憶部14が記憶した情報を解読者へ配布してもよい。解読者は、方式記憶部14が記憶した情報から、各列についてその列の選択肢で最も選択された回数が多い選択肢を選択すれば、各列を暗号化する際に利用した暗号化方式を特定できる。
【0060】
実施の形態2,3では設定ファイルを一例として説明したが、設定ファイルに限らず、入力フォーマットが決まっている文書データであれば、他の文書データであっても構わない。
【0061】
次に、実施の形態における暗号化文書生成装置10のハードウェア構成について説明する。
図13は、暗号化文書生成装置10のハードウェア構成の一例を示す図である。
図13に示すように、暗号化文書生成装置10は、プログラムを実行するCPU911(Central・Processing・Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。CPU911は、バス912を介してROM913、RAM914、LCD901(Liquid Crystal Display)、キーボード902(K/B)、通信ボード915、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置920(固定ディスク装置)の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。磁気ディスク装置920は、所定の固定ディスクインタフェースを介して接続される。
【0062】
磁気ディスク装置920又はROM913などには、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911、オペレーティングシステム921、ウィンドウシステム922により実行される。
【0063】
プログラム群923には、上記の説明において「文字列入力部11」、「変換命令入力部12」、「選択肢表示部15」、「選択部16」、「変換部17」、「暗号化識別情報生成部18」、「出力部19」、「文書データ入力部20」等として説明した機能を実行するソフトウェアやプログラムやその他のプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、上記の説明において「変換辞書記憶部13」、「方式記憶部14」に格納される情報やデータや信号値や変数値やパラメータが、「データベース」の各項目として記憶される。「データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのCPU911の動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のCPU911の動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【0064】
また、上記の説明におけるフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、その他光ディスク等の記録媒体やICチップに記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体や電波によりオンライン伝送される。
また、上記の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。また、「〜装置」として説明するものは、「〜回路」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組合せ、さらには、ファームウェアとの組合せで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、ROM913等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、上記で述べた「〜部」としてコンピュータ等を機能させるものである。あるいは、上記で述べた「〜部」の手順や方法をコンピュータ等に実行させるものである。
【符号の説明】
【0065】
10 暗号化文書生成装置、11 文字列入力部、12 変換命令入力部、13 変換辞書記憶部、14 方式記憶部、15 選択肢表示部、16 選択部、17 変換部、18 暗号化識別情報生成部、19 出力部、20 文書データ入力部。
【技術分野】
【0001】
この発明は、文書情報のうち、所望の部分だけを部分的に暗号化した暗号化文書を生成する技術に関する。
【背景技術】
【0002】
一般的な暗号化技術では、作成された電子データ全体を暗号化して、暗号化データに変換する。したがって、暗号化データを復号すれば暗号化されていない平文状態のデータを利用することができるが、暗号化データを復号しなければ平文状態のデータを一切利用することができない。
しかし、文書データのうち個人情報や機器の設定情報等の一部の情報だけを秘密にして、他の部分は誰でも利用できるようにしたい場合もある。この場合、文書データ全体を暗号化してしまうと、誰でも利用できるようにしたい部分まで暗号化されてしまい、復号できる人以外は利用することができない。
【0003】
特許文献1には、文字列を入力した後、入力した文字列のうち所望の部分を指定して暗号文字に変換することについての記載がある。特許文献1では、文字列を一通り入力した後、暗号文字に変換する部分をカーソルで指定する。そして、指定した部分の文字列のみを暗号文字に変換する。
特許文献2−4には、文書を生成した後、文書を部分的に指定して、指定した部分のみ暗号化することについての記載がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平6−243121号公報
【特許文献2】特開平9−233067号公報
【特許文献3】特開2007−179484号公報
【特許文献4】特開平4−184643号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来の暗号化文書の作成方法では、少なくとも一時的に暗号化されていない平文状態の文書が作成される。そのため、平文状態の文書を電子的に利用される虞がある。
この発明は、平文状態の文書を作成することなく、所望の部分だけ暗号化した暗号化文書を生成することを目的とする。
【課題を解決するための手段】
【0006】
この発明に係る暗号化文書生成装置は、
入力装置により文字列を入力する文字列入力部と、
前記文字列入力部が文字列を入力すると、暗号化するか、又は、暗号化しないかを入力装置により選択する選択部と、
前記選択部が暗号化することを選択した場合、前記文字列入力部が入力した文字列を処理装置により暗号化して確定文字列に変換するとともに、前記選択部が暗号化しないことを選択した場合、前記文字列入力部が入力した文字列を暗号化せず確定文字列に変換する変換部と
を備えることを特徴とする。
【0007】
前記文字列入力部は、前記変換部が確定文字列に変換した場合、さらに文字列を入力し、
前記選択部は、前記文字列入力部がさらに文字列を入力すると、暗号化するか、又は、暗号化しないかを選択し、
前記変換部は、前記選択部が暗号化することを選択した場合、前記文字列入力部がこれまでに入力した文字列のうち、前記確定文字列となっていない未確定文字列を暗号化して確定文字列に変換するとともに、前記選択部が暗号化しないことを選択した場合、前記未確定文字列を暗号化せず文字列のまま確定文字列に変換する
ことを特徴とする。
【0008】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が文字列を入力すると、入力装置により変換命令を入力する変換命令入力部と、
前記変換命令入力部が変換命令を入力すると、複数の暗号化方式と暗号化しないこととを選択肢として表示装置に表示する選択肢表示部
を備え、
前記選択部は、前記選択肢表示部が表示した選択肢から1つを選択し、
前記変換部は、前記選択部がいずれかの暗号化方式を選択した場合、選択された暗号化方式で、文字列を暗号化して確定文字列に変換し、前記選択部が暗号化しないことを選択した場合、前記文字列入力部が入力した文字列を暗号化せず確定文字列に変換する
ことを特徴とする。
【0009】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が入力した文字列毎に、前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が入力する文字列に応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする。
【0010】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が入力した文字列を複数のグループに分類して、グループ毎に前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が入力する文字列が分類されるグループに応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする。
【0011】
前記文字列入力部は、表形式の入力フォーマットに従い、各入力エリアに文字列を入力し、
前記暗号化文書生成装置は、さらに、
前記表形式の入力フォーマットの列又は行毎に、前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が文字列を入力する入力エリアの列又は行に応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする。
【0012】
前記暗号化文書生成装置は、さらに、
前記変換部が変換した確定文字列が、文字列を暗号化して変換した確定文字列か、又は、文字列を暗号化せずに変換した確定文字列かを識別可能な暗号化識別情報を処理装置により生成する暗号化識別情報生成部
を備えることを特徴とする。
【0013】
前記暗号化識別情報生成部は、文字列を暗号化して変換した確定文字列に対して、その確定文字列の暗号化前の文字列から生成したハッシュ値と、その確定文字列の位置を示す位置情報とを、前記暗号化識別情報として生成する
ことを特徴とする。
【0014】
前記暗号化文書生成装置は、さらに、
前記変換部が変換した確定文字列が、文字列を暗号化して変換した確定文字列か、又は、文字列を暗号化せずに変換した確定文字列かを識別可能な暗号化識別情報であって、確定文字列が文字列を暗号化して変換した確定文字列である場合には、文字列を暗号化する際に用いた暗号化方式を識別可能な暗号化識別情報を処理装置により生成する暗号化識別情報生成部
を備えることを特徴とする。
【0015】
前記暗号化文書生成装置は、さらに、
前記変換部が確定文字列に変換した文書データを出力するとともに、前記文書データとは別に前記暗号化識別情報生成部が生成した暗号化識別情報を出力する出力部
を備えることを特徴とする。
【0016】
前記変換部は、文字列を暗号化する場合、暗号化した各文字が所定の文字コードにおいてコードが割り当てられている文字となるようにする
ことを特徴とする。
【0017】
前記暗号化文書生成装置は、さらに、
複数の文字列を有する文書データを入力装置により入力する文書データ入力部
を備え、
前記変換部は、前記文書データ入力部が入力した文書データに含まれる各文字列について、その文字列に対して前記方式記憶部が記憶した選択回数に基づき選択肢を特定し、特定した選択肢が暗号化方式を示す場合には、その暗号化方式でその文字列を暗号化して確定文字列に変換するとともに、特定した選択肢が暗号化しないことを示す場合には、その文字列を暗号化せずに確定文字列に変換する
ことを特徴とする。
【0018】
この発明に係る暗号化文書生成プログラムは、
文字列を入力する文字列入力処理と、
前記文字列入力処理で文字列を入力すると、暗号化するか、又は、暗号化しないかを選択する選択処理と、
前記選択処理で暗号化することを選択した場合、前記文字列入力処理で入力した文字列を暗号化して確定文字列に変換するとともに、前記選択処理で暗号化しないことを選択した場合、前記文字列入力処理で入力した文字列を暗号化せず確定文字列に変換する変換処理と
をコンピュータに実行させることを特徴とする。
【発明の効果】
【0019】
この発明に係る暗号化文書生成装置では、文字列を入力する度に、文字列を暗号化するか否かを選択する。そして、暗号化すると選択された場合には、その文字列を暗号化する。したがって、秘密にすべき文字列が平文状態となった文書が生成されることがない。
【図面の簡単な説明】
【0020】
【図1】実施の形態1に係る暗号化文書生成装置10により暗号化文書を生成する様子を示す図。
【図2】実施の形態1に係る暗号化文書生成装置10の構成図。
【図3】実施の形態1に係る暗号化文書生成装置10の処理の流れを示すフローチャート。
【図4】実施の形態1に係る変換辞書記憶部13が記憶する情報の一例を示す図。
【図5】実施の形態1に係る方式記憶部14が記憶する情報の一例を示す図。
【図6】実施の形態2に係る暗号化文書生成装置10により生成された暗号化文書の一例を示す図。
【図7】実施の形態2に係る方式記憶部14が記憶する情報の一例を示す図。
【図8】実施の形態2に係る暗号化文書生成装置10により生成された暗号化文書の他の例を示す図。
【図9】実施の形態2に係る方式記憶部14が記憶する情報の他の例を示す図。
【図10】実施の形態3に係る暗号化文書生成装置10の構成図。
【図11】実施の形態3に係る暗号化文書生成装置10の処理の流れを示すフローチャート。
【図12】平文状態の設定ファイルの一例を示す図。
【図13】暗号化文書生成装置10のハードウェア構成の一例を示す図。
【発明を実施するための形態】
【0021】
以下、図に基づき、発明の実施の形態を説明する。
以下の説明において、処理装置は後述するCPU911等である。記憶装置は後述するROM913、RAM914、磁気ディスク920等である。表示装置は後述するLCD901等である。入力装置は後述するキーボード902、マウス903等である。出力装置は、ROM913、RAM914、磁気ディスク920、LCD901等である。つまり、処理装置、記憶装置、表示装置、入力装置、出力装置はハードウェアである。
【0022】
実施の形態1.
図1は、実施の形態1に係る暗号化文書生成装置10により暗号化文書を生成する様子を示す図である。
図1では、「20時に駅で集合です。」という文章のうち、「20」と「駅」との文字列を暗号化した暗号化文書を生成する例を示している。
まず、(a)に示すように、ユーザは、キーボードにより「20」と入力する。すると、下線が付された状態で「20」が表示される。文字列に下線が付されている場合、その文字列は変換や暗号化の指示前の未確定状態(未確定文字列)であることを示す。次に、ユーザは、キーボードのALTボタンと、スペースボタンとを同時押しする。すると、複数の暗号化方式と、暗号化しないこととの選択肢が表示される。ここでは、「20」を暗号化するため、ユーザは表示された選択肢から所定の暗号化方式を選択する。すると、選択した暗号化方式で、「20」が暗号化され、「20」に代わって文字列「R#」が表示される。「20」が「R#」に変換されると、下線が取り除かれる。文字列から下線が取り除かれた場合、その文字列は変換や暗号化が済んだ確定状態(確定文字列)であることを示す。
続いて、(b)に示すように、ユーザは、入力装置により「じに」と入力する。すると、下線が付された状態で「じに」が表示される。次に、ユーザは、キーボードのスペースボタンを押す。すると、「じに」を漢字等に変換した変換文字列が表示される。ユーザは、表示された変換文字列から「時に」を選択する。さらに、ユーザは、キーボードのALTボタンと、スペースボタンとを同時押しする。すると、複数の暗号化方式と、暗号化しないこととの選択肢が表示される。ここでは、「時に」を暗号化しないため、ユーザは表示された選択肢から暗号化しないを選択する。すると、「時に」が暗号化されず、下線が取り除かれて「時に」として表示される。
続いて、(c)に示すように、ユーザは、入力装置により「えき」と入力する。すると、下線が付された状態で「えき」が表示される。次に、ユーザは、キーボードのスペースボタンを押す。すると、「えき」を漢字等に変換した変換文字列が表示される。ユーザは、表示された変換文字列から「駅」を選択する。さらに、ユーザは、キーボードのALTボタンと、スペースボタンとを同時押しする。すると、複数の暗号化方式と、暗号化しないこととの選択肢が表示される。ここでは、「駅」を暗号化するため、ユーザは表示された選択肢から所定の暗号化方式を選択する。すると、選択した暗号化方式で、「駅」が暗号化され、「駅」に代わって文字列「%qN」が表示される。「駅」が「%qN」に変換されると、下線が取り除かれる。
続いて、(d)に示すように、ユーザは、入力装置により「でしゅうごうです。」と入力する。すると、下線が付された状態で「でしゅうごうです。」が表示される。次に、ユーザは、キーボードのスペースボタンを押す。すると、「でしゅうごうです。」を漢字等に変換した変換文字列が表示される。ユーザは、表示された変換文字列から「で集合です。」を選択する。さらに、ユーザは、キーボードのALTボタンと、スペースボタンとを同時押しする。すると、複数の暗号化方式と、暗号化しないこととの選択肢が表示される。ここでは、「で集合です。」を暗号化しないため、ユーザは表示された選択肢から暗号化しないを選択する。すると、「で集合です。」が暗号化されず、下線が取り除かれて「で集合です。」として表示される。
これにより、(e)に示すように、「20時に駅で集合です。」という文章のうち、「20」と「駅」との文字列を暗号化した「R#時に%qNで集合です。」という暗号化文書が生成される。
【0023】
図2、図3に基づき、実施の形態1に係る暗号化文書生成装置10の構成及び動作について説明する。
図2は、実施の形態1に係る暗号化文書生成装置10の構成図である。
図3は、実施の形態1に係る暗号化文書生成装置10の処理の流れを示すフローチャートである。
図2に示すように、暗号化文書生成装置10は、文字列入力部11、変換命令入力部12、変換辞書記憶部13、方式記憶部14、選択肢表示部15、選択部16、変換部17、暗号化識別情報生成部18、出力部19を備える。
【0024】
(S1)では、文字列入力部11が、ユーザに入力装置により文字列を入力させる。文字列入力部11は、入力された文字列を、下線を付して未確定文字列として表示装置に表示する。
【0025】
(S2)では、変換命令入力部12が、ユーザに入力装置により、未確定文字列を漢字等へ変換させる文字変換命令と、未確定文字列を漢字等へ変換することなく暗号化させる暗号変換命令と、未確定文字列を漢字等への変換も暗号化もさせることなく確定させる確定命令とのいずれかを入力させる。
図1の例では、ユーザは、キーボードのスペースボタンを押すことにより、文字変換命令を入力することができ、ALTボタンとスペースボタンとを同時押しすることにより、暗号変換命令を入力することができる。また、ユーザは、例えば、エンターボタンを押すことにより、確定命令を入力することができる。
文字変換命令が入力された場合(S3)へ処理を進め、暗号変換命令が入力された場合(S6)へ処理を進め、確定命令が入力された場合(S8)へ処理を進める。
【0026】
(S3)では、選択肢表示部15が、入力された文字列に対する変換した文字列の候補を選択肢として表示装置に表示する。
図4は、実施の形態1に係る変換辞書記憶部13が記憶する情報の一例を示す図である。図4に示すように、変換辞書記憶部13は、入力された文字列(入力文字列)毎に、変換した文字列の候補(候補文字列)と、候補文字列が選択された回数とを記憶した記憶装置である。選択肢表示部15は、変換辞書記憶部13から入力文字列に対応する候補文字列を選択肢として取得して、選択された回数の多い順に並べて表示する。
【0027】
(S4)では、選択部16が、ユーザに入力装置により、(S3)で表示された選択肢から所望の選択肢を選択させる。選択部16は、変換辞書記憶部13における選択された選択肢の回数をインクリメントする。
【0028】
(S5)では、変換命令入力部12が、ユーザに入力装置により、未確定文字列を暗号化させる暗号変換命令と、暗号化させることなく確定させる確定命令とのいずれかを入力させる。
暗号変換命令が入力された場合(S6)へ処理を進め、確定命令が入力された場合(S8)へ処理を進める。
【0029】
(S6)では、選択肢表示部15が、入力された文字列に対する暗号化方式の候補と、暗号化しないこととを選択肢として表示装置に表示する。
図5は、実施の形態1に係る方式記憶部14が記憶する情報の一例を示す図である。図5に示すように、方式記憶部14は、入力された文字列(入力文字列)毎に、複数の暗号化方式及び暗号化しないこととを示す選択肢と、その選択肢が選択された回数とを記憶した記憶装置である。選択肢表示部15は、方式記憶部14から入力文字列に対応する選択肢を取得して、選択された回数の多い順に並べて表示する。
【0030】
(S7)では、選択部16が、ユーザに入力装置により、(S6)で表示された選択肢から所望の選択肢を選択させる。選択部16は、方式記憶部14における選択された選択肢の回数をインクリメントする。
【0031】
(S8)では、変換部17が、未確定文字列を(S4)で選択された候補文字列に変換した上で、(S7)で選択された暗号化方式で暗号化して、確定文字列に変換する。そして、変換部17が変換文字列を表示装置に表示する。
なお、変換部17は、(S5)で確定命令が入力された場合や、(S7)で暗号化しないという選択肢が選択された場合には、未確定文字列を(S4)で選択された候補文字列にして、確定文字列に変換する。
また、変換部17は、(S2)で暗号変換命令が入力され、漢字等への変換をせずに暗号化することが選択された場合には、未確定文字列を(S7)で選択された暗号化方式で暗号化して、確定文字列に変換する。
また、変換部17は、(S2)で確定命令が入力された場合には、未確定文字列をそのまま確定文字列にする。
【0032】
また、(S9)では、(S7)でいずれかの暗号化方式が選択され、未確定文字列を暗号化することが選択された場合に、暗号化識別情報生成部18が処理装置により暗号化識別情報を生成する。
暗号化識別情報は、確定文字列のうち、どの部分が暗号化されているか、どの部分が暗号化されていないかを識別可能な情報である。また、暗号化識別情報は、文字列が暗号化されている場合、どの暗号化方式で暗号化されたかを識別可能な情報である。ここでは、暗号化識別情報は、暗号化されている各確定文字列について、先頭の文字位置及び最後の文字位置と、暗号化に利用した暗号化方式とを含む情報とする。
【0033】
(S10)では、(S8)及び(S9)の処理が終了すると、文字列入力部11が、ユーザに入力装置により、続けて文字列を入力するか否かを入力させる。
例えば、ユーザは、次の文字列を入力することで、続けて文字列を入力することを示し、文書ファイルを保存することや、文書ファイルを閉じること等で、文字列の入力を終了することを示す。
続けて文字列を入力する場合、(S1)へ処理を戻す。一方、文字列の入力を終了する場合、(S11)へ処理を進める。
【0034】
(S11)では、出力部19が(S8)で変換した確定文字列からなる文書に、(S9)で生成した暗号化識別情報を添付した確定文書(暗号化文書)を、出力装置へ出力する。
【0035】
なお、暗号化方式とは、例えば、DESの16bit、DESの32bit、DESの64bit、AES、・・・等どのような暗号化の方式であっても構わない。
また、暗号化に用いる鍵は、暗号化方式が共通鍵暗号であれば、予め復号者との間で共有されているものとし、公開鍵暗号であれば、復号者の公開鍵である。
【0036】
以上のように、実施の形態1に係る暗号化文書生成装置10は、文字列を入力する度に暗号化させるか否かを選択させ、秘密にすべき文字列だけが暗号化されており、秘密にする必要のない文字列は平文のままの暗号化文書を生成する。特に、実施の形態1に係る暗号化文書生成装置10は、いわゆるIM(Input Method)あるいはFEP(Front End Processor)と呼ばれる日本語入力機能の一環として、暗号化するか否かの選択をさせる機能を持たせている。
したがって、暗号化された文字列を復号するための復号鍵を持たない者(受信者)は、一部が暗号化された状態で、その文書を利用することができる。一方、復号鍵を持つ者(解読者)は、暗号化識別情報が示す位置の文字列を、暗号化識別情報が示す暗号化方式に従い、復号鍵で復号することで、全ての文字列を平文に変換して利用することができる。
また、秘密にすべき文字列が平文の状態となることがなく、秘密にすべき文字列が平文の状態の電子ファイルを盗み取られ、利用されることがない。特に、いわゆるIMあるいはFEPの機能の一環として、暗号化するか否かの選択をさせており、秘密にすべき文字列が平文状態のまま確定文字列となることがない。そのため、秘密にすべき文字列が平文状態のまま、文書データが保存されることがない。
【0037】
また、実施の形態1に係る暗号化文書生成装置10は、暗号化する文字列毎に、どの暗号化方式で暗号化するかを選択させ、選択された暗号化方式で暗号化する。したがって、仮に一部の暗号化方式で暗号化した文字列が解読されても、暗号化した文字列全てが解読されることを防止できる。
なお、文字列の機密性に応じて用いる暗号化方式を変更するようにしてもよい。例えば、機密性の高い文字列については、安全性の高い暗号化方式を用い、機密性のそれほど高くない文字列については、安全性のそれほど高くない簡便な暗号化方式を用いてもよい。
【0038】
また、実施の形態1に係る暗号化文書生成装置10は、文字列毎に各暗号化方式を選択した回数を方式記憶部14に記録しておき、回数が多い暗号化方式ほど上になるように表示順序を変更する学習機能を備える。そのため、学習が進むに従い、暗号化方式の入力を素早く行うことができるようになる。
ここで、変換辞書記憶部13や方式記憶部14が記憶する回数は、直近の所定の期間における回数のみとして、それ以前の回数は含めないとしてもよい。これにより、最近多く選択した選択肢が上に表示されるようになる。
【0039】
なお、変換部17は、文字列を暗号化する際、暗号化した結果がテキスト形式(文字データ)になるようにする。つまり、文字列を暗号化した場合、暗号化した結果が、ASCIIコードや、UNIコード等の所定の文字コードにおいて、コードが割り当てられている値になるようにする。
暗号化した文字列がテキスト形式であるため、暗号化文書を復号することなく開いた場合であっても、形式が崩れることなく表示可能である。また、暗号化された文字列についても、暗号化されたままの状態で容易にコピーすること等が可能である。つまり、暗号化した文字列をテキスト形式にすることで、暗号化文書が利用し易くなる。
【0040】
また、上記説明では、暗号化識別情報を、暗号化されている各確定文字列について、先頭の文字位置及び最後の文字位置と、暗号化に利用した暗号化方式とを含む情報とした。しかし、暗号化識別情報は、暗号化されている各確定文字列について、先頭の文字位置又は最後の文字位置のいずれか一方と、暗号化前の文字列(漢字等へ変換した場合には変換後の文字列)から計算されたハッシュ値とを含む情報としてもよい。
先頭の文字位置とハッシュ値とを含む情報が暗号化識別情報として付されている場合に、暗号化された文字列を復号するには、先頭の文字位置の文字から1文字づつ文字を追加しながら、各暗号化方式で復号する。そして、復号した結果から計算したハッシュ値が、暗号化識別情報に含まれるハッシュ値と一致する場合には、復号に成功したと判断すればよい。暗号化識別情報が先頭の文字位置とハッシュ値とを含む情報である場合には、最後の文字位置から1文字づつ遡って追加しながら各暗号化方式で復号すればよい。
【0041】
また、上記説明では、確定文字列からなる文書に、暗号化識別情報を添付した暗号化文書を出力するとした。これは、暗号化識別情報がなければ、どの部分がどの暗号化方式で暗号化されたか識別できず、復号ができないためである。
しかし、確定文字列からなる文書と、暗号化識別情報とを別にして配布してもよい。つまり、確定文字列からなる文書を暗号化文書として公開しておき、暗号化文書を復号するための鍵の1つとして暗号化識別情報を解読者へ配布してもよい。
また、暗号化識別情報を配布する際、暗号化文書を生成するときに使用した鍵とは異なる鍵で暗号化識別情報を暗号化して、解読者へ配布してもよい。例えば、暗号化文書を生成するときには、予め共有した共通鍵を用い、暗号化識別情報を配布する際には、解読者の公開鍵で暗号化してもよい。
これにより、さらに安全性を高くすることができる。
【0042】
実施の形態2.
実施の形態1では、一般的な文書の一部の文字列を暗号化することについて説明した。実施の形態2では、設定ファイル等の特殊な文書の一部の文字列を暗号化することについて説明する。
実施の形態2では、実施の形態1と異なる部分のみを説明する。
【0043】
図6は、実施の形態2に係る暗号化文書生成装置10により生成された暗号化文書の一例を示す図である。
図6では、端末の設定情報を記述した設定ファイルを暗号化文書として生成する例を示している。特に、設定ファイルのうち、端末IDについては暗号化せず、IPアドレス、端末の設置場所、接続されたデバイスのIDといった設定内容については暗号化する例を示している。
また、図6に示す設定ファイルでは、表形式の入力フォーマットが規定されている。ここでは、1列目には端末ID、2列目にはIPアドレス、3列目には端末の設置場所、4列目には接続されたデバイスのIDが記述されることが定められている。
ユーザは、各端末について、端末ID、IPアドレス、端末の設置場所、接続されたデバイスのIDをそれぞれの入力エリアにキーボードにより順次入力する。ユーザは、各入力エリアに情報を入力する度に、いずれかの暗号化方式か、暗号化しないかを選択する。ここでは、端末IDについては暗号化しないことを選択し、IPアドレス、端末の設置場所、接続されたデバイスのIDについては、使用する暗号化方式を選択して暗号化させる。また、各項目を入力した際、漢字等へ変換が必要な場合には、暗号化方式を選択する前に変換させる。
これにより、各端末について、端末IDは平文状態であり、IPアドレス、端末の設置場所、接続されたデバイスのIDは暗号化された状態の設定ファイルが生成される。
【0044】
実施の形態1では、方式記憶部14が、文字列毎に、各暗号化方式と暗号化しないこととの各選択肢が選択された回数を記憶するとした。
しかし、図6に示すように、表の列毎に入力すべき項目が決定されている場合、列毎に各選択肢が選択された回数を記憶するとしてもよい。図7は、実施の形態2に係る方式記憶部14が記憶する情報の一例を示す図である。図7に示すように、方式記憶部14は、端末ID、IPアドレス、端末の設置場所、接続されたデバイスのIDという列項目毎に、選択肢と、その選択肢が選択された回数とを記憶している。
したがって、複数の端末について、端末ID、IPアドレス、端末の設置場所、接続されたデバイスのIDを入力し終えた後、ある端末についてIPアドレスを入力する場合、それまでにIPアドレスを入力する際に選択肢が選択された回数に基づき、
選択肢の表示順序が決定される。
なお、ここでは、列毎に入力すべき項目が決定されていたため、方式記憶部14が、列毎に選択肢と、その選択肢が選択された回数とを記憶した。しかし、行毎に入力すべき項目が決定されているのであれば、方式記憶部14は、行毎に選択肢と、その選択肢が選択された回数とを記憶すればよい。
一般的に、同じ項目については、同じ選択肢を選択する場合が多いと考えられる。したがって、このように同じ項目が入力される入力エリア毎に選択肢が選択された回数を記憶しておき、その回数に基づき表示順序を決定することで、入力をより素早く行うことが可能となる。
【0045】
図8は、実施の形態2に係る暗号化文書生成装置10により生成された暗号化文書の他の例を示す図である。
図8では、図6と同様に、端末の設定情報を記述した設定ファイルを暗号化文書として生成する例として示している。特に、設定ファイルのうち、端末IDについては暗号化せず、IPアドレス、端末の設置場所、接続されたデバイスのIDといった設定内容については暗号化する例を示している。
また、図8に示す設定ファイルでは、入力項目毎にヘッダが付されている。ここでは、端末IDには“ID=”、IPアドレスには“IP=”、端末の設置場所には“area=”、接続されたデバイスのIDには“DEV=”のヘッダが付されている。
図6の場合と同様に、ユーザは、各端末について、端末ID、IPアドレス、端末の設置場所、接続されたデバイスのIDをそれぞれのヘッダの右側にキーボードにより順次入力する。ユーザは、各入力エリアに情報を入力する度に、いずれかの暗号化方式か、暗号化しないかを選択する。ここでは、端末IDについては暗号化しないことを選択し、IPアドレス、端末の設置場所、接続されたデバイスのIDについては、使用する暗号化方式を選択して暗号化させる。また、各項目を入力した際、漢字等へ変換が必要な場合には、暗号化方式を選択する前に変換させる。
これにより、各端末について、端末IDは平文状態であり、IPアドレス、端末の設置場所、接続されたデバイスのIDは暗号化された状態の設定ファイルが生成される。
【0046】
図8に示すように、入力項目毎にヘッダが付されている場合、ヘッダ毎に各選択肢が選択された回数を記憶するとしてもよい。図9は、実施の形態2に係る方式記憶部14が記憶する情報の他の例を示す図である。図9に示すように、方式記憶部14は、“ID=”、“IP=”、・・・というヘッダ毎に、選択肢と、その選択肢が選択された回数とを記憶している。
したがって、複数の端末について、端末ID、IPアドレス、端末の設置場所、接続されたデバイスのIDを入力し終えた後、ある端末についてIPアドレスを入力する場合、それまでにIPアドレスを入力する際に選択肢が選択された回数に基づき、
選択肢の表示順序が決定される。
上述したように、一般的に、同じ項目については、同じ選択肢を選択する場合が多いと考えられる。したがって、このように同じ項目に対して付されるヘッダ毎に選択肢が選択された回数を記憶しておき、その回数に基づき表示順序を決定することで、入力をより素早く行うことが可能となる。
【0047】
管理者が上述した設定ファイルを作成し、作成された設定ファイルに基づき設定者が端末の設定を行い、利用者が端末を利用するとする。
ここで、管理者は、利用者と共有した共通鍵、あるいは利用者の公開鍵で設定ファイルにおけるIPアドレス等の設定内容については暗号化する。なお、端末IDは暗号化せず、平文状態としておく。
この場合、設定者は、端末IDは読み取れるものの、IPアドレス等の設定項目については暗号化されており、読み取ることができない。しかし、設定者は、端末IDと、列又はヘッダとから、そこに記載されている情報が、IPアドレス等の設定項目であり、どの端末に設定すべきものであるかを読み取ることができる。したがって、設定者は、暗号化されたままの状態で、IPアドレス等を各端末へ設定することができる。
そして、利用者は、管理者と共有した共通鍵、あるいは利用者の秘密鍵で暗号化されたIPアドレス等を復号する。これにより、利用者の端末の設定が完了する。なお、復号作業は、利用者の手作業で行わなくても、プログラムにより自動的に行わせることもできる。
例えば、外部業者に設定作業を依頼するような場合、外部業者に対して設定内容を秘密にしたいと考えることがある。以上のように設定ファイルを生成することで、このような場合に、外部業者に対して設定内容を秘密にすることができる。
【0048】
上記説明では、各端末についての情報を入力する際、暗号化方式を選択するようにした。しかし、1件目の端末について各項目を入力する際に選択した選択肢が、2件目以降の端末について対応する項目を入力する際にも用いられるようにしてもよい。
つまり、1件目の端末について、端末IDに対して暗号化しないという選択肢を選択した場合、2件目以降の端末について、端末IDに対しては自動的に暗号化しないという選択肢が選択されたものとして処理される。同様に、1件目の端末について、IPアドレスに対して方式1で暗号化するという選択肢を選択した場合、2件目以降の端末について、IPアドレスに対しては自動的に方式1で暗号化するという選択肢が選択されたものとして処理される。他の項目についても同様である。
これにより、2件目以降の端末について入力する場合、選択肢を選択する必要がなく、入力をより素早く行うことが可能になる。
この場合、方式記憶部14は、1件目の端末について各項目を入力する際に選択された選択肢を記憶しておく。図6に示す例の場合であれば、1件目の端末について、列毎に選択された選択肢を記憶しておく。また、図8に示す例の場合であれば、1件目の端末について、ヘッダ毎に選択された選択肢を記憶しておく。そして、2件目以降の端末について対応する項目が入力された際、選択部16が自動的に方式記憶部14が記憶した選択肢を選択すればよい。図6に示す例の場合であれば、選択部16が、入力された列に応じて方式記憶部14が記憶した選択肢を選択すればよい。また、図8に示す例の場合であれば、選択部16が、入力されたヘッダに応じて方式記憶部14が記憶した選択肢を選択すればよい。
【0049】
また、この場合、項目毎に選択肢が固定されるため、方式記憶部14が記憶した情報があれば、暗号化識別情報がなくても復号することができる。
暗号化識別情報を生成するのは、復号する際、どの部分がどの暗号化方式で暗号化されたか識別できるようにするためであった。しかし、項目毎に選択肢が固定されているのであれば、方式記憶部14が記憶した項目毎の選択肢さえわかれば、復号することができる。
したがって、項目毎に選択肢が固定される場合、図3に示す(S9)を省略し、暗号化識別情報を生成せず、代わりに方式記憶部14が記憶した情報を解読者へ配布してもよい。なお、暗号化識別情報を、暗号化文書とは別に配布する場合と同様に、方式記憶部14が記憶した情報を配布する場合、暗号化文書を生成するときに使用した鍵とは異なる鍵で暗号化して、解読者へ配布してもよい。
【0050】
実施の形態3.
実施の形態2では、ユーザが順次設定項目を入力し、暗号化するか否かを選択して設定ファイルを作成することについて説明した。実施の形態3では、実施の形態2で説明したように、設定ファイルを作成することにより方式記憶部14に蓄積された情報を使って、既に作成された平文状態の設定ファイルを暗号化することについて説明する。
【0051】
図10、図11に基づき、実施の形態3に係る暗号化文書生成装置10の構成及び動作について説明する。
図10は、実施の形態3に係る暗号化文書生成装置10の構成図である。
図11は、実施の形態3に係る暗号化文書生成装置10の処理の流れを示すフローチャートである。
図10に示すように、実施の形態3に係る暗号化文書生成装置10は、図2に示す実施の形態1に係る暗号化文書生成装置10の機能に加え、文書データ入力部20を備える。
なお、ここでは、図6に示す表形式の入力フォーマットで作成された設定ファイルを例として説明する。また、実施の形態2で説明したように、ユーザが順次設定項目を入力し、暗号化するか否かを選択して設定ファイルを作成することで、方式記憶部14が記憶する情報は、図7に示す状態となっているとする。
【0052】
(S21)では、文書データ入力部20が、ユーザに平文状態の設定ファイルを文書データとして入力させる。例えば、ユーザは、予め記憶装置に記憶された平文状態の設定ファイルを指定することにより、平文状態の設定ファイルを入力することができる。
図12は、平文状態の設定ファイルの一例を示す図である。なお、図12に示す設定ファイルは、図6に示す設定ファイルと同じ形式である。
【0053】
(S22)では、選択部16が、(S21)で入力された設定ファイルの各列について、その列の選択肢で最も選択された回数が多い選択肢を選択する。例えば、端末IDの列であれば、暗号化しないという選択肢を選択し、IPアドレスの列であれば、方式1という選択肢を選択する。
【0054】
(S23)では、変換部17が、(S21)で入力された設定ファイルの各列に設定された文字列を、(S22)で選択された選択肢で変換する。具体的には、暗号化しないという選択肢が選択されている列に設定された文字列については、変換しない。一方、暗号化方式が選択されている列に設定された文字列については、その暗号化方式で暗号化する。
【0055】
(S24)では、暗号化識別情報生成部18が、暗号化識別情報を生成する。なお、ここでの暗号化識別情報は、各列を暗号化するのに利用した暗号化方式を含む情報である。
【0056】
(S25)では、出力部19が、変換部17が変換した後の設定ファイルを出力装置へ出力する。
【0057】
以上のように、実施の形態3に係る暗号化文書生成装置10は、既に作成された平文状態の設定ファイルを、方式記憶部14に蓄積された情報に基づき暗号化して、一部の設定情報が暗号化された設定ファイルに変換する。したがって、既に平文状態で設定ファイルを生成してしまっている場合であっても、後から機械的に一部を暗号化した設定ファイルに変換することができる。
なお、変換された設定ファイルは、実施の形態2で生成した設定ファイルと同様の効果が得られる。
【0058】
上記説明では、図6に示す表形式の入力フォーマットで作成された設定ファイルを例として説明した。しかし、図8に示す入力項目毎にヘッダが付されている設定ファイルであっても同様に処理することができる。この場合、(S22)で列毎に選択肢を選択したのを、ヘッダ毎に選択肢を選択し、(S23)で設定ファイルの各文字列を、その文字列に付されたヘッダに対して(S22)で選択された選択肢で変換すればよい。
【0059】
また、上記説明では、(S24)で暗号化識別情報を生成するとした。しかし、ここで生成される設定ファイルでは、項目毎に選択肢が固定されるため、実施の形態2で説明したように、方式記憶部14が記憶した情報があれば、暗号化識別情報がなくても復号することができる。そこで、図11に示す(S24)を省略し、暗号化識別情報を生成せず、代わりに方式記憶部14が記憶した情報を解読者へ配布してもよい。解読者は、方式記憶部14が記憶した情報から、各列についてその列の選択肢で最も選択された回数が多い選択肢を選択すれば、各列を暗号化する際に利用した暗号化方式を特定できる。
【0060】
実施の形態2,3では設定ファイルを一例として説明したが、設定ファイルに限らず、入力フォーマットが決まっている文書データであれば、他の文書データであっても構わない。
【0061】
次に、実施の形態における暗号化文書生成装置10のハードウェア構成について説明する。
図13は、暗号化文書生成装置10のハードウェア構成の一例を示す図である。
図13に示すように、暗号化文書生成装置10は、プログラムを実行するCPU911(Central・Processing・Unit、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)を備えている。CPU911は、バス912を介してROM913、RAM914、LCD901(Liquid Crystal Display)、キーボード902(K/B)、通信ボード915、磁気ディスク装置920と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置920(固定ディスク装置)の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。磁気ディスク装置920は、所定の固定ディスクインタフェースを介して接続される。
【0062】
磁気ディスク装置920又はROM913などには、オペレーティングシステム921(OS)、ウィンドウシステム922、プログラム群923、ファイル群924が記憶されている。プログラム群923のプログラムは、CPU911、オペレーティングシステム921、ウィンドウシステム922により実行される。
【0063】
プログラム群923には、上記の説明において「文字列入力部11」、「変換命令入力部12」、「選択肢表示部15」、「選択部16」、「変換部17」、「暗号化識別情報生成部18」、「出力部19」、「文書データ入力部20」等として説明した機能を実行するソフトウェアやプログラムやその他のプログラムが記憶されている。プログラムは、CPU911により読み出され実行される。
ファイル群924には、上記の説明において「変換辞書記憶部13」、「方式記憶部14」に格納される情報やデータや信号値や変数値やパラメータが、「データベース」の各項目として記憶される。「データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してCPU911によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのCPU911の動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のCPU911の動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【0064】
また、上記の説明におけるフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAM914のメモリ、その他光ディスク等の記録媒体やICチップに記録される。また、データや信号は、バス912や信号線やケーブルその他の伝送媒体や電波によりオンライン伝送される。
また、上記の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。また、「〜装置」として説明するものは、「〜回路」、「〜機器」、「〜手段」、「〜機能」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ROM913に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組合せ、さらには、ファームウェアとの組合せで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、ROM913等の記録媒体に記憶される。プログラムはCPU911により読み出され、CPU911により実行される。すなわち、プログラムは、上記で述べた「〜部」としてコンピュータ等を機能させるものである。あるいは、上記で述べた「〜部」の手順や方法をコンピュータ等に実行させるものである。
【符号の説明】
【0065】
10 暗号化文書生成装置、11 文字列入力部、12 変換命令入力部、13 変換辞書記憶部、14 方式記憶部、15 選択肢表示部、16 選択部、17 変換部、18 暗号化識別情報生成部、19 出力部、20 文書データ入力部。
【特許請求の範囲】
【請求項1】
入力装置により文字列を入力する文字列入力部と、
前記文字列入力部が文字列を入力すると、暗号化するか、又は、暗号化しないかを入力装置により選択する選択部と、
前記選択部が暗号化することを選択した場合、前記文字列入力部が入力した文字列を処理装置により暗号化して確定文字列に変換するとともに、前記選択部が暗号化しないことを選択した場合、前記文字列入力部が入力した文字列を暗号化せず確定文字列に変換する変換部と
を備えることを特徴とする暗号化文書生成装置。
【請求項2】
前記文字列入力部は、前記変換部が入力した文字列を確定文字列に変換した場合、さらに文字列を入力し、
前記選択部は、前記文字列入力部がさらに文字列を入力すると、暗号化するか、又は、暗号化しないかを選択し、
前記変換部は、前記選択部が暗号化することを選択した場合、前記文字列入力部がこれまでに入力した文字列のうち、前記確定文字列となっていない未確定文字列を暗号化して確定文字列に変換するとともに、前記選択部が暗号化しないことを選択した場合、前記未確定文字列を暗号化せず文字列のまま確定文字列に変換する
ことを特徴とする請求項1に記載の暗号化文書生成装置。
【請求項3】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が文字列を入力すると、入力装置により変換命令を入力する変換命令入力部と、
前記変換命令入力部が変換命令を入力すると、複数の暗号化方式と暗号化しないこととを選択肢として表示装置に表示する選択肢表示部
を備え、
前記選択部は、前記選択肢表示部が表示した選択肢から1つを選択し、
前記変換部は、前記選択部がいずれかの暗号化方式を選択した場合、選択された暗号化方式で、文字列を暗号化して確定文字列に変換し、前記選択部が暗号化しないことを選択した場合、前記文字列入力部が入力した文字列を暗号化せず確定文字列に変換する
ことを特徴とする請求項2に記載の暗号化文書生成装置。
【請求項4】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が入力した文字列毎に、前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が入力する文字列に応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする請求項3に記載の暗号化文書生成装置。
【請求項5】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が入力した文字列を複数のグループに分類して、グループ毎に前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が入力する文字列が分類されるグループに応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする請求項3に記載の暗号化文書生成装置。
【請求項6】
前記文字列入力部は、表形式の入力フォーマットに従い、各入力エリアに文字列を入力し、
前記暗号化文書生成装置は、さらに、
前記表形式の入力フォーマットの列又は行毎に、前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が文字列を入力する入力エリアの列又は行に応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする請求項3に記載の暗号化文書生成装置。
【請求項7】
前記暗号化文書生成装置は、さらに、
前記変換部が変換した確定文字列が、文字列を暗号化して変換した確定文字列か、又は、文字列を暗号化せずに変換した確定文字列かを識別可能な暗号化識別情報を処理装置により生成する暗号化識別情報生成部
を備えることを特徴とする請求項1から6までのいずれかに記載の暗号化文書生成装置。
【請求項8】
前記暗号化識別情報生成部は、文字列を暗号化して変換した確定文字列に対して、その確定文字列の暗号化前の文字列から生成したハッシュ値と、その確定文字列の位置を示す位置情報とを、前記暗号化識別情報として生成する
ことを特徴とする請求項7に記載の暗号化文書生成装置。
【請求項9】
前記暗号化文書生成装置は、さらに、
前記変換部が変換した確定文字列が、文字列を暗号化して変換した確定文字列か、又は、文字列を暗号化せずに変換した確定文字列かを識別可能な暗号化識別情報であって、確定文字列が文字列を暗号化して変換した確定文字列である場合には、文字列を暗号化する際に用いた暗号化方式を識別可能な暗号化識別情報を処理装置により生成する暗号化識別情報生成部
を備えることを特徴とする請求項3から6までのいずれかに記載の暗号化文書生成装置。
【請求項10】
前記暗号化文書生成装置は、さらに、
前記変換部が確定文字列に変換した文書データを出力するとともに、前記文書データとは別に前記暗号化識別情報生成部が生成した暗号化識別情報を出力する出力部
を備えることを特徴とする請求項7から9までのいずれかに記載の暗号化文書生成装置。
【請求項11】
前記変換部は、文字列を暗号化する場合、暗号化した各文字が所定の文字コードにおいてコードが割り当てられている文字となるようにする
ことを特徴とする請求項1から10までのいずれかに記載の暗号化文書生成装置。
【請求項12】
前記暗号化文書生成装置は、さらに、
複数の文字列を有する文書データを入力装置により入力する文書データ入力部
を備え、
前記変換部は、前記文書データ入力部が入力した文書データに含まれる各文字列について、その文字列に対して前記方式記憶部が記憶した選択回数に基づき選択肢を特定し、特定した選択肢が暗号化方式を示す場合には、その暗号化方式でその文字列を暗号化して確定文字列に変換するとともに、特定した選択肢が暗号化しないことを示す場合には、その文字列を暗号化せずに確定文字列に変換する
ことを特徴とする請求項4から11までのいずれかに記載の暗号化文書生成装置。
【請求項13】
文字列を入力する文字列入力処理と、
前記文字列入力処理で文字列を入力すると、暗号化するか、又は、暗号化しないかを選択する選択処理と、
前記選択処理で暗号化することを選択した場合、前記文字列入力処理で入力した文字列を暗号化して確定文字列に変換するとともに、前記選択処理で暗号化しないことを選択した場合、前記文字列入力処理で入力した文字列を暗号化せず確定文字列に変換する変換処理と
をコンピュータに実行させることを特徴とする暗号化文書生成プログラム。
【請求項1】
入力装置により文字列を入力する文字列入力部と、
前記文字列入力部が文字列を入力すると、暗号化するか、又は、暗号化しないかを入力装置により選択する選択部と、
前記選択部が暗号化することを選択した場合、前記文字列入力部が入力した文字列を処理装置により暗号化して確定文字列に変換するとともに、前記選択部が暗号化しないことを選択した場合、前記文字列入力部が入力した文字列を暗号化せず確定文字列に変換する変換部と
を備えることを特徴とする暗号化文書生成装置。
【請求項2】
前記文字列入力部は、前記変換部が入力した文字列を確定文字列に変換した場合、さらに文字列を入力し、
前記選択部は、前記文字列入力部がさらに文字列を入力すると、暗号化するか、又は、暗号化しないかを選択し、
前記変換部は、前記選択部が暗号化することを選択した場合、前記文字列入力部がこれまでに入力した文字列のうち、前記確定文字列となっていない未確定文字列を暗号化して確定文字列に変換するとともに、前記選択部が暗号化しないことを選択した場合、前記未確定文字列を暗号化せず文字列のまま確定文字列に変換する
ことを特徴とする請求項1に記載の暗号化文書生成装置。
【請求項3】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が文字列を入力すると、入力装置により変換命令を入力する変換命令入力部と、
前記変換命令入力部が変換命令を入力すると、複数の暗号化方式と暗号化しないこととを選択肢として表示装置に表示する選択肢表示部
を備え、
前記選択部は、前記選択肢表示部が表示した選択肢から1つを選択し、
前記変換部は、前記選択部がいずれかの暗号化方式を選択した場合、選択された暗号化方式で、文字列を暗号化して確定文字列に変換し、前記選択部が暗号化しないことを選択した場合、前記文字列入力部が入力した文字列を暗号化せず確定文字列に変換する
ことを特徴とする請求項2に記載の暗号化文書生成装置。
【請求項4】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が入力した文字列毎に、前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が入力する文字列に応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする請求項3に記載の暗号化文書生成装置。
【請求項5】
前記暗号化文書生成装置は、さらに、
前記文字列入力部が入力した文字列を複数のグループに分類して、グループ毎に前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が入力する文字列が分類されるグループに応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする請求項3に記載の暗号化文書生成装置。
【請求項6】
前記文字列入力部は、表形式の入力フォーマットに従い、各入力エリアに文字列を入力し、
前記暗号化文書生成装置は、さらに、
前記表形式の入力フォーマットの列又は行毎に、前記選択肢のそれぞれについて、前記選択部が選択した選択回数を記憶装置に記憶する方式記憶部
を備え、
前記選択肢表示部は、前記文字列入力部が文字列を入力する入力エリアの列又は行に応じて、前記方式記憶部が記憶した選択回数に基づき前記選択肢の表示順序を決定して、決定した表示順序に前記選択肢を並べて表示する
ことを特徴とする請求項3に記載の暗号化文書生成装置。
【請求項7】
前記暗号化文書生成装置は、さらに、
前記変換部が変換した確定文字列が、文字列を暗号化して変換した確定文字列か、又は、文字列を暗号化せずに変換した確定文字列かを識別可能な暗号化識別情報を処理装置により生成する暗号化識別情報生成部
を備えることを特徴とする請求項1から6までのいずれかに記載の暗号化文書生成装置。
【請求項8】
前記暗号化識別情報生成部は、文字列を暗号化して変換した確定文字列に対して、その確定文字列の暗号化前の文字列から生成したハッシュ値と、その確定文字列の位置を示す位置情報とを、前記暗号化識別情報として生成する
ことを特徴とする請求項7に記載の暗号化文書生成装置。
【請求項9】
前記暗号化文書生成装置は、さらに、
前記変換部が変換した確定文字列が、文字列を暗号化して変換した確定文字列か、又は、文字列を暗号化せずに変換した確定文字列かを識別可能な暗号化識別情報であって、確定文字列が文字列を暗号化して変換した確定文字列である場合には、文字列を暗号化する際に用いた暗号化方式を識別可能な暗号化識別情報を処理装置により生成する暗号化識別情報生成部
を備えることを特徴とする請求項3から6までのいずれかに記載の暗号化文書生成装置。
【請求項10】
前記暗号化文書生成装置は、さらに、
前記変換部が確定文字列に変換した文書データを出力するとともに、前記文書データとは別に前記暗号化識別情報生成部が生成した暗号化識別情報を出力する出力部
を備えることを特徴とする請求項7から9までのいずれかに記載の暗号化文書生成装置。
【請求項11】
前記変換部は、文字列を暗号化する場合、暗号化した各文字が所定の文字コードにおいてコードが割り当てられている文字となるようにする
ことを特徴とする請求項1から10までのいずれかに記載の暗号化文書生成装置。
【請求項12】
前記暗号化文書生成装置は、さらに、
複数の文字列を有する文書データを入力装置により入力する文書データ入力部
を備え、
前記変換部は、前記文書データ入力部が入力した文書データに含まれる各文字列について、その文字列に対して前記方式記憶部が記憶した選択回数に基づき選択肢を特定し、特定した選択肢が暗号化方式を示す場合には、その暗号化方式でその文字列を暗号化して確定文字列に変換するとともに、特定した選択肢が暗号化しないことを示す場合には、その文字列を暗号化せずに確定文字列に変換する
ことを特徴とする請求項4から11までのいずれかに記載の暗号化文書生成装置。
【請求項13】
文字列を入力する文字列入力処理と、
前記文字列入力処理で文字列を入力すると、暗号化するか、又は、暗号化しないかを選択する選択処理と、
前記選択処理で暗号化することを選択した場合、前記文字列入力処理で入力した文字列を暗号化して確定文字列に変換するとともに、前記選択処理で暗号化しないことを選択した場合、前記文字列入力処理で入力した文字列を暗号化せず確定文字列に変換する変換処理と
をコンピュータに実行させることを特徴とする暗号化文書生成プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2012−43242(P2012−43242A)
【公開日】平成24年3月1日(2012.3.1)
【国際特許分類】
【出願番号】特願2010−184673(P2010−184673)
【出願日】平成22年8月20日(2010.8.20)
【出願人】(394013002)三菱電機インフォメーションシステムズ株式会社 (251)
【Fターム(参考)】
【公開日】平成24年3月1日(2012.3.1)
【国際特許分類】
【出願日】平成22年8月20日(2010.8.20)
【出願人】(394013002)三菱電機インフォメーションシステムズ株式会社 (251)
【Fターム(参考)】
[ Back to top ]