JPWO2008146334A1 - 画像暗号化装置、画像復号装置、方法、及びプログラム - Google Patents

画像暗号化装置、画像復号装置、方法、及びプログラム Download PDF

Info

Publication number
JPWO2008146334A1
JPWO2008146334A1 JP2009516077A JP2009516077A JPWO2008146334A1 JP WO2008146334 A1 JPWO2008146334 A1 JP WO2008146334A1 JP 2009516077 A JP2009516077 A JP 2009516077A JP 2009516077 A JP2009516077 A JP 2009516077A JP WO2008146334 A1 JPWO2008146334 A1 JP WO2008146334A1
Authority
JP
Japan
Prior art keywords
image
encryption
related information
area
encrypted
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009516077A
Other languages
English (en)
Other versions
JP4820446B2 (ja
Inventor
石井 英昭
英昭 石井
阿南 泰三
泰三 阿南
健介 倉木
健介 倉木
昌平 中潟
昌平 中潟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2008146334A1 publication Critical patent/JPWO2008146334A1/ja
Application granted granted Critical
Publication of JP4820446B2 publication Critical patent/JP4820446B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C5/00Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32144Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp
    • H04N1/32149Methods relating to embedding, encoding, decoding, detection or retrieval operations
    • H04N1/32267Methods relating to embedding, encoding, decoding, detection or retrieval operations combined with processing of the image
    • H04N1/32272Encryption or ciphering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/448Rendering the image unintelligible, e.g. scrambling
    • H04N1/4486Rendering the image unintelligible, e.g. scrambling using digital data encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/913Television signal processing therefor for scrambling ; for copy protection

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Facsimile Transmission Control (AREA)
  • Storage Device Security (AREA)
  • Facsimiles In General (AREA)

Abstract

入力データを画像に変換し、該入力画像について、画像を暗号化する領域である暗号化領域を指定する。また、暗号鍵を基に、該暗号鍵に関連するから情報である暗号鍵関連情報を生成し、その暗号鍵関連情報を前記暗号化領域の画像内に埋め込んで、第1の中間画像を生成する。続いて、その第1の中間画像を前記暗号鍵に基づいて変換し、第2の中間画像を生成する。そして、前記暗号化領域の位置が特定可能となるように、前記第2の中間画像の画素値を変換する。この変換の結果、前記入力画像内の前記暗号化領域の部分が暗号化された暗号化画像が生成される。

Description

本発明は、印刷された画像や、デジタル画像において、個人情報などの重要な情報を視覚的に暗号化し、該重要情報の第三者への漏洩を防止する画像の暗号化及び復号の技術に関する。
社会の情報化が進展するにつれ、秘密情報の漏洩が深刻な問題となっており、情報漏洩を防止する技術の重要性が増してきている。この情報漏洩防止技術に関しては、例えばデジタルデータにおいて、第三者が入手しても、その内容が分からないように、データを暗号化する技術が開発されている。この暗号化技術は、デジタルデータの情報漏洩を防ぐ有効な手段として既に利用されている。
一方、紙媒体等に印刷された印刷物の情報漏洩を防止する技術は、まだ十分に確立されておらず、実用化された例もない。現代社会においては、情報漏洩の約半数が印刷物によるものだという統計もあり、印刷物についても、デジタルデータと同様に、情報漏洩を防ぐ技術の開発が急務となっている。情報漏洩対策が望まれる印刷物の具体例としては、商品購入時の請求書、クレジットカード等の明細書、病院のカルテ、学校の成績表、名簿などがある。
PCT出願のJP/2007/000215(以後、特許文献1と呼ぶ)によれば、デジタル画像のみならず、紙に印刷された画像を、暗号化して、情報漏洩を防ぐことが可能である。ところで、紙に印刷された病院のカルテや明細書などは、一種の視覚情報として定義できる。したがって、本願の明細書(本明細書)では、それらを総称して“画像”と呼ぶことにする。
特許文献1に開示されている画像暗号化の概要を説明する。
図1(A)に示す入力画像10について、その一部を暗号化領域11として指定し、その暗号化領域11の画像に対してパスワード(暗号鍵)を基に画像処理を施す。この結果、図1(B)に示す暗号化画像20が生成される。暗号化画像20においては、前記暗号化領域11の画像が、元の内容が認識できない画像(変換画像)21に変換されている。
この暗号化画像20の復元方法を図2に示す。
図2(A)に示す暗号化画像20に対して正しいパスワード(復号鍵)を入力した場合には、図2(B)に示すように、元の画像10が復元される。しかし、暗号化画像20に対して誤ったパスワードを入力した場合には、図2(C)に示すように、変換画像21が元の画像に復号されず、異なった画像31に変換される。このように、暗号化画像20に対して誤ったパスワードを入力した場合には、元の画像10は復元されない。
しかしながら、特許文献1の画像暗号化技術の場合、図3に示すような欠点がある。
すなわち、図3(A)に示す暗号化画像20に対して誤ったパスワードを入力しても、図3(B)に示すように、変換画像21が、偶然、元の画像に似通った画像41に変換され、隠された内容が推測されてしまう可能性がある。
これは、セキュリティの観点からは望ましくない。したがって、誤ったパスワードが入力された場合には、変換画像が復号されないような仕組みが必要である。
ところで、本発明に関連する従来技術として、例えば、日本国特許庁の特開2006−332826号特許公開公報(以下、特許文献2と呼ぶ)に開示されている手法がある。特許文献2の手法では、FAXで資料の送受信を行なう際に、送信者は資料中の秘密にしたい領域を選択すると共に暗号化パスワードを指定する。これにより、設定した暗号化パスワードをカバーシートに重畳して印刷し、それらの資料をFAX等の通信手段を利用して受信者側に送信する。受信側では、受信した資料中のカバーシートからパスワードを抽出し、それが受信者が入力したパスワードと一致する場合、受信者が読み取り可能な状態で文書の本文を印刷する仕組みとなっている。また、特許文献2においては、カバーシートへのパスワード情報の埋め込みは、電子透かし、バーコードのいずれかによってなされるとしている。
しかしながら、上述のような従来の技術においては、解決すべき以下の課題がある。
特許文献2の手法では、電子透かしまたはバーコードによって文書画像内にパスワード情報を埋め込むようにしている。しかし、電子透かしは、画像内容の価値を失わないよう微妙に画素値を変化させることで情報を埋め込む方式であるため、印刷やコピー、スキャン時の歪みに弱く、認証時にうまく働かない可能性が高い。また、バーコードは歪みに強い埋め込み手法ではあるが、暗号化領域以外に適当な余白領域がない場合には適用できず、暗号化したい領域が複数存在する場合には、その数だけバーコードを追加印刷する必要がある。このため、図4に示すような問題がある。
図4(A)に示すように、元画像50に3つの暗号化領域51、52、53が存在した場合、各暗号化領域51〜53には、それぞれ、個別のパスワードが割り当てられる。図4(B)に示すように、上記暗号化領域51〜53の画像は、それぞれに割り当てられたパスワードを基に画像61〜63に変換され、暗号化画像60が生成される。このとき、暗号化画像60の上部に、上記3つのパスワードに関する情報(パスワード情報)のそれぞれを示す3つのバーコード66〜68が埋め込まれる。
この特許文献2の手法の場合、暗号化領域とバーコードをリンクさせる必要があり、その工夫が必要となる。このため、バーコード追加によるトナーコスト増加、および暗号化領域とバーコードを対応付けるための処理量増加等、実用性の点で課題がある。
PCT/JP2007/000215 日本国特許庁の特開2006−332826号特許公開公報 日本国特許庁の特願2006−266015号
本発明の目的は、暗号化領域の画像を暗号化するために用いた暗号鍵に関する情報を暗号化領域内に埋め込むことが可能で、かつ、印刷やコピー、画像スキャン時の歪み耐性に強い暗号化画像を生成可能な画像暗号化技術を提供することである。また、印刷やコピー、画像スキャン等の処理を経由した該暗号化画像から認証関連情報を抽出し、その認証関連情報を基にして、正当な権利を有する者だけが元の画像を復元できる画像復号技術を提供することである。
本発明の画像暗号化装置の第1態様は、入力データを取得し、必要に応じて形式変換して入力する入力手段と、該入力手段により生成された入力画像について、画像を暗号化する領域を指定する暗号化領域指定手段と、該暗号化領域指定手段によって指定された暗号化領域の画像を暗号鍵に基づいて第1の中間画像に変換する画像変換手段と、前記暗号鍵を基に、前記暗号鍵に関連する情報である暗号鍵関連情報を生成する鍵関連情報生成手段と、該鍵関連情報生成手段によって生成された暗号鍵関連情報を前記第1の中間画像内に埋め込み、第2の中間画像を生成する情報埋め込み手段と、前記暗号化領域の位置を特定可能にするために、該情報埋め込み手段によって生成された前記第2の中間画像の画素値を変換する画素値変換手段と、前記画素値変換手段において生成された画像を必要に応じて形式変換して出力する出力手段とを備える。
本発明の画像暗号化装置の第1態様によれば、暗号化領域の画像を暗号化するために用いた暗号鍵に関する情報(暗号鍵関連情報)を暗号化領域内に埋め込むので、該暗号鍵関連情報を埋め込むための余分なスペースが不要となる。また、印刷やコピー、画像スキャン時の歪み耐性に強い暗号化画像を生成可能である。
本発明の画像暗号化装置の第2態様は、入力データを取得し、必要に応じて形式変換して入力する入力手段と、該入力手段より取得した入力画像において、画像を暗号化する領域を指定する暗号化領域指定手段と、暗号鍵を基に、該暗号鍵に関連する情報である暗号鍵関連情報を生成する鍵関連情報生成手段と、該鍵関連情報生成手段により生成された暗号鍵関連情報を、前記暗号化領域指定手段において指定された暗号化領域の画像内に埋め込んで、第1の中間画像を生成する情報埋め込み手段と、前記第1の中間画像を前記暗号鍵に基づいて変換し、第2の中間画像を生成する画像変換手段と、前記暗号化領域の位置が特定可能となるように、該画像変換手段によって生成された第2の中間画像の画素値を変換する画素値変換手段と、前記画素値変換手段において生成された画像を必要に応じて形式変換して出力する出力手段とを備える。
本発明の画像暗号化装置の第2実施形態においても、上述した本発明の画像暗号化装置の第1実施形態と同様の作用・効果が得られる。
上記本発明の画像暗号化装置の第1または第2の態様において、前記画像変換手段は、例えば、前記暗号化領域を複数の部分領域に分割し、該複数の部分領域を、前記暗号鍵に基づいて並べ替える。
上記本発明の画像暗号化装置の第1または第2の態様において、前記鍵関連情報生成手段は、例えば、前記暗号鍵をハッシュ変換することにより、前記暗号鍵関連情報を生成する。
上記本発明の画像暗号化装置の第1または第2の態様において、前記情報埋め込み手段は、例えば、前記暗号鍵関連情報に基いて前記暗号化領域内の画像の画素値を変換することによって、前記暗号化領域の画像内に前記暗号鍵関連情報を埋め込む。前記画素値の変換は、例えば、画素値の反転である。
上記本発明の画像暗号化装置の第1または第2の態様において、前記情報埋め込み手段は、例えば、前記暗号化領域の画像の画素値を、埋め込む情報に対応するパターンに対応させて変換する。
上記本発明の画像暗号化装置の第1または第2の態様において、前記情報埋め込み手段は、例えば、前記暗号鍵関連情報を電子透かしによって埋め込む。
前記暗号鍵関連情報は、例えば、バイナリデータである。
上記本発明の画像暗号化装置の第1または第2の態様において、前記画素値変換手段は、例えば、前記暗号化領域内の画像の画素値を横方向及び縦方向に一定の周期で変換する。この場合、前記画素値変換手段は、例えば、前記暗号化領域を格子状の複数の微小領域に分割し、該微小領域単位で画素値を変換する。
本発明の画像復号装置は、暗号化画像を元画像に復号する画像復号装置を前提とする。
本発明の画像復号装置の第1態様は、入力データを取得し、必要に応じて形式変換をおこない、暗号化画像として入力する入力手段と、前記暗号化画像から暗号化領域の位置を検出する暗号化位置検出手段と、該暗号化位置検出手段によって検出された前記暗号化領域内の画素値を変換し、第1の中間画像に変換する画素値変換手段と、該画素値変換手段により生成された前記第1の中間画像から、その画像に埋め込まれている、暗号鍵に関連する情報である暗号鍵関連情報を検出する埋め込み情報検出手段と、復号鍵を基に、該復号鍵に関連する情報である復号鍵関連情報を生成する鍵関連情報生成手段と、前記埋め込み情報検出手段により検出された暗号鍵関連情報と、前記鍵関連情報生成手段において生成された復号鍵関連情報とを照合して、前記復号鍵が正しいものであるか調べる認証手段と、該認証手段により前記復号鍵が正しいと認証された場合、前記第1の中間画像から前記暗号鍵関連情報除去して、前記第1の中間画像を第2の中間画像に変換する埋め込み情報除去手段と、前記復号鍵を基に、該埋め込み情報除去手段によって生成された前記第2の中間画像から復号画像を生成する画像変換手段と、前記復号画像に対して、必要に応じて形式変換をおこなって出力する出力手段と、を備える。
本発明の画像復号装置の第1実施形態によれば、暗号化画像を復元する際に、該暗号化画像からその暗号化領域内に含まれている暗号鍵関連情報を抽出し、その暗号鍵関連情報と復号鍵関連情報(暗号鍵関連情報生成と同様な手法で復号鍵から生成される情報)を照合して、復号鍵の認証、つまり、暗号化画像を復号しようとするユーザの認証を行い、該暗号化画像を復号する正当な権利を持つ利用者(正しい復号鍵の所有者)だけに、前記暗号化画像の復号を許可するので、特定の利用者のみに暗号化画像の復元を許可することができる。また、前記暗号化画像は、前記認証された復号鍵のみを用いて復元できるので、前記暗号化画像を高いセキュリティで受け渡しすることができる。
本発明の画像復号装置の第1実施形態における画像復号装置は、本発明の画像暗号化装置の第1実施形態によって生成された暗号化画像を復元することができる。
本発明の画像復号装置の第2態様は、入力データを取得し、必要に応じて形式変換をおこない、暗号化画像として入力する入力手段と、前記暗号化画像から、暗号化領域の位置を検出する暗号化位置検出手段と、該暗号化位置検出手段によって検出された前記暗号化領域内の画素値を変換し、第1の中間画像に変換する画素値変換手段と、前記第1の中間画像を暗号鍵に基づいて変換し、第2の中間画像を生成する画像変換手段と、該画像変換手段により生成された第2の中間画像から、それに埋め込まれている、暗号化時に前記暗号化領域の画像に対して埋め込まれた前記暗号鍵関連情報を検出する埋め込み情報検出手段と、復号鍵を基に、該復号鍵に関連する情報である復号鍵関連情報を生成する鍵関連情報生成手段と、前記埋め込み情報検出手段により検出された暗号鍵関連情報と、前記鍵関連情報生成手段において生成された復号鍵関連情報とを照合して、前記復号鍵の認証を行なう認証手段と、該認証手段により前記復号鍵が正しいと認証された場合、前記第2の中間画像から前記暗号鍵関連情報除去して、前記第1の中間画像から復号画像を生成する埋め込み情報除去手段と、前記復号画像に対して、必要に応じて形式変換をおこなって出力する出力手段と、を備える。
本発明の画像復号装置の第2実施形態によれば、上述した本発明の画像復号装置の第1実施形態と同様の作用・効果が得られる。
本発明の画像復号装置の第2態様において、前記暗号化画像は、例えば、前記本発明の画像暗号化装置の第2態様の画像暗号化装置によって生成されたものである。
したがって、本発明の画像復号装置の第2の実施形態により、本発明の画像暗号化装置の第2実施形態によって生成された暗号化画像を復元することができる。
本発明の画像復号装置の第1乃至第2の画像復号装置において、例えば、前記鍵関連情報生成手段は、前記暗号鍵から前記暗号鍵関連情報を生成する手法と同様な手法を用いて、前記復号鍵から前記復号鍵関連情報を生成する。前記手法は、例えば、ハッシュ変換である。
本発明の画像復号装置の第1乃至第2の画像復号装置において、前記暗号鍵関連情報は、例えば、前記暗号化領域を分割することにより得られる複数の微小領域に分散して埋め込まれている。前記暗号鍵関連情報は、例えば、前記微小領域の画像の画素値の変化の有無として埋めこまれている。前記暗号鍵関連情報は、例えば、前記微小領域の画像の画素値の反転の有無として埋めこまれていることを特徴とする。
本発明の画像復号装置の第1乃至第2の画像復号装置において、前記暗号鍵関連情報は、例えば、前記微小領域の画像の一部の画素値のパターン変化として埋め込まれている。前記微小領域の画像の一部の画素値のパターン変化は、例えば、前記暗号鍵関連情報の部分情報の各パターンに対応している。
本発明の画像復号装置の第1乃至第2の画像復号装置において、前記暗号鍵関連情報は、例えば、前記暗号化領域の画像内に電子透かしとして埋めこまれている。
(A)、(B)は、従来の画像暗号化の一例を示す図である。 上記従来の画像暗号化の復号方法を示す図である。 上記従来の画像暗号化の課題を示す図である。 別の従来の画像暗号化手法の問題点を本発明を示す図である。 本発明の画像暗号化装置の第1の態様の基本構成を示す図である。 暗号化領域指定手段による暗号化領域の指定方法を示す図である。 暗号化領域指定手段によって指定された暗号化領域画像を示す図である。 画像変換手段が暗号化領域画像から中間画像1を生成する方法を示す図である。 画像変換手段により生成された中間画像1を示す図である。 鍵関連情報生成手段が暗号鍵関連情報を生成する手法の例を示す。 暗号鍵関連情報の第1の埋め込み手法を示す図である。 暗号鍵関連情報の第2の埋め込み手法を示す図である。 埋め込み領域内の画素値を変更する部分のパターンの例を示す図である。 図13に示す4種類のパターンを、暗号鍵関連情報のビット列に対応付けて中間画像1の微小領域に埋め込む方法を示す図である。 は、中間画像1の微小領域に暗号鍵関連情報の2ビットを埋め込む具体的方法を示す図である。 中間画像1の微小領域に埋め込むその他のパターン例を示す図である。 特許文献3の埋め込み方式で使用する4種類の画像パターンを示す図である。 は、特許文献3の埋め込み方式における埋め込み領域の探索方法を示す図である。 は、図18に示す中間画像1に上記方式を適用して、図17に示す4種類の画像パターンを埋め込んだ結果を示す図である。 は、鍵関連情報生成手段が、図9に示す中間画像1に、第1の埋め込み手法(画素値反転による情報埋め込み手法)を用いて、暗号鍵関連情報を埋め込むことにより生成した中間画像2を示す図である。 画素値変換手段が、中間画像2に対して画素値変換処理を施す方法を示す図である。 本発明の画像暗号化装置の第1実施形態により生成される暗号化画像を示す図である。その他の反転パターンを、図16に示す。 本発明の画像暗号化装置の第1実施形態の全体処理を示すフローチャートである。 暗号化領域の指定方法を示す図である。 暗号鍵と、暗号鍵より生成されるバイナリデータの例を示す図である。 画像変換手段による画像変換処理を説明する図(その1)である。
該画像変換処理を、図26及び図27を参照して説明する。
画像変換手段による画像変換処理を説明する図(その2)である。 前記画像変換処理の詳細を示すフローチャートである。 暗号鍵の10進数値をハッシュ関数を用いて暗号鍵関連情報に変換する方法を示す図である。 情報埋め込み処理の詳細を示すフローチャートである。 1つの微小領域に、埋め込み情報を1ビット単位で埋め込む例を示す図である。 暗号化領域の各微小領域への暗号鍵関連情報の埋め込み方法を示す図である。 情報埋め込み手段による暗号化領域の微小領域の取得順序を示す図である。 暗号鍵関連情報を、図27の中間画像1に埋め込んだ結果得られる中間画像2を示す図である。 画素値変換処理の詳細を示すフローチャートである。 図35のフローチャートで使用する変数の定義を示す図である。 は、画素値変換手段が中間画像2の画素値を変換することにより生成した暗号化画像を示す図である。 は、カラー画像に対する反転方法の例を示す図である。 カラー画像を反転した例を示す図である。 入力画像の複数の領域を暗号化するも例を示す図である。 本発明の画像暗号化装置の第2の実施形態の構成を示す図である。 入力手段により生成された入力画像を示す図である。 暗号鍵をハッシュ変換して暗号鍵関連情報を生成する方法を示す図である。 暗号鍵関連情報を第1の埋め込み手法により暗号化領域の微小領域に埋め込む方法を示す図である。 情報埋め込み手段により生成された中間画像1を示す図である。 画像変換手段が、暗号鍵を基に中間画像2を生成する方法を示す図である。 画像変換手段により生成された中間画像2を示す図である。 画素値変換手段による、中間画像2を画素値変換画像に変換する方法を示す図である。 本発明の画像暗号化装置の第2実施形態最終的により生成される暗号化画像を示す図である。 本発明の画像暗号化装置の第2実施形態の全体処理を示すフローチャートである。 暗号化する入力画像の例を示す図である。 上記入力画像を複数の微小領域に分割した結果を示す図である。 情報埋め込み手段による暗号化領域への画像暗号鍵関連情報の埋め込み方法を示す図である。 暗号化領域の微小領域に、ハッシュ値のビットを埋め込む例を示す図である。 情報埋め込み手段が、暗号化領域の微小領域にハッシュ値を埋め込むことにより生成される中間画像1を示す図である。 本発明の画像復号装置の第1の実施形態の構成を示す図である。 図56の画像復号装置に入力する暗号化画像を示す図である。 前記画像復号装置の暗号化位置検出手段が暗号化領域の境界線を検出する方法を示す図である。 画像復号装置の画素値変換手段が、暗号化画像に施された画素値変換(市松模様化)を解除する方法を示す図である。 画像復号装置の画素値変換手段により復元された中間画像2´を示す図である。 第1の埋め込み手法で埋め込まれた暗号鍵関連情報の検出方法を示す図である。 第2の埋め込み手法で埋め込まれた暗号鍵関連情報の検出方法を示す図である。 第3の埋め込み手法で埋め込まれた暗号鍵関連情報の検出方法を示す図である。 画像復号装置の画像変換手段が中間画像1´から元画像を復元する方法を示す図である。 画像変換手段により復元された元画像(原画像)を示す図である。 本発明の画像復号装置の第1実施形態の全体処理を示すフローチャートである。 暗号化位置検出処理の概要を示す図である。 暗号化領域の大まかな位置検出の方法を示す図である。 周波数解析により得られる境界線が暗号化領域のどこに位置するかを知ることはできない理由を示す図である。 境界線の絶対的な位置を求める方法を示す図である。 図70に示す方法を用いて、画像暗号化装置においてスクランブルなどが行なわれた際の、暗号化領域の画像の境界線を求めた状態を示す図である。 画素値変換手段が行なう画素値変換処理を示す図である。 埋め込み情報検出手段が行なう鍵関連情報検出処理の詳細を示すフローチャートである。 図73のフローチャートのステップS121における、暗号化領域の画像(中間画像2´)の微小領域の取得順序を示す図である。 微小領域から埋め込み情報を検出する具体的な検出方法の例を示す図である。 埋め込み情報検出処理により、中間画像2´から暗号鍵関連情報を検出する方法を示す図である。 埋め込み情報検出処理が終了した時点での復号ユーザ認証の位置付けを示す図である。 鍵関連情報生成処理の例を示す図である。 認証手段が実行する認証処理の詳細を示すフローチャートである。 埋め込み情報除去処理の詳細を示すフローチャートである。 上記埋め込み情報除去処理を具体的に説明する図である。 埋め込み情報の除去方法を示す図である。 中間画像2´から7ビットの暗号鍵関連情報を除去した結果得られる中間画像1´の例を示す図である。 本発明の画像暗号化装置の第1実施形態による元画像を中間画像1に変換(暗号化)する画像変換の処理手順と、本発明の画像復号装置の第1実施形態による中間画像1´を元画像に復元する画像変換の処理手順を示す。 上記画像暗号化装置の画像暗号化時と上記画像復号装置の画像復元時の画像変換処理における、行及び列の各交換処理における方向を示す図である。 中間画像1´に施されたスクランブルを解除して、元画像1500を復元する方法を示す図である。 図66のフローチャートのステップS111の処理内容を示す図である。 本発明の画像復号装置の第2態様の構成を示す図である。 本発明の画像復号装置の第2実施形態によって生成された暗号化画像を示す図である。 暗号化位置検出手段による、暗号化領域内の境界線の位置の検出方法を示す図である。 画素値変換手段が暗号化画像を画素値変換画像へ変換する方法を示す図である。 画像変換手段により生成された中間画像2´を示す図である。 画像変換手段が、中間画像2´から中間画像1´を生成する方法を示す図である。 埋め込み情報検出手段による暗号鍵関連情報の検出方法のイメージ図である。 埋め込み情報除去手段が中間画像1´から暗号鍵関連情報を除去する方法を示す図である。 埋め込み情報除去手段により復元された元画像を示す図である。 本発明の画像復号装置の第2実施形態の全体処理を示すフローチャートである。 暗号化領域の境界線(列方向の境界線と横方向の境界線)を決定した状態を示す図である。 画素値変換処理の例を示す図である。 暗号化時の画像変換の手順と復号時の画像変換の手順を示す図である。 図100の画像変換における行および列の各交換の手順を示す図である。 図97のフローチャートのステップS206の画像変換処理によって、中間画像1´のスクランブルを解除して、中間画像2´を生成する方法を示す図である。 中間画像1´から暗号化時に埋め込まれた暗号鍵関連情報を検出する具体的方法(その1)を示す図である。 中間画像1´から暗号化時に埋め込まれた暗号鍵関連情報を検出する具体的方法(その2)を示す図である。 中間画像1´から暗号化時に埋め込まれた暗号鍵関連情報を検出する具体的方法(その3)を示す図である。 埋め込み情報除去処理の例を示す図である。 中間画像1´の微小領域から、そこに埋め込まれた情報を除去する方法を示す図である。 中間画像1´から暗号鍵関連情報を除去して、元画像を復元する方法を示す図である。 コンピュータを本発明の画像暗号化装置の第1または第2実施形態として機能させるプログラムの実行環境であるコンピュータのハードウェア構成を示す図である。 図109のコンピュータが本発明の画像暗号化装置の第1実施形態として機能する場合の構成を示すブロック図である。 図109のコンピュータが本発明の画像暗号化装置の第2実施形態として機能する場合の構成を示すブロック図である。 コンピュータを本発明の画像復号装置の第1または第2実施形態として機能させるプログラムの実行環境であるコンピュータのシステム構成を示す図である。 図112に示すコンピュータが本発明の画像暗号化装置の第1実施形態として機能する場合の構成を示すブロック図である。 前述した図112のコンピュータが本発明の画像復号装置の第2実施形として機能する場合の構成を示すブロック図である。 複合機に本発明の画像暗号化/復号化処理を適用したシステムの構成図である。 図105のCPUボードの構成図である。
以下、図面を参照しながら本発明の実施形態について説明する。
本発明は、画像の暗号化を行う暗号化装置と暗号化された画像を復号する復号化装置に関するものであるが、これら暗号化装置および復号化装置は、パーソナルコンピュータ以外でも、コピー機(複合機も含む)やFAX、プリンタ、スキャナ、オーバーヘッドリーダ、携帯電話、携帯端末、ディジタルカメラ、TVなどに本発明の機能が組み込まれてもよい。
[画像暗号化装置]
本発明の画像暗号化装置について説明する。
{本発明の画素暗号化装置の第1の実施形態}
[構成]
図5は、本発明の画像暗号化装置の第1の実施形態の基本を示す図である。
本発明の画像暗号化装置の第1の実施形態である画像暗号化装置100(第1の画像暗号化装置)は、入力手段101、暗号化領域指定手段102、画像変換手段103、鍵関連情報生成手段104、情報埋め込み手段105、画素値変換手段106を備える。
入力手段101は、暗号化の対象となるデータを取得し、それを暗号化処理可能な形式の画像(以下、入力画像と呼ぶ)に変換する。該画像は、例えば、ビットマップ形式の画像である。
入力手段101は、入力データを必要に応じて形式変換し、入力画像として以降の処理に渡す。入力データは、例えば画像データでもよいし、Microsoft社のOffice文書やAdobe社のPDFなどの電子文書データ、あるいはHTMLやXMLなどの非画像データでもよい。また、暗号化対象が紙などの物理媒体に印刷あるいは描画された画像などの場合でも、スキャナやデジタルカメラなどの光学機器で読み込むことで入力することができる。
つまり、視覚的に認識可能なあらゆるものを、各種装置によりデジタルデータ化することで、形式を問わず入力することが可能である。入力手段101は、これらのデータの一部または全部を、非圧縮ビットマップ形式などのような、暗号化処理に適した形式の画像(入力画像)に変換する。
暗号化領域指定手段102は、入力手段101により生成された入力画像について、暗号化したい領域を指定する。この暗号化領域の指定は、例えば、GUIを介して行なわれる。また、前記画像が固定フォーマットのデータであるならば、暗号化領域は、予め、座標情報などによって指定するようにしてもよい。指定される暗号化領域は、1つに限定されるものではなく、複数であってもよい。ここで、暗号化領域内の画像を「暗号化領域画像」と呼ぶことにする。暗号化領域指定手段102は、暗号化領域の外枠(境界線)および暗号化領域内の微小領域の境界線に関する情報(以後、境界線情報と呼ぶ)を生成する。この境界線情報は、画像変換手段103、情報埋め込み手段105及び画素値変換手段106によって参照される。
画像変換手段103は、暗号化領域指定手段102によって指定された領域の画像(暗号化領域画像)に対して暗号鍵に基づいた画像処理を施し、暗号化領域の画像を元の内容が認識できない画像(以後、中間画像1と呼ぶ)に変換する。
暗号鍵は、例えば、GUI(Graphical User Interface)を介して入力されるパスワード、IDカードに格納された鍵、または、指紋や静脈、虹彩などの生体認証装置が認証する際に使用する生体情報などである。
鍵関連情報生成手段104は、暗号鍵に対し変換処理を施し、暗号鍵関連情報を生成する。
情報埋め込み手段105は鍵関連情報生成手段104によって生成された暗号鍵関連情報を、画像変換手段103によって生成された暗号化領域画像に埋め込み、中間画像2を生成する。
画素値変換手段106は、復号時に画像中の暗号化領域の位置が特定できるように、中間画像2の画素値を変換し、暗号化画像を生成・出力する。ただし、画像復号装置に入力する暗号化画像が極めて歪みや劣化が小さい運用体系、つまり画像暗号化装置において生成された暗号化画像をデジタルのまま画像復号装置にかける場合、あるいは暗号化画像を高性能プリンタにより印刷し、高性能スキャナにより読み取る場合などは、画素値変換をおこなわずとも、復号時に暗号化領域の位置を特定できる場合がある。このような場合は、画素値変換を省略することができる。
出力手段107は、暗号化画像を必要に応じて形式変換し、出力データを出力する。
上記構成の画像暗号化装置100の動作を説明する。
入力手段101は、入力データを取得し、その入力データの形式を変換する。本画像暗号化装置100は、白黒画像、カラー画像、文書データ等、人間が視覚的に認識可能なあらゆるデータを、形式を問わず入力することが可能である。入力手段101は、これらの入力データを、例えば非圧縮ビットマップ形式のような、暗号化処理に適した形式に変換し、該変換により得られた入力画像を暗号化領域指定手段102に渡す。
暗号化領域指定手段102は、本装置100のユーザが、GUI(Graphical User Interface)等を介して指定した入力画像内の領域を、暗号化領域に指定する。暗号化領域の指定においては、入力画像の一部を指定することも可能であるし、画像全体を秘匿したい場合には全体を指定することも可能である。本装置100のユーザは、入力画像内に、限定者のみに閲覧を許可したい部分が存在する場合、その部分を、暗号化領域として指定する。
図6は、暗号化領域指定手段102による暗号化領域の指定方法を示す図である。
図6において、入力画像110内の「暗号化画像」という文字列について、「暗号」という部分を秘匿したい場合には、暗号化領域指定手段102を用いて、「暗号」という表示を囲む領域(図中の矩形枠で囲まれた領域)を暗号化領域111に指定する。これにより、入力画像110において、図7に示す暗号化領域画像120が指定される。
画像変換手段103は、暗号化領域指定手段102において指定された暗号化領域画像に対して、入力された暗号鍵に基づいた画像変換を行ない、該暗号化領域画像の内容が認識できないようにする。この画像変換は、例えば特許文献1に開示されている手法を適用する。
図8に、その手法を示す。
ここでは、図8(A)に示すように、暗号鍵130として“10011010010”のバイナリビット列を用いる。このバイナリビット列において、“1”は「隣接する列または行を交換する操作」を意味し、“0”は「何も操作しない」ことを意味する。また、暗号化領域画像の例として、図8(B)に示す暗号化領域画像120を取り上げる。
まず、図8(B)に示すように、暗号化領域画像120を縦方向に8つに等分割し、暗号化領域画像120を8列のセグメント121Cに分割する。そして、暗号鍵130の上位7ビット(“1001101”)を上記8列のセグメント121Cの境界に左から順に対応させ、それら各境界で互いに隣りあう2つのセグメント121Cに対して上記ビット値に対応した操作を、左から順に施す。この結果、暗号化領域画像120は、図8(C)に示す画像140に変換される。
続いて、上記画像140を横方向に4つに等分割し、画像140を4行のセグメント141Rに分割する。そして、暗号鍵130の上位3ビット(“100”)をこれら4行のセグメント141Rの3つの境界に上から順に対応させ、それら各境界の隣り合う2つのセグメント141Rに対して、縦分割で行なったのと同様の交換処理を行単位で上から順に行なう。この結果、図8(D)に示すように、暗号化領域画像120を縦方向と横方向に格子状に分割した領域がスクランブル処理された画像150が得られる。
この画像変換処理により、暗号化領域画像120から、図9に示す、画像の内容が認識不可能となった中間画像150(中間画像1)が生成される。
画像変換手段103が実施する画像変換の手法としては、上記スクランブルの他にも、上下左右の反転、回転など、様々な処理が適用可能であり、暗号鍵に基づいて、人間の目には元画像の内容を認識できないようにする手法であれば手段を問わない。
鍵関連情報生成手段104は、画像変換手段103が画像変換に用いた暗号鍵に対して一定の変換を施し、暗号鍵関連情報を生成する。この変換手法としては、暗号化、関数変換、ハッシュ変換等の手法が適用可能である。
図10に、鍵関連情報生成手段104が暗号鍵関連情報を生成する手法の例を示す。図10には、暗号化とハッシュ変換の例が示されている。
上記暗号鍵130(=“10011010010”のビット列)を暗号化することによって、“11001111010”のビット列からなる暗号鍵関連情報161が生成される。また、暗号鍵130をハッシュ変換することにより、“1011010”のビット列からなる暗号鍵関連情報162が生成される。
情報埋め込み手段105は、画像変換手段103により生成された中間画像1に、鍵関連情報生成手段104により生成された暗号鍵関連情報を埋め込む。この暗号鍵関連情報は、本画像暗号化装置100により生成される暗号化画像の復号時に、認証のために使用される。情報埋め込み手段105は、中間画像1を複数の微小領域に等分割し、それらの各微小領域に、ビット列の各ビットを埋め込む。
以下、情報埋め込み手段105による暗号鍵関連情報の具体的な埋め込み手法を4つ取り上げ、それぞれの手法について説明する。
<暗号鍵関連情報の第1の埋め込み手法>
暗号鍵関連情報の第1の埋め込み手法は、中間画像1の微小領域(埋め込み領域とも呼ぶ)内の画素値を変換することによって、暗号化領域内に情報を埋め込む。例えば、埋め込み領域の内側の矩形領域の画素値が10%減算されている場合は「1」のビット情報を、減算されていない場合は「0」のビット情報を表現するという手法で情報を埋め込む。
図11に、この手法を具体的に示す。尚、図11では、黒の画素値は“0”、白の画素値は“255”に設定している。
図11(A)に示す埋め込み領域170に「1」を埋め込む場合は、図11(B)に示すように、埋め込み領域170の内側の矩形領域171(破線の矩形枠で囲まれた領域)の画素値を一律に10%減算する。一方、前記埋め込み領域170に「0」を埋め込む場合は、図11(C)に示すように、矩形領域171の画素値は変更しない。したがって、埋め込み領域170の画像は元のままである。
この例では、画素値に対して10%を減算することで「1」の情報を埋め込んでいるが、加減乗除、非線形変換など、画素値に変換をかける他の方法を採用してもかまわない。また、埋め込み領域において画素値を変換する部分は、一部に限定されるものではなく、領域全体であっても構わない。
<暗号鍵関連情報の第2の埋め込み手法>
暗号鍵関連情報の第2の埋め込み手法は、埋め込み領域内の画素値を反転することによって、暗号化領域内に情報を埋め込む。
図12は、埋め込み領域が白黒画像である場合に本手法を適用した例を示す図である。この場合、図12(A)に示す埋め込み領域170に「1」を埋め込む場合には、図12(B)に示すようにその領域内の画素値を反転させ、「0」を埋め込む場合には、図12(C)に示すようにその領域内の画素値は変更しないようにする処理を行なう。
ところで、反転処理は、白黒画像のみならず、カラー画像においても適用可能である。対象画像がRGB形式の画像である場合、例えばR、G、Bの3色の各画素値をそれぞれを個別に反転することで可能となる。なお、画素値の反転部分は埋め込み領域全体に限定されるものではなく、一部を反転させて埋め込むようにしてもよい。
<暗号鍵関連情報の第3の埋め込み手法>
第3の暗号鍵関連情報の埋め込み手法は、埋め込み領域内の画素値を変更する部分を定義する反転パターンに応じて、暗号化領域内に暗号鍵関連情報を埋め込む。
図13に上記反転パターンの例を示す。図13(A)に示す黒色領域が右上に存在する反転パターン191は、“00”のビット列(2ビットの情報)に対応する反転パターン(パターン00)である。図13(B)に示す黒色領域が右下に存在する反転パターン192は“01”のビット列(2ビットの情報)に対応するパターン(パターン01)である。図13(C)に示す黒色領域が左下に存在する反転パターン193は、“10”のビット列(2ビットの情報)に対応するパターン(パターン10)である。また、図13(D)に示す黒色領域が左上に存在する反転パターン194は、“11”のビット列(2ビットの情報)に対応する反転パターン(パターン11)である。このように、4種類の反転パターンが定義されているため、これらの反転パターン191〜194を使用した場合、1つの微小領域に対して2ビットの情報を埋め込むことが可能である。
図14は、図13に示す4種類の反転パターンを、暗号鍵関連情報のビット列に対応付けて中間画像1の埋め込み領域に埋め込む方法を示す図である。
図14(A)に示すように、暗号鍵関連情報200が“1011010”の7ビットのビット列であるものと仮定する。また、図14(B)に示すように、中間画像150(中間画像1)を8(横方向)×4(縦方向)の計32個の微小領域(埋め込み領域)151に分割する。
この場合、暗号鍵関連情報200を、先頭から2ビットずつ順に、各埋め込み領域151に埋め込む。最初に埋め込む情報は、暗号鍵関連情報の最初の2ビットである“10”であり、その埋め込み対象となる埋め込み領域151は最上段の左端の領域である。以後、最初の2ビットに続くビット列から2ビットを順次取り出し、それらのビットパターンに対応するパターンを、図14(B)に示すように、最上段の左から2番目の埋め込み領域151以降の埋め込み領域151に左から右へと順に割り当てていく。
図15に、埋め込み領域に暗号鍵関連情報の2ビットを埋め込む具体的方法を示す。
図15(A)に示す埋め込み領域151に、「10」のビット列を埋め込む場合、図15(B)に示すパターン193(パターン10)を選択する。そして、埋め込み領域151の反転パターン193で定義された領域(図中の黒部分)に対応する領域を反転させる。この結果、図15(A)に示す埋め込み領域151の画像が、図15(C)に示す画像210に変換される。
このようにして、暗号鍵関連情報200の最初の2ビット(「10」)の埋め込みが終了したら、次の2ビットである「11」を、先ほど埋め込んだ埋め込み領域151の右隣の埋め込み領域151に対して同様の方法で埋め込む。
このように、第3の埋め込み手法では、暗号鍵関連情報の部分ビット列の各パターンに対応付けて複数の反転パターンを用意しておき、埋め込み領域内の埋め込む情報(部分ビット列)に対応する反転パターンで定義されている領域の画素値を反転させることで、中間画像1に暗号鍵関連情報を埋め込んでいく。この結果、最終的に、暗号鍵関連情報が埋め込まれた中間画像2が生成される。
その他の反転パターンを、図16に示す。
図16(A)に示す4種類の反転パターン211〜214は、埋め込み領域を縦と横の2方向に2分割して、4通りの2ビットの情報(「00」、「01」、「10」、「11」)を表現するパターンである。図16(B)に示す4種類の反転パターン221〜224は、埋め込み領域のエッジ部分の画素値を変換することで4通りの2ビット列情報を表現するパターンである。上記反転パターンはいずれも4種類が一組になっているが、反転パターンの種類数は、埋め込み領域に埋め込む情報のビット数に応じて自由に作成することが可能である。
<暗号鍵関連情報の第4の埋め込み手法>
第4の暗号鍵関連情報の埋め込み手法は、中間画像1内に透かしを使用して情報を埋め込むことにより、暗号化領域に情報を埋め込む。
ここでの暗号鍵関連情報の埋め込み対象となる画像は、図9に示す中間画像150(中間画像1)であるが、このような画像に対して情報を埋め込むのに適した透かし方式の例として、日本国特許庁の特願2006−266015号(以下、特許文献3)に開示されている方法がある。この特許文献3の埋め込み方式は、図17(A)〜(D)に示す4種類の画像パターン231〜234を、文書画像中に目立たないように埋め込むことを特徴としている。この方式では、図18に示すように、中間画像150内の黒画像から平坦な領域を探索し、その平坦な領域に、図17(A)〜(D)に示す画像パターン231〜234の中のいずれかを埋め込む。尚、図18の右側に示す丸240で囲まれた画像は、左側に示す丸で囲まれた領域を拡大したものであり、矢印で示した部分は、画像パターン231〜234が埋め込み可能な平坦領域である。
図19は、図18に示す中間画像150に上記方式を適用して、前記画像パターン231〜234を埋め込んだ結果を示す図である。図19に示す画像250において、突起部分251が暗号鍵関連情報が埋め込まれた部分を示している。
情報埋め込み手段105は、以上述べた4種類の暗号鍵関連情報の埋め込み手法の中のいずれかを用いて、暗号化領域(中間画像1)に対して暗号鍵関連情報を埋め込み、中間画像2を生成する。
図20は、情報埋め込み手段105が、図9に示す中間画像150に、第1の暗号鍵関連情報の埋め込み手法(画素値反転による情報埋め込み手法)を用いて、暗号鍵関連情報を埋め込むことにより生成した中間画像300(中間画像2)を示す図である。
画素値変換手段106は、情報埋め込み手段105によって暗号鍵関連情報が埋め込まれた画像(中間画像2)に対し、横方向に関して一定の周期で前記中間画像2の画素値を変換すると共に、縦方向に関して一定の周期で前記中間画像2の画素値を変換することにより、概ね縞状の模様を成す画像を生成する。この生成には、例えば、特許文献1に開示されている画素値変換手法が用いられる。
図21は、画素値変換手段106が、中間画像2に対して画素値変換処理を施す方法を示す図である。
図21(A)に示す中間画像300(中間画像2)に対して、図21(B)に示す市松模様画像310を用意する。市松模様画像(チェッカー模様画像)310は、マトリックス状に交互に配置された白領域311Wと黒領域311Bから構成されており、そのサイズは中間画像300と同じである。白領域(無色部分)311Wと黒領域(有色部分)311Bの大きさは前記埋め込み領域と同じであり、それらの位置も埋め込み領域の配列位置と同じである。
画素値変換手段106は、中間画像300内の画素のうち、市松模様画像310の有色部分に対応する領域を反転処理する変換を実行する。この結果、図21(C)に示すように、全体として概ね格子状の縞模様を成す画素値変換画像320が得られる。
出力手段107は、画素値変換画像320(暗号化画像320)を、必要に応じて形式変換をおこなって出力する。他の画像形式に変換して出力してもよいし、特に変換の必要がなければ、暗号化画像320をそのままの形式で出力してもよいし、Microsoft社のOffice文書やAdobe社のPDFなどの電子文書データ、あるいはHTMLやXMLなどの非画像データに変換して出力してもよい。また、ディスプレイへの表示、紙などの物理媒体への印刷という形で出力してもよい。
暗号鍵関連情報の埋め込み領域の配置パターンと同じ配置パターンの白領域311Wと黒領域311Bから構成される市松模様画像310を用いて、画素値変換処理が施されている。したがって、前記暗号化画像を復号する側は、暗号化画像(画素値変換画像320)の縞状の模様を基に、暗号鍵関連情報が埋め込まれている各埋め込み領域の境界線の詳細な位置を検出することが可能となる。
以上のようにして、画像暗号化装置100に入力されたデータは、画像暗号化装置100内部において、入力手段101、暗号化領域指定手段102、画像変換手段103、鍵関連情報生成手段104、情報埋め込み手段105及び画素値変換手段106処理により、図22に示す暗号化画像320(画素値変換画像320)に変換される。
すなわち、画像暗号化装置100は、入力データを、入力手段101により図6に示す入力画像110に変換する。そして、この入力画像110に画像処理を施して、それを中間画像1、中間画像2、暗号化画像へと順次変換する。そして、最終的に、入力画像110の暗号化画像320を生成する。
[動作]
次に、上記構成の本発明の画像暗号化装置の第1の実施形態の動作を説明する。
図23は、前記画像暗号化装置100の全体処理を示すフローチャートである。
まず、入力手段101により、入力データを取得し、必要に応じて形式変換をおこなう入力処理を実行する(S1)
本装置100への入力データは、画像データでもよいし、Microsoft社のOffice文書やAdobe PDFのような電子文書データ、あるいはHTMLやXMLのような非画像データでもよい。また、紙などの物理媒体に印刷あるいは描画された画像の場合でも、スキャナやデジタルカメラなどの光学機器で読み込むことにより、入力することが可能となる。
入力手段101は、これらの入力データの一部または全部を、非圧縮ビットマップ形式などのような、暗号化処理に適した形式の画像(入力画像)に変換し、暗号化領域指定手段102に出力する。図24に、入力画像110の一例を示す。
次に、暗号化ユーザは、入力画像内の暗号化する領域を指定する暗号化領域指定処理を行なう(S2)。
暗号化画像を作成するユーザ(以下、暗号化ユーザと呼ぶ)は、上記入力画像内に暗号化する領域が存在する場合は、その暗号化領域を指定する。
続いて、暗号化ユーザは暗号鍵を入力する(S3)。
この入力により、画像暗号化装置100は暗号化処理を開始する。
図24に暗号化領域の指定方法を示す。この例では、暗号化領域111を矩形形状で指定している。暗号化領域の指定形状は矩形に限定されるものではなく、各種の形状を指定可能である。
尚、暗号化ユーザは、上記入力画像内に前記暗号化対象領域が存在しない場合は、暗号化領域を指定しない、この場合には、上記入力画像をそのまま出力して処理を終了する。
前記暗号鍵は、例えば、パスワードである。このパスワードには、数字や文字列などを使用できる。暗号化ユーザにより入力された暗号鍵はバイナリデータに変換され、入力画像の暗号化処理に使用される。
図25に、暗号鍵と、暗号鍵より生成されるバイナリデータの例を示す。
図25(A)に示すように、暗号鍵は、例えば、数値や文字列である。暗号鍵が数値「1234」である場合、これを符号無し2進数へ変換すると、図25(B)に示すバイナリデータ“10011010010”が得られる。また、暗号鍵が文字列「ango」である場合、これを、例えばアスキーコード(ASCIIコード)に変換することで、図25(B)に示す32ビットのバイナリデータ“01100001011011100110011101101111”が得られる。以後の説明では、暗号鍵として数値「1234」が入力された場合について説明する。すなわち、暗号鍵は“10011010010”のバイナリデータとして処理されるものとする。
次に、画像変換手段により、前記暗号化対象領域の画像を、元の内容が識別できないように変換する画像変換処理が行なわれる(S4)。
該画像変換処理を、図26及び図27を参照して説明する。
まず、図26に示すように、図24の暗号化領域111の画像120(以下、暗号化領域画像120と呼ぶ)を格子状に分割する。これにより、暗号化領域画像120は、複数の微小領域121に分割される。さらに、図27(A)に示すように、暗号化領域画像120を列方向の微小領域121の集合体である8個の列方向のセグメント121Cに分割する。そして、これらの各セグメント121Cを、隣接するセグメント同士単位で、図27(B)に示す暗号鍵130(“10011010010”の上位7ビット(“1001101”)に基づいて、左から右へと順次スライドしながら交換し、図27(C)に示す画像140を生成する。続いて、図27(C)に示すように、この画像140を行方向の微小領域121の集合体である3個のセグメント141Rに分割する。そして、これらの各セグメント141Rを、隣接するセグメント同士単位で、暗号鍵130の上位3ビット(“100”)に基づいて上から下へと順次スライドしながら交換し、図27(D)に示す中間画像150(中間画像1)を生成する。このようにして、暗号化領域画像120を暗号鍵130に基いて列及び行単位で交換することにより、暗号化領域画像120を元の内容が認識できない中間画像150(中間画像1)に変換する。
図28は、画像変換手段103が行なう前記画像変換処理(図23のステップS4の処理)の詳細を示すフローチャートである。
始めに、列単位での画像変換を行なう。
まず、暗号化領域画像の左端の列(前記列方向のセグメント)を最初の対象列とし、暗号鍵の最初の1ビットを取得する(S41)。その1ビットが“0”または“1”のいずれであるかを判別する(S42)。そして、該1ビットが“0”である場合は何も行なわず、処理をステップS44に移す。一方、“1”である場合は、前記最初の対象列を右隣の列と列単位で交換し(S43)、処理をステップS44に移す。
ステップS44においては、対象列が右端列の1つ手前の列に移動したか判別し、まだその列に達していなければ、次に、対象列を左端から2番目の列に移して(S45)、ステップS41に戻る。
ステップS41において、暗号鍵の2ビット目を取得する。そして、2ビット目が“0”である場合は何も行なわず、“1”である場合は、2番目の列とその右隣の列とを列単位で交換する(S42〜S43)。
上記ステップS41〜S45の処理を、ステップS44において、対象列が右端列の1つ手前にあると判断するまで繰り返す。
以上の処理により、図27(A)に示す暗号化領域画像120が、暗号鍵130に基いて、図27(C)に示す画像像140に変換される。
以上のようにして、暗号鍵に基く列の交換が終了したら、ステップS46〜S50の処理を、上記列交換処理により生成された画像に対して行う。
ステップS46〜S50の処理は、処理対象が「列」(列方向のセグメント)から「行」(行方向のセグメント)に変わるだけであり、対象行が、画像の最上位の行から1行単位で下方向に移動するだけである。ステップS46〜S50の処理は、ステップS49において、対象行が画像の最終行の1行前に達したと判断されるまで繰り返される。
以上のようにして、暗号化領域画像の列と行が暗号鍵に基いて交換され、元の内容が識別不可能な中間画像1へと変換される。画像変換手段103による暗号化領域画像の画像変換処理は、暗号鍵に基づいて処理を行ない、元の画像内容が認識できないようにする手法であれば、どのような処理手法でも構わない。例えば、微小領域単位での交換、上下左右の反転、回転等の処理も適用可能である。
図23のフローチャートの説明に戻る。
ステップS4に続いて、鍵関連情報生成手段104により、暗号化ユーザが入力した暗号鍵を暗号鍵関連情報に変換する(S5)。暗号鍵から暗号鍵関連情報を生成するのは、以下に述べるセキュリティ上の理由からである。
暗号化ユーザが入力した暗号鍵の情報は、中間画像1の暗号化領域に埋め込まれるが、暗号鍵をビット列で表現したものをそのまま埋め込むと、暗号鍵を解読される危険性が極めて高くなる。このため、本装置100では、例えば、暗号鍵をハッシュ変換し、該変換により得られるハッシュ値を前記暗号化領域に埋め込むなどの対策を施す。
例えば、図29に示すように、暗号鍵の10進数値xを「143」(10進数)で除算した剰余をハッシュ値とするハッシュ関数330を用いて、暗号鍵をハッシュ変換し、その変換値を暗号鍵関連情報として中間画像1の暗号化領域に埋め込む。図29に示す例の場合、暗号鍵は「1234」(10進数表現)であるため、それに上記ハッシュ変換を施すと、ハッシュ値として「90」(10進数)が得られる。鍵関連情報生成手段1004は、このようなハッシュ変換などを用いて、「暗号鍵」から「暗号鍵関連情報」を生成する。
ステップS5に続いて、情報埋め込み手段105により、鍵関連情報生成手段104により生成された暗号鍵関連情報を、画像変換手段103により分割された暗号化対象領域の微小領域(埋め込み領域)に所定単位で埋め込む「情報埋め込み処理」を行う(S6)
図30は、この情報埋め込み処理の詳細を示すフローチャートである。
まず、最初に、暗号化領域(暗号化領域画像)から暗号鍵関連情報の埋め込み対象とする微小領域を取得する(S61)。次に、該微小領域に埋め込む「埋め込み情報」を暗号鍵関連情報から取得し、それを前記微小領域に埋め込む「情報埋め込み」処理を行なう(S62)。
図31〜図33に、前記埋め込み情報を暗号化領域の微小領域へ埋め込む方法を示す。
埋め込み情報は、1つの微小領域に対して埋め込み可能なビット数だけ、暗号鍵関連情報の先頭ビットから順に取得する。図31は、1つの微小領域に、埋め込み情報を1ビット単位で埋め込む例である。図31(A)に示すように、ハッシュ値203を「90」(10進数)からバイナリデータ“1011010”に変換する。そして、図31(B)に示すように、このバイナリデータのビットを、先頭のビットから順に1ビット単位で、暗号化領域(暗号化領域画像120)の微小領域121に埋め込んでいく。このとき、暗号化領域の左上の微小領域121から順に1ビット単位で埋め込んでいく。
図32は、暗号化領域の各微小領域121への暗号鍵関連情報の埋め込み方法を示す図である。
図32(A)に示す微小領域121に「1」の情報(1ビット情報)を埋め込む場合には、図32(B)に示すように、微小領域121の画像の画素値を全て反転させる。「0」の情報(1ビット情報)を埋め込む場合には、図32(C)に示すように、微小領域121の画像の画素値は変化させない。
図33は、情報埋め込み手段105による暗号化領域の微小領域の取得順序を示す図である。
図33に示すように、情報埋め込み手段105は、暗号化領域(暗号化領域画像120)の最上段(最上位行)の左端の微小領域121から左から右へ移動し、右端に達したら1つ下の段(行)の左端へ移動するというジグザグ走査により、微小領域121を1つづつ順に取得していく。
図30のフローチャートの説明に戻る。
ステップS62の処理が終了すると、暗号鍵関連情報の全ての情報が暗号化領域に埋め込まれたか判別し(S63)、暗号鍵関連情報のバイナリデータがまだすべては埋め込まれていない場合は、ステップS61に戻る。
このようにして、暗号鍵関連情報の全情報が暗号化領域に埋め込まれるまで、ステップS61〜S63の処理を繰り返し、ステップS63で、暗号鍵関連情報の全ての情報が暗号化領域に埋め込まれたと判断すると、本フローチャートの処理を終了する。
図34に、暗号鍵関連情報(この例では、ハッシュ値203)を、図27の中間画像150(中間画像1)に埋め込んだ結果得られる中間画像300(中間画像2)を示す。
なお、本実施例においては、暗号化領域に対して埋め込む情報は、暗号鍵関連情報であるとしているが、暗号鍵関連情報に加えてその他の情報(ユーザID等)を埋め込んでもよいし、その他の情報のみを埋め込んでもよい。
図23のフローチャートの説明に戻る。
ステップS6に続いて、画素値変換手段106により、暗号化領域の画像(中間画像2)の画素値を変換する「画素値変換処理」を行なう(S7)。
画素値変換手段106は、暗号化領域内の画像の画素値に対して変換を行ない、例えば、その変換後の暗号化領域内の画像が概ね周期的な模様を成すようにする。
図35は、前記画素値変換処理の詳細を示すフローチャートである。
本フローチャートで使用する変数の定義を図36に示す。
本フローチャートにおいては、微小領域121の横サイズをm、縦サイズをnとする。また、図36に示すように、暗号化領域の画像(中間画像2)の横サイズをw、縦サイズをhとする。さらに、図36に示すように、暗号化領域の画像(中間画像300)に対し、その最上段の左端を原点(0,0)とするXY−直交座標系を設定し、x軸の正の方向を右方向に、y軸の正方向を下方向にとる。このような直交座標系が設定された暗号化領域画像の座標(i,j)の位置の画素の値(画素値)を、P(i,j)で表すものとする。
図35のフローチャートの説明を始める。
まず、i、jに0を設定し、座標(x,y)が(0,0)の画素から処理を開始する(S71)。次に、(i/m + j/n)mod 2 を計算し、その計算式の剰余が「0」であるか否かを判別する(S72)。判別の結果、剰余が0である場合は何も行なわずに処理をステップS74に移し、「1」である場合は、画素値P(0,0)を反転する(S73)。ステップS73の処理が終了すると、処理をステップS74に移す。
ところで、ステップS72で実行する計算式において、「i/m」はiをmで除算した商(整数)を表し、「x mod 2」は、xを2で除算した場合の余りを表す。したがって、x mod 2は、xが偶数のとき余りが0となり、xが奇数のとき余りが0となる。よって、ステップS73の処理が実行されるのは行番号または列番号のいずれ一方のみが奇数である微小領域121である。つまり、暗号化領域の偶数行にあっては奇数列の微小領域121の画素値が反転され、奇数行にあっては偶数列の微小領域121の画素値が反転されることになる。これによって、暗号化領域の画像(中間画像2)は概ね周期的な模様に変換される。
ステップS74においては、座標(i,j)が暗号化領域の右端の画素の位置に達したか(i=w−1であるか)否かを判断する。そして、座標(i,j)が、まだ右端の画素に達していないと判断すると、iの値を1つ増加し(S75)、ステップS72に戻る。
このようにして、iの値を0,1,2,・・・と増加させながら、ステップS74で対象画素が右端画素に達したと判断するまで、ステップS72〜S74の処理を繰り返す。そして、ステップS74で右端画素に達したと判断すると、処理をステップS76に移す。
以上のようにして、対象段の全ての画素について画素値の変換処理が終了する。
ステップS76においては、対象画素が最下段に達したか(j=h−1であるか)判断する。そして、最下段に達していなければ、jの値を1増加して(S77)し、ステップS72に戻る。これにより、対象段が1段下の左端に移り、その段の全画素について同様の処理が行なわれる。
以上のようにして、暗号化領域の全画素について、最上段の左端の画素から、左から右、上から下へと、段単位でシーケンシャルにジグザグ走査して画素値の変換を行なう。そして、ステップS76において、対象画素が最下段の最右端の画素に達したと判断すると処理を終了する。
図37に、画素値変換手段106が中間画像300の画素値を変換することにより生成した暗号化画像320を示す。
ところで、画素値変換手段106による画素値の反転処理は、白黒画像のみでなく、カラー画像である場合も実施可能である。
図38にカラー画像に対する反転方法の例を示す。
白黒画像に関しては、図38(A)に示すように、黒画素の場合は白画素に変換し(画素値を“0”から“255”に変換し)、白画素の場合は黒画素に変換する(画素値を“255”から“0”に変換する)ことで反転処理を行なう。
カラー画像の反転は、その画素値を構成する各色の画素値をそれぞれ個別に反転することにより可能である。例えば24ビットのRGB形式の画像の場合、図38(B)に示すように、1つの画素はR(赤)、G(緑)、B(青)の3つの画素値により構成される。24ビットのカラー画像の場合は、RGBの各色に8ビット(256諧調)が割り当てられる。この場合、例えば、図38(B)に示すように、反転前の画素値(R値,G値,B値)がP(50,170,10)であったとすると、それら各色の画素値を、256諧調の中間値(座標軸上では127.5)を基準とする鏡面対称の位置に移動させて、反転後の画素値としてP´(205,85,245)を得る。
図39にカラー画像を反転した例を示す。図39(B)のカラー画像710は、図39(A)のカラー画像700の一部の矩形領域を反転させたものである。カラー画像710において図中の太い矢印が示す2つの矩形領域が反転部分である。このような反転方法を用いることにより、白黒画像の場合と同様に、カラー画像においても画素値変換を行なうことが可能である。
図23のフローチャートの説明に戻る。
ステップS7の処理が終了すると、入力画像を暗号化画像に差し替える(S8)。続いて、暗号化処理を終了する否かを判断する(S9)。この判断において、入力画像中に他にも暗号化する領域が存在する場合は、ステップS2に戻り、暗号化処理を続行する。
一方、入力画像中に他に暗号化対象領域が存在しなければ暗号化処理の終了と判断し、その時点での暗号化画像を、必要に応じて形式変換をおこない、出力データとして出力して(S10)、本フローチャートの処理を終了する。
本発明の画像暗号化装置においては、入力画像の複数の領域の暗号化も可能である。図40にこのような例を示す。図40に示す暗号化画像800においては、2つの領域801、802の画像が暗号化されている。
{本発明の画素暗号化装置の第2の実施形態}
次に、本発明の画像暗号化装置の第2の実施形態について説明する。
[構成]
図41は、本発明の画像暗号化装置の第2の実施形態の構成を示す図である。図41において、図5に示す画像暗号化装置100が備える構成要素と同じ構成要素には同じ符号を付与している。
図41に示す本発明の画像暗号化装置の第2の実施形態である画像暗号化装置400(第2の画像暗号化装置)は、入力手段101、暗号化領域指定手段102、情報埋め込み手段403、鍵関連情報生成手段104、画像変換手段405、画素値変換手段106及び出力手段107を備える。
画像暗号化装置400は、画像変換手段と情報埋め込み手段の処理順序が、前記画像暗号化装置100と逆になっている。したがって、画像暗号化装置400は、入力画像の暗号化領域に対して暗号鍵関連情報を埋め込んだ後、画像変換(スクランブル)を行なうように構成されている。
上記構成の画像暗号化装置400の処理を説明する。尚、上述した画像暗号化装置100と同じ処理については簡略に説明する。
入力手段101は、画像暗号化装置100と同様にして、入力データを、図42に示す入力画像110に変換する。暗号化領域指定手段102は、図42に示すように、入力画像110に対して暗号化領域111を指定する。
鍵関連情報生成手段104は、暗号鍵130(“10011010010”)を変換して暗号鍵関連情報を生成する。この生成は、図43に示すように、暗号化やハッシュ変換により行なわれる。図43の例では、暗号鍵関連情報161は暗号化により、暗号鍵関連情報162はハッシュ変換により生成されている。
情報埋め込み手段403は、例えば、前述した暗号鍵関連情報の第1の埋め込み手法により、図44(A)に示す暗号鍵関連情報200(この例では、“1011010”)を、暗号化領域500の微小領域(埋め込み領域)501に埋め込む。暗号化領域500は、前記暗号化領域120と同様にして微小領域501に分割される。
情報埋め込み手段403は、暗号化領域500の画像の最上段の微小領域501を暗号鍵関連情報200(ビット列)に応じて、“1”のビットに対応する微小領域501は反転し、“0”のビットに対応する微小領域501はそのままとする。以上の処理により、情報埋め込み手段403は、図45に示す中間画像600(中間画像1)を生成する。
画像変換手段405は、図46(A)に示す暗号鍵130(“10011010010”)のビット列の上位7ビット(“1001101”)に応じて、図46(B)に示す中間画像600の8列のセグメント601Cの交換処理を行い、図46(C)に示す画像610を生成する。続いて、暗号鍵130の上位3ビット(“100”)に応じて、該画像610の4行のセグメント611Rの交換処理を行い、図46(D)に示す中間画像620(中間画像2)を生成する。このようにして、画像変換手段405は、最終的に、図47に示す中間画像620(中間画像2)を生成する。
画素値変換手段106は、図48(A)に示す中間画像620(中間画像2)を、図48(B)に示す市松模様画像310を参照して、図48(C)に示す画素値変換画像630に変換する。ただし、画像復号装置に入力する暗号化画像が極めて歪みや劣化が小さい運用体系、つまり画像暗号化装置において生成された暗号化画像をデジタルのまま画像復号装置にかける場合、あるいは暗号化画像を高性能プリンタにより印刷し、高性能スキャナにより読み取る場合などは、画素値変換をおこなわずとも、復号時に暗号化領域の位置を特定できる場合がある。このような場合は、画素値変換を省略することができる。
出力手段107は、画素値変換画像630(暗号化画像630)を、必要に応じて形式変換をおこなって出力する。画素値変換画像630と同じ形式で出力したい場合はそのまま出力してもよいし、他の画像形式に変換して出力してもよいし、特に変換の必要がなければ、暗号化画像630をそのままの形式で出力してもよい。また、Microsoft社のOffice文書やAdobe社のPDFのような電子文書データ、あるいはHTMLやXMLのような非画像データに変換して出力してもよい。ここで出力されたデータは、画像暗号化装置400から出力データとして出力される。
以上のようにして、画像暗号化装置400に入力されたデータは、画像暗号化装置400内部に設けられた、入力手段101、暗号化領域指定手段102、情報埋め込み手段403、鍵関連情報生成手段104、画像変換手段405、画素値変換手段106及び出力手段107の処理により、最終的に、図49に示す暗号化画像630(図48(C)の画素値変換画像630)に変換される。
すなわち、画像暗号化装置400は、入力データを、入力手段101により図42に示す入力画像110に変換する。そして、この入力画像110に画像処理を施して、それを中間画像1、中間画像2、暗号化画像へと順次変換する。そして、最終的に、入力データの暗号化画像630を生成する。
[動作]
上記構成の画像暗号化装置400の動作を説明する。
図50は、画像暗号化装置400の全体処理を示すフローチャートである。図50において、前述した図23のフローチャートと同じ処理内容のステップには同じステップ番号を付与している。以後の説明では、図23のフローチャートと異なる処理を重点的に説明し、図23のフローチャートと同じ処理については簡略して説明するか、または省略する。
図50と図23のフローチャートを比較すれば分かるように、画像暗号化装置400の前半の処理手順(ステップS1〜S3)は画像暗号化装置100と同様である。また、後半の処理手順(ステップS7〜S10)も画像暗号化装置100と同様である。
画像暗号化装置400は、ステップS3で暗号鍵を入力すると、次に、暗号鍵関連情報を生成する「鍵関連情報生成処理」を行なう(S5)。この鍵関連情報生成処理は、画像暗号化装置100の鍵関連情報生成処理と同様の処理であり、上記入力された暗号鍵から暗号鍵関連情報を生成する処理である。
続いて、情報埋め込み手段403により、ステップS1で入力した入力画像に上記暗号鍵関連情報を埋め込む「情報埋め込処理」を行なう(S106)。
この情報埋め込み処理について説明する。ここでは、図51に示す入力画像110が入力され、ステップS2において、その入力画像110に対して暗号化領域111が指定されたとする。情報埋め込み手段403は、図52に示すように暗号化領域111を列方向に8分割すると共に、行方向に4分割し、暗号化領域111を32個の矩形の微小領域111aに分割する。そして、これらの微小領域111aに前記暗号鍵関連情報を埋め込む。
この暗号鍵関連情報の埋め込み処理のアルゴリズムは、画像暗号化装置100の情報埋め込み手段105が行なう前記図30のフローチャートに示すアルゴリズムと同様である。
画像暗号化装置400と画像暗号化装置100で異なるのは、暗号鍵関連情報を埋め込む対象となる画像である。画像暗号化装置100の情報埋め込み手段105は中間画像1に暗号鍵関連情報を埋め込むが、画像暗号化装置400の情報埋め込み手段403は入力画像110の暗号化領域111の画像に埋め込む。
図53に、情報埋め込み手段403による暗号化領域111への画像暗号鍵関連情報の埋め込み方法を示す。
図53に示す例では、図53(A)に示すように暗号鍵関連情報として前記ハッシュ値162(“1011010”)を用いる。そして、このハッシュ値162のビット列を先頭ビットから順に1ビットずつ、暗号化領域111の微小領域111aに順に埋め込んでいく。この場合の微小領域111aの選択順序は、画像暗号化装置100の情報埋め込み手段105の場合と同様である。
図54に、暗号化領域111の微小領域111aに、ハッシュ値162のビットを埋め込む例を示す。図54は、暗号化領域111の最上段(最上位行)の左端の微小領域111aに、ハッシュ値162の先頭ビットを埋め込む例を示している。
図54(A)に示す上記微小領域111aに、「1」の先頭ビットを埋め込む場合は、図54(B)に示すように、該微小領域111aの画像の画素値を反転させる。「0」の先頭ビットを埋め込む場合は、該微小領域111aの画像は変化させずそのままとする。
本例のハッシュ値162の先頭ビットは「1」なので、暗号化領域111の最上位行の左端の微小領域111aの画像は、図54(B)に示すように変換される。暗号化領域111の他の微小領域111aの画像についても、同様にして、埋め込むビットの値に応じて、その画素値を処理する。
図55に、情報埋め込み手段403が、暗号化領域111の微小領域111aにハッシュ値162(“1011010”)を埋め込むことにより生成される中間画像600(中間画像1)を示す。
なお、本実施例においては、暗号化領域に対して埋め込む情報は、暗号鍵関連情報であるとしているが、暗号鍵関連情報に加えてその他の情報(ユーザID等)を埋め込んでもよいし、その他の情報のみを埋め込んでもよい。
図50のフローチャートの説明に戻る。
ステップS106の処理が終了すると、画像変換手段405により、前記中間画像1に対する「画像変換処理」を行なう(S107)。
この画像変換処理のアルゴリズムは、前述した図28のフローチャートに示すアルゴリズムと同様である。画像暗号化装置400の場合は、画像暗号化装置100とは異なり、「入力画像」ではなく「中間画像1」に対して画像変換処理を行なう。この画像変換処理は、前述した図46に示す方法により行なわれ、この処理により、前述した図47に示す中間画像620(中間画像2)が生成される。
続いて、画像変換手段106により、上記中間画像2に対して「画素値変換処理」が行なわれる(S7)。この画素値変換処理のアルゴリズムは、前述した図35のフローチャートに示すアルゴリズムと同様である。この画素値変換処理により、前述した図49に示す暗号化領域画像620が得られる。
出力手段107は、画素値変換画像620(暗号化画像620)を、必要に応じて形式変換をおこなって出力する。他の画像形式に変換して出力してもよいし、特に変換の必要がなければ、暗号化画像620をそのままの形式で出力してもよい。また、Microsoft社のOffice文書やAdobe社のPDFのような電子文書データ、あるいはHTMLやXMLのような非画像データに変換して出力してもよい。ここで出力されたデータは、画像暗号化装置400から出力データとして出力される。
以後、前述した図23のフローチャートに示すステップS8〜S10の処理が行なわれ、入力画像中の暗号化ユーザが指定した暗号化領域の画像の暗号化が行なわれ、暗号化領域の指定がなくなった時点で処理を終了する。以上のようにして、入力画像中の暗号化ユーザにより指定された暗号化領域の画像が暗号化される。このようにして、画像暗号化装置400により、前述した図39(B)に示すようなカラー暗号化画像710や、前述した図40に示すような複数の暗号化領域801、802の画像が暗号化された暗号化画像800が生成される。
以上述べたように、本実施形態の画像暗号化装置によれば、暗号化領域内に暗号鍵関連情報を埋め込むため、暗号化領域以外に余白が存在しない場合でも画像(印刷物とデジタル画像の両方を指す)内に暗号鍵関連情報を埋め込むことが可能である。また、歪み耐性の高い埋め込み方法で暗号鍵関連情報を埋め込むため、復号時には印刷やコピー、スキャン等の処理を経由した画像からでも正確に暗号鍵関連情報を検出することが可能である。したがって、復号側では、その検出した暗号鍵関連情報を基にユーザ認証を行ない、正当な権利を有するユーザだけが元の画像を復元して閲覧できるような機能を提供することが可能となる。
[画像復号装置]
本発明の画像復号装置について説明する。
{本発明の画像復号装置の第1の実施形態}
本発明の画像復号装置の第1の実施形態について説明する。この画像復号装置は、前述した本発明の画像復号装置の第1の実施形態(画像暗号化装置100)によって生成された暗号化画像を復号する装置である。
[構成]
図56は、本発明の画像復号装置の第1の実施形態の構成を示す図である。
本発明の画像復号装置の第1の実施形態である画像復号装置1000(第1の画像復号装置)は、入力手段100X、暗号化位置検出手段1001、画素値変換手段1002、埋め込み情報検出手段1003、鍵関連情報生成手段1004、認証手段1005、埋め込み情報除去手段1006、画像変換手段1007及び出力手段1008を備える。
入力手段100Xは、入力データを取得し、必要に応じて形式変換をおこない、入力画像として次の処理に渡す。
暗号化位置検出手段1001は、入力画像内の暗号化領域を検出し、さらに暗号化領域内の境界線の位置を検出する。
例えば、図57に示すような暗号化画像1100が入力された場合、暗号化部分を復号するには、まず暗号化領域1110(本例では、図22の暗号化画像320に等しい)の位置を知る必要がある。しかし、その位置を知っただけでは不十分であり、暗号化時にスクランブル等の処理を行なった際の列方向及び行方向の境界線1111C、1111Rの位置を知らなければ、復号することは不可能である。ここで、列方向の境界線1111Cは上記スクランブルの対象となる列方向のセグメントの境界線であり、行方向の境界線1111Rは上記スクランブルの対象となる行方向のセグメントの境界線である(図8参照)。
画像暗号化装置100の画素値変換手段106は、周期的に画素値を変換する処理を行なっているため、図58に示すように、縦および横方向の断面における画素値を周波数解析することで暗号化領域の位置および境界線の位置を特定することが可能である。また、暗号化画像中に暗号化領域が複数存在する場合には、複数検出することも可能である。
図58は、暗号化位置検出手段1001が暗号化画像1100を周波数解析して、暗号化領域1110の境界線1111C、1111Rを検出する方法を示す図である。
図58に示すように、暗号化領域1110の画像について、横方向の切断線1113Rと縦方向の切断線1113Cを引き、暗号化領域1110の画像のそれらの切断線上にある画素の値を求める。画素値は、白が最大(例えば、“255”)、黒が最小(例えば、“0”)である。この結果、図58に示すように、横方向については波形1115Cが、縦方向については波形1115Rが得られる。境界線1111Cと境界線1111Rは、例えば、波形1115Cと波形1115Rを周波数解析する公知技術を利用して検出する。尚、暗号化画像1100内に複数の暗号化領域が存在する場合には、それら全ての暗号化領域について、暗号化領域の位置と境界線の位置を検出する。
尚、暗号化画像1100を周波数解析して、暗号化画像1100から暗号化領域1110を検出する方法については、特許文献1の図23に示されている。暗号化領域1110は、暗号化画像1100の他の領域よりも周期性が強いので、暗号化画像1100の全域の周期性を調べることで暗号化領域1110を検出できる。
画素値変換手段1002は、画像暗号化装置100の画素値変換手段106が中間画像2から暗号化画像を生成するために行なった画素値変換の解除を行なう。例えば、暗号化画像の生成時に、図21に示すような市松模様化が行なわれた場合、図59に示す方法で、暗号化画像に施された画素値変換(市松模様化)を元に戻すことで、画素値変換の解除が可能である。
図59は、画素値変換手段1002が暗号化画像に施された画素値変換(市松模様化)を解除する方法を示す図である。
図59(A)に示す暗号化画像1100を、図59(B)に示す市松模様画像1310(画像暗号化装置100の画素値変換手段106が参照した市松模様画像310と同じ)を参照して、暗号化画像1100の該市松模様画像1310の黒色で定義された領域に対応する部分の画素値を全て反転する。この結果、図59(C)に示す中間画像1200(中間画像2´)が生成される。
ただし、画像暗号化装置100において、画素値変換手段を実施しなかった場合は、画像復号装置1000における画素値変換手段1002は省略することができる。
この中間画像1200(中間画像2´)を図60に示す。この中間画像1200は、画像暗号化装置100が生成した中間画像620(中間画像2)と同じ画像であるが、暗号化画像1100が本装置1000に入力されるまでに、前記中間画像620(中間画像2)に何らかの画像処理が施されたり、印刷やコピー、あるいはスキャナを経由することなどで、ノイズや歪みが入る可能性がある。
埋め込み情報検出手段1003は、画素値変換手段1002により復元された中間画像1200(中間画像2´)から暗号化時に埋め込まれた暗号鍵関連情報を検出する。
画像暗号化装置100の情報埋め込み手段105が前記暗号鍵関連情報を埋め込む手法として第1〜第4の4つの埋め込み手法を説明したが、以下では、それら各埋め込み手法が用いられた場合の暗号鍵関連情報の検出方法を説明する。
<第1の埋め込み手法に応じた暗号鍵関連情報の検出方法>
前記第1の埋め込み手法は、埋め込み領域内のある決められた領域(特定領域)の画素値を変更することで暗号鍵関連情報を埋め込む方法である。この方法の場合、もし、特定領域の画素値が変更されている場合、その領域の境界線付近において、内側と外側とで画素値の差(エッジ)が必ず発生しているはずである。
図61に、第1の埋め込み手法で埋め込まれた暗号鍵関連情報の検出方法を示す。
埋め込み領域(微小領域)の特定領域の境界線付近のエッジの有無を検出し、図61(A)に示す特定領域1201のようにエッジが存在する特定領域については「1」のビット情報が、図61(B)の特定領域1202のようにエッジが存在しない特定領域について「0」のビット情報が埋め込まれている判断する。このことにより、前記埋め込み領域に埋め込まれた暗号鍵関連情報のビット列の各ビット値を検出することが可能である。
<第2の埋め込み手法に応じた暗号鍵関連情報の検出>
前記第2の埋め込み手法は、埋め込み領域内の画素値を反転させることで、暗号鍵関連情報を埋め込み方法である。この方法の場合、埋め込み領域内の黒画素率を算出することで、埋め込み領域に埋め込まれた暗号鍵関連情報のビット列の各ビット値を検出できる。
図62に、第2の埋め込み手法で埋め込まれた暗号鍵関連情報の検出方法を示す。
図62(A)に示す埋め込み領域1211のように該黒画素率が閾値を超えている埋め込み領域については、埋め込み時に画素値が反転された判断し、その埋め込み領域に「1」が埋め込まれていると判断する。また、図62(B)に示すように、前記黒画素率が前記閾値未満である埋め込み領域については、画素値が反転されていないと判断し、その埋め込み領域に「0」が埋め込まれていると判断する。このようにして、埋め込み領域に埋め込まれた暗号鍵関連情報のビット列の値を検出することが可能である。
<第3の埋め込み手法に応じた暗号鍵関連情報の検出方法>
前記第3の埋め込み手法は、埋め込み領域内の画素値を、暗号鍵関連情報の部分ビット列に対応付けられたパターンで定義された領域を反転することによって暗号鍵関連情報を埋め込む方法である。この場合、検出対象の埋め込み領域のエッジ部分を検出し、そのエッジ部分に対応する反転パターンを調べることで、埋め込み領域に埋め込まれた部分ビット列を検出することができる。
図63は、第3の埋め込み手法で埋め込まれた暗号鍵関連情報の検出方法を示す図である。
図63(A)に示す埋め込み領域1221から暗号鍵関連情報の部分ビット列を検出する場合を考える。この場合。この領域1221には、図63(B)に示す4種類の反転パターン191〜194の各パターンのいずれかが埋め込まれているはずである。したがって、図63(C)に示すように、上記各反転パターン191〜194で定義された各有色部分191b〜194bのエッジと同じ位置にエッジが存在するかを、埋め込み領域1221の前記有色部分191b〜194bの対応する部分1221a〜1221d(図中の矩形の破線枠で囲まれた領域)について検査する。この例の場合、図63(D)に示すように左下にエッジが検出されるため、そのエッジに対応する反転パターン193を基に、埋め込み領域1221dに「10」のビット列が埋め込まれていることが分かる。このような処理を、全ての埋め込み領域について行なうことにより、暗号鍵関連情報を検出することができる。
<第4の埋め込み手法に応じた暗号鍵関連情報の検出方法>
前記第4の埋め込み手法は、電子透かしにより暗号鍵関連情報を埋め込む方法である。この場合は、当該電子透かし技術における所定の検出方法を使用して、中間画像2´に埋め込まれた暗号鍵関連情報を検出することができる。この暗号鍵関連情報の検出方法の詳細については、前記特許文献3に開示されている透かし埋め込み手法に対する検出手法を参照されたい。
埋め込み情報検出手段1003は、画像暗号化装置100の情報埋め込み手段105が用いた暗号鍵関連情報の埋め込み手法に応じた抽出方法により、中間画像2´から暗号鍵関連情報を検出する。
鍵関連情報生成手段1004は、暗号化画像の復号ユーザにより入力された復号鍵を、一定の規則に従って、復号鍵関連情報に変換する。該復号鍵は、暗号化画像の生成に用いられた暗号鍵と同じものである。鍵関連情報生成手段1004は、画像暗号化装置100の鍵関連情報生成手段104と同一の処理を復号鍵に対して行い、復号鍵関連情報を生成する。
認証手段1005は、埋め込み情報検出手段1003により検出された暗号鍵関連情報と鍵関連情報生成手段1004により生成された復号鍵関連情報とを照合することで、現在、暗号化画像の復号を試みているユーザ(以後、復号ユーザと呼ぶ)が、原画像を閲覧する正当な権利を持っているかチェックする。認証手段1005は、両者が一致している場合には、復号ユーザを認証する。両者が一致しない場合には、復号ユーザを認証しない。この認証は、以下に述べる(1)の論理を根拠としている。
(1)画像暗号化装置100の鍵関連情報生成手段104と画像復号装置1000の鍵関連情報生成手段1004は、それぞれ、暗号鍵と復号鍵に対して、同じアルゴリズムの処理を施して暗号鍵関連情報と復号鍵関連情報を生成する。このため、復号鍵が暗号鍵と同じであれば、該暗号鍵関連情報と該復号鍵関連情報は当然一致するはずである。
暗号鍵関連情報と復号鍵関連情報が一致した場合は認証され、以後の処理を続行する。これに対し、一致しない場合は認証せず、元画像の復元を中止する。
埋め込み情報除去手段1006は、認証手段1005において認証された場合に、画像暗号化装置100の情報埋め込み手段105が、中間画像1に暗号鍵関連情報を埋め込む際に変更した暗号化領域の画素値を元に戻す処理を行ない、中間画像1´を生成する。また、画像暗号化装置100において電子透かしによって情報が埋め込まれた場合は、見た目に影響を与えないよう埋め込まれているため、必ずしも埋め込み情報を除去する必要はない。中間画像1´は、画像暗号化装置100が生成した中間画像1(図27参照)に対応するものである。中間画像1´は、前記中間画像2´と同様に、暗号化画像が印刷、コピー、スキャン等の処理を経由して画像復号装置1000に入力することで、それにノイズや歪みが入る可能性がある。
画像変換手段1007は、画像暗号化装置100の画像変換手段103が中間画像1に対して用いた変換手法に対応する逆変換手法を用いて、中間画像1´から元画像(原画像)を復元する。
図64は、画像変換手段1007が中間画像1´から元画像を復元する方法を示す図である。
埋め込み情報除去手段1006により、図64(A)に示す中間画像1400(中間画像1´)が生成されたとする。また、復号鍵が“10011010010”であったとする。これは、画像暗号化装置100で用いられた暗号鍵に等しい。
画像変換手段1007は、まず、図64(A)に示すように、復号鍵の上位3ビット(“100”)を用いて中間画像1400の行方向の4個のセグメント1401Rについて行の交換処理を行い、図64(C)に示す画像1410を生成する。続いて、図64(C)に示すように、復号鍵の上位7ビット(“1001101”)を用いて該画像1410の列方向のセグメント1411Cの列の交換処理を行い、図64(D)に示す画像1500を生成する。
この結果、画像変換手段1007により、図65に示す元画像(原画像)1500が復元される。
出力手段1008は、以上のようにして復号された画像を、必要に応じて形式変換をおこない、出力データとして出力する。
[動作]
上記構成の画像復号装置1000の動作を説明する。
図66は、画像復号装置1000の全体処理を示すフローチャートである。
画像暗号化装置100によって生成された暗号化画像の暗号化領域の画像を復号して、該暗号化画像の元画像(原画像)の内容を閲覧しようとするユーザ(以下、復号ユーザと呼ぶ)により、本装置1000に入力データが入力される。
入力手段100Xは、入力データを必要に応じて形式変換し、入力画像として以降の処理に渡す(S101)。入力データは、例えば画像データでもよいし、Microsoft社のOffice文書やAdobe PDFのような電子文書データ、あるいはHTMLやXMLのような非画像データでもよい。また、暗号化対象が紙などの物理媒体に印刷あるいは描画された画像などの場合でも、スキャナやデジタルカメラなどの光学機器で読み込むことにより、入力データとすることが可能となる。
暗号化位置検出手段1001は、入力画像中に含まれる暗号化領域の位置およびその暗号化領域内の各微小領域の境界線情報を検出する「暗号化位置検出処理」を行なう(S102)。
図67〜図71を参照しながら、該暗号化位置検出処理の詳細を説明する。
図67は暗号化位置検出処理の概要を示す図である。
暗号化位置検出処理は、大きく2つの段階に分かれており、まず、図67(A)に示すように暗号化領域1110の大まかな位置1113を特定する。続いて、その大まかな位置1113を基に、図67(B)に示すように、暗号化領域1110の縦方向の境界線1111Cと横方向の境界線1111Rを検出する。
図68は、上記暗号化領域1110の大まかな位置検出の方法を示す図である。
画像暗号化装置100の画素値変換手段106の処理により、暗号化領域1110内の画素値は周期的に変化しているため、暗号化画像1100全体を周波数解析することによって、暗号化領域1110の大まかな位置を特定することができる。図68(A)に示す暗号化画像1100について、その縦方向と横方向について、それぞれ、FFT(Fast Fourie Transformation)などにより周波数解析を行なう。
これにより、図68(B)に示すように、暗号化画像1100について、周期性の強い領域1120と周期性の弱い領域1130を検出できる。周波数解析を行なうと、暗号化領域1110は、暗号化時に画素値変換を行なった際の周期に対応する周波数のパワーが際立って強くなる傾向がある。このため、暗号化画像1100に対して周波数解析を行なうことにより、暗号化領域1110の大まかな位置および境界線の周期を検出することができる。したがって、この周波数解析により、図69(A)に示すように、暗号化領域1110の境界線1115の周期も検出できる。
しかし、これらの周波数解析により得られる情報だけでは、図69(A)に示すように、境界線1115の周期は特定できても、図69(B)に示すように、それらの境界線1115が暗号化領域1110内のどこに位置するのかを知ることはできない。
このため、図70に示す方法により、境界線1115の絶対的な位置を求める。
この方法においては、まず、上記周波数解析により得られた境界線1115の位置情報を基に、図70(A)に示す周期を持つ模様1140(以下、周期性模様1140と呼ぶ)を求める。
次に、この周期性模様1140を暗号化領域1110に重ねた状態で、その位置をずらしながら、周期性模様1140の画像と暗号化領域1110の画像の、各画素の絶対値差分の和を調べ、境界線1115の絶対的な位置を求める。このパターンマッチングの手法の詳細は、前記特許文献3に開示されている。
以上のようにして、最終的に、図71に示すように、画像暗号化装置100においてスクランブルなどが行なわれた際の境界線1111C、1111Rを求めることができる。
図66のフローチャートの説明に戻る。
ステップS102の暗号化位置検出処理の結果、暗号化領域が検出されたか否かにより、処理が分岐する。(S103)。
ステップS102において暗号化領域が存在すると判断した場合には、この暗号化領域を復号するための鍵(復号鍵)を復号ユーザに入力させ(S104)、以降の復号処理へ進む。後述するように、暗号鍵と同一の復号鍵が入力された場合は、正規の復号ユーザであると認証され、元画像を閲覧できる。一方、ステップS103において、暗号化領域が存在しない、つまり、ステップS102の処理において暗号化領域が検出されなかったと判断された場合には、その旨を復号ユーザに提示して、本フローチャートの処理を終了する(S114)。
ステップS104で復号ユーザにより復号鍵が入力されると、続いて、暗号化領域の画像に対して画像暗号化装置100の画素値変換手段106が施した画素値変換を解除する「画素値変換処理」を行なう(S105)。
図72は、画素値変換手段1002が行なう上記画素値変換処理を示す図である。
図72(A)に示す暗号化位置検出手段1001により検出された領域(暗号化領域)の画像1110は、暗号化時に画素値を周期的に変換したものであるため、復号するためには、この変換を元に戻す必要がある。このため、図72(B)に示す画像暗号化装置100の画素値変換手段106が画素値変換で使用した市松模様画像1310を用いて、変換された画素値を元に戻す処理を行なう。つまり、該市松模様画像1310の有色部分の領域(図中の黒色で定義された領域)に従って、暗号化領域1110の画像の画素値を元に戻す。例えば、暗号化領域1110の画像が白黒画像であって、暗号化時に画素値が反転されている場合には、暗号化領域1110の画像の画素値を反転することによって、画素値変換前の画像を復元することができる。また、暗号化領域1110の画像がカラー画像の場合は、例えば、前述した図38に示す画素値反転方法を利用して、暗号化領域1110の画像の画素値を反転することで、元の画像を復元することが可能である。以上のような処理により、図72(A)に示す暗号化領域1110の画像から、それに施されている画素値変換を解除して、図72(C)に示す画素値変換画像1200(中間画像2´)を生成する。
図66のフローチャートの説明に戻る。
ステップS105の画素値変換処理で生成された中間画像2´は、画像暗号化時に埋め込まれた暗号鍵関連情報が検出可能な画像である。復号ユーザによって入力された復号鍵が正しいものであるかどうかを確認するためには、復号鍵と照合するための暗号鍵に関する情報である暗号鍵関連情報を暗号化領域の中間画像2´から抽出する必要がある。
このため、ステップS105に続いて、中間画像2´から暗号鍵関連情報を検出する「鍵関連情報検出処理」を、埋め込み情報検出手段1003により行なう(S106)。
図73は、埋め込み情報検出手段1003が行なう上記鍵関連情報検出処理の詳細を示すフローチャートである。
図73のフローチャートの処理手順を説明する。
まず、中間画像2´から最初の検出対象となる微小領域を取得する(S121)。前述したように、ステップS102の暗号化位置検出処理により、図71に示すように、暗号化領域111の微小領域の境界線(境界線1111C、1111R)は既に求められているため、それらの境界線によって分割された微小領域のうち、最も左上の領域から検出を開始する。
図74に、ステップS121における、暗号化領域の画像(中間画像2´)の微小領域の取得順序を示す。図74に示す中間画像1200(中間画像2´)において微小領域1201が、ステップS121において最初に取得する微小領域である。以後は、図74の右側に示すように、左から右、上段から下段という順序でジグザグ走査を行い、微小領域を1個ずつ順に取得していく。
ステップS121に続いて、取得した微小領域から暗号鍵関連情報の埋め込み情報(以下、便宜上、「埋め込み情報」と簡略記載する)を検出する「埋め込み情報検出処理」を行なう(S122)。
各微小領域からの埋め込み情報の検出は、領域内の全画素数に占める黒画素数の割合が閾値を超えているか、あるいは閾値未満かを判断することにより行なう。
図75に、微小領域から埋め込み情報を検出する具体的な検出方法の例を示す。
図75に示す例では、埋め込み情報の検出指標として「黒画素率」を採用し、“1”のビット情報を検出するための閾値を50%に設定している。図75(A)に示すように、微小領域1211a内の黒画素率が上記閾値未満である場合には、その微小領域1212wには“0”が埋め込まれていると判断する。一方、図75(B)に示すように、微小領域1211b内の黒画素率が上記閾値を超えている場合には、埋め込み情報の埋め込み時にその微小領域1211b内の全ての画素値が反転されたとみなし、“1”が埋め込まれていると判断する。
このような検出を、図74の右側に示すような前記ジグザグ走査により、中間画像1200(中間画像2´)の全ての微小領域1201について順次行ない、暗号鍵関連情報のサイズ(ビット数)に等しい埋め込み情報を検出し終えた時点で、埋め込み情報検出処理を終了する。本実施形態の場合には、“1011010”という7ビットのビット列の暗号鍵関連情報を検出した時点で、埋め込み情報検出処理を終了する。このようにして、図76に示すように、図76(A)に示す中間画像1200(中間画像2´)から、図76(B)に示す暗号鍵関連情報(“1011010”)を検出することができる。
なお、暗号化時に、暗号鍵関連情報に加えてその他の情報(ユーザID等)が埋め込まれている場合、あるいはその他の情報のみで埋め込まれている場合は、それらの情報量の分だけ検出をおこなう。
図66のフローチャートの説明に戻る。
図77は、ステップS106の処理が終了した時点での復号ユーザ認証の位置付けを示す図である。
図77に示すように、ステップS106の処理が終了した時点で、復号ユーザの認証に必要な情報として、復号ユーザから入力された復号鍵1231(=1234(“10011010010”))と暗号化領域の画像(中間画像2´)から検出された暗号鍵関連情報1233(=90(“1011010”)が揃っている。しかし、これらを直接比較することはできないため、復号ユーザの本人認証を行なうためには、復号鍵も鍵関連情報検生成処理1240により復号鍵関連情報1235に変換し、暗号鍵関連情報と復号鍵関連情報を照合する認証処理1250を行なう必要がある。
このため、ステップS106に続いて、ステップS104で入力された復号鍵から復号鍵関連情報を生成する「鍵関連情報生成処理」を行なう(S107)。
図78に、上記鍵関連情報生成処理の例を示す。
図78に示す例は、画像暗号化装置100が暗号鍵関連情報の生成にハッシュ変換を用いた場合に対応したものである。この場合、復号鍵関連情報の生成は、暗号鍵関連情報の生成の場合と同様に、復号鍵をハッシュ関数1260を用いてハッシュ値へ変換する。
このハッシュ関数1260は、画像暗号化装置100の鍵関連情報生成手段104が暗号鍵関連情報の生成に用いたハッシュ関数と同じものである。
図78に示すハッシュ関数1260は、
hash=x mod 143
という式で表現される。
ここで、xは復号鍵の10進数表現である。
図78に示すように、復号ユーザが入力した復号鍵xが「1234」(10進数)である場合、これをハッシュ関数1260でハッシュ変換することにより、ハッシュ値として「90」(10進数)が得られる。「90」を2進数に変換することにより、復号鍵関連情報として2進数のビット列である“1011010”が生成される。
ステップS107の処理が終了すると、ステップS107で得られた復号鍵関連情報を、ステップS106で検出した暗号鍵関連情報とを照合し、復号ユーザを認証する「認証処理」を行なう(S108)。
図79は、認証手段1005が実行する認証処理の詳細を示すフローチャートである。
認証手段1005は、埋め込み情報検出手段1003から「暗号鍵関連情報」を、鍵関連情報生成手段104から「復号鍵関連情報」を、それぞれ入力してから、図79のフローチャートに示す処理を開始する。
上記暗号鍵関連情報と上記複合鍵関連情報を照合し(S131)。それらが一致するか、つまりユーザ認証に成功したか否か判別する(S132)。ステップS132において、ユーザ認証に成功したと判別すれば、「認証成功」という情報を記憶手段(不図示)に保持し処理を終了する(S133)。一方、ステップS132において、ユーザ認証に失敗したと判別すれば、「認証失敗」という情報を上記記憶手段に保持し処理を終了する(S134)。
図66のフローチャートの説明に戻る。
ステップS108のユーザ認証処理が終了すると、上記記憶手段に保持されている情報を基に、復号ユーザが認証されたか否かを判別し(S109)、認証されていれば、復号ユーザは暗号化された部分の閲覧権を持つユーザであると判断し、ステップS110の処理に進む。一方、認証されていなければ、復号ユーザは閲覧権を持たないユーザと判断し、その旨をユーザに対して通知するか、あるいはダミー画像、広告、リンク等、元画像とは異なるものを提示する処理を行い(S114)、処理を終了する。
尚、ステップS108のユーザ認証処理において、任意の回数、例えば3回まで復号鍵の入力を許可し、それでも認証されなかった場合に認証失敗とするような構成にするようにしてもよい。
ステップ109において、ユーザ認証が成功した、つまり、復号ユーザが暗号化画像を復号する権利を持つユーザであると確認された場合、元画像の復元処理を行う。
まず、埋め込み情報除去手段2006により、中間画像2´から暗号鍵関連情報を除去する「埋め込み情報除去処理」を行なう(S110)。
図80は、上記埋め込み情報除去処理の詳細を示すフローチャートである。
まず、暗号鍵関連情報であるビット列の先頭から1ビットを取得し(S141)、続いて、その取得した1ビットの情報が埋め込まれている中間画像2´の左上端の微小領域を取得する(ステップS142)。
図81を参照して、この処理を具体的に説明する。
図81(A)に示すように暗号鍵関連情報1231(=“1011010”)の先頭の1ビットを取得し(S141)、図81(B)に示すように、中間画像1200(中間画像2´)から、その最上段の左端の微小領域1201を取得する(S142)。
次に、上記取得した微小領域から、埋め込み情報(本例では“1”)が埋め込まれた状態を解除する「埋め込み情報除去」を行なう(S143)。
図82に、上記埋め込み情報の除去方法を示す。図82(A)は「1」の埋め込み情報を除去する方法を示し、図82(B)は「0」の埋め込み情報を除去する方法を示す。
図82(A)に示すように「0」の情報が埋め込まれている微小領域1211aの場合には、その情報を埋め込む際に画素値を変更していないため、解除時にも微小領域1211aの画素値を変更しない。一方、図82(B)に示すように「1」の情報が埋め込まれている微小領域1211bの場合には、その情報を埋め込む際に微小領域内の画素値を反転しているため、微小領域1211b内の画素値を反転して、微小領域1211bに埋め込まれた情報を解除(除去)する。
このようにして、図82(A)、(B)に示すように、埋め込み領域に「0」または「1」のいずれの情報が埋め込まれた場合でも、その埋め込み領域の画像を元に戻すことができる(埋め込み情報を解除できる)。
ステップS142の処理が終了すると、中間画像2´から暗号鍵関連情報の全情報を除去する処理が完了したか否かを判断し、完了していないと判断すると、ステップS141に戻る。そして、ステップS141において暗号鍵関連情報の次の情報を取得し、続いて、ステップS142において中間画像2´から次の微小領域を取得する。そして、ステップS143において上述した埋め込み情報除去の処理を行なう。
このようにして、ステップS141〜S143の処理を、ステップS144において中間画像2´から暗号鍵関連情報の全てを除去したと判断するまで繰り返す。そして、ステップS144において、上記暗号鍵関連情報の全ての除去が完了したと判断すると、本フローチャートの処理を終了する。
このような処理を、暗号鍵関連情報の情報量に等しいビット数に等しい回数行なうことで、中間画像1´に埋め込まれた暗号鍵関連情報を全て除去(解除)することができる。
図83は、中間画像2´から7ビットの暗号鍵関連情報を除去した結果得られる中間画像1´の例を示す図である。
図83(A)に示す中間画像1200(中間画像2´)から7ビットの暗号鍵関連情報(“1011010”)を除去する、つまり、中間画像1200から、その最上段の左端から連続する7個の微小領域(埋め込み情報)1201に埋め込まれている情報の除去を行なうことで、図83(B)に示す中間画像1400(中間画像1´)が復元される。尚、図83(A)において、下向きの矢印が指す領域が微小領域1201である。
ステップS110で生成された中間画像1´は、前述したように、元画像(原画像)に対して暗号鍵に基づいた画像変換(スクランブル処理)を施し、画像内容が認識できないようにしたものである。従って、中間画像1´に施された画像変換を解除することで、元画像を復元することができる。つまり、この画像変換の解除は、暗号化時に元画像を画像変換するとき行なった手順と逆手順の処理を中間画像1´に対して行なえばよい。
図84に、画像暗号化装置100による元画像を中間画像1に変換(暗号化)する画像変換の処理手順と、画像復号装置1000による中間画像1´を元画像に復元する画像変換の処理手順を示す。
図84(A)は、画像暗号化装置100が元画像を中間画像1に暗号化する画像変換処理の手順を示す。この暗号化時の画像変換では、まず、暗号鍵を基に、元画像120の列121Cを交換する。次に、暗号鍵を基に、該列交換によって得られた画像140の行141Rを交換する。この結果、中間画像150(中間画像1)が得られる。
図84(B)は、画像復号装置1000が中間画像1´から元画像を復元する画像変換処理の手順を示す。この画像復元では、先に、復号鍵を基に、中間画像1400(中間画像1´)の行1401Rの交換を行う。次に、復号鍵を基に、該交換によって得られた画像1410の列1411Cを交換する。この結果、元画像1500が復元される。
また、画像暗号化装置100の画像暗号化時と画像復号装置1000の画像復元時の画像変換処理では、行及び列の各交換処理における方向も逆となる。例えば、図85(A)に示すように、画像暗号化装置100の暗号化時において、暗号鍵のビット配列順序にしたがって、元画像120の列121Cを左から右へと交換したとする。この場合、画像復号装置1000は、中間画像1´の復号時において、図85(B)に示すように、復号鍵のビット配列の順序とは逆の順序で(ビット配列の最後から先頭へ向かう順序で)、中間画像1410(中間画像1´)の列1411Cを、右から左へと交換すればよい。
このような処理により、図86に示すように、図86(A)に示す中間画像1410(中間画像1´)に施されたスクランブルを解除して、図86(B)に示す元画像1500を復元することができる。
図66のフローチャートの説明に戻る。
上記のようにしてステップS111の画像変換処理が終了すると、暗号化領域の画像を、ステップS111で復元された元画像に差し替える(S112)。
図87に、ステップS111の処理内容を示す。
図87(A)に示す暗号化画像1100の暗号化領域1110の画像を、図87(B)に示す復元画像1500に差し替える。この結果、図87(C)に示すように、暗号化画像1100の元画像1600が復元される。
以上のようにして、暗号化画像の1つの暗号化領域の画像の復元が完了する。
ステップS111の処理が終了すると、ステップS102に戻る。そして、ステップS102において、暗号化画像から画像復元がまだ行なわれていない暗号化領域を検出する。
このようにして、暗号化されている領域が複数存在する場合には、ステップS102〜S112の処理を繰り返す。そして、ステップS103において、暗号化領域内に暗号化領域が存在しない、つまり、暗号化画像内の全ての暗号化領域の画像の復元が終了したと判断すると、ステップS113に進む。
ステップS113においては、出力手段1008により、復号画像1600(出力画像)を必要に応じて形式変換をおこなって出力する。復号画像1600をそのままの形式で出力してもよいし、他の画像形式に変換して出力してもよい。また、Microsoft社のOffice文書、Adobe社のPDFのような電子文書データ、あるいはHTMLやXMLのような非画像データに変換して出力することも可能である。出力手段1008により、復号画像1600(出力画像)は出力データとして出力される。
画像暗号化装置100によって生成された最終的暗号化画像から、入力画像の暗号化領域の画像を復元することは、該最終的暗号化画像に埋め込まれた暗号鍵情報の生成に用いられた公開鍵と対になる秘密鍵を保有しているユーザだけが可能である。
このため、その暗号鍵情報が埋め込まれた入力画像の印刷物や電子データのみを送付先に送るだけで、送付先は、その公開鍵と対になる秘密鍵を用いて、その入力画像の暗号化領域の画像を復元し、その暗号化領域の画像である重要情報を知ることができる。
以上のようにして、本発明の画像暗号化装置100と画像復号装置1000を利用することで、入力画像内の第三者には秘匿にしておきたい重要情報の暗号化に用いる暗号鍵(共通鍵)を公開鍵暗号方式の枠組みで安全に暗号化し、該暗号鍵を入力画像以外の手段でやりとりすることなく、入力画像内の重要情報を、正当な送信者と受信者との間で、安全にやりとりすることが可能となる。
{本発明の画像復号装置の第2の実施形態}
次に、本発明の画像復号装置の第2の実施形態の基本構成について説明する。この画像復号装置は、前述した本発明の画像暗号化装置の第1態様で生成された暗号化画像を原画像に復号する装置である。
[構成]
図88は、本発明の画像復号装置の第2態様の構成を示す図である。図88において、図55の画像復号装置1000が備える構成要素と同じ構成要素については同じ符号を付与している。
図88に示す画像復号装置2000(第2の画像復号装置)は、入力手段100X、暗号化位置検出手段1001、画素値変換手段1002、画像変換手段2003、鍵関連情報生成手段1004、埋め込み情報検出手段2005、認証手段1005、埋め込み情報除去手段1006及び出力手段1008を備えている。
画像復号装置2000と画像復号装置1000との構成上の差異は、画素値変換手段1002以降の構成である。画像復号装置2000においては、画素値変換手段1002によって生成された中間画像2´は、画像変換手段2003によって中間画像1´に変換される。そして、復号画像(原画像)の生成は、埋め込み情報除去手段1006によって行なわれる。
画像復号装置2000は、入力データ内の暗号化部分を復号し、その結果を出力データとして出力する機能を持つ。ここで、入力データは、画像暗号化装置400における出力データそのものか、あるいはデータ形式の変換、印刷、コピー、スキャン等を経由して生成されたデータである。
入力手段100Xは、入力データを必要に応じて形式変換し、入力画像として以降の処理に渡す。入力データは、例えば画像データでもよいし、Microsoft社のOffice文書やAdobe PDFのような電子文書データ、あるいはHTMLやXMLのような非画像データでもよい。また、暗号化対象が紙などの物理媒体に印刷あるいは描画された画像である場合でも、スキャナやデジタルカメラなどの光学機器で読み込むことで、入力データとすることが可能となる。
図89に、入力画像2100を示す。この入力画像2100は暗号化領域2110を含んでいる。この暗号化領域2110の画像は、複数の行方向の境界線2111Rと複数の列方向の境界線2111Cによって区切られる格子状の微小領域(埋め込み領域)から構成されている。
暗号化位置検出手段1001は、上記入力画像の暗号化領域の位置を検出し、さらに、その暗号化領域内の境界線の位置を検出する。暗号化位置検出手段1001は、画像復号装置1000の暗号化位置検出手段1001と同様な方法により、暗号化領域2110の位置を検出する。また、画像復号装置1000の暗号化位置検出手段1001と同様にして暗号化領域2110の境界線の位置を検出する。
図90に、暗号化位置検出手段1001による、暗号化領域2110内の境界線の位置の検出方法を示す。図90においては、暗号化領域2110の行方向の切断線2113Rと列方向の切断線2113Cにおける画素値の変化を調べ、行方向の画素値変化の波形2115Rと列方向の画素値変化の波形2113Cをそれぞれ周波数解析することにより、暗号化領域2110の境界線の幅を算出し、境界線の位置を検出する。
画素値変換手段1002は、暗号化位置検出手段1001により検出された暗号化領域2110の画像2200(以後、暗号化画像2200と呼ぶ)に施された画素値変換を解除して、画素値変換画像を生成する。
図91に、画素値変換手段1002が暗号化画像2200を画素値変換画像へ変換する方法を示す。
図91において、図91(B)に示す市松模様画像1310(画像暗号化装置400の画素値変換手段106が使用した市松模様画像と同様な市松模様画像)を参照し、図91(A)に示す暗号化画像2200について、市松模様画像1310の黒色領域1311Bで定義された領域に対応する領域(埋め込み領域)の画素値を反転し、画像暗号化装置400の画像変換手段405により暗号化画像2200に施された画素値変換を解除する。そして、図91(C)に示す画素値変換画像2300を生成する。
このようにして、画像変換手段2003により、図92に示す中間画像2300(中間画像2´)が生成される。
ただし、画像暗号化装置400において、画素値変換手段を実施しなかった場合は、画像復号装置2000における画素値変換手段1002は省略することができる。
画像変換手段2003は、復号ユーザにより入力された復号鍵に基づき、該中間画像2300(中間画像2´)に対して、画像暗号化装置400の画像変換手段405が用いた変換手法と処理手順が逆の手法(逆変換手法)による逆変換を施し、中間画像2400(中間画像1´)を生成する。
図93に、画像変換手段2003が、中間画像2´から中間画像1´を生成する方法を示す。図93に示す方法は、前述した図64に示す方法と同様である。この方法においては、まず、図93(A)に示す中間画像2300(中間画像2´)の行方向のセグメント2301Rを、図93(B)に示す復号鍵(“10011010”)の上位3ビット(“100”)を用いて交換し、図93(C)に示す画像2310を生成する。続いて、図93(C)に示すように、その画像2310の列方向のセグメント2311Cを、前記復号鍵の上位7ビット(“1001101”)を用いて交換し、図93(D)に示す中間画像2400(中間画像1´)を生成する。この中間画像1´は、図45に示す中間画像600(中間画像1´)と略同様なものである。
埋め込み情報検出手段2005は、画像変換手段2003が生成した中間画像2400(中間画像1´)から、暗号化時にその中間画像2400に埋め込まれた暗号鍵関連情報を検出する。この検出方法は、画像復号装置1000の埋め込み情報検出手段1003の検出方法と同様である。
図94に、埋め込み情報検出手段2005による暗号鍵関連情報の検出方法のイメージ図を示す。
図94(A)に示す中間画像2400(中間画像1´)には、前記第2の埋め込み手法、すなわち、埋め込み領域内の画素値を反転することによって暗号鍵関連情報が埋め込まれている。埋め込み情報検出手段2005は、前述した画像復号装置1000の埋め込み情報検出手段1003と同様な方法により、中間画像2400(中間画像1´)から、図94(B)に示す暗号鍵関連情報(“10110110”)を検出する。
鍵関連情報生成手段1004は、復号ユーザにより入力された復号鍵を、一定の規則(画像暗号化装置400の鍵関連情報生成手段1004が用いた規則と同じ規則)に従って、復号鍵関連情報に変換する。
認証手段1005は、埋め込み情報検出手段2005により検出された暗号鍵関連情報と、鍵関連情報生成手段1004によって生成された復号鍵関連情報とを照合することで、現在、暗号化画像2200の復号を試みているユーザが、元画像(原画像)を閲覧する権利を持つ者であるかをチェックする。認証手段1005により、復号ユーザが認証されると、埋め込み情報除去手段2006に処理が移る。
埋め込み情報除去手段2006は、認証手段1005により復号ユーザが認証された場合に、画像暗号化装置400の情報埋め込み手段403が中間画像2400(中間画像1´)に暗号鍵関連情報を埋め込む際に変更した画素値を元に戻す処理を行なう。
図95に、埋め込み情報除去手段2006が中間画像1´から暗号鍵関連情報を除去する方法を示す。
埋め込み情報除去手段2006は、図95(A)に示すように、中間画像2400(中間画像1´)から暗号鍵関連情報(“1011010”)を除去するために、中間画像2400(中間画像1´)の最上位行の先頭から7つの埋め込み領域(微小領域)2401の画素値を反転させ、図95(B)に示す画像2500を復号する。
この結果、埋め込み情報除去手段2006により、図96に示す元画像(原画像)2500が復元される。また、画像暗号化装置400において電子透かしによって情報が埋め込まれた場合は、見た目に影響を与えないよう埋め込まれているため、必ずしも埋め込み情報を除去する必要はない。
出力手段1008は、画像復号装置1000の出力手段1008と同様にして、上記復号結果(復号画像2500)をユーザに対して提示するため、復号画像2500のデータ形式などを適宜変換してから、出力データを出力する。
この出力により、画像暗号化装置400により生成された暗号化画像の暗号化領域の画像を認識することが可能になる。
<動作>
上記構成の画像復号装置2000の動作を説明する。
図97は、画像復号装置2000の全体処理を示すフローチャートである。図97において、前述した図65の画像復号装置1000の全体処理を示すフローチャートのステップの処理と同じ処理を行なうステップについては同じステップ番号を付与している。以後の説明では、画像復号装置1000と異なる処理を重点的に説明し、同様な処理については簡略に説明する。
図97と図65を比較すれば分かるように、図97のフローチャートのステップS101〜S105は、図65のフローチャートと同様である。また、図97のフローチャートのステップS107〜S114も、図65のフローチャートと同様である。
画像復号装置2000と画像復号装置1000の処理の違いは、ステップS105の「画素値変換処理」とステップ107の「埋め込み情報検出処理」の間の処理である。
画像復号装置2000では、ステップS105の画素値変換処理に続いて、「画像変換処理」(S206)と「埋め込み情報検出処理」(S207)を行なう。以後の説明では、この画像復号装置1000と異なる処理手順を重点的に説明する。
まず、ステップS101において、復号ユーザは入力データが入力し、入力データは必要に応じて形式変換がおこなわれ、入力画像2100として以降の処理に渡される。
これ
次に、ステップS102において、入力画像中に含まれる、暗号化領域の位置を検出する「暗号化位置検出処理」を行なう。
この暗号化位置検出処理は、前述した画像復号装置1000の「暗号化位置検出処理」同様であり、大きく2つの段階に分かれている。
まず、前記図67に示す方法と同様にして、暗号化画像2100から暗号化領域2100(暗号化画像2100)の大まかな位置を特定する。次に、図98に示すように、その暗号化領域2100の境界線(列方向の境界線2111Cと横方向の境界線2111R)を決定する。このようにして、暗号化位置検出処理により、画像暗号化装置2000により、前記中間画像2にスクランブルなどが行なわれた際の境界を求めることができる。この処理の詳細は、前述したように特許文献3に開示されている。
続いて、ステップS103において、暗号化位置検出処理において検出された暗号化領域が存在するか否か判別し、存在すればステップS104に進む。ステップS104において暗号化領域の画像を復号するための復号鍵を復号ユーザに入力させ、その入力が終了するとステップS15へ進む。一方、ステップS103において、暗号化領域が存在しないと判別すれば、ステップS113に進む。そして、ステップS113において前述した「出力処理」を行ない、本フローチャートの処理を終了する。
ステップS105においては、前記「画素値変換処理」を行なう。この画素値変換処理の例を図99に示す。
図99に示すように、図99(A)に示す暗号化画像2100を、図99(B)に示す市松模様画像1310を参照して、図99(C)に示す中間画像2300(中間画像2´)に変換する。すなわち、暗号化画像2100に施された画素値変換を解除することにより、暗号化画像2100から中間画像2´を生成する。
ステップS105に続いて、画像変換手段2003により「画像変換処理」を行なう(S206)。この画像変換処理の手法は、基本的には、前述した図66のフローチャートのステップS111の「画像変換処理」と同様である。異なるのは、処理対象となる画像が「中間画像1´」ではなく「中間画像2´」であり、復元する画像が「元画像」ではなく「中間画像1´」であるということである。
中間画像2´は、中間画像1に対して暗号鍵に基づいた画像変換(スクランブル処理)を施し、画像内容が認識できないようにしたものである。従って、中間画像2´に施されている画像変換を、復号鍵を基に解除することで、中間画像1´を復元することが可能である。
この画像変換の解除は、前述したように、暗号化時に行なった画像変換の手法と逆手順の処理を行なうことにより可能である。つまり、暗号化時の画像変換において、まず列の交換を行ない、次に行の交換を行なった場合、復号時の画像変換では、先に行の交換を行ない、次に列の交換を行なう。
図100(A)に、暗号化時の画像変換の手順を示す。ステップS206の画像変換処理では、図100(B)に示すような手順で、復号鍵を基にして、中間画像2300(中間画像2´)を中間画像2400(中間画像1´)に変換する。すなわち、復号鍵を基に中間画像2300(中間画像2´)の行2301Rを交換して、中間画像2300を画像2310に変換する。続いて、復号鍵を基にその画像2310の列2311Cを交換して、その画像2310を中間画像2340(中間画像1´)に変換する。尚、このとき、上記行および列の各交換の手順は逆の手順となる(図101(A)、(B)参照)。
このようにして、ステップS206の画像変換処理により、図102(A)に示す中間画像2300(中間画像1´)のスクランブルを解除して、図102(B)に示す中間画像2400(中間画像2´)を生成する。
ステップS206に続いて、「埋め込み情報検出処理」を行なう(S207)。この埋め込み情報検出処理のアルゴリズムは、前述した画像復号装置1000が行なう図80のフローチャートに示す「埋め込み情報検出処理」のアルゴリズムと同様である。異なるのは、処理対象となる画像が「中間画像2´」ではなく「中間画像1´」であるということである。
この埋め込み情報検出処理においては、中間画像1´から暗号化時に埋め込まれた暗号鍵関連情報を検出する。具体的な検出方法を、図103〜図105を参照しながら説明する。
図103に示すように、中間画像2400(中間画像1´)の埋め込み領域2401を、前記ジグザグ走査により1つずつ順次取得していく。このとき、取得した埋め込み領域2101から、図104に示す方法により「埋め込み情報」を検出する。
図104に示す例では閾値を50%に設定し、図104(A)に示すように、埋め込み領域2401a内の黒画素率が閾値未満の場合は「0」が埋め込まれていると判断する。また、図103(B)に示すように、埋め込み領域2401bの黒画素率が閾値を超えている場合には、情報埋め込み時にその領域内の全ての画素値が反転されたとみなし、「1」が埋め込まれていると判断する。このような検出を、図103に示すジグザグ走査により行ない、暗号鍵関連情報を検出し終えた時点でその処理を終了する。例えば、図105に示すように、図105(A)に示す中間画像2400(中間画像1´)から、図105(B)に示すように、“1011010”という7ビットのビット列の暗号鍵関連情報を検出した時点で、埋め込み領域の検出処理を終了する。
なお、暗号化時に、暗号鍵関連情報に加えてその他の情報(ユーザID等)が埋め込まれている場合、あるいはその他の情報のみで埋め込まれている場合は、それらの情報量の分だけ検出をおこなう。
ステップS207の処理が終了した時点で、認証に必要な情報として、復号ユーザから入力された復号鍵“10011010010”(=1234(10進数))と暗号化領域の画像(中間画像1´)から検出された暗号鍵関連情報“1011010”(=90(10進数))が得られている。しかし、前述したように、認証を行なうためには、復号鍵をその関連情報(復号鍵関連情報)に変換する必要がある。
このため、ステップS207に続いて、復号鍵から復号鍵関連情報を生成する「鍵関連情報生成処理」を行なう(S208)。
ステップS208に続いて、ステップS208で生成した復号鍵関連情報と前記暗号鍵関連情報を照合し、復号ユーザを認証する「認証処理」を行なう(S108)。この認証処理のアルゴリズムは、前述した画像復号装置1000の認証処理と同様である(図79のフローチャート参照)。
続いて、復号ユーザが認証されたか否かを判別し(S109)、認証されていれば、中間画像1´から、それに埋め込まれている暗号鍵関連情報を除去する「埋め込み情報除去処理」を行なう(S110)。
図106に、上記埋め込み情報除去処理の例を示す。
図106(A)に示すように、暗号鍵関連情報(=「1011010」)の先頭の1ビット(=「1」)を取得する。そして、中間画像2400(中間画像1´)から、そのビット情報が埋め込まれている左上段の上端の微小領域2401を取得する。次に、その取得した微小領域2401について、上記ビット情報(=「1」)が埋め込まれた状態を解除する。
図107に、中間画像1´の微小領域から、そこに埋め込まれた情報を除去する方法を示す。
図107(A)に示すように、「0」の情報が埋め込まれた微小領域2401aの場合、その情報を埋め込む時に、微小領域2401a画素値の変更は行なわれていない。このため、埋め込み情報除を解除するとき、微小領域2401aの画素値を変更する必要はない。したがって、微小領域2401aの画像は変更しない。
一方、図107(B)に示すように、「1」が埋め込まれた微小領域2401bの場合、暗号化時にその微小領域2401b内の画素値を反転している。このため、微小領域2401b内の画素値を反転する。この結果、微小領域2401bの画像は微小領域2401aと同様になる。
このようにして、図107(A)、(B)に示すように、埋め込み領域に「0」または「1」のいずれの情報が埋め込まれた場合でも、その埋め込み領域の画像を元に戻すことができる(埋め込み情報を解除できる)。このような処理を、図108に示すように、暗号鍵関連情報の情報量に等しいビット数(この例では、7ビット)に等しい回数行なうことで、中間画像1´に埋め込まれた暗号鍵関連情報を全て除去(解除)することができる。
この結果、図108に示すように、図108(A)に示す中間画像2400(中間画像1´)から暗号鍵関連情報(「1011010」)を除去して、図108(B)に示す元画像2500を復元できる。
ステップS110に続いて、ステップS111の「復元画像への差し替え処理」を行なう。この処理は、画像復号装置1000のステップS111の処理と同様なので、その詳しい説明は省略する。以後、前述した図66のフローチャートと同様の処理を行なう。
画像暗号化装置400によって生成された最終的暗号化画像から、入力画像の暗号化領域の画像を復元することは、該最終的暗号化画像に埋め込まれた暗号鍵情報の生成に用いられた公開鍵と対になる秘密鍵を保有しているユーザだけが可能である。
このため、その暗号鍵情報が埋め込まれた入力画像の印刷物や電子データのみを送付先に送るだけで、送付先は、その公開鍵と対になる秘密鍵を用いて、その入力画像の暗号化領域の画像を復元し、その暗号化領域の画像である重要情報を知ることができる。
以上のようにして、本発明の画像暗号化装置400と画像復号装置2000を利用することで、入力画像内の第三者には秘匿にしておきたい重要情報の暗号化に用いる暗号鍵(共通鍵)を公開鍵暗号方式の枠組みで安全に暗号化し、該暗号鍵を入力画像以外の手段でやりとりすることなく、入力画像内の重要情報を、正当な送信者と受信者との間で、安全にやりとりすることが可能となる。
{システム構成}
(1)画像暗号化装置
<コンピュータのハードウェア構成>
上述した画像暗号化装置100または画像暗号化装置400として機能するコンピュータのハードウェア構成について説明する。
図109は、コンピュータを画像暗号化装置100または画像暗号化装置400として機能させるプログラムの実行環境であるコンピュータのハードウェア構成を示す図である。
図109に示すコンピュータ3000は、CPU(Central Processing Unit)3010、メモリ3020、入力装置3030、外部記憶装置3040、媒体駆動装置3050、ネットワーク接続装置3060、出力装置3070を備えている。
CPU3010は、コンピュータ3000全体の動作を制御する中央演算処理装置であり、メモリ3020のプログラム格納領域3021に格納されている画像暗号化プログラムを実行することによって、コンピュータ3000を画像暗号化装置100または画像暗号化装置400として機能させる。ここで、コンピュータ3000を画像暗号化装置100として機能させるプログラムを第1の画像暗号化プログラム、画像暗号化装置400として機能させるプログラムを第2の画像暗号化プログラムと区別して呼ぶことにする。上記プログラム格納領域3021には、該第1または第2の画像暗号化プログラム以外に基本ソフト(OS)や各装置3030〜3070用のドライバ(ソフトウェア)、ネットワーク接続装置3060用の通信制御ソフトなども格納される。
メモリ3020は、上記プログラム格納領域3021以外に、入力画像格納領域3022、暗号鍵格納領域3023、暗号鍵関連情報格納領域3024、境界位置情報格納領域3025、中間画像格納領域3026、暗号化画像格納領域3027、埋め込みパターン格納領域3028、作業領域3029などを備える。
入力画像格納領域3022は、暗号化の対象となる入力画像を格納する。暗号鍵格納領域3023は、該入力画像を暗号化する際に用いられる暗号鍵を格納する。暗号鍵関連情報格納領域3024は、該暗号鍵を基に生成される暗号鍵関連情報を格納する。境界位置情報格納領域3025は、暗号鍵関連情報が埋め込まれる画像の埋め込み領域(微小領域)の境界線の位置に関する情報である境界線位置情報を格納する。中間画像格納領域3026は、前記中間画像1及び前記中間画像2を格納する。暗号化画像格納領域3027は、画像暗号化装置100または画像暗号化装置400によって生成された暗号化画像を格納する。埋め込みパターン格納領域3028は、上記暗号鍵関連情報を前記埋め込み領域に埋め込む際の埋め込みパターンに関する情報を格納する。作業領域3029は、CPU3010が前記第1または第2の画像暗号化プログラムを実行する際に使用する一時データなどを保持する。
入力装置3030は、前記暗号化ユーザが暗号化する画像(入力画像)を入力したり、その入力画像の暗号化領域を指定したりするために使用される装置であり、具体的には、キーボードやマウスなどから成る。
外部記憶装置3040は、上記画像暗号化プログラム、上記埋め込みパターン、及び前記暗号化画像などを保存・記憶する装置であり、具体的には磁気ディスク装置、光ディスク装置、または光磁気ディスク装置などである。
媒体駆動装置3050は、可搬記憶媒体3080が装着、脱着される装置であり、装着された該可搬記憶媒体3080に対してデータの書き込み/読み込みなどを行なう。該可搬記憶媒体3080は、CD(compact Disc)やDVD(Digital Video Disc)、または、USB(Universal Serial Bus)メモリやSD(Secure Digital)カードなどのメモリカードなどである。この可搬記憶媒体には、前記第1または第2の画像暗号化プログラム、前記暗号化対象の画像(入力画像)、及び前記暗号化画像などが保存される。可搬記憶媒体3080に格納された該画像暗号化プログラムは、媒体駆動装置3050により読み出されて、前記プログラム格納領域3021にロードされ、CPU3010により実行されることが可能である。
ネットワーク接続装置3060は、LAN(Local Area Network)またはインターネットや専用回線網などのWAN(Wide Area Network)などと通信接続するための装置であり、それらのネットワークを介して外部のサーバや端末などと通信を行う。前記画像暗号化プログラムは、前記第1または第2の画像暗号化プログラムの提供業者のサイトなどからネットワークを経由して本コンピュータ3000の外部記憶装置3040にダウンロードすることが可能であり、このダウンロードの際、ネットワーク接続装置3060が使用される。
出力装置3070は、液晶ディスプレイやCRT(Cathode Ray Tube)などの表示装置やプリンタなどの印刷装置などから成る。この出力装置3070は、入力画像や中間画像1、2、さらには暗号化画像の表示などを行なう。また、画面表示などによるGUI(Graphical User Interface)などのマン・マシン・インターフェースとしての機能も備える。
<機能ブロック構成>
[画像暗号化装置100]
図110は、画像暗号化装置100における処理の機能ブロック図である。
入力手段101、暗号化領域指定手段102、画像変換手段103、鍵関連情報生成手段104、情報埋め込み手段105、画素値変換手段106、出力手段107から構成される。
[画像暗号化装置400]
図111は、画像暗号化装置400における処理の機能ブロック図である。
入力手段101、暗号化領域指定手段102、鍵関連情報生成手段104、情報埋め込み手段403、画像変換手段405、画素値変換手段106及び出力手段107から構成される。
(2)画像復号装置
<コンピュータのハードウェア構成>
上述した画像復号装置1000または画像復号装置2000として機能するコンピュータのハードウェア構成について説明する。
図112は、コンピュータを画像復号装置1000または画像復号装置2000として機能させるプログラムの実行環境であるコンピュータのシステム構成を示す図である。
図112に示すコンピュータ5000は、CPU(Central Procesiing Unit)5010、メモリ5100、入力装置5030、外部記憶装置5040、媒体駆動装置5050、ネットワーク接続装置5060、出力装置5070を備えている。
CPU5010は、コンピュータ5000全体の動作を制御する中央演算処理装置であり、メモリ5100のプログラム格納領域5101に格納されている画像復号プログラムを実行することによって、コンピュータ5000を画像復号装置1000または画像復号装置2000として機能させる。ここで、コンピュータ5000を画像復号装置1000として機能させるプログラムを第1の画像復号プログラム、画像復号装置2000として機能させるプログラムを第2の画像復号プログラムと区別して呼ぶことにする。上記プログラム格納領域5101には、該第1または第2の画像復号プログラム以外に基本ソフト(OS)や各装置5030〜5070用のドライバ(ソフトウェア)、ネットワーク接続装置5060用の通信制御ソフトなども格納される。
メモリ5100は、上記プログラム格納領域5101以外に、暗号化画像格納領域5102、境界線位置情報格納領域5103、復号鍵格納領域5104、復号鍵関連情報格納領域5105、暗号鍵関連情報格納領域5106、中間画像格納領域5107、復元画像格納領域5108、埋め込みパターン格納領域5109、作業領域5110などを備える。
暗号化画像格納領域5102は、画像暗号化装置100または画像暗号化装置400によって生成された暗号化画像を格納する。境界位置情報格納領域5103は、暗号鍵関連情報が埋め込まれている暗号化画像の埋め込み領域(微小領域)の境界線の位置に関する情報である境界線位置情報を格納する。復号鍵格納領域5104は、前記暗号化画像を復号する際に必要な復号鍵を格納する。復号鍵関連情報格納領域5105は、該インターネット復号鍵を基に、前記暗号鍵関連情報の生成アルゴリズムと同様のアルゴリズムによって生成される復号鍵関連情報を格納する。中間画像格納領域5107は、前記中間画像1´及び前記中間画像2´を格納する。復元画像格納領域5108は、前記暗号化画像を復元することによって得られる復元画像を格納する。埋め込みパターン格納領域5109は、前記暗号化画像に上記暗号鍵関連情報を埋め込まれた際に使用された埋め込みパターンに関する情報を格納する。作業領域5110は、CPU5010が前記第1または第2の画像復号プログラムを実行する際に使用する一時データなどを保持する。
入力装置5030は、前記復号ユーザが前記暗号化画像や前記復号鍵を入力するために使用される装置であり、具体的には、キーボードやマウスなどから成る。
外部記憶装置5040は、上記第1または第2の画像復号プログラム、上記埋め込みパターン、及び前記復元画像などを保存する装置であり、具体的には磁気ディスク装置、光ディスク装置、または光磁気ディスク装置などである。
媒体駆動装置5050は、可搬記憶媒体5080が装着、脱着される装置であり、装着された該可搬記憶媒体5080に対してデータの書き込み/読み込みなどを行なう。該可搬記憶媒体5080は、CD(compact Disc)やDVD(Digital Video Disc)、または、USB(Universal Serial Bus)メモリやSD(Secure Digital)カードなどのメモリカードなどである。この可搬記憶媒体5080には、前記第1または第2の画像復号プログラム、前記暗号化画像及び前記復元画像などが保存される。可搬記憶媒体5080に格納された該第1または第2の画像復号プログラムは、媒体駆動装置5050により読み出されて、前記プログラム格納領域5101にロードされ、CPU5010により実行されることが可能である。
ネットワーク接続装置5060は、LAN(Local Area Network)またはインターネットや専用回線網などのWAN(Wide Area Network)などと通信接続するための装置であり、それらのネットワークを介して外部のサーバや端末などと通信を行う。前記画像復号プログラムは、前記第1または第2の画像復号プログラムの提供業者のサイトなどからネットワークを経由して本コンピュータ5000の外部記憶装置5040にダウンロードすることが可能であり、このダウンロードの際、ネットワーク接続装置5060が使用される。
出力装置5070は、液晶ディスプレイやCRT(Cathode Ray Tube)などの表示装置やプリンタなどの印刷装置などから成る。この出力装置3070は、入力画像や中間画像1、2、さらには暗号化画像の表示などを行なう。また、画面表示などによるGUI(Graphical User Interface)などのマン・マシン・インターフェースとしての機能も備える。
<機能ブロック構成>
[画像復号装置1000]
図113は、画像復号装置1000における機能ロック図である。
画像復号装置1000における処理は、入力手段100X、暗号化位置検出手段1001、画素値変換手段1002、埋め込み情報検出手段1003、鍵関連情報生成手段1004、認証手段1005、埋め込み情報除去手段1006、画像変換手段1007及び出力手段1008から構成される。
[画像復号装置2000]
図114は、画像復号装置2000の機能ブロック図である。
画像復号装置2000における処理は、入力手段100X、暗号化位置検出手段1001、画素値変換手段1002、画像変換手段2003、埋め込み情報検出手段2004、鍵関連情報生成手段1004、認証手段1005、埋め込み情報除去手段1006及び出力手段1008から構成される。
<複合機への適用例>
図115に、複合機に本発明の暗号化処理および復号化処理を適用した場合のシステム構成を示す。
図115について、CPUボード7001はシステム全体の制御を行う。外部インターフェース7002は外部コンピュータと接続する機能を有する。スキャナインターフェース7003はスキャナ7004とのインターフェース制御の役割を果たす。スキャナ7004から読み込まれた画像情報は、イメージバッファ7005に蓄えられる。プリンタインターフェース7006は、プリンタ7007とのインターフェース制御の役割を果たす。
図116はCPUボード7001の構成を表す図である。7101はCPUで、システム全体の制御を行う。7102はROMであり、CPUボードに実行させる暗号化処理および復号化処理のブログラムが記憶されている。7103はRAMで、暗号化処理および復号化処理を実行するのに必要な各種データ等を一時的に保存している。また操作パネル7104は、ユーザによるキー入力を受けつける機能や、ユーザへのメッセージ等を表示する機能を有する。さらにインターフェース7105は、CPUボード7001とシステムバス7106とを接続するためのインターフェースである。
図115で表されるシステムにより、複合機で本発明の暗号化処理および復号化処理を実現することが可能となる。
また、パーソナルコンピュータ以外でも、コピー機(複合機も含む)やFAX、プリンタ、スキャナ、オーバーヘッドリーダ、携帯電話、携帯端末、ディジタルカメラ、TVなどに本発明の機能が組み込まれてもよい。すなわち、本発明は、以上に述べた実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内で種々の構成または形状を取ることができる。
本発明はソフトウェアとしても実現できるので、様々な端末に搭載可能である。このため、一般ユーザなどが、個人の秘匿情報を含む印刷物などを手軽に画像暗号化し、その印刷物などの内容を、高いセキュリティを確保しながら、正当な個人や機関などに、直接またはネットワーク経由などで渡すことができる。また、その受け取り側も、復号鍵を用いて、暗号化された画像を容易に復元することができる。

Claims (31)

  1. 画像を暗号化する画像暗号化装置において、
    入力データを取得し、必要に応じて形式変換をおこなって暗号化の対象となる画像を入力する入力手段と、
    該入力手段より取得した画像に対し、暗号化する領域を指定する暗号化領域指定手段と、
    該暗号化領域指定手段で指定された暗号化領域の画像を暗号鍵に基づいて第1の中間画像に変換する画像変換手段と、
    前記暗号鍵を基に、暗号鍵関連情報を生成する鍵関連情報生成手段と、
    前記暗号鍵関連情報を前記第1の中間画像内に埋め込み、第2の中間画像を生成する情報埋め込み手段と、
    前記暗号化領域の位置が復号時に特定可能となるように、前記第2の中間画像に対して画素値変換をおこなう画素値変換手段と、
    前記画素値変換手段において生成された画像を、必要に応じて形式変換をおこなって出力する出力手段と、
    を備えることを特徴とする画像暗号化装置。
  2. 画像を暗号化する画像暗号化装置において、
    暗号化の対象となる入力データを取得し、必要に応じて形式変換をおこなって入力する入力手段と、
    該入力手段より取得した画像に対し、暗号化する領域を指定する暗号化領域指定手段と、
    暗号鍵を基に、暗号鍵関連情報を生成する鍵関連情報生成手段と、
    前記暗号鍵関連情報を、前記暗号化領域の画像内に埋め込み、第1の中間画像を生成する情報埋め込み手段と、
    前記第1の中間画像を前記暗号鍵に基づいて変換し、第2の中間画像を生成する画像変換手段と、
    前記暗号化領域の位置が復号時に特定可能となるように、該画像変換手段によって生成された第2の中間画像の画素値変換をおこなう画素値変換手段と、
    該画素値変換手段において生成された画像を、必要に応じて形式変換をおこなって出力する出力手段と、
    を備えることを特徴とする画像暗号化装置。
  3. 請求項1または2記載の画像暗号化装置であって、
    前記鍵関連情報生成手段は、前記暗号鍵をハッシュ変換することにより、前記暗号鍵関連情報を生成することを特徴とする画像暗号化装置。
  4. 請求項1または2記載の画像暗号化装置であって、
    前記情報埋め込み手段は、前記暗号鍵関連情報に基づいて前記暗号化領域内の画像の画素値を変換することによって、前記暗号化領域の画像内に前記暗号鍵関連情報を埋め込むことを特徴する画像暗号化装置。
  5. 請求項4に記載の画像暗号化装置であって、
    前記素値の変換は、画素値の反転であることを特徴とする画像暗号化装置。
  6. 請求項4記載の画像暗号化装置であって、
    前記情報埋め込み手段は、前記暗号化領域の画像の画素値を、埋め込む情報に対応するパターンに対応させて変換することを特徴とする画像暗号化装置。
  7. 請求項4記載の画像暗号化装置であって、
    前記情報埋め込み手段は、前記暗号鍵関連情報を電子透かしによって埋め込むことを特徴とする画像暗号化装置。
  8. 暗号化画像を復号し、復号画像に変換する画像復号装置において、
    入力データを取得し、必要に応じて形式変換をおこない、暗号化画像として入力する入力手段と、
    前記暗号化画像から、暗号化領域の位置を検出する暗号化位置検出手段と、
    前記暗号化領域内の画素値を変換し、第1の中間画像に変換する画素値変換手段と、
    前記第1の中間画像内に埋め込まれている、前記暗号鍵関連情報を検出する埋め込み情報検出手段と、
    復号鍵を復号鍵関連情報に変換する鍵関連情報生成手段と、
    前記暗号鍵関連情報と、前記復号鍵関連情報とを照合して、前記復号鍵が正しいものであるか調べる認証手段と、
    該認証手段により前記復号鍵が正しいと認証された場合、前記第1の中間画像から前記暗号鍵関連情報を除去して、第2の中間画像に変換する埋め込み情報除去手と、
    前記第2の中間画像を前記復号鍵に基づいて変換し、復号画像を生成する画像変換手段と、
    前記復号画像に対して、必要に応じて形式変換をおこなって出力する出力手段と、
    を備えることを特徴とする画像復号装置。
  9. 暗号化画像を復号し、復号画像に変換する画像復号装置において、
    入力データを取得し、必要に応じて形式変換をおこない、暗号化画像として入力する入力手段と、
    前記暗号化画像から、暗号化領域の位置を検出する暗号化位置検出手段と、
    前記暗号化領域内の画素値を変換し、第1の中間画像に変換する画素値変換手段と、
    前記第1の中間画像を復号鍵に基づいて変換し、第2の中間画像を生成する画像変換手段と、
    前記第2の中間画像内に埋め込まれている、前記暗号鍵関連情報を検出する埋め込み情報検出手段と、
    前記復号鍵を復号鍵関連情報に変換する鍵関連情報生成手段と、
    前記暗号鍵関連情報と、前記復号鍵関連情報とを照合して、前記復号鍵が正しいものであるか調べる認証手段と、
    該認証手段により前記復号鍵が正しいと認証された場合、前記第2の中間画像から前記暗号鍵関連情報除去して、復号画像に変換する埋め込み情報除去手段と、
    前記復号画像に対して、必要に応じて形式変換をおこなって出力する出力手段と、
    を備えることを特徴とする画像復号装置。
  10. 請求項8または9記載の画像復号方法であって、
    前記鍵関連情報生成手段は、前記暗号鍵から前記暗号鍵関連情報を生成する手法と同様な手法を用いて、前記復号鍵から前記復号鍵関連情報を生成することを特徴とする画像復号装置。
  11. 画像を暗号化する画像暗号化方法において、
    入力データを取得し、必要に応じて形式変換をおこなって暗号化の対象となる画像を入力する入力ステップと、
    該入力ステップにより取得した画像に対し、暗号化する領域を指定する暗号化領域指定ステップと、
    該暗号化領域指定ステップによって指定された暗号化領域の画像を暗号鍵に基づいて第1の中間画像に変換する画像変換ステップと、
    前記暗号鍵を基に、前記暗号鍵に関連する情報である暗号鍵関連情報を生成する鍵関連情報生成ステップと、
    該鍵関連情報生成ステップによって生成された暗号鍵関連情報を前記第1の中間画像内に埋め込み、第2の中間画像を生成する情報埋め込みステップと、
    該情報埋め込みステップによって生成された前記第2の中間画像の画素値を変換する画素値変換ステップと、
    前記画素値変換後の画像に対して、必要に応じて形式変換を行って出力する出力ステップと、
    を備えることを特徴とする画像暗号化方法。
  12. 画像を暗号化する画像暗号化方法において、
    暗号化の対象となる入力データを取得し、必要に応じて形式変換を行なって入力する入力ステップと、
    該入力ステップにより取得した画像に対し、暗号化する領域を指定する暗号化領域指定ステップと、
    暗号鍵を基に、該暗号鍵に関連するから情報である暗号鍵関連情報を生成する鍵関連情報生成ステップと、
    該鍵関連情報生成ステップにより生成された暗号鍵関連情報を、前記暗号化領域指定ステップにおいて指定された暗号化領域の画像内に埋め込んで、第1の中間画像を生成する情報埋め込みステップと、
    前記第1の中間画像を前記暗号鍵に基づいて変換し、第2の中間画像を生成する画像変換ステップと、
    該画像変換ステップによって生成された第2の中間画像の画素値を変換する画素値変換ステップと、
    前記画素値変換後の画像に対して、必要に応じて形式変換を行って出力する出力ステップと、
    を備えることを特徴とする画像暗号化方法。
  13. 請求項11または12記載の画像暗号化方法であって、
    前記鍵関連情報生成ステップにおいて、前記暗号鍵をハッシュ変換することにより、前記暗号鍵関連情報を生成することを特徴とする。
  14. 請求項11または12記載の画像暗号化方法であって、
    前記情報埋め込みステップにおいて、前記暗号鍵関連情報に基いて前記暗号化領域内の画像の画素値を変換することによって、前記暗号化領域の画像内に前記暗号鍵関連情報を埋め込むことを特徴する。
  15. 請求項14記載の画像暗号化方法であって、
    前記画素値の変換は、画素値の反転であることを特徴とする。
  16. 請求項14記載の画像暗号化方法であって、
    前記情報埋め込みステップにおいて、前記暗号化領域の画像の画素値を、埋め込む情報に対応するパターンに対応させて変換することを特徴とする。
  17. 請求項14記載の画像暗号化方法であって、
    前記情報埋め込みステップにおいて、前記暗号鍵関連情報を電子透かしによって埋め込むことを特徴とする。
  18. 暗号化画像を復号する画像復号方法において、
    入力データを取得し、必要に応じて形式変換をおこない、暗号化画像として入力する入力ステップと、
    前記暗号化画像から、暗号化領域の位置を検出する暗号化位置検出ステップと、
    該暗号化位置検出ステップによって検出された前記暗号化領域内画素値を変換し、第1の中間画像に変換する画素値変換ステップと、
    前記第1の中間画像に埋め込まれている、前記暗号鍵関連情報を検出する埋め込み情報検出ステップと、
    復号鍵を復号鍵関連情報に変換する鍵関連情報生成ステップと、
    前記暗号鍵関連情報と、前記復号鍵関連情報とを照合して、前記復号鍵が正しいものであるか調べる認証ステップと、
    該認証ステップにより前記復号鍵が正しいと認証された場合、前記第1の中間画像から前記暗号鍵関連情報除去して、第2の中間画像に変換する埋め込み情報除去ステップと、
    前記第2の中間画像を前記復号鍵に基いて変換し、復号画像を生成する画像変換ステップと、
    前記復号画像に対して、必要に応じて形式変換を行なって出力する出力ステップと、
    を備えることを特徴とする画像復号方法。
  19. 暗号化画像を復号する画像復号方法において、
    入力データを取得し、必要に応じて形式変換を行い、暗号化画像として入力する入力ステップと、
    前記暗号化画像から、暗号化領域の位置を検出する暗号化位置検出ステップと、
    前記暗号化領域内の画素値を変換し、第1の中間画像に変換する画素値変換ステップと、
    前記第1の中間画像を復号鍵に基いて変換し、第2の中間画像を生成する画像変換ステップと、
    前記第2の中間画像に埋め込まれている、前記暗号鍵関連情報を検出する埋め込み情報検出ステップと、
    前記復号鍵を復号鍵関連情報に変換する鍵関連情報生成ステップと、
    前記暗号鍵関連情報と、前記復号鍵関連情報とを照合して、前記復号鍵が正しいものであるか調べる認証ステップと、
    該認証ステップにより前記復号鍵が正しいと認証された場合、前記第2の中間画像から前記暗号鍵関連情報除去して、復号画像に変換する埋め込み情報除去ステップと、
    前記復号画像に対して、必要に応じて形式変換を行なって出力する出力ステップを、
    備えることを特徴とする画像復号方法。
  20. 請求項18または19記載の画像復号方法であって、
    前記鍵関連情報生成ステップにおいて、前記暗号鍵から前記暗号鍵関連情報を生成する手法と同様な手法を用いて、前記復号鍵から前記復号鍵関連情報を生成することを特徴とする。
  21. 画像を暗号化するために、コンピュータを、
    入力データを取得し、必要に応じて形式変換をおこなって、暗号化の対象となる画像を入力する入力手段、
    該入力手段により入力された画像に対し、暗号化する領域を指定する暗号化領域指定手段、
    該暗号化領域指定手段によって指定された暗号化領域の画像を暗号鍵に基づいて第1の中間画像に変換する画像変換手段、
    前記暗号鍵を基に、暗号鍵関連情報を生成する鍵関連情報生成手段、
    前記暗号鍵関連情報を前記第1の中間画像内に埋め込み、第2の中間画像を生成する情報埋め込み手段、
    前記暗号化領域の位置が復号時に特定可能となるように、前記第2の中間画像に対して画素値変換をおこなう画素値変換手段、
    前記画素値変換手段によって生成された画像を、必要に応じて形式変換をおこなって出力する出力手段
    として機能させるための画像暗号化プログラム。
  22. 画像を暗号化させるために、コンピュータを、
    暗号化の対象となる入力データを取得し、必要に応じて形式変換を行なって入力する入力手段、
    該入力手段により取得した画像に対し、暗号化する領域を指定する暗号化領域指定手段、
    暗号鍵を基に、暗号鍵関連情報を生成する鍵関連情報生成手段、
    前記暗号鍵関連情報を、前記暗号化領域の画像内に埋め込み、第1の中間画像を生成する情報埋め込み手段、
    前記第1の中間画像を前記暗号鍵に基づいて変換し、第2の中間画像を生成する画像変換手段、
    前記暗号化領域の位置が復号時に特定可能となるように、該画像変換手段によって生成された第2の中間画像の画素値変換をおこなう画素値変換手段、
    該画素値変換手段によって生成された画像を、必要に応じて形式変換をおこなって出力する出力手段
    として機能させる画像暗号化プログラム。
  23. 請求項21または22記載の画像暗号化プログラムであって、
    前記鍵関連情報生成手段は、前記暗号鍵をハッシュ変換することにより、前記暗号鍵関連情報を生成することを特徴とする。
  24. 請求項21または22記載の画像暗号化プログラムであって、
    前記情報埋め込み手段は、前記暗号鍵関連情報に基いて前記暗号化領域内の画像の画素値を変換することによって、前記暗号化領域の画像内に前記暗号鍵関連情報を埋め込むことを特徴する。
  25. 請求項24記載の画像暗号化プログラムであって、
    前記画素値の変換は、画素値の反転であることを特徴とする。
  26. 請求項24記載の画像暗号化プログラムであって、
    前記情報埋め込み手段は、前記暗号化領域の画像の画素値を、埋め込む情報に対応するパターンに対応させて変換することを特徴とする。
  27. 請求項24記載の画像暗号化プログラムであって、
    前記情報埋め込み手段は、前記暗号鍵関連情報を電子透かしによって埋め込むことを特徴とする。
  28. 暗号化画像を復号するために、コンピュータを、
    入力データを取得し、必要に応じて形式変換を行い、暗号化画像として入力する入力手段、
    前記暗号化画像から、暗号化領域の位置を検出する暗号化位置検出手段、
    前記暗号化領域内の画像を変換し、第1の中間画像に変換する画素値変換手段、
    前記第1の中間画像に埋め込まれている、前記暗号鍵関連情報を検出する埋め込み情報検出手段、
    復号鍵を復号鍵関連情報に変換する鍵関連情報生成手段、
    前記暗号鍵関連情報と、前記復号鍵関連情報とを照合して、前記復号鍵が正しいものであるか調べる認証手段、
    該認証手段により前記復号鍵が正しいと認証された場合、前記第1の中間画像から前記暗号鍵関連情報除去して、第2の中間画像に変換する埋め込み情報除去手段、
    前記第2の中間画像を前記復号鍵に基いて変換し、復号画像を生成する画像変換手段
    前記復号画像に対して、必要に応じて形式変換をおこなって出力する出力手段、
    として機能させるための画像復号プログラム。
  29. 暗号化画像を元画像に復号するために、コンピュータを、
    入力データを取得し、必要に応じて形式変換をおこない、暗号化画像として入力する入力手段、
    前記暗号化画像から、暗号化領域の位置を検出する暗号化位置検出手段、
    前記暗号化領域の画像の画素値を変換し、第1の中間画像に変換する画素値変換手段、
    前記第1の中間画像を復号鍵に基いて変換し、第2の中間画像を生成する画像変換手段、
    前記第2の中間画像内に埋め込まれている、前記暗号鍵関連情報を検出する埋め込み情報検出手段、
    前記復号鍵を復号鍵関連情報に変換する鍵関連情報生成手段、
    前記暗号鍵関連情報と、前記復号鍵関連情報とを照合して、前記復号鍵が正しいものであるか調べる認証手段、
    該認証手段により前記復号鍵が正しいと認証された場合、前記第2の中間画像から前記暗号鍵関連情報除去して、復号画像に変換する埋め込み情報除去手段、
    前記復号画像に対して、必要に応じて形式変換をおこなって出力する出力手段、
    として機能させるための画像復号プログラム。
  30. 請求項28または29記載の画像復号プログラムであって、
    前記鍵関連情報生成手段は、前記暗号鍵から前記暗号鍵関連情報を生成する手法と同様な手法を用いて、前記復号鍵から前記復号鍵関連情報を生成することを特徴とする。
  31. 請求項1または2記載の画像暗号化装置、請求項11または12記載の画像暗号化方法、請求項21または22記載の画像暗号化プログラム、請求項8または9記載の画像復号装置、請求項18または19記載の画像復号方法、および請求項28または29記載の画像復号プログラムにおいて、前記入力データおよび前記出力データは、画像や印刷物や、PDF、Wordなどの電子文書データもしくはその他の非画像データであることを特徴とする。
JP2009516077A 2007-05-30 2007-05-30 画像暗号化装置、画像復号装置、方法、及びプログラム Active JP4820446B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2007/000583 WO2008146334A1 (ja) 2007-05-30 2007-05-30 画像暗号化装置、画像復号装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JPWO2008146334A1 true JPWO2008146334A1 (ja) 2010-08-12
JP4820446B2 JP4820446B2 (ja) 2011-11-24

Family

ID=40074623

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009516077A Active JP4820446B2 (ja) 2007-05-30 2007-05-30 画像暗号化装置、画像復号装置、方法、及びプログラム

Country Status (6)

Country Link
US (1) US8588414B2 (ja)
EP (1) EP2154878A4 (ja)
JP (1) JP4820446B2 (ja)
KR (1) KR101074951B1 (ja)
CN (1) CN101682682B (ja)
WO (1) WO2008146334A1 (ja)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008053545A1 (fr) * 2006-10-31 2008-05-08 Fujitsu Limited Dispositif de chiffrage/déchiffrage d'images, procédé et programme
US8214645B2 (en) 2009-04-08 2012-07-03 Research In Motion Limited Systems, devices, and methods for securely transmitting a security parameter to a computing device
US8171292B2 (en) 2009-04-08 2012-05-01 Research In Motion Limited Systems, devices, and methods for securely transmitting a security parameter to a computing device
US8971532B1 (en) * 2011-01-17 2015-03-03 Exaimage Corporation System and methods for protecting video content
KR101865197B1 (ko) * 2011-11-29 2018-07-16 삼성전자주식회사 휴대용 단말기에서 코드 이미지를 획득하기 위한 장치 및 방법
EP2791855B1 (en) * 2011-12-15 2019-01-23 Intel Corporation Preserving image privacy when manipulated by cloud services
US8550367B2 (en) * 2012-03-01 2013-10-08 Xerox Corporation System and method for embedding machine-readable codes in combination with other images such as logos
US8807442B2 (en) * 2012-03-01 2014-08-19 Xerox Corporation System and method for embedding machine-readable codes in a document background
US20140198335A1 (en) * 2013-01-16 2014-07-17 Hewlett-Packard Development Company, L.P. Securing confidential information in a document
WO2014173588A1 (en) * 2013-04-22 2014-10-30 Sony Corporation Security feature for digital imaging
JP2014238642A (ja) * 2013-06-06 2014-12-18 沖電気工業株式会社 個人情報保護装置および個人情報保護システム並びに個人情報保護方法およびプログラム
US20160379330A1 (en) 2013-06-21 2016-12-29 Signs & Wonders Unlimited, Llc Method and apparatus for protecting digital photos from alteration
US9384520B2 (en) 2013-06-21 2016-07-05 Signs & Wonders Unlimited, Llc System and method for encoding and authenticating a digital image
US9682590B1 (en) * 2013-09-16 2017-06-20 Amazon Technologies, Inc. Printed document security
US9760617B2 (en) * 2014-05-29 2017-09-12 Sap Se Applying transaction log in parallel
IL233720A (en) * 2014-07-20 2017-06-29 Yinnon Kadishson Yanay Text encryption method
US9871658B2 (en) 2015-03-24 2018-01-16 Semiconductor Components Industries, Llc Imaging systems with data encryption and embedding capabalities
US10387674B2 (en) * 2015-06-04 2019-08-20 Datchat, Inc. Systems and methods of transforming electronic content
US10949504B2 (en) 2015-06-04 2021-03-16 Datchat, Inc. Systems and methods of transforming electronic content
KR20170123892A (ko) * 2016-04-29 2017-11-09 에스프린팅솔루션 주식회사 어플리케이션을 이용한 팩스 송수신 방법 및 이를 수행하기 위한 화상 형성 장치
KR101780636B1 (ko) 2016-05-16 2017-09-21 주식회사 코인플러그 인증 정보의 발급 방법 및 이를 지원하는 블록체인기반 인증 정보 관리 서버
US11050552B2 (en) * 2017-05-03 2021-06-29 Infosys Limited System and method for hashing a data string using an image
WO2019017876A1 (en) * 2017-07-17 2019-01-24 Hewlett-Packard Development Company, L.P. IMPREGNATED PRINTING
CN107196973B (zh) * 2017-07-25 2019-12-17 广东虹勤通讯技术有限公司 一种数据加密、解密方法及装置
CN109587518B (zh) * 2017-09-28 2022-06-07 三星电子株式会社 图像传输装置、操作图像传输装置的方法以及片上系统
CN108366196B (zh) * 2018-01-25 2020-09-01 西安中科创达软件有限公司 一种保护图片隐私的方法
KR20190118825A (ko) * 2018-04-11 2019-10-21 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 개인정보를 보호하는 화상독취장치 및 화상독취방법
CN108989604B (zh) * 2018-07-20 2020-05-05 京东方科技集团股份有限公司 图像加密方法、图像传输方法、电子设备、可读存储介质
JP7310138B2 (ja) * 2018-12-28 2023-07-19 株式会社リコー 画像処理装置、画像処理装置の故障検知方法、及びプログラム
US11335214B2 (en) * 2019-02-11 2022-05-17 Andrea G. FORTE Content encryption and in-place decryption using visually encoded ciphertext
US10963542B2 (en) * 2019-05-13 2021-03-30 Advanced New Technologies Co., Ltd. Blockchain-based image processing method and apparatus
CN110414448B (zh) * 2019-07-31 2021-06-29 北京三快在线科技有限公司 图像处理方法、装置、电子设备及存储介质
CN110502913A (zh) * 2019-08-22 2019-11-26 天津一鉴楼文化科技有限公司 一种对称散列混淆内容的方法
CN111030810B (zh) * 2019-11-29 2022-08-05 童勤业 基于图像局部随机变换技术的防伪加密方法
US11829499B2 (en) * 2020-03-26 2023-11-28 Bank Of America Corporation Securing PIN information using obfuscation by applying extra security layer
CN111581658B (zh) * 2020-05-13 2022-05-17 中国人民解放军海军航空大学 一种采用双线性傅里叶变换进行图像加密的方法
CN114650342A (zh) * 2020-12-17 2022-06-21 Tcl商用信息科技(惠州)有限责任公司 一种图像加密方法、智能终端及计算机可读存储介质
KR102532965B1 (ko) * 2020-12-18 2023-05-16 주식회사 더코더 이미지 상에 망점 삽입 방법 및 이를 실행하는 시스템

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5491563A (en) * 1992-02-04 1996-02-13 Aliroo Ltd. Apparatus for scrambling and unscrambling documents
US6839844B1 (en) * 2000-01-03 2005-01-04 Hirokazu Okano Image encryption method and device
JP2003169047A (ja) * 2001-12-03 2003-06-13 Tech Res & Dev Inst Of Japan Def Agency 暗号化装置、復号化装置、記録媒体、暗号化方法、復号化方法およびその方法をコンピュータに実行させるプログラム
JP2003152987A (ja) * 2002-07-22 2003-05-23 Ricoh Co Ltd 画像暗号化再生装置
US7506371B1 (en) * 2004-01-22 2009-03-17 Guardium, Inc. System and methods for adaptive behavior based access control
JP2005341316A (ja) * 2004-05-27 2005-12-08 Sony Corp 情報処理システムおよび方法、情報処理装置および方法、並びにプログラム
JP4406589B2 (ja) 2004-09-03 2010-01-27 パナソニック株式会社 ネットワーク印刷システム
JP2006080623A (ja) * 2004-09-07 2006-03-23 Canon Inc 情報処理方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
JP4625352B2 (ja) 2005-03-25 2011-02-02 大和ハウス工業株式会社 支持係留金物
JP2006332826A (ja) 2005-05-24 2006-12-07 Oki Electric Ind Co Ltd 文書転送システム,文書生成装置および方法,文書受信装置および方法,文書印刷装置および方法,中継器および方法
CN101146168A (zh) * 2006-06-30 2008-03-19 株式会社理光 图像处理装置和图像处理方法
JP5015540B2 (ja) 2006-09-28 2012-08-29 富士通株式会社 電子透かし埋め込み装置および検出装置
WO2008053545A1 (fr) 2006-10-31 2008-05-08 Fujitsu Limited Dispositif de chiffrage/déchiffrage d'images, procédé et programme

Also Published As

Publication number Publication date
KR101074951B1 (ko) 2011-10-18
US20100074443A1 (en) 2010-03-25
WO2008146334A1 (ja) 2008-12-04
EP2154878A4 (en) 2012-09-26
US8588414B2 (en) 2013-11-19
KR20100005146A (ko) 2010-01-13
CN101682682B (zh) 2012-11-21
CN101682682A (zh) 2010-03-24
JP4820446B2 (ja) 2011-11-24
EP2154878A1 (en) 2010-02-17

Similar Documents

Publication Publication Date Title
JP4820446B2 (ja) 画像暗号化装置、画像復号装置、方法、及びプログラム
JP5176655B2 (ja) 画像復号化装置
Shih Digital watermarking and steganography: fundamentals and techniques
CN109767375B (zh) 图像水印嵌入和追溯的方法及系统
JP3804012B2 (ja) 文書画像の改ざん判定方法及びシステム、並びにその制御用プログラム
JP5018880B2 (ja) 画像暗号化装置、画像復号装置、方法、及びプログラム
JP3725384B2 (ja) 認証装置、認証方法及びその装置での処理をコンピュータに行なわせるためのプログラムを格納した記憶媒体
JP5277660B2 (ja) 画像暗号化装置および画像復号化装置、画像暗号化方法および画像復号化方法、並びに、画像暗号化プログラム
WO1999057885A1 (en) Digital authentication with analog documents
WO1999062044A1 (en) Reference palette embedding
WO2007062554A1 (fr) Procede et dispositif d'incorporation de filigrane numerique dans un document textuel et de detection dudit filigrane numerique
JP2008028449A (ja) 秘密文書処理装置
JP2006287587A (ja) 情報処理装置およびその方法
CN100525365C (zh) 图像处理设备及其控制方法
US20110058225A1 (en) Image forming apparatus, image processing method thereof, and image forming system
JP2009177699A (ja) 画像形成装置
US7283261B2 (en) Image processing method, manipulation detection method, image processing device, manipulation detection device, image processing program, manipulation detection program, and image formation medium
JP2009055611A (ja) 画像形成装置、画像形成方法および画像形成システム
JP2006237742A (ja) 出力装置、読取り装置、情報処理システム、出力プログラム、読取りプログラム、情報処理プログラム、出力プログラムを記録したコンピュータ読取可能な記録媒体、読取りプログラムを記録したコンピュータ読取可能な記録媒体、および情報処理プログラムを記録したコンピュータ読取可能な記録媒体
JP2005192148A (ja) 改ざん検証用文書作成装置、改ざん検出装置、改ざん検証用文書作成方法、改ざん検出方法、改ざん検証用文書作成プログラム、改ざん検出プログラム、およびこれらプログラムが格納された記録媒体
JP2008098943A (ja) 画像処理装置
JP2003233310A (ja) 暗号化方法および復号化方法
Al-Rababaa et al. An Improvement for GLM Algorithm to Hide Colored Image
Isong et al. Information Security System Using Video-Steganography Technique
JP2005142972A (ja) 画像処理システム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110808

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110830

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110902

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

Free format text: PAYMENT UNTIL: 20140909

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4820446

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150