JP2001251288A - データ暗号化送信システム及び領域重複判定方法 - Google Patents
データ暗号化送信システム及び領域重複判定方法Info
- Publication number
- JP2001251288A JP2001251288A JP2000058431A JP2000058431A JP2001251288A JP 2001251288 A JP2001251288 A JP 2001251288A JP 2000058431 A JP2000058431 A JP 2000058431A JP 2000058431 A JP2000058431 A JP 2000058431A JP 2001251288 A JP2001251288 A JP 2001251288A
- Authority
- JP
- Japan
- Prior art keywords
- data
- area
- embedding
- byte
- determination
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Storage Device Security (AREA)
Abstract
(57)【要約】
【課題】 鍵データを埋め込む場所をランダムに指定す
ることができ、たとえ暗号アルゴリズムが破られても、
どのデータが鍵データであるかを特定できなくする。ま
た、一つの判定による領域重複判定が可能となり、多数
のデータを埋め込む際にも高速な重複判定を行う。 【解決手段】 鍵データを埋め込む場所をランダムに指
定することにより、暗号アルゴリズムが破られても、ど
のデータが鍵データであるかを特定できなくする。ま
た、重複判定の時間削減のために、データを埋めこむ領
域と、その前の領域の別のデータの先頭アドレスとなり
得ない領域に対応するバッファ領域を特定値にするとい
うバッファ更新方法により、一回の判定による領域重複
判定を可能にする。
ることができ、たとえ暗号アルゴリズムが破られても、
どのデータが鍵データであるかを特定できなくする。ま
た、一つの判定による領域重複判定が可能となり、多数
のデータを埋め込む際にも高速な重複判定を行う。 【解決手段】 鍵データを埋め込む場所をランダムに指
定することにより、暗号アルゴリズムが破られても、ど
のデータが鍵データであるかを特定できなくする。ま
た、重複判定の時間削減のために、データを埋めこむ領
域と、その前の領域の別のデータの先頭アドレスとなり
得ない領域に対応するバッファ領域を特定値にするとい
うバッファ更新方法により、一回の判定による領域重複
判定を可能にする。
Description
【0001】
【発明の属する技術分野】本発明は、複数の鍵データを
暗号化して一度に送信するデータ暗号化送信システム、
あるいは記録媒体に書き込むデータ暗号化管理システム
に関する。
暗号化して一度に送信するデータ暗号化送信システム、
あるいは記録媒体に書き込むデータ暗号化管理システム
に関する。
【0002】また本発明は、例えば、複数の暗号鍵を、
一定の大きさを有した領域のランダムな位置に埋め込む
場合などのように、複数の小さな固定サイズデータの埋
め込みデータ領域の領域重複判定方法に関する。
一定の大きさを有した領域のランダムな位置に埋め込む
場合などのように、複数の小さな固定サイズデータの埋
め込みデータ領域の領域重複判定方法に関する。
【0003】
【従来の技術】従来、複数の鍵データを暗号化して一度
に送信するシステムとしては、送信する数の鍵データを
データの末尾に付加して暗号化、もしくはデータの特定
の位置に鍵データを上書きして暗号化したものを送信す
るシステムが一般的である。
に送信するシステムとしては、送信する数の鍵データを
データの末尾に付加して暗号化、もしくはデータの特定
の位置に鍵データを上書きして暗号化したものを送信す
るシステムが一般的である。
【0004】図12は従来のデータ暗号化送信システム
の構成図である。このデータ暗号化送信システムは、情
報入出力装置1201とデータ管理装置1202と暗号
化装置1203と送信装置1204とで構成されてい
る。データ管理装置1202は、データ管理手段120
5と鍵選択手段1206と鍵管理手段1207とで構成
されている。
の構成図である。このデータ暗号化送信システムは、情
報入出力装置1201とデータ管理装置1202と暗号
化装置1203と送信装置1204とで構成されてい
る。データ管理装置1202は、データ管理手段120
5と鍵選択手段1206と鍵管理手段1207とで構成
されている。
【0005】情報入出力装置1201は、ユーザの指示
によりデータ管理手段1205へのデータ出力要求を出
力する。
によりデータ管理手段1205へのデータ出力要求を出
力する。
【0006】情報入出力装置1201から、データ出力
要求を受けると、データ管理手段1205は、データを
鍵選択手段1206に出力する。鍵選択手段1206
は、データ管理手段1205より出力された各データに
対し、必要な鍵データを鍵管理手段1207より取得
し、ヘッダ、データと共に、暗号化装置入力データとし
て、暗号化装置1203へ出力する。図13は、暗号化
装置入力データのデータ形式である。図13に示すよう
に暗号化装置入力データは、ヘッダと、データと、その
データに必要な数の鍵データとで構成されている。
要求を受けると、データ管理手段1205は、データを
鍵選択手段1206に出力する。鍵選択手段1206
は、データ管理手段1205より出力された各データに
対し、必要な鍵データを鍵管理手段1207より取得
し、ヘッダ、データと共に、暗号化装置入力データとし
て、暗号化装置1203へ出力する。図13は、暗号化
装置入力データのデータ形式である。図13に示すよう
に暗号化装置入力データは、ヘッダと、データと、その
データに必要な数の鍵データとで構成されている。
【0007】暗号化装置1203は、鍵選択手段120
6より受け取った暗号化装置入力データのデータと鍵デ
ータを暗号化し、暗号化装置出力データを送信装置12
04へ出力する。図14は、暗号化装置出力データのデ
ータ形式である。図14に示すように暗号化装置出力デ
ータは、ヘッダと、暗号化データと、暗号化鍵データと
で構成されている。
6より受け取った暗号化装置入力データのデータと鍵デ
ータを暗号化し、暗号化装置出力データを送信装置12
04へ出力する。図14は、暗号化装置出力データのデ
ータ形式である。図14に示すように暗号化装置出力デ
ータは、ヘッダと、暗号化データと、暗号化鍵データと
で構成されている。
【0008】送信装置1204は、暗号化装置1203
より受け取った暗号化装置出力データを送信する。
より受け取った暗号化装置出力データを送信する。
【0009】また、従来のデータ領域の重複判定方法と
しては、埋め込みデータの重複を判定するためのバッフ
ァ領域を用意し、データを埋め込んだ領域に対応するバ
ッファ領域に埋め込み不可を示す値を入れておき、デー
タを埋め込む際に対応するバッファ領域に埋め込み不可
を示す値が入っていないかどうか、判定するという方法
がよく知られている。
しては、埋め込みデータの重複を判定するためのバッフ
ァ領域を用意し、データを埋め込んだ領域に対応するバ
ッファ領域に埋め込み不可を示す値を入れておき、デー
タを埋め込む際に対応するバッファ領域に埋め込み不可
を示す値が入っていないかどうか、判定するという方法
がよく知られている。
【0010】図15は従来方法の構成図である。領域入
力部1501は、データを埋め込む領域である埋め込み
領域を入力するものである。判定バッファ生成部150
2は、重複判定に必要な判定バッファを生成するもので
ある。判定バッファ初期化部1503は、判定バッファ
に初期値を設定するものである。データ入力部1504
は、埋め込みデータを入力するものである。先頭アドレ
ス取得部1505は、埋め込みデータに対応する、先頭
アドレスを取得するものである。先頭アドレスとは、埋
め込みデータを埋め込み領域の先頭から何バイト目の領
域から埋め込むか、の値である。重複判定部1506
は、複数の埋め込みデータが重複して埋め込まれること
のないよう重複判定をするものである。判定バッファ更
新部1508は、重複なしと判定されて領域に埋め込ま
れるデータについて、以後判定する埋め込みデータのた
めに、判定バッファを更新するものである。データ埋め
込み部1509は、重複なしと判定された埋め込みデー
タを埋め込み領域に埋め込むものである。埋め込み済領
域出力部1510は、データ埋め込み部1509により
更新された領域を出力するものである。重複出力部15
07は、重複すると判定されたことを出力するものであ
る。
力部1501は、データを埋め込む領域である埋め込み
領域を入力するものである。判定バッファ生成部150
2は、重複判定に必要な判定バッファを生成するもので
ある。判定バッファ初期化部1503は、判定バッファ
に初期値を設定するものである。データ入力部1504
は、埋め込みデータを入力するものである。先頭アドレ
ス取得部1505は、埋め込みデータに対応する、先頭
アドレスを取得するものである。先頭アドレスとは、埋
め込みデータを埋め込み領域の先頭から何バイト目の領
域から埋め込むか、の値である。重複判定部1506
は、複数の埋め込みデータが重複して埋め込まれること
のないよう重複判定をするものである。判定バッファ更
新部1508は、重複なしと判定されて領域に埋め込ま
れるデータについて、以後判定する埋め込みデータのた
めに、判定バッファを更新するものである。データ埋め
込み部1509は、重複なしと判定された埋め込みデー
タを埋め込み領域に埋め込むものである。埋め込み済領
域出力部1510は、データ埋め込み部1509により
更新された領域を出力するものである。重複出力部15
07は、重複すると判定されたことを出力するものであ
る。
【0011】埋め込み領域を領域入力部1501により
入力し、判定バッファ生成部1502で埋め込み領域の
バイト数と同じバイト数の判定バッファを生成する。判
定バッファ初期化部1503により、判定バッファの初
期化を行う。また、データ入力部1504により全ての
埋め込みデータを入力する。各、埋め込みデータについ
て、先頭アドレス取得部1505で、その埋め込みデー
タに対応する、領域への埋め込み先のアドレスである先
頭アドレスを取得する。先頭アドレス取得部1505で
取得した先頭アドレスと判定バッファを使って、重複判
定部1506にて先頭アドレスが重複してデータを埋め
込むことがないアドレスであるかどうか、重複判定す
る。重複すると判定されたときには、重複出力部150
7にて、異常結果を出力し終了する。重複しないと判定
されたときには、判定バッファ更新部1508で、重複
しないと判定された埋め込みデータに対するアドレスに
埋め込み不可を示す値を埋め込むことにより、データを
埋め込むと重複してしまうアドレスに該当する判定バッ
ファを更新する。データ埋め込み部1509で埋め込み
領域の先頭アドレスに該当する領域から埋め込みデータ
を埋め込む。全ての埋め込みデータについて先頭アドレ
ス取得部1505以降の処理を繰り返し、全て正常なら
ば埋め込み済領域出力部1510で正常結果を出力す
る。
入力し、判定バッファ生成部1502で埋め込み領域の
バイト数と同じバイト数の判定バッファを生成する。判
定バッファ初期化部1503により、判定バッファの初
期化を行う。また、データ入力部1504により全ての
埋め込みデータを入力する。各、埋め込みデータについ
て、先頭アドレス取得部1505で、その埋め込みデー
タに対応する、領域への埋め込み先のアドレスである先
頭アドレスを取得する。先頭アドレス取得部1505で
取得した先頭アドレスと判定バッファを使って、重複判
定部1506にて先頭アドレスが重複してデータを埋め
込むことがないアドレスであるかどうか、重複判定す
る。重複すると判定されたときには、重複出力部150
7にて、異常結果を出力し終了する。重複しないと判定
されたときには、判定バッファ更新部1508で、重複
しないと判定された埋め込みデータに対するアドレスに
埋め込み不可を示す値を埋め込むことにより、データを
埋め込むと重複してしまうアドレスに該当する判定バッ
ファを更新する。データ埋め込み部1509で埋め込み
領域の先頭アドレスに該当する領域から埋め込みデータ
を埋め込む。全ての埋め込みデータについて先頭アドレ
ス取得部1505以降の処理を繰り返し、全て正常なら
ば埋め込み済領域出力部1510で正常結果を出力す
る。
【0012】図16は、図15で示した構成の装置を用
いた領域重複判定方法のフローチャートである。領域入
力部1501と対応するステップaにて埋め込み領域を
入力し、判定バッファ生成部1502と対応するステッ
プbにて埋め込み領域のバイト数と同じバイト数の判定
バッファを生成する。
いた領域重複判定方法のフローチャートである。領域入
力部1501と対応するステップaにて埋め込み領域を
入力し、判定バッファ生成部1502と対応するステッ
プbにて埋め込み領域のバイト数と同じバイト数の判定
バッファを生成する。
【0013】図17は、判定バッファと埋め込み領域の
対応図である。図17のように、埋め込み領域の先頭か
らZバイト目と、判定バッファ領域の先頭からZバイト
目を対応させる。判定バッファのあるバイトの値が埋め
込み不可を示す値となっている時には、対応する領域に
はすでにデータが埋め込んであり、重複して埋め込んで
しまうので埋め込むことができない、ということであ
る。判定バッファの各バイトの値は、埋め込み不可を示
す値と埋め込み可能を示す値のどちらかしか入らない。
この対応では、埋め込み領域1バイトに対し、判定バッ
ファ領域1バイトを対応させているが、埋め込み領域1
バイトに対し、判定バッファ領域1ビットを対応させて
判定バッファ長を(埋め込み領域長/8の商)+1とし
てもよい。
対応図である。図17のように、埋め込み領域の先頭か
らZバイト目と、判定バッファ領域の先頭からZバイト
目を対応させる。判定バッファのあるバイトの値が埋め
込み不可を示す値となっている時には、対応する領域に
はすでにデータが埋め込んであり、重複して埋め込んで
しまうので埋め込むことができない、ということであ
る。判定バッファの各バイトの値は、埋め込み不可を示
す値と埋め込み可能を示す値のどちらかしか入らない。
この対応では、埋め込み領域1バイトに対し、判定バッ
ファ領域1バイトを対応させているが、埋め込み領域1
バイトに対し、判定バッファ領域1ビットを対応させて
判定バッファ長を(埋め込み領域長/8の商)+1とし
てもよい。
【0014】判定バッファ初期化部1503と対応する
ステップcにて、この判定バッファの初期化処理を行
う。初期化処理とは、判定バッファ領域を全て埋め込み
可能を示す値にすることを行う。データ入力部1504
と対応するステップdにて埋め込みデータを全て入力す
る。各埋め込みデータに対し、先頭アドレス取得部15
05と対応するステップeにて、埋め込みデータと対応
する領域への埋め込み先である先頭アドレスを取得す
る。次に重複判定部1506と対応するステップfに
て、埋め込みデータを重複して埋め込むことがない先頭
アドレスかどうか、重複判定する。具体的には、先頭ア
ドレスから順に対応する判定バッファ領域について、バ
イトの値が埋め込み不可を示す値であるかどうかを、埋
め込みデータを埋め込む埋め込み領域に対応する全バイ
トについて判定する。埋め込み不可を示す値のものが一
つでもあるときには、重複していると判断し、重複出力
部1507と対応するステップkにて、重複しているこ
とを出力し、終了する。埋め込み可能を示す値である時
には、判定した先頭アドレスについて判定バッファ更新
部1508と対応するステップgにて判定バッファを更
新する。重複しないと判定されたこの先頭アドレスから
埋め込みデータの長さ分の領域と対応する判定バッファ
のバイトを埋め込み不可を示す値にする。ステップgの
判定バッファの更新のあと、データ埋め込み部1509
と対応するステップhとして、領域に埋め込みデータを
埋め込む処理をする。先頭アドレスに対応する埋め込み
領域から、埋め込みデータを埋め込む。ステップhのあ
と、ステップiとしてこの埋め込み領域に埋め込む全て
の埋め込みデータについて終了したかどうか判定し、終
了していなければ次の埋め込みデータについてステップ
eから処理を行う。全ての埋め込みデータについて終了
していれば埋め込み済み領域出力部1510に対応する
ステップjにて、領域を出力して終了する。
ステップcにて、この判定バッファの初期化処理を行
う。初期化処理とは、判定バッファ領域を全て埋め込み
可能を示す値にすることを行う。データ入力部1504
と対応するステップdにて埋め込みデータを全て入力す
る。各埋め込みデータに対し、先頭アドレス取得部15
05と対応するステップeにて、埋め込みデータと対応
する領域への埋め込み先である先頭アドレスを取得す
る。次に重複判定部1506と対応するステップfに
て、埋め込みデータを重複して埋め込むことがない先頭
アドレスかどうか、重複判定する。具体的には、先頭ア
ドレスから順に対応する判定バッファ領域について、バ
イトの値が埋め込み不可を示す値であるかどうかを、埋
め込みデータを埋め込む埋め込み領域に対応する全バイ
トについて判定する。埋め込み不可を示す値のものが一
つでもあるときには、重複していると判断し、重複出力
部1507と対応するステップkにて、重複しているこ
とを出力し、終了する。埋め込み可能を示す値である時
には、判定した先頭アドレスについて判定バッファ更新
部1508と対応するステップgにて判定バッファを更
新する。重複しないと判定されたこの先頭アドレスから
埋め込みデータの長さ分の領域と対応する判定バッファ
のバイトを埋め込み不可を示す値にする。ステップgの
判定バッファの更新のあと、データ埋め込み部1509
と対応するステップhとして、領域に埋め込みデータを
埋め込む処理をする。先頭アドレスに対応する埋め込み
領域から、埋め込みデータを埋め込む。ステップhのあ
と、ステップiとしてこの埋め込み領域に埋め込む全て
の埋め込みデータについて終了したかどうか判定し、終
了していなければ次の埋め込みデータについてステップ
eから処理を行う。全ての埋め込みデータについて終了
していれば埋め込み済み領域出力部1510に対応する
ステップjにて、領域を出力して終了する。
【0015】
【発明が解決しようとする課題】このように従来のデー
タ暗号化送信システムでは、重要な機密情報である鍵デ
ータがデータのどの位置にあるかが固定のため特定しや
すく、その安全性は暗号が破られないということに基づ
くだけである。
タ暗号化送信システムでは、重要な機密情報である鍵デ
ータがデータのどの位置にあるかが固定のため特定しや
すく、その安全性は暗号が破られないということに基づ
くだけである。
【0016】本発明では、鍵データを埋め込む場所をラ
ンダムに指定することができ、たとえ暗号アルゴリズム
が破られても、どのデータが鍵データであるかを特定で
きなくすることを目的とする。
ンダムに指定することができ、たとえ暗号アルゴリズム
が破られても、どのデータが鍵データであるかを特定で
きなくすることを目的とする。
【0017】また従来の上記重複判定方法では、埋め込
みデータの長さと同じ長さのバッファ領域に対して、一
つずつ特定値が入っていないかどうか確認しなければな
らず、特に多数のデータを埋め込む際、重複判定に時間
がかかる。
みデータの長さと同じ長さのバッファ領域に対して、一
つずつ特定値が入っていないかどうか確認しなければな
らず、特に多数のデータを埋め込む際、重複判定に時間
がかかる。
【0018】本発明では、データの重複判定処理に時間
をかけずに行うよう、データを埋めこむ領域に対応する
バッファ領域だけでなく、その前の領域のうち、別のデ
ータの埋め込み開始位置となり得ない領域(その位置か
ら埋め込むとデータ領域が重複してしまう領域)に対応
するバッファ領域の全てのビットを1にするというバッ
ファ領域更新方法を用いる。この方法により、一つの判
定による領域重複判定が可能となり、多数のデータを埋
め込む際にも高速な重複判定を行うことを目的とする。
をかけずに行うよう、データを埋めこむ領域に対応する
バッファ領域だけでなく、その前の領域のうち、別のデ
ータの埋め込み開始位置となり得ない領域(その位置か
ら埋め込むとデータ領域が重複してしまう領域)に対応
するバッファ領域の全てのビットを1にするというバッ
ファ領域更新方法を用いる。この方法により、一つの判
定による領域重複判定が可能となり、多数のデータを埋
め込む際にも高速な重複判定を行うことを目的とする。
【0019】
【課題を解決するための手段】この課題を解決するため
に本発明は、複数の固定長暗号鍵データを暗号化して一
度に送信するデータ暗号化送信システムであって、複数
の固定長暗号鍵データを管理する鍵管理手段と、前記少
なくとも1つの暗号鍵データを埋め込む一定の大きさを
有した鍵埋め込み領域を含む送信データを管理する送信
データ管理手段と、前記暗号鍵データを前記送信データ
に埋め込む、埋め込みアドレスをランダムに決定するア
ドレス決定手段と、前記鍵埋め込み領域内で重複判定を
しながら、前記埋め込みアドレスの指す位置から前記暗
号鍵データを埋め込み、鍵埋め込み済み領域を生成する
領域重複判定手段と、前記鍵埋め込み済み領域を含む前
記送信データを暗号化する暗号化手段と、前記暗号化手
段により暗号化された前記送信データを送信するデータ
送信手段とを備えることを特徴とする。
に本発明は、複数の固定長暗号鍵データを暗号化して一
度に送信するデータ暗号化送信システムであって、複数
の固定長暗号鍵データを管理する鍵管理手段と、前記少
なくとも1つの暗号鍵データを埋め込む一定の大きさを
有した鍵埋め込み領域を含む送信データを管理する送信
データ管理手段と、前記暗号鍵データを前記送信データ
に埋め込む、埋め込みアドレスをランダムに決定するア
ドレス決定手段と、前記鍵埋め込み領域内で重複判定を
しながら、前記埋め込みアドレスの指す位置から前記暗
号鍵データを埋め込み、鍵埋め込み済み領域を生成する
領域重複判定手段と、前記鍵埋め込み済み領域を含む前
記送信データを暗号化する暗号化手段と、前記暗号化手
段により暗号化された前記送信データを送信するデータ
送信手段とを備えることを特徴とする。
【0020】また、複数のnバイトデータを、nより十
分大きなmバイト領域に埋め込む際の、領域重複判定方
法においては、mバイト領域の各バイトをそれぞれ1ビ
ットに対応させた判定バッファ領域を生成する判定バッ
ファ領域生成ステップと、判定バッファ領域の各ビット
を、mバイト領域の最後n−1バイトに対応するビット
を埋め込み不可を示す値に、mバイト領域の残りの領域
に対応するビットを埋め込み可能を示す値に初期化する
判定バッファ領域初期化ステップと、各nバイトデータ
に対し、対応する埋め込み領域の先頭アドレスを得る先
頭アドレス取得ステップと、前記先頭アドレス取得ステ
ップにより取得した埋め込み領域の先頭アドレスのバイ
トに対応する判定バッファ領域のビットの値によりデー
タ領域の重複を判定する領域重複判定ステップと、前記
領域重複判定ステップによりデータ領域が重複すると判
定された時、判定結果を出力する重複結果出力ステップ
と、前記領域重複判定ステップによりデータ領域が重複
しないと判定された時、nバイトデータをmバイト領域
に埋め込むデータ埋め込みステップと、前記領域重複判
定ステップによりデータ領域が重複しないと判定された
時、nバイトデータを埋め込む領域、及びその前のn−
1バイトの領域に対応する判定バッファの各ビットを、
埋め込み不可を示す値に更新する判定バッファ更新ステ
ップと、すべてのnバイトデータに対し先頭アドレス取
得ステップ以降のステップを実施する制御ステップと、
すべてのnバイトデータに対して領域の重複がなくデー
タの埋め込みが完了した時、埋め込み済みのmバイト領
域を出力する埋め込み済み領域出力ステップとを備える
ことを特徴とする。
分大きなmバイト領域に埋め込む際の、領域重複判定方
法においては、mバイト領域の各バイトをそれぞれ1ビ
ットに対応させた判定バッファ領域を生成する判定バッ
ファ領域生成ステップと、判定バッファ領域の各ビット
を、mバイト領域の最後n−1バイトに対応するビット
を埋め込み不可を示す値に、mバイト領域の残りの領域
に対応するビットを埋め込み可能を示す値に初期化する
判定バッファ領域初期化ステップと、各nバイトデータ
に対し、対応する埋め込み領域の先頭アドレスを得る先
頭アドレス取得ステップと、前記先頭アドレス取得ステ
ップにより取得した埋め込み領域の先頭アドレスのバイ
トに対応する判定バッファ領域のビットの値によりデー
タ領域の重複を判定する領域重複判定ステップと、前記
領域重複判定ステップによりデータ領域が重複すると判
定された時、判定結果を出力する重複結果出力ステップ
と、前記領域重複判定ステップによりデータ領域が重複
しないと判定された時、nバイトデータをmバイト領域
に埋め込むデータ埋め込みステップと、前記領域重複判
定ステップによりデータ領域が重複しないと判定された
時、nバイトデータを埋め込む領域、及びその前のn−
1バイトの領域に対応する判定バッファの各ビットを、
埋め込み不可を示す値に更新する判定バッファ更新ステ
ップと、すべてのnバイトデータに対し先頭アドレス取
得ステップ以降のステップを実施する制御ステップと、
すべてのnバイトデータに対して領域の重複がなくデー
タの埋め込みが完了した時、埋め込み済みのmバイト領
域を出力する埋め込み済み領域出力ステップとを備える
ことを特徴とする。
【0021】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図1から図11を用いて説明する。
て、図1から図11を用いて説明する。
【0022】(実施の形態1)図1は本発明の実施の形
態1の個人データ暗号化送信システムの構成図である。
個人データ暗号化送信システムは、個人のデータと複数
の暗号鍵をまとめて暗号化して送信するシステムであ
る。個人データ暗号化送信システムは、情報入出力装置
101とデータ管理装置102と暗号化装置103と送
信装置104とで構成されている。データ管理装置10
2は、個人データ管理手段105と鍵選択手段106と
鍵管理手段107とアドレス決定手段108とで構成さ
れている。暗号化装置103は、領域重複判定手段10
9と暗号化手段110とで構成されている。
態1の個人データ暗号化送信システムの構成図である。
個人データ暗号化送信システムは、個人のデータと複数
の暗号鍵をまとめて暗号化して送信するシステムであ
る。個人データ暗号化送信システムは、情報入出力装置
101とデータ管理装置102と暗号化装置103と送
信装置104とで構成されている。データ管理装置10
2は、個人データ管理手段105と鍵選択手段106と
鍵管理手段107とアドレス決定手段108とで構成さ
れている。暗号化装置103は、領域重複判定手段10
9と暗号化手段110とで構成されている。
【0023】なお、以降の説明は、必ずしも「個人デー
タ」に限定するわけではなく、一般のデータでもよい。
その場合は単に「データ暗号化送信システム」、「通信
データ管理手段105」と解釈される。
タ」に限定するわけではなく、一般のデータでもよい。
その場合は単に「データ暗号化送信システム」、「通信
データ管理手段105」と解釈される。
【0024】情報入出力装置101は、ユーザの指示に
より個人データ管理手段105への個人データ出力要求
を出すことと、領域重複判定手段109から異常結果を
受け、ユーザへの異常通知を出力するものである。
より個人データ管理手段105への個人データ出力要求
を出すことと、領域重複判定手段109から異常結果を
受け、ユーザへの異常通知を出力するものである。
【0025】個人データ管理手段105は、個人データ
を管理しており、情報入出力装置101からの個人デー
タ出力要求を受けると、鍵選択手段106に個人データ
を出力するものである。鍵管理手段107は、個人情報
の種類や数に対応する複数の鍵データを管理しており、
鍵選択手段106より鍵データ出力要求を受けると、鍵
データを出力するものである。鍵選択手段106は、個
人データ管理手段105より出力された各個人データに
対して、必要な鍵データを鍵管理手段107より取得
し、個人データと鍵データをアドレス決定手段108に
出力するものである。アドレス決定手段108は、各鍵
データに対し、鍵を埋め込む位置を表す先頭アドレスを
ランダムに決定して、アドレスデータを作成し、暗号化
装置入力データを領域重複判定手段109へ出力するも
のである。
を管理しており、情報入出力装置101からの個人デー
タ出力要求を受けると、鍵選択手段106に個人データ
を出力するものである。鍵管理手段107は、個人情報
の種類や数に対応する複数の鍵データを管理しており、
鍵選択手段106より鍵データ出力要求を受けると、鍵
データを出力するものである。鍵選択手段106は、個
人データ管理手段105より出力された各個人データに
対して、必要な鍵データを鍵管理手段107より取得
し、個人データと鍵データをアドレス決定手段108に
出力するものである。アドレス決定手段108は、各鍵
データに対し、鍵を埋め込む位置を表す先頭アドレスを
ランダムに決定して、アドレスデータを作成し、暗号化
装置入力データを領域重複判定手段109へ出力するも
のである。
【0026】領域重複判定手段109は、鍵データを重
複して埋め込むことのないように判定してから、鍵デー
タを鍵埋め込み領域へ埋め込むものである。暗号化手段
110は、鍵データが埋め込まれている鍵埋め込み領域
及び個別情報からなる個人データを暗号化し、暗号化装
置出力データを送信装置104へ出力するものである。
送信装置104は、暗号化装置103から出力された暗
号化装置出力データを送信するものである。
複して埋め込むことのないように判定してから、鍵デー
タを鍵埋め込み領域へ埋め込むものである。暗号化手段
110は、鍵データが埋め込まれている鍵埋め込み領域
及び個別情報からなる個人データを暗号化し、暗号化装
置出力データを送信装置104へ出力するものである。
送信装置104は、暗号化装置103から出力された暗
号化装置出力データを送信するものである。
【0027】情報入出力装置101から、個人データ出
力の要求を受けると、個人データ管理手段105は、個
別情報と鍵埋め込み領域からなる個人データを鍵選択手
段106に出力する。
力の要求を受けると、個人データ管理手段105は、個
別情報と鍵埋め込み領域からなる個人データを鍵選択手
段106に出力する。
【0028】鍵選択手段106は、個人データ管理手段
105より出力された各個人データに対し、必要な鍵デ
ータを鍵管理手段107より取得し、個人データと共
に、アドレス決定手段108に出力する。アドレス決定
手段108は、鍵選択手段106より入力された鍵デー
タそれぞれについて、個人データの鍵埋め込み領域の何
バイト目から埋め込むかの値である先頭アドレスをラン
ダムに決定しアドレスデータを作成し、暗号化装置入力
データを作成して、領域重複判定手段109へ出力す
る。
105より出力された各個人データに対し、必要な鍵デ
ータを鍵管理手段107より取得し、個人データと共
に、アドレス決定手段108に出力する。アドレス決定
手段108は、鍵選択手段106より入力された鍵デー
タそれぞれについて、個人データの鍵埋め込み領域の何
バイト目から埋め込むかの値である先頭アドレスをラン
ダムに決定しアドレスデータを作成し、暗号化装置入力
データを作成して、領域重複判定手段109へ出力す
る。
【0029】図2は、暗号化装置入力データのデータ形
式である。図2のように暗号化装置入力データは、ヘッ
ダと、鍵埋め込み領域と個別情報からなる個人データ
と、その個人データに必要な数の鍵データと、鍵データ
と同じ数の先頭アドレスからなるアドレスデータとで構
成されている。なお、ヘッダは、各入力データを識別す
るための識別子とデータサイズとから構成されている。
式である。図2のように暗号化装置入力データは、ヘッ
ダと、鍵埋め込み領域と個別情報からなる個人データ
と、その個人データに必要な数の鍵データと、鍵データ
と同じ数の先頭アドレスからなるアドレスデータとで構
成されている。なお、ヘッダは、各入力データを識別す
るための識別子とデータサイズとから構成されている。
【0030】領域重複判定手段109にて、データ管理
装置102のアドレス決定手段108より受け取った暗
号化装置入力データの、鍵埋め込み領域と鍵データとア
ドレスデータを用いて、重複して埋め込む事がないよう
判定しながら、鍵データを鍵埋め込み領域の先頭アドレ
スの指す位置から埋め込んでいく。重複すると判定され
た時には、情報入出力装置101へ異常結果とヘッダと
個人データを出力する。異常結果を受けた情報入出力装
置は、再度同じ個人データの出力要求を個人データ管理
手段105に出力しリトライする。なお、異常結果とヘ
ッダと個人データを情報入出力装置101へ出力するの
ではなく、アドレス決定手段108に出力し、再度先頭
アドレスを決定して暗号装置入力データを作成しなお
し、領域重複判定手段109へ出力し、リトライしても
よい。
装置102のアドレス決定手段108より受け取った暗
号化装置入力データの、鍵埋め込み領域と鍵データとア
ドレスデータを用いて、重複して埋め込む事がないよう
判定しながら、鍵データを鍵埋め込み領域の先頭アドレ
スの指す位置から埋め込んでいく。重複すると判定され
た時には、情報入出力装置101へ異常結果とヘッダと
個人データを出力する。異常結果を受けた情報入出力装
置は、再度同じ個人データの出力要求を個人データ管理
手段105に出力しリトライする。なお、異常結果とヘ
ッダと個人データを情報入出力装置101へ出力するの
ではなく、アドレス決定手段108に出力し、再度先頭
アドレスを決定して暗号装置入力データを作成しなお
し、領域重複判定手段109へ出力し、リトライしても
よい。
【0031】正常に鍵データが埋め込まれた時には、暗
号化手段110にヘッダと個人データとを出力する。暗
号化手段110は、領域重複判定手段109より受け取
ったデータの個人データを暗号化し、暗号化装置出力デ
ータを、送信装置104へ出力する。
号化手段110にヘッダと個人データとを出力する。暗
号化手段110は、領域重複判定手段109より受け取
ったデータの個人データを暗号化し、暗号化装置出力デ
ータを、送信装置104へ出力する。
【0032】図3は、暗号化装置出力データのデータ形
式である。図3のように暗号化装置出力データは、ヘッ
ダと、暗号化個人データとで構成されている。ヘッダ
は、各入力データを識別するための識別子とデータサイ
ズとから構成されている。また、暗号化個人データは、
個人データに必要な鍵がすべて埋め込まれている鍵埋め
込み領域と、個別情報からなる個人データを暗号化した
ものである。各鍵は図示しているように、各鍵の先頭ア
ドレスから埋め込み位置が決められ、ランダムに配置さ
れる。
式である。図3のように暗号化装置出力データは、ヘッ
ダと、暗号化個人データとで構成されている。ヘッダ
は、各入力データを識別するための識別子とデータサイ
ズとから構成されている。また、暗号化個人データは、
個人データに必要な鍵がすべて埋め込まれている鍵埋め
込み領域と、個別情報からなる個人データを暗号化した
ものである。各鍵は図示しているように、各鍵の先頭ア
ドレスから埋め込み位置が決められ、ランダムに配置さ
れる。
【0033】送信装置104は、暗号化手段110より
受け取った暗号化装置出力データを送信する。
受け取った暗号化装置出力データを送信する。
【0034】アドレスデータと暗号化装置出力データと
の送信については、いくつかの方法がある。安全性を高
めるために、アドレスデータと暗号化装置出力データと
を別々に、送信装置から送信するのがもっともよい方法
である。具体的には、領域重複判定手段109より重複
判定が正常に終了し、暗号化手段110に出力された個
人データに埋め込んだ鍵データのアドレスデータを、領
域重複判定手段109から送信装置104に出力し、送
信装置104から暗号化装置出力データとは別に、アド
レスデータを送信する。なお、アドレスデータは、全く
別の系統で、例えばICカードやフロッピディスクといっ
た物理的な記録媒体を送信先へ届けてもよいし、インタ
ーネットメール等で届けても構わない。
の送信については、いくつかの方法がある。安全性を高
めるために、アドレスデータと暗号化装置出力データと
を別々に、送信装置から送信するのがもっともよい方法
である。具体的には、領域重複判定手段109より重複
判定が正常に終了し、暗号化手段110に出力された個
人データに埋め込んだ鍵データのアドレスデータを、領
域重複判定手段109から送信装置104に出力し、送
信装置104から暗号化装置出力データとは別に、アド
レスデータを送信する。なお、アドレスデータは、全く
別の系統で、例えばICカードやフロッピディスクといっ
た物理的な記録媒体を送信先へ届けてもよいし、インタ
ーネットメール等で届けても構わない。
【0035】また、安全性は少々落ちるが、暗号化装置
出力データにアドレスデータも含めてしまってもよい。
出力データにアドレスデータも含めてしまってもよい。
【0036】さらに簡略化し、アドレス決定手段108
においてランダムにアドレスを決定するのではなく、例
えば鍵管理手段107において鍵の種類によってアドレ
スを固定にしてしまってもよい。正常な使用方法におい
て同時に埋め込むことのない種類の鍵を同じアドレスに
割り当てることも可能で、領域判定手段109による重
複判定によって、この方法が保証される。この場合、送
信先ではアドレスデータを使用することなく、固定的に
鍵データの位置を知ることになる。
においてランダムにアドレスを決定するのではなく、例
えば鍵管理手段107において鍵の種類によってアドレ
スを固定にしてしまってもよい。正常な使用方法におい
て同時に埋め込むことのない種類の鍵を同じアドレスに
割り当てることも可能で、領域判定手段109による重
複判定によって、この方法が保証される。この場合、送
信先ではアドレスデータを使用することなく、固定的に
鍵データの位置を知ることになる。
【0037】なお、アドレス決定手段108で鍵の先頭
アドレスを決めるのではなく、個人データ管理手段10
5にて、個人データとともに、先頭アドレスも管理され
ているとしてもよい。
アドレスを決めるのではなく、個人データ管理手段10
5にて、個人データとともに、先頭アドレスも管理され
ているとしてもよい。
【0038】なお、情報入出力装置101、データ管理
装置102、暗号化装置103と分けずに、情報入出力
装置101、個人データ管理手段105、鍵選択手段1
06、鍵管理手段107、アドレス決定手段108、領
域重複判定手段109、暗号化手段110を一つの装置
としてもよい。
装置102、暗号化装置103と分けずに、情報入出力
装置101、個人データ管理手段105、鍵選択手段1
06、鍵管理手段107、アドレス決定手段108、領
域重複判定手段109、暗号化手段110を一つの装置
としてもよい。
【0039】なお、本実施の形態1では、送信システム
として記載したが、個人データ等のファイル管理装置に
適用することもできる。具体的には、図1の送信装置1
04をフロッピィディスクやICカードといった記録媒体
に書込みをするメディア書込み装置とすればよい。前述
のように、アドレスデータと暗号化装置出力データの扱
いについても、別々にしてもよいし、一緒に書き込んで
もよいし、アプリケーションや要求される安全性に応じ
て同様に実施可能である。
として記載したが、個人データ等のファイル管理装置に
適用することもできる。具体的には、図1の送信装置1
04をフロッピィディスクやICカードといった記録媒体
に書込みをするメディア書込み装置とすればよい。前述
のように、アドレスデータと暗号化装置出力データの扱
いについても、別々にしてもよいし、一緒に書き込んで
もよいし、アプリケーションや要求される安全性に応じ
て同様に実施可能である。
【0040】(実施の形態2)実施の形態2では、図1
の領域重複判定手段109の判定方法の詳細について説
明する。
の領域重複判定手段109の判定方法の詳細について説
明する。
【0041】図4は領域重複判定手段の構成図である。
フィールド入力部401は、データを埋め込む領域であ
る埋め込み領域(以下、フィールド)を入力するもので
ある。判定バッファ生成部402は、重複判定に必要な
判定バッファを生成するものである。判定バッファ初期
化部403は、判定バッファに初期値を設定するもので
ある。データ入力部404は、埋め込みデータを入力す
るものである。先頭アドレス取得部405は、埋め込み
データに対応する、先頭アドレスを取得するものであ
る。先頭アドレスとは、埋め込みデータをフィールドの
先頭から何バイト目の領域から埋め込むか、の値であ
る。重複判定部406は、複数の埋め込みデータが重複
して埋め込まれることのないよう重複判定をするもので
ある。判定バッファ更新部408は、重複なしと判定さ
れてフィールドに埋め込まれるデータについて、以後判
定する埋め込みデータのために、判定バッファを更新す
るものである。データ埋め込み部409は、重複なしと
判定されたデータをフィールドに埋め込むものである。
埋め込み済フィールド出力部410は、データ埋め込み
部409により更新されたフィールドを出力するもので
ある。重複出力部407は、重複すると判定されたこと
を出力するものである。
フィールド入力部401は、データを埋め込む領域であ
る埋め込み領域(以下、フィールド)を入力するもので
ある。判定バッファ生成部402は、重複判定に必要な
判定バッファを生成するものである。判定バッファ初期
化部403は、判定バッファに初期値を設定するもので
ある。データ入力部404は、埋め込みデータを入力す
るものである。先頭アドレス取得部405は、埋め込み
データに対応する、先頭アドレスを取得するものであ
る。先頭アドレスとは、埋め込みデータをフィールドの
先頭から何バイト目の領域から埋め込むか、の値であ
る。重複判定部406は、複数の埋め込みデータが重複
して埋め込まれることのないよう重複判定をするもので
ある。判定バッファ更新部408は、重複なしと判定さ
れてフィールドに埋め込まれるデータについて、以後判
定する埋め込みデータのために、判定バッファを更新す
るものである。データ埋め込み部409は、重複なしと
判定されたデータをフィールドに埋め込むものである。
埋め込み済フィールド出力部410は、データ埋め込み
部409により更新されたフィールドを出力するもので
ある。重複出力部407は、重複すると判定されたこと
を出力するものである。
【0042】フィールドをフィールド入力部401によ
り入力し、判定バッファ生成部402でフィールドのバ
イト数から算出したバイト数の判定バッファを生成す
る。判定バッファ長の算出方法は、(フィールド長/8
の商)+1である。判定バッファ初期化部403によ
り、判定バッファの初期化を行う。また、データ入力部
404により全ての埋め込みデータを入力する。各、埋
め込みデータについて、先頭アドレス取得部405で、
データと対応する、フィールドへの埋め込み先のアドレ
スである先頭アドレスを取得する。先頭アドレス取得部
405で取得した先頭アドレスと判定バッファを使っ
て、重複判定部406にて先頭アドレスが重複してデー
タを埋め込むことがないアドレスであるかどうか、重複
判定する。重複すると判定されたときには、重複出力部
407にて、異常結果を出力し終了する。重複しないと
判定されたときには、判定バッファ更新部408で、重
複しないと判定された埋め込みデータに対するアドレス
に埋め込み不可を示す値を埋め込むことにより、データ
を埋め込むと重複してしまうアドレスに該当する判定バ
ッファを更新する。データ埋め込み部409でフィール
ドの先頭アドレスに該当する領域から埋め込みデータを
埋め込む。全ての埋め込みデータについて先頭アドレス
取得部405以降の処理を繰り返し、すべて正常ならば
埋め込み済フィールド出力部410で正常結果を出力す
る。
り入力し、判定バッファ生成部402でフィールドのバ
イト数から算出したバイト数の判定バッファを生成す
る。判定バッファ長の算出方法は、(フィールド長/8
の商)+1である。判定バッファ初期化部403によ
り、判定バッファの初期化を行う。また、データ入力部
404により全ての埋め込みデータを入力する。各、埋
め込みデータについて、先頭アドレス取得部405で、
データと対応する、フィールドへの埋め込み先のアドレ
スである先頭アドレスを取得する。先頭アドレス取得部
405で取得した先頭アドレスと判定バッファを使っ
て、重複判定部406にて先頭アドレスが重複してデー
タを埋め込むことがないアドレスであるかどうか、重複
判定する。重複すると判定されたときには、重複出力部
407にて、異常結果を出力し終了する。重複しないと
判定されたときには、判定バッファ更新部408で、重
複しないと判定された埋め込みデータに対するアドレス
に埋め込み不可を示す値を埋め込むことにより、データ
を埋め込むと重複してしまうアドレスに該当する判定バ
ッファを更新する。データ埋め込み部409でフィール
ドの先頭アドレスに該当する領域から埋め込みデータを
埋め込む。全ての埋め込みデータについて先頭アドレス
取得部405以降の処理を繰り返し、すべて正常ならば
埋め込み済フィールド出力部410で正常結果を出力す
る。
【0043】図5は、図4で示した構成の装置を用いた
領域重複判定方法のフローチャートである。今、埋め込
み領域を255バイト、埋め込みデータは、8バイトと
する。フィールド入力部401と対応するステップAに
てフィールドを入力し、判定バッファ生成部402と対
応するステップBにてフィールドのバイト数である25
5バイトを1バイトは8ビットであることから8で割っ
た商である31に1を加算して32バイトの判定バッフ
ァを生成する。
領域重複判定方法のフローチャートである。今、埋め込
み領域を255バイト、埋め込みデータは、8バイトと
する。フィールド入力部401と対応するステップAに
てフィールドを入力し、判定バッファ生成部402と対
応するステップBにてフィールドのバイト数である25
5バイトを1バイトは8ビットであることから8で割っ
た商である31に1を加算して32バイトの判定バッフ
ァを生成する。
【0044】図6は、判定バッファのビットとフィール
ドの対応図である。図6のように、フィールドの先頭か
らZバイト目(0≦Z≦254)と、判定バッファの
(Z/8の商)バイト目の第(Z/8の剰余)ビットと
を対応させる。判定バッファのビットが1となっている
時には、対応するフィールドの領域が先頭アドレスとな
っていると8バイトのデータを重複して埋め込んでしま
うので埋め込むことができない。(ビット値1を埋めこ
み不可を示す値、ビット値0を埋め込み可能を示す値と
設定した場合である。ビット値の意味を逆に設定しても
良い。)判定バッファ初期化部403と対応するステッ
プCにて、この判定バッファの初期化処理を行う。初期
化処理とは、従来方法の初期化処理で行う、判定バッフ
ァ領域を埋め込み可能を示す値に設定することに加え、
先頭アドレスとなっていてもフィールド内にデータを埋
め込めないフィールドの後部の領域と対応する判定バッ
ファのビットを1にすること(この例では埋め込みデー
タが8バイトなので、フィールドの最後7バイト分に対
応する判定バッファの7ビットを1にすること)も行
う。
ドの対応図である。図6のように、フィールドの先頭か
らZバイト目(0≦Z≦254)と、判定バッファの
(Z/8の商)バイト目の第(Z/8の剰余)ビットと
を対応させる。判定バッファのビットが1となっている
時には、対応するフィールドの領域が先頭アドレスとな
っていると8バイトのデータを重複して埋め込んでしま
うので埋め込むことができない。(ビット値1を埋めこ
み不可を示す値、ビット値0を埋め込み可能を示す値と
設定した場合である。ビット値の意味を逆に設定しても
良い。)判定バッファ初期化部403と対応するステッ
プCにて、この判定バッファの初期化処理を行う。初期
化処理とは、従来方法の初期化処理で行う、判定バッフ
ァ領域を埋め込み可能を示す値に設定することに加え、
先頭アドレスとなっていてもフィールド内にデータを埋
め込めないフィールドの後部の領域と対応する判定バッ
ファのビットを1にすること(この例では埋め込みデー
タが8バイトなので、フィールドの最後7バイト分に対
応する判定バッファの7ビットを1にすること)も行
う。
【0045】図7は、判定バッファ長をNバイトとした
時の初期化処理の説明図である。図7(a)は、判定バ
ッファ初期化処理のフローチャートである。図7(b)
は、Nバイトの判定バッファの説明図である。判定バッ
ファの0バイト目からN−3バイト目までをゼロクリア
し、N−1バイト目は、0xffを設定することですべ
てのビットを立てる。これは、判定バッファはフィール
ドの長さより多い数のビットを用意しているのでフィー
ルドと対応しない判定バッファの最後部の数ビットは1
を立てておいて構わないのでN−1バイト目は全てのビ
ットを立てている。次にN−2バイト目は、フィールド
の最後7バイトの最初のバイトと対応するビットから1
にする必要があるので、0xfeを(N/8の剰余)だ
け左シフトしたものを設定する。判定バッファの初期化
処理であるステップCの後、データ入力部404と対応
するステップDにて埋め込みデータを全て入力する。
時の初期化処理の説明図である。図7(a)は、判定バ
ッファ初期化処理のフローチャートである。図7(b)
は、Nバイトの判定バッファの説明図である。判定バッ
ファの0バイト目からN−3バイト目までをゼロクリア
し、N−1バイト目は、0xffを設定することですべ
てのビットを立てる。これは、判定バッファはフィール
ドの長さより多い数のビットを用意しているのでフィー
ルドと対応しない判定バッファの最後部の数ビットは1
を立てておいて構わないのでN−1バイト目は全てのビ
ットを立てている。次にN−2バイト目は、フィールド
の最後7バイトの最初のバイトと対応するビットから1
にする必要があるので、0xfeを(N/8の剰余)だ
け左シフトしたものを設定する。判定バッファの初期化
処理であるステップCの後、データ入力部404と対応
するステップDにて埋め込みデータを全て入力する。
【0046】各埋め込みデータに対し、先頭アドレス取
得部405と対応するステップEにて、埋め込みデータ
と対応するフィールドへの埋め込み先である先頭アドレ
スを取得し、ステップFにて判定バッファにアクセスす
る為に、図8のように、先頭アドレスの(先頭アドレス
/8の商)にあたる上位5ビットの値をインデックス値
(以下、index)として算出し、先頭アドレスの(先頭
アドレス/8の剰余)にあたる下位3ビットの値をシフ
ト値(以下、shift)として算出する。
得部405と対応するステップEにて、埋め込みデータ
と対応するフィールドへの埋め込み先である先頭アドレ
スを取得し、ステップFにて判定バッファにアクセスす
る為に、図8のように、先頭アドレスの(先頭アドレス
/8の商)にあたる上位5ビットの値をインデックス値
(以下、index)として算出し、先頭アドレスの(先頭
アドレス/8の剰余)にあたる下位3ビットの値をシフ
ト値(以下、shift)として算出する。
【0047】次に重複判定部406と対応するステップ
Gにて、埋め込みデータを重複して埋め込むことがない
先頭アドレスかどうか、重複判定する。具体的には、判
定バッファの先頭から(index)バイト目の第(shift)
ビットが埋め込み不可を示す値の1であるかどうかを見
て、重複判定する。重複判定したビット値が1であると
きには、重複しているので重複出力部407と対応する
ステップKにて重複していることを出力し、終了する。
Gにて、埋め込みデータを重複して埋め込むことがない
先頭アドレスかどうか、重複判定する。具体的には、判
定バッファの先頭から(index)バイト目の第(shift)
ビットが埋め込み不可を示す値の1であるかどうかを見
て、重複判定する。重複判定したビット値が1であると
きには、重複しているので重複出力部407と対応する
ステップKにて重複していることを出力し、終了する。
【0048】重複判定したビット値が埋め込み可能を示
す値の0である時には、判定した先頭アドレスについて
判定バッファ更新部408と対応するステップHにて判
定バッファを更新する。重複しないと判定されたこの先
頭アドレスから8バイトの領域に埋め込みデータを埋め
込むことにより、この先頭アドレスより7小さいアドレ
スから7大きいアドレスまでの15のアドレスが先頭ア
ドレスとなると重複してしまうので、従来方法とは異な
り、この15バイトに対応する判定バッファの15ビッ
トを1にする。
す値の0である時には、判定した先頭アドレスについて
判定バッファ更新部408と対応するステップHにて判
定バッファを更新する。重複しないと判定されたこの先
頭アドレスから8バイトの領域に埋め込みデータを埋め
込むことにより、この先頭アドレスより7小さいアドレ
スから7大きいアドレスまでの15のアドレスが先頭ア
ドレスとなると重複してしまうので、従来方法とは異な
り、この15バイトに対応する判定バッファの15ビッ
トを1にする。
【0049】この判定バッファ更新の操作は3段階に分
けて行う。図9は、ステップHの判定バッファの更新の
説明図である。図9(a)は、判定バッファ更新処理の
フローチャートである。図9(b)は、判定バッファの
3段階の更新の説明図である。ステップGの判定バッフ
ァの更新はステップpからステップrまでの3段階に分
けられる。まずステップpとして、先頭アドレスのinde
xを判定し0より大きければ判定バッファの(index‐
1)バイト目に、判定バッファの(index‐1)バイト
目と、0xfeをshiftだけ左シフトしたものとの論理
和をとったものを設定する。indexが0であるときには
演算は行わない。次にステップqとして、判定バッファ
の(index)バイト目に、0xffを設定する。次にス
テップrとして判定バッファの(index+1)バイト目
に、判定バッファの(index+1)バイト目と、0xf
fをshiftだけ左シフトしてビット反転させたものとの
論理和をとったものを設定する。ステップHの判定バッ
ファの更新のあと、データ埋め込み部409と対応する
ステップIとして、フィールドに埋め込みデータを埋め
込む処理をする。先頭アドレスに対応するフィールドか
ら、8バイト領域に埋め込みデータを埋め込む。ステッ
プIのあと、ステップJとしてこのフィールドに埋め込
む全ての埋め込みデータについて終了したかどうか判定
し、終了していなければ次の埋め込みデータについてス
テップEから処理を行う。全ての埋め込みデータについ
て終了していれば埋め込み済みフィールド出力部410
に対応するステップLにて、フィールドを出力して終了
する。
けて行う。図9は、ステップHの判定バッファの更新の
説明図である。図9(a)は、判定バッファ更新処理の
フローチャートである。図9(b)は、判定バッファの
3段階の更新の説明図である。ステップGの判定バッフ
ァの更新はステップpからステップrまでの3段階に分
けられる。まずステップpとして、先頭アドレスのinde
xを判定し0より大きければ判定バッファの(index‐
1)バイト目に、判定バッファの(index‐1)バイト
目と、0xfeをshiftだけ左シフトしたものとの論理
和をとったものを設定する。indexが0であるときには
演算は行わない。次にステップqとして、判定バッファ
の(index)バイト目に、0xffを設定する。次にス
テップrとして判定バッファの(index+1)バイト目
に、判定バッファの(index+1)バイト目と、0xf
fをshiftだけ左シフトしてビット反転させたものとの
論理和をとったものを設定する。ステップHの判定バッ
ファの更新のあと、データ埋め込み部409と対応する
ステップIとして、フィールドに埋め込みデータを埋め
込む処理をする。先頭アドレスに対応するフィールドか
ら、8バイト領域に埋め込みデータを埋め込む。ステッ
プIのあと、ステップJとしてこのフィールドに埋め込
む全ての埋め込みデータについて終了したかどうか判定
し、終了していなければ次の埋め込みデータについてス
テップEから処理を行う。全ての埋め込みデータについ
て終了していれば埋め込み済みフィールド出力部410
に対応するステップLにて、フィールドを出力して終了
する。
【0050】次に例として具体的に埋め込みデータを挙
げて実施の形態2の流れを図10を用いて説明する。フ
ィールド長は255バイトとし、判定バッファの生成と
初期化については前述したので、省略する。図10
(a)は、この具体例で用いるデータの一覧である。図
10(b)は、この具体例による判定バッファの変遷図
である。埋め込みデータが3つあり、データ(1)の先
頭アドレスが10、データ(2)の先頭アドレスが2
0、データ(3)の先頭アドレスが3であるとする。一
つ目のデータであるデータ(1)では、indexは1、shi
ftは2となる。次に重複判定は、一つ目のデータである
がフィールド内に収まって埋め込める先頭アドレスであ
るかどうか、という意味で行う。判定バッファの1バイ
ト目の(1はindexから)第2ビットを見る(2はshift
から)。この例では0であるので、埋め込み可能である
ことがわかる。次に判定バッファの更新処理は、ステッ
プaとして0バイト目に、0バイト目と、0xfeを2
だけ左シフトした0xf8との論理和をとったものを設
定する。ステップbとして1バイト目に、0xffを設
定する。ステップcとして2バイト目に、2バイト目
と、0xffを2だけ左シフトしてビット反転させた0
x03との論理和をとったものを設定する。そしてデー
タの埋め込み処理で、フィールドの10バイト目から1
7バイト目までデータ(1)を埋め込む。次に二つ目の
データであるデータ(2)では、indexは2、shiftは4
となる。次に重複判定として、判定バッファの2バイト
目の(2はindexから)第4ビットを見る(4はshiftか
ら)。この例では0であるので、重複していないことが
わかる。続いて判定バッファの更新処理は、ステップa
として1バイト目に、1バイト目と、0xfeを4だけ
左シフトした0xe0との論理和ととったものを設定す
る。ステップbとして2バイト目に、0xffを設定す
る。ステップcとして3バイト目に、3バイト目と、0
xffを4だけ左シフトしてビット反転させた0x0f
との論理和をとったものを設定する。そしてデータの埋
め込み処理で、フィールドの20バイト目から27バイ
ト目までデータ(1)を埋め込む。次に三つ目のデータ
であるデータ(3)では、indexは0、shiftは3とな
る。次に重複判定として、判定バッファの0バイト目の
(0はindexより)第3ビットを見る(3はshiftよ
り)。この例では1であるので、重複していることがわ
かる。ステップKに進み、重複していることを出力す
る。以上のようにして判定する。
げて実施の形態2の流れを図10を用いて説明する。フ
ィールド長は255バイトとし、判定バッファの生成と
初期化については前述したので、省略する。図10
(a)は、この具体例で用いるデータの一覧である。図
10(b)は、この具体例による判定バッファの変遷図
である。埋め込みデータが3つあり、データ(1)の先
頭アドレスが10、データ(2)の先頭アドレスが2
0、データ(3)の先頭アドレスが3であるとする。一
つ目のデータであるデータ(1)では、indexは1、shi
ftは2となる。次に重複判定は、一つ目のデータである
がフィールド内に収まって埋め込める先頭アドレスであ
るかどうか、という意味で行う。判定バッファの1バイ
ト目の(1はindexから)第2ビットを見る(2はshift
から)。この例では0であるので、埋め込み可能である
ことがわかる。次に判定バッファの更新処理は、ステッ
プaとして0バイト目に、0バイト目と、0xfeを2
だけ左シフトした0xf8との論理和をとったものを設
定する。ステップbとして1バイト目に、0xffを設
定する。ステップcとして2バイト目に、2バイト目
と、0xffを2だけ左シフトしてビット反転させた0
x03との論理和をとったものを設定する。そしてデー
タの埋め込み処理で、フィールドの10バイト目から1
7バイト目までデータ(1)を埋め込む。次に二つ目の
データであるデータ(2)では、indexは2、shiftは4
となる。次に重複判定として、判定バッファの2バイト
目の(2はindexから)第4ビットを見る(4はshiftか
ら)。この例では0であるので、重複していないことが
わかる。続いて判定バッファの更新処理は、ステップa
として1バイト目に、1バイト目と、0xfeを4だけ
左シフトした0xe0との論理和ととったものを設定す
る。ステップbとして2バイト目に、0xffを設定す
る。ステップcとして3バイト目に、3バイト目と、0
xffを4だけ左シフトしてビット反転させた0x0f
との論理和をとったものを設定する。そしてデータの埋
め込み処理で、フィールドの20バイト目から27バイ
ト目までデータ(1)を埋め込む。次に三つ目のデータ
であるデータ(3)では、indexは0、shiftは3とな
る。次に重複判定として、判定バッファの0バイト目の
(0はindexより)第3ビットを見る(3はshiftよ
り)。この例では1であるので、重複していることがわ
かる。ステップKに進み、重複していることを出力す
る。以上のようにして判定する。
【0051】埋め込み領域の長さと埋め込みデータの長
さが一般的な場合を図11を用いて説明する。図11
(a)は、実施の形態2のフィールドの説明図である。
図11(b)は、実施の形態2の埋め込みデータと先頭
アドレスの説明図である。図11(c)は、実施の形態
2の判定バッファ更新の説明図である。図11のよう
に、Lバイトの長さの埋め込み領域に、Mバイトの長さ
のデータを複数埋め込むとする。埋め込みデータ(j)
は、埋め込み領域の先頭からN(j)バイト目から埋め
込むよう要求されているとする。判定バッファは、(L
/8の商+1)バイト用意して、埋め込み領域の先頭か
らZバイト目(0≦Z≦L)というのと、判定バッファ
の(Z/8の商)バイト目の第(Z/8の剰余)ビット
を対応させる。予め、データをフィールドの最後部から
(M−1)バイト分に対応する判定バッファのビットと
フィールドの領域と対応しない判定バッファのビットを
1にして、残りは全てゼロクリアしておく。
さが一般的な場合を図11を用いて説明する。図11
(a)は、実施の形態2のフィールドの説明図である。
図11(b)は、実施の形態2の埋め込みデータと先頭
アドレスの説明図である。図11(c)は、実施の形態
2の判定バッファ更新の説明図である。図11のよう
に、Lバイトの長さの埋め込み領域に、Mバイトの長さ
のデータを複数埋め込むとする。埋め込みデータ(j)
は、埋め込み領域の先頭からN(j)バイト目から埋め
込むよう要求されているとする。判定バッファは、(L
/8の商+1)バイト用意して、埋め込み領域の先頭か
らZバイト目(0≦Z≦L)というのと、判定バッファ
の(Z/8の商)バイト目の第(Z/8の剰余)ビット
を対応させる。予め、データをフィールドの最後部から
(M−1)バイト分に対応する判定バッファのビットと
フィールドの領域と対応しない判定バッファのビットを
1にして、残りは全てゼロクリアしておく。
【0052】複数の埋め込みデータを順に見ていく。ま
ず、一つ目のデータ(1)は、先頭アドレスがN(1)
なので、N(1)の上位5ビットの値がindexの値とな
り、N(1)の下位3ビットの値がshiftの値となる。
一つ目のデータ(1)については、フィールド内に収ま
って埋め込める先頭アドレスであるかどうか、という意
味で重複判定を行う。判定バッファの(index)バイト
目の第(shift)ビットが1であるかどうかを見ること
で判定する。そのビットが1であるならば、重複するこ
とになり、重複結果を出力する。そのビットが0である
ならば、重複していないので、N(1)を基準としたM
×2−1ビットの、埋め込みアドレスとなると重複して
しまう判定バッファのビットを埋め込み不可を示す値で
ある1にして、フィールドのN(1)バイト目からデー
タ(1)を埋め込む。
ず、一つ目のデータ(1)は、先頭アドレスがN(1)
なので、N(1)の上位5ビットの値がindexの値とな
り、N(1)の下位3ビットの値がshiftの値となる。
一つ目のデータ(1)については、フィールド内に収ま
って埋め込める先頭アドレスであるかどうか、という意
味で重複判定を行う。判定バッファの(index)バイト
目の第(shift)ビットが1であるかどうかを見ること
で判定する。そのビットが1であるならば、重複するこ
とになり、重複結果を出力する。そのビットが0である
ならば、重複していないので、N(1)を基準としたM
×2−1ビットの、埋め込みアドレスとなると重複して
しまう判定バッファのビットを埋め込み不可を示す値で
ある1にして、フィールドのN(1)バイト目からデー
タ(1)を埋め込む。
【0053】続いて二つ目以降のデータ(j)について
は、先頭アドレスがN(j)なので、N(j)の上位5
ビットの値がindexの値となり、N(j)の下位3ビッ
トの値がshiftの値となる。これより、判定バッファの
(index)バイト目の第(shift)ビットが1であるかど
うかを見ることで重複しているかどうかが判定できる。
もし、そのビットが1であるならば、重複しているとい
うことになり重複結果を出力する。もし、そのビットが
0であるならば、重複していないので、N(j)を基準
としたM×2−1ビットの、埋め込みアドレスとなると
重複してしまう判定バッファのビットを埋め込み不可を
示す値である1にして、フィールドのN(j)バイト目
からデータ(j)を埋め込む。全てのデータについて重
複判定を終了したら、フィールドを出力する。
は、先頭アドレスがN(j)なので、N(j)の上位5
ビットの値がindexの値となり、N(j)の下位3ビッ
トの値がshiftの値となる。これより、判定バッファの
(index)バイト目の第(shift)ビットが1であるかど
うかを見ることで重複しているかどうかが判定できる。
もし、そのビットが1であるならば、重複しているとい
うことになり重複結果を出力する。もし、そのビットが
0であるならば、重複していないので、N(j)を基準
としたM×2−1ビットの、埋め込みアドレスとなると
重複してしまう判定バッファのビットを埋め込み不可を
示す値である1にして、フィールドのN(j)バイト目
からデータ(j)を埋め込む。全てのデータについて重
複判定を終了したら、フィールドを出力する。
【0054】なお、2×M−1ビットを埋め込み不可を
示す値に設定する処理判定バッファ更新処理は、shift
の値の全8パターンに対応した値が用意してあるテーブ
ルをもとに行っても良い。具体的に埋め込みデータが8
バイトの場合のテーブルを用いた判定バッファ更新処理
について説明する。
示す値に設定する処理判定バッファ更新処理は、shift
の値の全8パターンに対応した値が用意してあるテーブ
ルをもとに行っても良い。具体的に埋め込みデータが8
バイトの場合のテーブルを用いた判定バッファ更新処理
について説明する。
【0055】予め、shiftの全8パターンに対し、判定
バッファ領域の(index−1)バイト目、(index+1)
バイト目に設定する値を持つテーブルとして、0に対し
(0xfe,0x00)、1に対し(0xfc,0x0
1)、2に対し(0xf8,0x03)、3に対し(0
xf0,0x07)、4に対し(0xe0,0x0
f)、5に対し(0xc0,0x1f)、6に対し(0
x80,0x3f)、7に対し(0x00,0x7f)
の各値を持つ更新テーブルを用意しておく。判定バッフ
ァ更新処理はこのテーブルを用いて3段階で行う。
バッファ領域の(index−1)バイト目、(index+1)
バイト目に設定する値を持つテーブルとして、0に対し
(0xfe,0x00)、1に対し(0xfc,0x0
1)、2に対し(0xf8,0x03)、3に対し(0
xf0,0x07)、4に対し(0xe0,0x0
f)、5に対し(0xc0,0x1f)、6に対し(0
x80,0x3f)、7に対し(0x00,0x7f)
の各値を持つ更新テーブルを用意しておく。判定バッフ
ァ更新処理はこのテーブルを用いて3段階で行う。
【0056】ステップ1:indexが0より大きければ、
判定バッファの(index−1)バイト目に、判定バッフ
ァの(index−1)バイト目の値と、更新テーブル中のs
hiftに対応した(index-1)バイト目の設定値との論理
和をとった値を設定、indexが0であるときには、何も
行わない。
判定バッファの(index−1)バイト目に、判定バッフ
ァの(index−1)バイト目の値と、更新テーブル中のs
hiftに対応した(index-1)バイト目の設定値との論理
和をとった値を設定、indexが0であるときには、何も
行わない。
【0057】ステップ2:判定バッファのindexバイト
目に、0xffを設定する。
目に、0xffを設定する。
【0058】ステップ3:判定バッファの(index+
1)バイト目に、判定バッファの(index+1)バイト
目の値と、更新テーブル中のshiftに対応した(index+
1)バイト目の設定値との論理和をとった値を設定す
る。
1)バイト目に、判定バッファの(index+1)バイト
目の値と、更新テーブル中のshiftに対応した(index+
1)バイト目の設定値との論理和をとった値を設定す
る。
【0059】以上により、判定バッファを更新すること
ができる。
ができる。
【0060】
【発明の効果】本発明では、鍵データを埋め込む場所を
ランダムに指定することができ、たとえ暗号アルゴリズ
ムが破られても、どのデータが鍵データであるかを特定
できなくすることが可能となる。
ランダムに指定することができ、たとえ暗号アルゴリズ
ムが破られても、どのデータが鍵データであるかを特定
できなくすることが可能となる。
【0061】また本発明では、重複判定を時間をかけず
に行うために、データを埋めこむ領域に対応するバッフ
ァ領域だけでなく、その前の領域のうち、別のデータの
先頭アドレスとなり得ない領域(その位置から埋め込む
とデータ領域が重複してしまう領域)に対応するバッフ
ァ領域と、データを埋め込んでもフィールド内にデータ
が収まらない先頭アドレスのバッファ領域との全てのビ
ットを1にするというバッファ領域更新方法を用いた。
この方法を用いたことにより、一つの判定により領域重
複判定が可能であり、多数のデータを埋め込む際にも高
速な重複判定が可能であるという有利な効果が得られ
る。
に行うために、データを埋めこむ領域に対応するバッフ
ァ領域だけでなく、その前の領域のうち、別のデータの
先頭アドレスとなり得ない領域(その位置から埋め込む
とデータ領域が重複してしまう領域)に対応するバッフ
ァ領域と、データを埋め込んでもフィールド内にデータ
が収まらない先頭アドレスのバッファ領域との全てのビ
ットを1にするというバッファ領域更新方法を用いた。
この方法を用いたことにより、一つの判定により領域重
複判定が可能であり、多数のデータを埋め込む際にも高
速な重複判定が可能であるという有利な効果が得られ
る。
【図1】本発明の実施の形態1による個人データ暗号化
送信システムの構成図
送信システムの構成図
【図2】本発明の実施の形態1による個人データ暗号化
送信システムの暗号化装置入力データのデータ形式図
送信システムの暗号化装置入力データのデータ形式図
【図3】本発明の実施の形態1による個人データ暗号化
送信システムの暗号化装置出力データのデータ形式図
送信システムの暗号化装置出力データのデータ形式図
【図4】本発明の実施の形態2による領域重複判定手段
の構成図
の構成図
【図5】本発明の実施の形態2による領域重複判定方法
のフローチャート
のフローチャート
【図6】本発明の実施の形態2による埋め込み領域と判
定バッファの対応図
定バッファの対応図
【図7】本発明の実施の形態2による判定バッファの初
期化処理の説明図
期化処理の説明図
【図8】本発明の実施の形態2による先頭アドレスのin
dexとshiftの説明図
dexとshiftの説明図
【図9】本発明の実施の形態2による判定バッファ更新
処理の説明図
処理の説明図
【図10】本発明の実施の形態2による具体例で用いた
データ一覧と判定バッファ変遷図
データ一覧と判定バッファ変遷図
【図11】本発明の実施の形態2によるフィールド長と
埋め込みデータ長を一般化したフィールドと各データと
判定バッファ更新の説明図
埋め込みデータ長を一般化したフィールドと各データと
判定バッファ更新の説明図
【図12】従来のデータ暗号化送信システムの構成図
【図13】従来のデータ暗号化送信システムの暗号化装
置入力データのデータ形式図
置入力データのデータ形式図
【図14】従来のデータ暗号化送信システムの暗号化装
置出力データのデータ形式図
置出力データのデータ形式図
【図15】従来の領域重複判定方法の構成図
【図16】従来の領域重複判定方法のフローチャート
【図17】従来方法による埋め込み領域と判定バッファ
の対応図
の対応図
101 情報入出力装置 102 データ管理装置 103 暗号化装置 104 送信装置 105 個人データ管理手段 106 鍵選択手段 107 鍵管理手段 108 アドレス決定手段 109 領域重複判定手段 110 暗号化手段 401 フィールド入力部 402 判定バッファ生成部 403 判定バッファ初期化部 404 データ入力部 405 先頭アドレス取得部 406 重複判定部 407 重複出力部 408 判定バッファ更新部 409 データ埋め込み部 410 埋め込み済フィールド出力部
Claims (10)
- 【請求項1】 複数の固定長暗号鍵データを暗号化して
一度に送信するデータ暗号化送信システムであって、 複数の固定長暗号鍵データを管理する鍵管理手段と、 前記少なくとも1つの暗号鍵データを埋め込む一定の大
きさを有した鍵埋め込み領域を含む送信データを管理す
る送信データ管理手段と、 前記暗号鍵データを前記送信データに埋め込むための埋
め込みアドレスをランダムに決定するアドレス決定手段
と、 前記鍵埋め込み領域内で重複判定をしながら、前記埋め
込みアドレスの指す位置から前記暗号鍵データを埋め込
み、鍵埋め込み済み領域を生成する領域重複判定手段
と、 前記鍵埋め込み済み領域を含む前記送信データを暗号化
する暗号化手段と、 前記暗号化手段により暗号化された前記送信データを送
信するデータ送信手段とを備えたことを特徴とするデー
タ暗号化送信システム。 - 【請求項2】 前記データ送信手段は、鍵埋め込み済み
領域と埋め込みアドレスとを別々に送信することを特徴
とする請求項1記載のデータ暗号化送信システム。 - 【請求項3】 前記アドレス決定手段の代りに、前記送
信データ管理手段が、前記送信データと埋め込みアドレ
スとを管理することを特徴とする請求項1記載のデータ
暗号化送信システム。 - 【請求項4】 複数の固定長暗号鍵データを暗号化して
一度に送信するデータ暗号化送信方法であって、 複数の固定長暗号鍵データを管理する鍵管理ステップ
と、 前記少なくとも1つの暗号鍵データを埋め込む一定の大
きさを有した鍵埋め込み領域を含む送信データを管理す
る送信データ管理ステップと、 前記暗号鍵データを前記送信データに埋め込むための埋
め込みアドレスをランダムに決定するアドレス決定ステ
ップと、 前記鍵埋め込み領域内で重複判定をしながら、前記埋め
込みアドレスの指す位置から前記暗号鍵データを埋め込
み、鍵埋め込み済み領域を生成する領域重複判定ステッ
プと、 前記鍵埋め込み済み領域を含む前記送信データを暗号化
する暗号化ステップと、 前記暗号化ステップにより暗号化された前記送信データ
を送信するデータ送信ステップとを備えたことを特徴と
するデータ暗号化送信方法。 - 【請求項5】 複数の固定長暗号鍵データを暗号化して
一度に送信するデータ暗号化送信プログラムを記録した
記録媒体であって、 複数の固定長暗号鍵データを管理する鍵管理ステップ
と、 前記少なくとも1つの暗号鍵データを埋め込む一定の大
きさを有した鍵埋め込み領域を含む送信データを管理す
る送信データ管理ステップと、 前記暗号鍵データを前記送信データに埋め込むための埋
め込みアドレスをランダムに決定するアドレス決定ステ
ップと、 前記鍵埋め込み領域内で重複判定をしながら、前記埋め
込みアドレスの指す位置から前記暗号鍵データを埋め込
み、鍵埋め込み済み領域を生成する領域重複判定ステッ
プと、 前記鍵埋め込み済み領域を含む前記送信データを暗号化
する暗号化ステップと、 前記暗号化ステップにより暗号化された前記送信データ
を送信するデータ送信ステップとを備えたことを特徴と
するデータ暗号化送信プログラムを記録した記録媒体。 - 【請求項6】 複数の固定長暗号鍵データを暗号化して
一度に記録媒体へ書き込むデータ暗号化管理システムで
あって、 複数の固定長暗号鍵データを管理する鍵管理手段と、 前記少なくとも1つの暗号鍵データを埋め込む一定の大
きさを有した鍵埋め込み領域を含む書込みデータを管理
する書込みデータ管理手段と、 前記暗号鍵データを前記書込みデータに埋め込むための
埋め込みアドレスをランダムに決定するアドレス決定手
段と、 前記鍵埋め込み領域内で重複判定をしながら、前記埋め
込みアドレスの指す位置から前記暗号鍵データを埋め込
み、鍵埋め込み済み領域を生成する領域重複判定手段
と、 前記鍵埋め込み済み領域を含む前記書込みデータを暗号
化する暗号化手段と、 前記暗号化手段により暗号化された前記書込みデータを
記録媒体に書き込む書込みデータ書込み手段とを備えた
ことを特徴とするデータ暗号化管理システム。 - 【請求項7】 複数のnバイトデータを、nより十分大
きなmバイト領域に埋め込む際の、領域重複判定方法で
あって、 mバイト領域の各バイトをそれぞれ1ビットに対応させ
た判定バッファ領域を生成する判定バッファ領域生成ス
テップと、 判定バッファ領域の各ビットを、mバイト領域の最後n
−1バイトに対応するビットを埋め込み不可を示す値
に、mバイト領域の残りの領域に対応するビットを埋め
込み可能を示す値に初期化する判定バッファ領域初期化
ステップと、 各nバイトデータに対し、対応する埋め込み領域の先頭
アドレスを得る先頭アドレス取得ステップと、 前記先頭アドレス取得ステップにより取得した埋め込み
領域の先頭アドレスのバイトに対応する判定バッファ領
域のビットの値によりデータ領域の重複を判定する領域
重複判定ステップと、 前記領域重複判定ステップによりデータ領域が重複する
と判定された時、判定結果を出力する重複結果出力ステ
ップと、 前記領域重複判定ステップによりデータ領域が重複しな
いと判定された時、nバイトデータをmバイト領域に埋
め込むデータ埋め込みステップと、 前記領域重複判定ステップによりデータ領域が重複しな
いと判定された時、nバイトデータを埋め込む領域、及
びその前のn−1バイトの領域に対応する判定バッファ
の各ビットを、埋め込み不可を示す値に更新する判定バ
ッファ更新ステップと、 すべてのnバイトデータに対し先頭アドレス取得ステッ
プ以降のステップを実施する制御ステップと、 すべてのnバイトデータに対して領域の重複がなくデー
タの埋め込みが完了した時、埋め込み済みのmバイト領
域を出力する埋め込み済み領域出力ステップとを備えた
ことを特徴とする領域重複判定方法。 - 【請求項8】 前記埋め込みデータであるnバイトデー
タが8バイトのデータであることを特徴とする請求項7
記載の領域重複判定方法。 - 【請求項9】 前記判定バッファ更新ステップは、(Z
/8の剰余)の全パターンである8パターンに対応した
値が用意してあるテーブルをもとに、判定バッファ領域
の更新を行う第2の判定バッファ更新ステップであるこ
とを特徴とする請求項7記載の領域重複判定方法。 - 【請求項10】 複数のnバイトデータを、nより十分
大きなmバイト領域に埋め込む際の、領域重複判定プロ
グラムを記録した記録媒体であって、 mバイト領域の各バイトをそれぞれ1ビットに対応させ
た判定バッファ領域を生成する判定バッファ領域生成ス
テップと、 判定バッファ領域の各ビットを、mバイト領域の最後n
−1バイトに対応するビットを埋め込み不可を示す値
に、mバイト領域の残りの領域に対応するビットを埋め
込み可能を示す値に初期化する判定バッファ領域初期化
ステップと、 各nバイトデータに対し、対応する埋め込み領域の先頭
アドレスを得る先頭アドレス取得ステップと、 前記先頭アドレス取得ステップにより取得した埋め込み
領域の先頭アドレスのバイトに対応する判定バッファ領
域のビットの値によりデータ領域の重複を判定する領域
重複判定ステップと、 前記領域重複判定ステップによりデータ領域が重複する
と判定された時、判定結果を出力する重複結果出力ステ
ップと、 前記領域重複判定ステップによりデータ領域が重複しな
いと判定された時、nバイトデータをmバイト領域に埋
め込むデータ埋め込みステップと、 前記領域重複判定ステップによりデータ領域が重複しな
いと判定された時、nバイトデータを埋め込む領域、及
びその前のn−1バイトの領域に対応する判定バッファ
の各ビットを、埋め込み不可を示す値に更新する判定バ
ッファ更新ステップと、 すべてのnバイトデータに対し先頭アドレス取得ステッ
プ以降のステップを実施する制御ステップと、 すべてのnバイトデータに対して領域の重複がなくデー
タの埋め込みが完了した時、埋め込み済みのmバイト領
域を出力する埋め込み済み領域出力ステップとを備えた
ことを特徴とする領域重複判定プログラムを記録した記
録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000058431A JP2001251288A (ja) | 2000-03-03 | 2000-03-03 | データ暗号化送信システム及び領域重複判定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000058431A JP2001251288A (ja) | 2000-03-03 | 2000-03-03 | データ暗号化送信システム及び領域重複判定方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001251288A true JP2001251288A (ja) | 2001-09-14 |
Family
ID=18579024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000058431A Pending JP2001251288A (ja) | 2000-03-03 | 2000-03-03 | データ暗号化送信システム及び領域重複判定方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001251288A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008124936A (ja) * | 2006-11-14 | 2008-05-29 | Toshiba Information Systems (Japan) Corp | 送信装置、受信装置、情報通信システム |
US7682252B2 (en) | 2003-11-19 | 2010-03-23 | Creatures, Inc. | Game data control program, game data overwriting program and game data overwriting device |
-
2000
- 2000-03-03 JP JP2000058431A patent/JP2001251288A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7682252B2 (en) | 2003-11-19 | 2010-03-23 | Creatures, Inc. | Game data control program, game data overwriting program and game data overwriting device |
JP2008124936A (ja) * | 2006-11-14 | 2008-05-29 | Toshiba Information Systems (Japan) Corp | 送信装置、受信装置、情報通信システム |
JP4714124B2 (ja) * | 2006-11-14 | 2011-06-29 | 東芝情報システム株式会社 | 送信装置、受信装置、情報通信システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8555088B2 (en) | Method and apparatus for implementing secure and selectively deniable file storage | |
US7584198B2 (en) | Data storage | |
US7492894B2 (en) | Information-processing apparatus, control method, program and recording medium | |
TWI642294B (zh) | 具有鑑認指令之密碼訊息之電腦程式產品、系統及方法 | |
JP3229148B2 (ja) | 暗号化方法およびシステム | |
JP2006197540A (ja) | 改竄検出用データ生成方法、および改竄検出方法及び装置 | |
KR100566355B1 (ko) | 기록매체상에데이터를보존하기위한방법및장치 | |
US8001391B2 (en) | Method of encrypting and decrypting data stored on a storage device using an embedded encryption/decryption means | |
Khati et al. | Full disk encryption: bridging theory and practice | |
JP2000101568A (ja) | コマンド認証方法 | |
US20080212770A1 (en) | Key Information Generating Method and Device, Key Information Updating Method, Tempering Detecting Method and Device, and Data Structure of Key Information | |
JP2006039206A (ja) | 暗号化装置および復号化装置 | |
JPWO2003013054A1 (ja) | 処理に伴い暗号データの改ざん検出用データを生成する装置及び方法 | |
JP2004072290A (ja) | 証明書管理環境の管理方法、プログラム及び装置 | |
JP4303408B2 (ja) | 情報をブロック暗号化して記録する方法およびこれをサポートする記録媒体 | |
CN110113151A (zh) | 一种对elf格式程序的非侵入式实时加解密方法 | |
JP2001251288A (ja) | データ暗号化送信システム及び領域重複判定方法 | |
Vershinin et al. | Associative steganography of text messages | |
JP6205272B2 (ja) | デジタル情報の保護方法、装置およびコンピュータによるアクセス可能な記録媒体 | |
JP4091139B2 (ja) | データ保存装置及びデータ保存方法 | |
JPH06290087A (ja) | 圧縮暗号化装置 | |
JP4864456B2 (ja) | 改竄検出用データ生成方法 | |
CN114039990A (zh) | 不经意访问存储系统 | |
JP2001043135A (ja) | データ抽出方法及びデータ抽出プログラムを格納した記憶媒体 | |
JP5539024B2 (ja) | データ暗号化装置およびその制御方法 |