(57)【要約】  【課題】    ソフト・コピー・テキスト文書の中にデータを見えないように埋め込み隠す方法を提供すること。  【解決手段】  複数の単語間間隔にある見えない文字の選択された見えない属性を変更することによって、テキスト文書の中にデータを見えないように埋め込み隠すための方法は、単語間間隔として使用されるスペース文字において見えない、少なくとも１つの属性を選択するステップ（１０）と、全ての単語間間隔において、選択された属性の値を同じデフォルト値に設定することによって、文書を標準形式に変換するステップ（１４）と、選択された属性の異なる値に対応する値の順序付けセットとして、文書の中に埋め込まれ隠されるデータを符号化するステップ（１８）と、全ての単語間間隔の中からスペース文字のセットに対応する単語間間隔のセットを選択するステップ（２０）と、スペース文字の該セットの各スペース文字において、デフォルト属性値を対応する符号化されたデータによって置き換えるステップ（２２）とを含む。
2005512166.tif 000002
【特許請求の範囲】
【請求項１】
テキスト文書の複数の単語間間隔にある見えない文字の選択された見えない属性を変更することによって、テキスト文書の中にデータを見えないように埋め込み隠すための方法であって、
単語間間隔として使用されるスペース文字において見えない、少なくとも１つの属性を選択するステップ（１０）と、
前記テキスト文書の全ての単語間間隔において、前記選択された属性の値を同じデフォルト値に設定することによって、前記テキスト文書を標準形式に変換するステップ（１４）と、
前記選択された属性の異なる値に対応する値の順序付けセットとして、前記テキスト文書の中に埋め込まれ隠されるデータを符号化するステップ（１８）と、
前記テキスト文書中の全ての単語間間隔の中から前記テキスト文書の中に前記データを埋め込み隠すために使用されるスペース文字のセットに対応する単語間間隔のセットを選択するステップ（２０）と、
スペース文字の前記セットの各スペース文字において、デフォルト属性値を対応する符号化されたデータによって置き換えるステップ（２２）と
を含む、方法。
【請求項２】
前記データは、前記テキスト文書上で一方向ハッシュ関数を用いて計算されるメッセージ認証コード（ＭＡＣ）のような、前記テキスト文書の認証に使用される保全情報であり、前記保全情報は、秘密キーを使用して計算される（１６）、請求項１に記載の方法。
【請求項３】
埋め込まれる前記データは、属性値のセットを使用して符号化され、
前記属性値のセットは、前記属性値と埋め込まれる前記データを表すディジットとの間の対応テーブルを確立することによって符号化される（１２）、
請求項１または２に記載の方法。
【請求項４】
埋め込まれる前記データは、Ｎベースの０、１、２、．．．、Ｎ−１の数字の中の各１つとすることができる一連の数字であり、
前記数字は、Ｎ個の選択された属性値にそれぞれに対応する、
請求項３に記載の方法。
【請求項５】
前記選択された属性は、文字の色であり、
前記属性値は、色の属性について選択することができるＮ個の異なる色に対応する、
請求項４に記載の方法。
【請求項６】
埋め込まれる前記データは、１０ベース（Ｎ＝１０）の１０進数で表され、
０から９までの各数字は、文字の色の属性によって定義された色にそれぞれ関連づけられる、
請求項４に記載の方法。
【請求項７】
前記Ｎベースの０、１、２、．．．、Ｎ−１の数字の各々が第１の属性の選択値と第２の属性の選択値の組み合わせにそれぞれ対応するように２つの属性が組み合わせて使用される、
請求項４、５  または６に記載の方法。
【請求項８】
前記第２の属性は、文字の”イタリック”フォーマットであり、
前記属性値は、”イタリック”または”非イタリック”に対応する、
請求項７に記載の方法。
【請求項９】
請求項２乃至８のいずれか１つに従う方法を使用することにより、スペース文字の選択された見えない属性を変更することによって、テキスト文書に埋め込まれていた隠された保全情報を含み、通信システムによって受け取られた前記テキスト文書の認証を行うための方法であって、
前記受け取られた文書の全ての単語間間隔において、前記選択された属性の値を同じデフォルト値に設定することによって、前記テキスト文書を標準形式に変換するステップ（２６）と、
前記テキスト文書から、認証に使用される前記保全情報を計算するステップ（２８）と、
前記選択された属性の異なる値に対応する値の順序付けセットとして、前記保全情報を符号化するステップ（３０）と、
符号化されたテキスト文書を得るために、スペース文字の前もって決定されたセットの各スペース文字のデフォルト属性値を前記値の順序付けセットの対応する値によって置き換えるステップ（３２）と、
前記符号化されたテキスト文書と前記受け取られたテキスト文書を比較して（３４）、一致した場合に（３６）、前記受け取られたテキスト文書を認証するステップと
を含む、方法。
【請求項１０】
前記テキスト文書の認証に使用される前記保全情報は、前記テキスト文書上で一方向ハッシュ関数を用いて計算されるメッセージ認証コード（ＭＡＣ）であり、
前記保全情報は、秘密キーを使用して計算される
請求項９に記載の方法。
【請求項１１】
請求項２乃至８のいずれか１つに従う方法を使用することにより、スペース文字の選択された見えない属性の値を変更することによって、テキスト文書に埋め込まれていた、隠された保全情報を含み、通信システムによって受け取られた前記テキスト文書の認証を行う方法であって、
前記受け取られた文書の全ての単語間間隔において、前記選択された属性の値を同じデフォルト値に設定することによって、前記テキスト文書を標準形式に変換するステップ（２６）と、
前記選択された属性の異なる値に対応する値の順序付けセットとして、前記保全情報を計算するステップ（２８）と、
前記スペース文字から属性の前記変更された値を抽出するステップ（２９）と、
属性の前記抽出された変更された値から前記符号化された保全情報を復元するステップ（３１）と、
前記計算された保全情報と前記復元された保全情報を比較して（３３）、一致した場合に（３５）、受け取られたテキスト文書を認証するステップと
を含む、方法。
【請求項１２】
前記テキスト文書の認証に使用される前記保全情報は、前記テキスト文書上で一方向ハッシュ関数を用いて計算されるメッセージ認証コード（ＭＡＣ）であり、
前記保全情報は、秘密キーを使用して計算される
請求項１１に記載の方法。
【請求項１３】
請求項１乃至１２のいずれか１つに従う方法のステップを実行するために、適用される手段を含む、システム。
【請求項１４】
請求項１乃至１２のいずれか１つに従う方法を実行するためのコンピュータ可読プログラム・コード手段を有するコンピュータ可用媒体を含む、コンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、目に見えない方法で文書自体の中へテキスト文書の保全情報を埋め込むような、ソフト・コピー・テキスト文書の中にデータを埋め込み隠すことに関し、特に、そのための改善方法に関する。
【背景技術】
【０００２】
非セキュア媒体（例えば、インターネット）上の電子メールなどの電子テキスト文書の配信が指数的に増大しているコンピュータ・ネットワークの現環境では、認証が重大な問題である。電子テキスト文書の受取人が、その出所および誰も他の誰かのように振舞うことができないことを確かめることは常に可能なわけではない。また、伝達の間に偶然または故意に変更されなかったことを確かめることは必要である。 
【０００３】
従って、そのような認証を行うための方法が提案されてきた。電子テキスト文書にうまく適合する標準的解決方法は、メッセージ認証コード（ＭＡＣ）の形式の保全情報をソフト・コピー・テキスト文書に加えることである。ＭＡＣは、テキスト上で一方向ハッシュ関数を用いて計算されるダイジェストであり、それは、また、例えば、送信システムおよび受信システムによってのみ知られる秘密キーであるキーに依存して行われ、それにより受信システムは、最初に、受け取られた文書が秘密キーを共有する者によって正しく作られたかを調べて、次に、文書が変更されなかったかを調べることができる。例えば、the National Institute of Standards and Technologies, NIST, FIPS PUB 180-1, "Secure Hash Standard", US Dpt of Commerce, May 93 に記載されたセキュア・ハッシュ・アルゴリズム、すなわちＳＨＡは、１６０ビットのハッシュ値を生成する。これは、例えば、ＩＥＴＦ（インターネット・エンジニアリング・タスク・フォース）のＲＦＣ（コメントのリクエスト）２１０４の主題であるＨＭＡＣすなわちメッセージ認証用のキー・ハッシングと呼ばれるメカニズムを利用して、キーと結合することができる。ＨＭＡＣは、ＳＨＡを含む任意の反復暗号ハッシュ関数と共に使用することができるように工夫されている。そのため、ＭＡＣは、受取人が全体をチェックすることができるように、テキスト文書のソフト・コピーに添付することができる。
【０００４】
明らかに、ファイルに対するチェック情報の付加を想定するこの方法は、実際、テキストおよびチェック情報を分離するという不便がある。このように、この情報が、不正行為を試みようとして、意図的にまたは誤って、容易に分離され除去され得るのは、電子文書の転送を担う中間の装置または通信プロトコルが情報のこの余分な部分を処理するのに適当でないためである。 
【０００５】
そこで、チェック情報は、むしろ、テキスト文書自体の本文の中に透過的に符号化されるべきである（すなわち、テキスト・フォーマットおよび可読性になんら影響しない方法で）。そのため、チェック情報は、宛先までの途中でさらされる種々の操作に渡って損なわれないままであり、それでも、最終受取人が文書を認証することを可能にする。
【０００６】
主に、ソフト・コピー・イメージに適用される認証に対するアプローチのもう１つのタイプ（ハード・コピー・テキスト文書のイメージで使用することもできる）は、そのディジタル表現の中にデータを隠し、このようにして、チェック情報が文書自体の中により良好にマージされるべきであるという上記の要件を満たすことである。識別、注釈、改ざん防止、および著作権の目的のために、ディジタル媒体の中にデータを埋め込むステガノグラフィ形式のデータ・ハイディングが大きな注目を集めたのは、主に、インターネットやネットワークを通して、一般にどこにでも容易にコピーされて配布されるディジタル・マルチメディア材の著作権の故である。データ・ハイディング技術の優れた論評としては、IBM System Journal, Vol.35. No.3&4, 1996 に記載された W.Bender 他による "Techniques for data hiding" がある。データ・ハイディングを実行することができる方法の一例は、イメージ・データの最下位輝度ビットを埋め込みデータで置き換えるものである。実際、目立たないという要件（言い換えると、復元されたイメージは、これが目立つところまでは変更されない）を満たす本技術は、消えないマークをイメージの上に置くことに向けたウォーターマーキング、または改ざん防止を含む、認証と同様な種々の目的にかなうものであり、特に、ソフト・コピー・イメージの中へのＭＡＣの埋め込みを通して、イメージ変化を検出する。しかしながら、テキストをイメージとして考えなければならないので、ストレージとテキストを伝送するために必要な帯域幅に関しては非常に高価で不適当な解決方法となるであろう。このように、ソフト・コピー・テキスト文書の中にデータを符号化して隠すために、特に適合した方法が提案されてきた。
【０００７】
Benderによる上記の記事に記載されたように、テキストの符号化とデータ・ハイディングの方法は、空白（ブランクまたはスペース）を処理するオープン・スペース法、または句読と短縮を利用する構文法のいずれかである。
・セマンティック法は、単語自体の操作を使用してデータを符号化する。
・ステガノグラフィック法は、行間、単語間、またはテキストの文字のビットマップ・イメージ上のスペース上に小さい制御変更を導入することによって操作する行シフト・コーディング法、単語シフト・コーディング法、またはフィーチャ・コーディング法として知られているように、グラフィカル属性を変更することによってデータを符号化する。
【０００８】
空白、より詳細には、テキスト文書の創作者によって挿入された単語間のブランク文字に基づくオープン・スペース法は、別のＭＡＣの付加なしに、認証することができるテキストをマーキングするための最も簡単で便利な方法として考えられてきたが、その理由は、チェックするために必要である情報が、無頓着な読者が気づかないようにテキスト自体の中に埋め込まれ、どうにか隠されているためである。これらの方法は、基本的には、元の入力テキストの間隔（暗号的に選択される、または選択されない）のサブセットに”ブランクの数”を挿入すること、またはより広義には、変更することによって、テキストの中に情報を符号化して隠すという考えに基づく。
【０００９】
しかしながら、テキスト上に情報を符号化するためのブランクの挿入または削除は、元の入力テキストのフォーマットを変更して歪めるという著しい欠点を有する。さらに、通常、バイナリ情報を符号化するためにテキストの間隔のブランクの数を操作することは、１つのビットを符号化するために１つの単語間間隔を割り当てることを必要とする。このように、符号化する情報の量に応じて、これらの方法を応用するために、大きいサイズのテキストが必要となる場合がある。
【００１０】
結論として、ソフト・コピー・テキスト上にデータを符号化し隠すための上記の全ての方法の分析から、それらの全てについての共通の特徴は、なんとかして、元のテキストの幾つかの目に見える特徴を変更することによって（例えば、単語間のスペースの数を変更することによって、句読点シンボルを変えるまたは動かすことによって、単語または行の位置をシフトすることによって、テキスト・フォントの形式を変更することによって、代替の単語を使用することによって）、情報を符号化することに基づくものである。このように、全てのこれらの符号化とデータ・ハイディングの方法は、元の入力テキストのフォーマットまたは視覚的外観を変更するものであり、従って、編集すると目立つ可能性がある。
【非特許文献１】the National Institute of Standards and Technologies, NIST, FIPS PUB 180-1, "Secure Hash Standard", US Dpt of Commerce, May 93.
【非特許文献２】"Techniques for data hiding", IBM System Journal, Vol.35. No.3 and 4, 1996.
【発明の開示】
【発明が解決しようとする課題】
【００１１】
従って、本発明の主な目的は、テキスト文書のフォーマットと視覚的外観を変化させないまま、ソフト・コピー・テキスト文書の中に保全情報などのデータを見えないように符号化して隠すための方法を達成することである。
【００１２】
本発明のもう１つの目的は、ソフト・コピー・テキスト文書の中にマージして隠すことができる情報の量を最大にして、ソフト・コピー・テキスト文書の中にデータを見えないように符号化して隠すための方法を達成することである。
【課題を解決するための手段】
【００１３】
このため、本発明は、テキスト文書の複数の単語間間隔にある見えない文字の選択された見えない属性を変更することによって、テキスト文書の中にデータを見えないように埋め込み隠すための方法に関し、単語間間隔として使用されるスペース文字の見えない、少なくとも１つの属性を選択するステップと、全ての単語間間隔の選択された属性の値を同じデフォルト値に設定することによって、テキスト文書を標準形式に変換するステップと、選択された属性の異なる可能な値に対応する値の順序付きセットとして、テキスト文書の中に埋め込まれ隠されるデータを符号化するステップと、テキスト文書中の全ての単語間間隔の中からテキスト文書の中にデータを埋め込み隠すために使用されるスペース文字のセットに対応する単語間間隔のセットを選択するステップと、スペース文字のセットの各スペース文字のデフォルト属性値を対応する符号化されたデータによって置き換えるステップとを含む。
【００１４】
本発明の上記および他の目的、特徴、および利点は、添付の図面と共に本発明の次のより詳細な説明を読むことにより、さらにいっそう理解することができるであろう。
【発明を実施するための最良の形態】
【００１５】
本発明の原理は、異なる見えないパラメータが、元のテキストのフォーマットと視覚的外観に影響することなしに、テキストの単語間文字またはスペース文字上で変更することができるというものである。テキスト（または文字）属性に対応するこのようなパラメータは、フォント・タイプ、テキストの色、イタリックの太字、もしくはスペース文字の保護された属性、またはこれらの任意の組み合わせを含んでいる。
【００１６】
フローチャートが図１に示されている本発明の方法に従い、テキスト文書のスペース文字の見えない１つまたは複数の属性が選択される（ステップ１０）。本発明の好ましい実施形態は、１つのテキスト色属性を選択することである。従って、色のパレットに含まれる色の数と同数の異なる選択を、テキストの１つのスペースの中に見えないように符号化することができる。
【００１７】
次に、属性値の選択されたセットが、属性値の選択されたセットと埋め込まれるデータを表すディジットの間の対応またはマッピング・テーブルを確立することによって符号化される（ステップ１２）。
【表１】
2005512166.tif 000003
【００１８】
色の属性は、イタリックなどの別の属性と組み合わせることができることに注意されたい。テキストの色とイタリックからなる組み合わせの選択は、色のパレットに含まれる色とイタリック／非イタリックの組み合わせの数と同数の異なる選択を持つことを可能にする。
【００１９】
データが埋め込まれるテキスト文書は、テキストの全てのスペースにおいて、選択された属性の少なくとも１つを同じデフォルト値に設定することにより、標準形式に変換される（ステップ１４）。従って、色の属性の選択では、この１つが全てのスペース文字について（デフォルトの）黒色に設定される。このような場合、全てのスペース文字は、デフォルトによって背景色については白の属性を持つ。任意のスペース文字にデフォルト値を設定することは、このスペースで符号化されている情報がないことを意味することに注意されたい。
【００２０】
埋め込まれるデータがテキスト文書のメッセージ認証コード（ＭＡＣ）に対応する保全情報であると想定すると、このような保全情報は秘密キーを使用して計算され（ステップ１６）、次に、この保全情報は、符号化された属性値のセットを使用して符号化され（ステップ１８）、属性値の順序付けセットを得る。
【００２１】
従って、保全情報は、次の３２個の１０進数のシーケンスであると想定する。
７３３５０２９３２１４８５５８４１０９７６４４６１２３６００９１
１０進数と色の属性値の間の上記の対応またはマッピング・テーブルを使用して、次の符号化された属性値の順序付けセットが結果として生じる。
緑（７）、赤（３）、赤（３）、黄（５）、暗いシアン（０）、暗いグレー（２）、シアン（９）、赤（３）、暗いグレー（２）、グレー（１）、暗い赤（４）、暗い緑（８）、黄（５）、黄（５）、暗い緑（８）、暗い赤（４）、グレー（１）、暗いシアン（０）、 シアン（９）、緑（７）、暗い黄（６）、暗い赤（４）、暗い赤（４）、暗い黄（６）、グレー（１）、暗いグレー（２）、赤（３）、暗い黄（６）、暗いシアン （０）、暗いシアン（０）、シアン（９）、グレー（１）
【００２２】
最後に、テキスト文書の単語間間隔の中から、符号化するために使用されるスペースのサブセット（一般に、テキスト文書の最初から連続する間隔）を選択した後に（ステップ２０）、属性のデフォルト値がスペースの選択されたサブセットの各スペース文字について、符号化された属性値の順序付けセットの対応する符号化された属性値によって置き換えられる（ステップ２２）。
【００２３】
本発明による方法の結果として、表示または印刷された場合、見えないように認証されたテキストは元のテキストと同じである。さらに、保全情報は実際のデータに埋め込まれているので、常にテキスト文書の電子バージョンに付属している保全情報を誰も不注意に置き誤ることはない。
【００２４】
上記の方法に従って処理された、見えないように符号化されたテキスト文書が受信通信システムによって受け取られたとき、テキスト文書を認証するためにチェック方法が使用されなければならない。このチェック方法は２つの実施形態で使用することができる。図２に示した第１の実施形態では、符号化されたテキスト文書を受け取った後に（ステップ２４）、この文書は、受け取られたテキストの全てのスペースにおいて、選択された属性を同じデフォルト値に設定することにより、前述のように、標準形式に変換される（ステップ２６）。再度、図１に示した方法のように、同じ秘密キーを使用することによって標準テキストの保全情報が計算され（ステップ２８）、この保全情報は符号化された属性値の順序付けセットを得るために、符号化された属性値の同じセットを使用することによって符号化される（ステップ３０）。
【００２５】
標準テキスト文書の単語間間隔の中からスペースの前もって決定されたサブセットにおける属性のデフォルト値が、各スペース文字について、符号化された属性値の順序付けセットの対応する符号化された属性値によって置き換えられ（ステップ３２）、符号化されたテキスト文書を得る。スペースの前もって決定されたサブセットは、受け取られたテキスト文書が符号化されたとき、選択されていたスペースのサブセットと同じでなければならないことに注意されたい。このサブセットが文書の最初から連続する単語間間隔に対応する場合は、これは問題ではない。
【００２６】
次に、受け取られたテキスト文書は符号化されたテキスト文書と比較され（ステップ３４）、それらの間に一致があるかどうか調べる（ステップ３６）。もしあれば、受け取られたテキストの認証がある（ステップ３８）。もしなければ、受け取られたテキストは拒否される（ステップ４０）。
【００２７】
図３に示した第２の実施形態では、符号化されたテキスト文書を受け取った後に（ステップ２４）、この文書は標準形式に変換され（ステップ２６）、保全情報が第１の実施形態と同じ方法で計算される（ステップ２８）。しかし、代わりに、符号化された属性が、受け取られたテキスト文書のスペースの前もって決定されたサブセットの符号化されたスペースから抽出される（ステップ２９）。次に、符号化された保全情報が、符号化されたスペースの選択されたサブセットから復元される（ステップ３１）。
【００２８】
次に、受け取られた文書から復元された保全情報が、標準形式の計算された保全情報と比較され（ステップ３３）、それらの間に一致があるかどうかをチェックする（ステップ３５）。もし、あれば、受け取られたテキストの認証がある（ステップ３７）。もし、なければ、受け取られたテキストは拒否される。
【００２９】
選択された属性がテキストの色である上記の例では、１０進数の０、１・・・９を表わす色が１０よりも多い場合、１０進数ベースで表されたデータを符号化することに問題はない。
【００３０】
可能な選択が１０より少ない異なる属性を選択する場合を想定すると、１０進数ベースで埋め込まれるデータについて、このような属性は有用ではない。このような場合であっても、異なる可能な属性値の数より小さいＮの数字ベースに従ってデータが表わされるのであれば、このような属性を使用することは可能である。従って、選択された属性について５つの異なる可能な選択がある場合、データは数字０−４を有する５ベースで表されるであろう。もちろん、このようなデータの表示は、情報を符号化するために、例えば、１０進数ベースを使用するよりも多くのスペースをテキスト文書の中に確保することを必要とする。
【００３１】
少数の異なる値のみをとることを可能にする属性を使用するためのもう１つの可能性は、その属性をもう１つの属性と組み合わせることである。例として、５つの値をとる上記の属性は、１０進数ベースで符号化されるデータの１０個の数字（０から９）を表すために、イタリック／非イタリックなどの２つの可能な選択を持つ、もう１つの属性と組み合わせることができる。
【００３２】
例えば、次の対応またはマッピング・テーブルは、１対の属性、例えば、色の属性とイタリック／非イタリック属性を１６進数へ関連付ける。
【表２】
2005512166.tif 000004
【００３３】
いずれにしても、本発明を使用するためには、電子形式（ソフト・コピー）でテキスト文書を交換する通信システムが互換性を有していなければならないことに注意されたい。現代のほとんどの全てのオフィス製品および電子メール製品についてそうである。たとえ、システムが色（黒と白のテキスト以外）をサポートしていなくても、符号化のために、フォント・タイプ、イタリック、太字または保護といった、１つの属性または複数の異なる可能な属性の組み合わせを使用することによって、プレーン・テキストのブランク上に見えない情報を符号化することも可能であることに注意することも重要である。
【図面の簡単な説明】
【００３４】
【図１】発明に従う、テキスト文書の中に保全情報を埋め込み隠すための方法のフローチャートである。
【図２】図１に示した方法に従って処理されたテキスト文書を認証するための方法の第１の実施形態を表すフローチャートである。
【図３】図１に示した方法に従って処理されたテキスト文書を認証するための方法の第２の実施形態を表すフローチャートである。
【図１】
2005512166.tif 000005
【図２】
2005512166.tif 000006
【図３】
2005512166.tif 000007
【国際調査報告】
2005512166.tif 000008
2005512166.tif 000009