JP2004274358A - 画像データの暗号化方法及び画像データ変換方法、及び、それらの装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 - Google Patents
画像データの暗号化方法及び画像データ変換方法、及び、それらの装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 Download PDFInfo
- Publication number
- JP2004274358A JP2004274358A JP2003061863A JP2003061863A JP2004274358A JP 2004274358 A JP2004274358 A JP 2004274358A JP 2003061863 A JP2003061863 A JP 2003061863A JP 2003061863 A JP2003061863 A JP 2003061863A JP 2004274358 A JP2004274358 A JP 2004274358A
- Authority
- JP
- Japan
- Prior art keywords
- data
- data block
- encryption
- encrypted
- image data
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/44—Secrecy systems
- H04N1/448—Rendering the image unintelligible, e.g. scrambling
- H04N1/4486—Rendering the image unintelligible, e.g. scrambling using digital data encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
- H04N1/00204—Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
- H04N1/00209—Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax
- H04N1/00214—Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of transmission
- H04N1/00217—Transmitting or receiving image data, e.g. facsimile data, via a computer, e.g. using e-mail, a computer network, the internet, I-fax details of transmission only involving computer data transmission protocols, e.g. SMTP, WAP or HTTP
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/44—Secrecy systems
- H04N1/4406—Restricting access, e.g. according to user identity
- H04N1/4426—Restricting access, e.g. according to user identity involving separate means, e.g. a server, a magnetic card
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/44—Secrecy systems
- H04N1/4406—Restricting access, e.g. according to user identity
- H04N1/444—Restricting access, e.g. according to user identity to a particular document or image or part thereof
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Facsimile Transmission Control (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
【解決手段】入力された画像データのコードブロックが暗号化対象であると判断した場合(S43)、そのコードブロックを暗号化する(S44)。そして、再生する際に、その暗号化コードブロックを利用して再生させるか(スクランブル再生モードにするか)否かを判定し(S45)、その暗号化コードブロックを利用しないようにさせる場合には、終端マーカをそのコードブロックの先頭位置に配置する(S47)。また、暗号化されたコードブロックを利用させる場合には終端マーカをその後端に配置する(S46)。
【選択図】 図4
Description
【発明の属する技術分野】
本発明は画像データの暗号化及び暗号復号技術に関するものである。
【0002】
【従来の技術】
画像データなどのアクセス制御を目的として、画像データの暗号化やスクランブルなどが行なわれてきた。これは、予め画像データを暗号鍵を用いて暗号化し、前記暗号鍵に対応する復号鍵を有する者だけが正しく再生できるようにする技術である。
【0003】
一方、画像データは情報量が大きいために、これを効率的に伝送、及び蓄積する際に圧縮符号化を行う場合が多い。圧縮符号化としては、例えば、ISO/IEC JTC 1/SC 29/WG1にて標準化されているJPEG2000規格と呼ばれる技術などが適応される。前述した画像データの暗号化はJPEG2000規格のような圧縮符号化された画像データに対して施される場合もある。これにより、画像データを効率的に伝送、及び蓄積すると同時に、画像データに対するアクセスを制御できるという利点がある。
【0004】
特に、JPEG2000規格のような圧縮符号化技術によれば、画像データは、解像度、画質、空間的領域、画素を構成する成分などに応じて階層的に圧縮符号化できる。こうした階層構造を有する画像データに対して、階層構造に応じた暗号化処理を行うことにより、階層構造に応じたアクセス制御を実現することができる。
【0005】
例えば、解像度毎にアクセス制御する場合、低解像度成分は暗号化せずに、高解像度成分だけ暗号化するようにすれば、低解像度成分は誰でも再生可能であるが、高解像度成分は許可された利用者(復号鍵の所有者)だけが正しく再生するようにアクセス制御できるようになる。
【0006】
【発明が解決しようとする課題】
しかしながら、階層構造を有する画像データに当該階層構造に応じた暗号化処理を施した場合、復号鍵を有していない装置では暗号を復号できず、暗号データのままの状態で圧縮復号されるため、画像はスクランブルされた状態となって再生される。即ち、スクランブルされていない状態で画像を再生することは困難であった(例えば、前述した例のように解像度毎にアクセス制御する場合は、高解像度の画像データを再生せずに、低解像度の画像データだけを再生することが困難であった)。
【0007】
本発明はかかる問題点に鑑みなされたものであり、画像再生装置でスクランブルさせて再生させるか、或いは、非スクランブル状態で再生させるかを暗号化する側で設定可能とする技術を提供しようとするものである。
【0008】
【課題を解決するための手段】
この課題を解決するため、例えば本発明の画像データ暗号化方法は以下の工程を備える。すなわち、
画像データを暗号化する画像データ暗号化方法であって、
複数のデータブロックで構成される画像データを、前記データブロック単位に入力する工程と、
入力したデータブロックが暗号化対象であるか否かを判定する判定工程と、
該判定工程で暗号化対象のデータブロックが入力された場合、当該データブロックを暗号化する暗号化工程と、
復号する際の有意なデータの終端位置を特定するための終端情報を、前記暗号化工程で暗号化されたデータブロックの先頭位置に付加する付加工程と、
前記付加工程を実行するか否かを切り換える切り換え工程と、
前記判定工程で暗号化対象外と判定されたデータブロック、前記切り換え工程のもとで生成されたデータブロックを出力する出力工程とを備える。
【0009】
【発明の実施の形態】
以下、添付図面に従って本発明に係る実施形態を説明する。
【0010】
<全体構成の説明>
実施形態におけるシステム概要例を図14に示す。図中、140はインターネットであって、141は例えばデジタルカメラやイメージスキャナ、フィルムスキャナ等で撮像した画像データを圧縮符号化&暗号化処理を行う装置である。142は画像データを受信し、復号する装置、143は復号する際に必要となる暗号化解除鍵を記憶している認証サーバある。装置141乃至143はパーソナルコンピュータ等の汎用装置で構わない。処理の流れを簡単に説明すると、次の通りである。
【0011】
装置141では、所望とする画像データを圧縮符号化及び暗号化処理を行い、インターネット140を介して配布する。配布するのは装置141が直接行ってもよいし、適当なサーバを介して配布しても構わない。ただし、暗号化されている関係で、その解除するために必要な鍵情報を、その画像データを特定する情報(例えばID)と共に認証サーバ143が有するDBに登録しておく。画像復号装置142は所望とする画像を受信し、復号を行ない閲覧するものであるが、暗号化されている画像データを閲覧するには、認証サーバ143にその画像を特定する情報を通知して、暗号化解除鍵情報を要求する。この結果、暗号化解除鍵情報が認証サーバ143より受信するので、それを用いて暗号化を解除し、復号再生する。
【0012】
実施形態では説明を簡単なものとするため、暗号化対象の画像(ファイル)はISO/IEC JTC1/SC29/WG1 10918−1において標準化されている、通称JPEG2000と呼ばれる圧縮符号化方式によって符号化されたデータであるものとして説明するが、JPEG2000に本発明が限定されることなく、JPEGなど種々の圧縮符号化の方式を適応可能であることは以下の説明から明らかになるであろう。
【0013】
さて、装置141での暗号化処理の詳細を説明する前に、実施形態における暗号化処理の操作画面(ウインドウ)について図20を用いて説明することとする。
【0014】
図示において、200がそのウインドウを示し、201は暗号化対象となるファイル(JPEG2000による圧縮符号化されたファイル)を指定する欄であり、不図示のキーボードよりファイルのパス付きで指定しても良いし、その欄201の右端に設けられたボタンをクリックすることで、ファイルブラウザを表示し、その中で選択しても構わない。202は選択されたファイルで示される画像(復号処理を行う)を表示する領域である。
【0015】
一方、ウインドウ200の右側には、暗号化後の出力ファイル名を入力する欄203、及び、暗号化を解除する解除鍵のファイル名204(解除鍵ファイルは、出力ファイルと同じパスに格納されるものとしているので、ファイル名のみ)を入力する欄が設けられている。
【0016】
入力対象の画像がJPEG2000による圧縮符号化されているファイルの場合、そのヘッダ部を解析することで、何回のウェーブレット符号化が行われているかが既に決まっていることになる。205は、そのファイルのウェーブレット変換回数に基づいて、周波数成分をタイルパートにして示す図である。図示の場合、ウェーブレット変換回数が2回であるので、タイルパートは3つの解像度レベルグループ、すなわち、LL、{LH2+HH2+HL2}、及び、{LH3+HH3+HL3}に別れて示されている。207はマウス(登録商標)等のポインティングデバイスに連動して表示されるカーソルである。ユーザは、所望とするタイルパートの上にカーソル207を移動させ、その位置でポインティングデバイスが有するボタンをクリックする操作を行うと、そのタイルパートについての暗号化処理の設定ウインドウを表示する。図示の208がその設定ウインドウを示している。図示に示す如く、ユーザは該当するタイルパート毎に、暗号化を行うか否か、及び、終端マーカを前、後のいずれにするかを設定することができる(詳細は後述)。なお、これらの項目は2者択一であるのでコンボボックスにしているが、ラジオボタンでも構わない。要するに、表示フォーマットによって本願発明が限定されるものではないことを付言しておく。
【0017】
なお、JPEG2000の場合、1画像が複数のタイルで分割されることも有り得る。従って、複数のタイルが存在する場合には、その数に応じた表示を行うことになる。
【0018】
209は本処理を終了させるためのボタンであり、210は設定内容に従って暗号化処理を実行開始を行わせるためのボタンである。
【0019】
ボタン210がクリックされた場合には、設定内容(暗号化対象のサブバンドに関する情報、及び、その暗号化するサブバンドの符号化データに終端マーカをどの位置に配置するかという情報)が一時的にRAM(上記の如く、装置141はパーソナルコンピュータ等の汎用情報処理装置でるので、作業用RAMは備えている)に一時的に格納し、指定されたオリジナル画像ファイルを読み込み、設定された内容に従って暗号化し、その結果を欄203に記述されたファイルとして出力することになる。
【0020】
なお、上記例では、タイルパートが解像度毎のグループに分けている例を説明したが、個々のサブバンド毎、例えば、サブバンドLH3のみ暗号化を行うように指定してもよいし、複数のタイルパートに対して設定するようにしてもよい。
【0021】
また、図20では、ウェブレット変換する対象は画像全体に対するもの、すなわち、1タイル=1画像であるとしたが、タイル数は上記の如く、複数存在数r場合も有り得る。従って、この場合には、設定内容には、タイルを特定する情報も記憶する必要があるし、タイル単位に暗号化する/しないを設定しても構わない。
【0022】
<暗号化処理部>
図1は、実施形態における暗号化処理機能を説明する図である。図14における装置141における処理の一部に対応するものでもあり、図20においてボタン210がクリックされた際の装置の処理機能ブロック図であると言えば分かりやすい。なお、処理対象がJPEG2000以外のデータ形式の場合には、先ず、JPEG2000による圧縮符号化が行われることになるが、その詳細は後述することとし、ここでは既にJPEG2000により圧縮されたものとして説明する。
【0023】
図1において、11はコードストリーム入力部、12はコードストリーム暗号化部、13はコードストリーム出力部、14は図20の画面で設定した内容を保持する暗号化パラメータ部である。
【0024】
コードストリーム入力部11はユーザが指定した画像ファイルをコードストリームとして入力し、それに含まれるヘッダを解析して後続の処理に必要なパラメータを抽出し、必要な場合は処理の流れを制御し、或いは後続の処理ユニットに対して該当するパラメータを送出するものである。入力されたコードストリームPはコードストリーム暗号化部12に出力される。コードストリーム入力部11には、後述する圧縮符号化処理部から出力されるコードストリームを入力するようにする。
【0025】
コードストリーム暗号化部12はコードストリームPを入力し、コードストリームPの、暗号化パラメータ部14よりの設定パラメータにより指定された部分を暗号化処理し、暗号化されたコードストリームCを出力する。コードストリーム暗号化処理部12で実行されるコードストリーム暗号化処理の詳細は後述する。暗号化されたコードストリームCは、コードストリーム出力部13から外部の記憶装置(例えばハードディスク等)に、ユーザが指定した暗号化後のファイルとして出力される。
【0026】
コードストリーム出力部13は、前段のコードストリーム暗号化処理部12で暗号化されたコードストリームCが入力され、暗号化されたコードストリームCとして出力される。また、暗号化を解除する鍵情報は別途作成され、出力されることになる。
【0027】
次に、コードストリーム暗号化処理部12で実行されるコードストリーム暗号化処理について、図2を用いて説明する。図2は本実施形態におけるコードストリーム暗号化処理を説明するフローチャートである。
【0028】
なお、本実施形態におけるコードストリームとは、先に説明したように、ISO/IEC JTC1/SC29/WG1 10918−1において標準化されている、通称JPEG2000と呼ばれる圧縮符号化方式によって符号化された符号データ列である。従って、コードストリーム入力部11はこの符号化データ列を入力することになる。
【0029】
まず、ステップS21では、入力されたコードストリームPのメインヘッダ及びタイルパートヘッダが解析される。ここで、本実施の形態において適応可能なコードストリームPの構成を図3を用いて説明する。
【0030】
JPEG2000の圧縮符号化時において、画像は先ず複数の矩形領域に分割され、矩形領域毎にウェーブレット変換により独立に符号化処理が施される。この矩形領域を「タイル」と呼ぶ。尚、JPEEG2000において、符号化されたタイルに対応するコードストリームは、少なくとも一つ以上のタイルパートと呼ばれる領域に分割できる。JPEG2000においては、タイル毎に独立に符号化処理を行うことも可能である。
【0031】
図3(A)は、画像全体が4つのタイルに分割されて圧縮符号化された場合のコードストリームの例を示す。この場合、図3(A)に示すように、コードストリームPは一つのメインヘッダに続いて、4つのタイルパートから構成されることになる。
【0032】
メインヘッダは、符号化対象となる画像のサイズ(水平及び垂直方向の画素数)、タイルサイズ、各色成分を表すコンポーネント数、各成分の大きさ、ビット精度を表すコンポーネント情報から構成されている。
【0033】
次に、本実施形態におけるタイルパートについて説明する。図3(B)は、一つのタイルパートを構成するコードストリームの構成を示す。図3(B)に示すように、タイルパートは一つのタイルパートヘッダに続いて、少なくとも一つ以上のパケットと呼ばれる単位から構成される。
【0034】
なお、通信分野で使われている伝送単位でも「パケット」という表現が使われているが、実施形態で言うパケットとは、通信レベル(プロトコル層)のパケットではなく、アプリケーションレベルのデータの塊を差すことに注意されたい。
【0035】
タイルパートヘッダは当該タイルパートのビットストリーム長とヘッダ長を含めたタイル長及び当該タイルに対する符号化パラメータから構成される。符号化パラメータには離散ウェーブレット変換のレベル(何回ウェーブレットを行ったか)、フィルタ(タップ数の指定)の種類等が含まれている。
【0036】
次に、本実施形態におけるパケットについて説明する。パケットとは、所定の解像度レベル、所定のレイヤ、所定のプレシンクト、及び所定のコンポーネントにより特定される符号化単位である。また、パケットは、当該パケットに対応するエントロピ符号から構成されるパケットボディ、及び当該パケットボディに関する符号化パラメータを記録したパケットヘッダから構成される。更に、パケットは、図3(C)に示すように、少なくとも一つ以上のコードブロックと呼ばれる単位から構成される。解像度レベル、レイヤ、プレシンクト、コンポーネント、及びコードブロックについての詳細は後述する。従って、このパケットヘッダを解析すると、当該パケットが如何なる解像度レベル(図20の周波数成分グループに対応する)、レイヤ、プレ辛苦と、及びコンポーネントに属するかが判別可能となっている。より分かりやすく説明するのであれば、注目パケットが暗号化対象か否かが判別できることを意味する。
【0037】
以上、本実施の形態において適応可能なコードストリームPの構成を説明した。
【0038】
図2に示すフローチャートの説明に戻る。ステップS22では、パラメータjが0に初期化される。jはパケットを特定するパラメータである。続いて、ステップS23では特定されたパケットjが暗号化対象であるか否かを、暗号化パラメータ部14からの情報に従って判定される。パケットjが暗号化対象である場合には処理をステップS24に進め、暗号化対象でない場合には処理をステップS25に進める。
【0039】
暗号化対象か否かの設定は、先に図20で説明した通りであるが、例えば、暗号化パラメータを別途ファイルとして保存しておき、それを使い回しするようにしても構わない。
【0040】
いずれにしても、「低解像度は誰にでも閲覧可能とし、高解像度は許可されたユーザだけ閲覧可能とする」ようなアクセス制御を行う場合には、ステップS23において高解像度レベルに対応するパケットだけを暗号化対象とし、低解像度レベルに対応するパケットは暗号化対象としないように設定することになる。また、「領域Aは誰にでも閲覧可能とし、領域Bは許可されたユーザだけ閲覧可能とする」ようなアクセス制御を行う場合(タイルが複数存在する場合、或いは特定のサブバンドのみを暗号化する場合等)には、その領域Bに対応するパケットだけを暗号化対象とし、領域Aに対応するパケットは暗号化対象としないように設定すればよい。
【0041】
また、予めコードストリームに含まれる全てのパケットが暗号化対象である場合には、ステップS23における判定処理を省略することも可能である。更に、後述するパケット暗号化処理内において暗号化対象とするコードブロックを判定するような場合にも、ステップS23における判定処理を省略することが可能である。
【0042】
次に、ステップS24では、パケットjに対して、パケット暗号化処理が施される。パケット暗号化処理の詳細は後述する。そして、ステップS25では、パラメータjの値が1だけ増やされ、ステップS26でパラメータjとMの値が比較される。ここでMはコードストリームに含まれるパケットの総数である。jがMより小さいときは処理をステップS23に進め、jがM以上の時にはコードストリーム暗号化処理を終了する。
【0043】
以上、本実施形態におけるコードストリーム暗号化処理について説明した。
【0044】
次に、本実施の形態におけるパケット暗号化処理の詳細について、図4を用いて説明する。すなわち、暗号化対象のパケットであると判断した場合の処理である。
【0045】
まず、ステップS41では、入力されたパケットjのパケットヘッダが解析され、当該パケットに含まれるコードブロック等の構造が解析される。その後、ステップS42ではパラメータiが0に初期化される。iはコードブロックを特定するパラメータである。続いて、ステップS43では、特定されたコードブロックiが暗号化対象であるか否かが判定される。コードブロックiが暗号化対象である場合には処理をステップS44に進め、暗号化対象でない場合には処理をステップS48に進める。
【0046】
尚、前述した図2におけるステップS23などにより、予めパケットに含まれる全てのコードブロックが暗号化対象であることが既知である場合には、ステップS43における判定処理を省略することも可能である。
【0047】
続いて、ステップS44では、コードブロックiに暗号化処理が施される。本実施形態においては特に暗号化アルゴリズムについては特に限定しないが、例えばDES(Data Encryption Standard)や、AES(Advanced Encryption Standard)などの共通鍵暗号アルゴリズムや、RSAなどの公開鍵暗号アルゴリズムなどの種々の暗号アルゴリズムを適用可能である。適応した暗号アルゴリズムを特定する情報は、メインヘッダ、タイルパートヘッダ、或いは、パケットヘッダなどに記録して、後述する暗号復号処理部に送信するようにすればよい。また、後述する終端マーカの後に付与する付加情報の一部として送信しても良い。また、予め暗号復号処理部と復号処理部で共有するようにしておいても良い。
【0048】
次に、ステップS45では、暗号化対象のコードブロックiを、スクランブル再生モードとするか、或いは非スクランブル再生モードとするかが選択される。スクランブル再生モードの場合には処理をステップS46に進め、一方で非スクランブル再生モードの場合には処理をステップS47に進める。
【0049】
ここで、スクランブル再生モードと非スクランブル再生モードについて説明する。
【0050】
一般に、JPEG2000等の階層構造を有する画像データを再現するときには、低解像度の符号化データから高解像度の符号化に向かって復号処理を行っていく。従って、ウェーブレット変換を利用するJPEG2000の符号化データにおいて、LLを先ず復号し、その復号結果と{LH2+HH2+HL2}の符号化データとを利用して、更に高い解像度の画像を再現する。そしてその結果と{LH3+HH3+HL3}の符号化データとを利用して更に高い解像度のデータを再現し、最終的な復号結果となる。
【0051】
ここで、{LH3+HH3+HL3}の符号化データが暗号化されていると仮定する。このとき、暗号化を解除する鍵情報を持たないとすると、{LH2+HH2+HL2}までは正常な像として再現できるものの、続く{LH3+HH3+HL3}を利用したとたんに無意味なノイズが重畳した像が再現されてしまう。この再生モードを、実施形態ではスクランブル再生モードという。
【0052】
一方、データとしてはLL、{LH2+HH2+HL2}が非暗号化され、{LH3+HH3+HL3}の符号化データが暗号化されている場合、復号処理を{LH2+HH2+HL2}の符号化データに基づく復号処理で中止する再生モードを、実施形態では、非スクランブル再生モードという。
【0053】
このスクランブル再生モードと非スクランブル再生モードについて、図7に示す例を用いて説明する。
【0054】
図7(a)は3つの解像度レベル(ウェーブレット変換を2回行った場合)を有するコードストリームのウェーブレット変換領域を示す図である。また、ここでは、上記と同様、最高解像度レベルである{LH3,HH3,HL3}に対応するパケットを暗号化し、それ以外の解像度レベルは暗号化しない例を示している。
【0055】
同図(b)は通常の復号化処理で再生した像を示し、{LH3,HH3,HL3}の暗号化された復号データを利用したために、画像にスクランブルされた状態を示している。また、同図(c)は非スクランブル再生モードを適用することで、最高解像度である{LH3,HH3,HL3}の暗号化データを利用せず、それより1段階前の解像度で処理を打ち切った場合の例を示している。同図(c)は、最高解像度の画像とはならないので、多少のジャギーが発生するが、少なくとも同図(a)よりは意味のある画像が再現できることになる。なお、暗号化を解除する鍵情報を取得した場合、当然、{LH3,HH3,HL3}の暗号化を解除して、復号処理が継続することができるので、この場合には、同図(d)に示すようになる。
【0056】
このように、スクランブル再生モードで処理した場合には、暗号化された解像度レベルは暗号化された状態で再生復号される。即ち、図7(b)に示すように、最高解像度レベル以外(暗号化されていない解像度レベル)は正常に再生されるが、最高解像度レベルのパケット(暗号化されている解像度レベル)はノイズとなって再生される。その結果、画像全体としては、いわゆるスクランブルされたような状態となって見える。
【0057】
一方、非スクランブル再生モードで処理した場合には、暗号化された解像度レベルは全く再生復号されない。即ち、図7(c)に示すように、暗号化されていない中の最高解像度レベル(図示では{LH2+HH2+HL2})まで正常に再生され、それより高い解像度の再現は行わない。その結果、画像全体としては、元の画像の解像度に比べて解像度が低い画像となって見えるものの、違和感のない再現が可能になる。
【0058】
上記解像度レベルに対する再生制御を行うための処理は、図4のステップS45の判定で行われる。
【0059】
ステップS46に処理が進むと、終端マーカが暗号化されたコードブロックiの後ろに付与される。一方、ステップS47では、終端マーカが暗号化されたコードブロックiの前に付与される。
【0060】
ここで、終端マーカについて説明する。本実施形態における終端マーカとは、コードブロック内の符号列とコードブロック外の符号列の境界を表す特別なマーカである。例えば、JPEG2000規格においては、0xFF90以上の値を有する符号が終端マーカに割り当てられている。このため、圧縮復号処理部では終端マーカを受信すると、その後のコードブロック内のビットストリームは復号しないように設計されている。要するに、終端マーカ(終端情報)は、それより前のデータは意味のあるデータであるとし、それ以降は無意味なデータであるとするものである。本実施形態ではこれを利用することになる。
【0061】
終端マーカについて、更に、図5を用いて説明する。図5において51、及び53はビットストリーム、52は終端マーカを表す。図5に示したような状態の場合、後述する圧縮復号処理部はビットストリーム51は通常通り圧縮復号していくが、終端マーカ51を検出した場合、同じコードブロック中の後続するビットストリーム53は圧縮復号しない。
【0062】
本発明は、こうした終端マーカの性質を利用して、スクランブル再生モードの場合は終端マーカを暗号文の後ろに付与し、非スクランブル再生モードの場合は終端マーカを暗号文の前に付与するように処理するものである。即ち、スクランブル再生モードにおいては、暗号文は終端マーカの前に位置するためスクランブル状態として再生されるが、非スクランブル再生モードにおいては、暗号文は終端マーカの後に位置するため再生されない。
【0063】
図20で説明した、設定ウインドウ208における終端マーカの選択パラメータ「前」、「後」はかかる意味である。従って、図20におけるユーザが選択する項目を別な言い方をすれば、スクランブル再生モードにするか、非スクランブル再生モードにするか、でもある。
【0064】
また、本実施形態では終端マーカだけを付与するものとして説明したが、本発明はこれに限定されることなく、種々の付加情報を終端マーカの後に付与するようにしてもよい。例えば、当該コードブロックやパケットなどを復号する鍵に関連する情報(暗号化された鍵や、鍵へのポインタなど)や、暗号化のための各種パラメータ(ブロック暗号における利用モードなど)や、暗号化アルゴリズムに関連する情報(暗号化アルゴリズム名や暗号化アルゴリズムを特定する情報)などを付加するようにしても良い。
【0065】
また、本実施の形態において、ステップS46、及びステップS47において終端マーカ(及び付加情報)を付与する方法については、終端マーカ(及び付加情報)を新たに追加しても良いし、暗号化された、又は、暗号化されていないビットストリームと置換するようにしても良い。終端マーカを付与する場合の例について更に図6を用いて説明する。
【0066】
終端マーカを追加した場合の例を図6(a)、及び(b)に示す。図6(a)、及び(b)は暗号化されたパケットボディを示している。図6に示す例では、パケットは図中太線で示す5つのコードブロックから構成されている。また、図中網掛けした箇所は終端マーカを示す。すなわち、図6(a)はスクランブル再生モードを示し、図6(b)は非スクランブル再生モードを示すことになるのは、上記理由から明らかである。
【0067】
図6(a)、及び(b)に示すように、終端マーカを追加した場合には、暗号化の前後で追加した終端マーカの分だけコードブロックの長さが長くなる為に、パケットヘッダに記録されている各コードブロックの長さや、タイルパートヘッダに記録されているタイルパートの長さを適当な長さに修正する必要がある。
【0068】
一方、終端マーカを置換した場合の例を図6(c)、(d)に示す。図6(c)及び(d)は、図6(a)、及び(b)と同様に暗号化されたパケットボディを示している。図6(c)、及び(d)に示す例でも、パケットは図中太線で示す5つのコードブロックから構成されている。また、図中網掛けした箇所は終端カーマを示す。即ち、図6(c)はスクランブル再生モードを示し、図6(d)は非スクランブル再生モードを示す。
【0069】
図6(c)、及び(d)に示すように、終端マーカを置換した場合には、暗号化の前後でコードブロックの長さが変化することはない。終端マーカを置換する前のビットストリームの情報は、タイルパートヘッダやパケットヘッダなどに記録しておくようにすればよい。また、終端マーカを置換する前のビットストリームへ戻す為の鍵情報として、暗号化処理部から復号処理部に送信されるようにしても良い。
【0070】
尚、本実施形態では、ステップS45においてスクランブルモードが選択された場合、ステップS46において、終端マーカを暗号化したコードブロックiの後ろに付けるようにした。しかしながら本実施形態はこれに限定されることなく、スクランブルモードの場合には終端マーカを付けないようにすることも可能であることは明らかである。この場合、メインヘッダ、タイルパートヘッダ、或いはパケットヘッダなどに当該コードブロック、或いはパケットが暗号化されていることを記録するようにすれば良い。
【0071】
また、本実施形態では、前述したように終端マーカの後に更に付加情報を付与することも可能である。図6(e)、及び(f)は、終端マーカの後にパケットに関する付加情報(図中、斜線で示す)を付与した場合の構成を示す。図6(e)はスクランブルモードにおけるパケットの構成を示し、図6(f)は非スクランブルモードにおけるパケットの構成を示す。図6(e)に示すように、スクランブルモードの場合は、パケットに関する付加情報は、パケットに含まれる最初のコードブロックの後だけに、終端マーカに続けて付加するようにすれば良い。一方、図6(f)に示すように、非スクランブルモードの場合は、パケットに関する付加情報は、パケットに含まれる最初のコードブロックの前に、終端マーカに続けて付加し、更に、最初のコードブロック以外の夫々のコードブロックの前には終端マーカだけを付加するようにすればよい。以上のような構成とすることによって、パケットに関する付加情報を(パケット中の全てのコードブロックに付与することなく)効率的に付与できる。
【0072】
次に、ステップS48では、パラメータiの値が1だけ増やされ、ステップS49でパラメータiとNの値が比較される。ここで、Nはパケットに含まれるコードブロックの総数である。iがNより小さいときは処理をステップS43に進め、iがN以上の時にはパケット暗号化処理を終了する。
【0073】
尚、本実施の形態では、「暗号化されているか否か」という情報は終端マーカの直後に暗号化されていることを示す符号によって記録した。この場合、後述する暗号復号処理部において、パケットが暗号化されているか否かを確かめるためには、パケットの構造を解析して、コードブロック内の終端マーカの直後を調べる必要がある。しかしながら、本発明はこれに限定されることなく、終端マーカに加えて、メインヘッダ、タイルパートヘッダ、パケットヘッダの内部或いは外部において、パケットが暗号化されていることを示すような情報を記録するようにしてもよい。このようにすることによって、後述する暗号復号処理部において、パケットの構造を解析することなく、パケットが暗号化されているか否かを調べることが可能である。
【0074】
以上、本実施形態における暗号化処理部について説明した。
【0075】
<暗号復号処理部>
次に、図8を用いて本実施の形態における暗号復号処理機能を説明する。この処理は、図14における画像復号装置142における処理であると言えば分かりやすい。また、JPEG2000による復号処理は後段に位置することになる。図8の構成は、あくまで暗号を復号、すなわち、解除する処理機能を示していることに注意されたい。
【0076】
図8において、81はコードストリーム入力部、82はコードストリーム復号部、83はコードストリーム出力部である。
【0077】
コードストリーム入力部81はコードストリームを入力し、それに含まれるヘッダを解析して後続の処理に必要なパラメータを抽出し、必要な場合は処理の流れを制御し、或いは後続の処理ユニットに対して該当するパラメータを送出するものである。通常は、前述した図1に示す暗号化処理部において暗号化処理されたコードストリームCが入力される。しかしながら、暗号化が施されていないコードストリームが入力されても構わない。入力されたコードストリームPはコードストリーム暗号化部12に出力される。
【0078】
コードストリーム復号部82はコードストリームCを入力し、暗号復号鍵情報に従って(もし存在すれば)、コードストリームCの所定の部分を復号処理し、復号処理されたコードストリームP’が出力される。コードストリームCに施されている全ての暗号が復号(暗号解除)される場合には、コードストリームP’はコードストリームPと等しいものになる。しかしながら、後述する種々の条件(復号鍵が存在しなかったり、明示的にスクランブル再生が指定された場合など)により、全ての暗号が復号されない場合には、コードストリームP’はコードストリームPと等しいものとはならない。コードストリーム復号処理部82で実行されるコードストリーム復号処理の詳細は後述する。復号されたコードストリームCはコードストリーム出力部83に出力される。
【0079】
コードストリーム出力部83は、前段のコードストリーム復号処理部82で復号されたコードストリームP’が入力され、復号されたコードストリームP’が出力される。復号されたコードストリームP’は、画像として再生するために、後述する圧縮復号処理部に出力される。
【0080】
次に、コードストリーム復号処理部82で実行されるコードストリーム復号処理について図9を用いて説明する。図9は本実施形態におけるコードストリーム復号処理を説明するフローチャートである。
【0081】
まず、入力されたコードストリームCに対して、ステップS91では、メインヘッダ及びタイルパートヘッダが解析される。次に、ステップS92では、パラメータjが0に初期化される。jはパケットを特定するパラメータである。続いて、ステップS93では、特定されたパケットj内に暗号化されたコードブロックがあるか否かが判定される。
【0082】
実施形態では、パケットを構成するコードブロック中の終端マーカの直後に暗号化されている/いないを示す情報を格納しているので、これを検出することで行うが、例えば、メインヘッダ、タイルパートヘッダ、パケットヘッダの内部或いは外部において、パケットが暗号化されていることを示す情報を調べることによって、判定しても構わない。これらの情報が用いられていない場合には、ステップS93による判定処理をスキップすることも可能である。
【0083】
ステップS94では、パケットjに対して、パケット復号処理が施される。パケット復号処理の詳細は後述する。また、ステップS95では、パラメータjの値が1だけ増やされ、ステップS95でパラメータjとMの値が比較される。ここで、Mはコードストリームに含まれるパケットの総数である。jがMより小さいときは処理をステップS93に進め、jがM以上の時にはコードストリーム復号処理を終了する。
【0084】
次に、本実施形態におけるパケット復号処理の詳細について、図10を用いて説明する。この処理は、注目パケット内に暗号化されたコードブロックが存在すると判定された場合である。
【0085】
まず、入力されたパケットjに対して、ステップS101では、パケットjのパケットヘッダが解析され、当該パケットに含まれるコードブロック等の構造が解析される。その後、ステップS102では、パラメータiが0に初期化される。パラメータiはコードブロックを特定するパラメータである。
【0086】
続いて、ステップS103では、特定されたコードブロックiが暗号化されているか否かが判定される。この判断は、先に説明したように、終端マーカの直後に暗号化されていることを示す情報があるか否かで判断するが、メインヘッダ、タイルパートヘッダ、或いはパケットヘッダ内に、暗号化されている箇所を明記する情報を格納しておき、これによって判断しても構わない。
【0087】
暗号化されていないと判断した場合には、ステップS107に進み、注目コードブロックはそのままの状態で出力され、変数iを1つ増加させ、上記ステップS103以降の処理(次のコードブロックに対する処理)を行う。
【0088】
さて、コードブロックjが暗号化されていると判断した場合、処理はステップS104に進み、暗号化を解除する鍵情報が存在するか否かを判断する。
【0089】
もし、その鍵情報が存在しないと判断した場合には、ステップS107に移って、そのままの状態で後段の処理に渡すことになる。従って、終端マーカがコードブロックの先頭にある場合には、そのまま後段に出力され、終端マーカ以降、すなわち、注目コードブロックについては符号化データの復号処理が行われなくなるので、非スクランブル再生が行われることになる。また、終端マーカがコードブロックの後端にある場合には、暗号化されたままの状態で符号化データを復号してしまうので、スクランブル再生が行われることになる(この場合には、終端マーカを削除しても構わない)。
【0090】
さて、ステップS104において、暗号を解除する鍵情報が存在すると判断した場合、処理はステップS106に進む。ここでは、注目の暗号化されたコードブロックを、その鍵情報に従って復号する。このとき、終端マーカがコードブロックの先頭にあった場合には、その後端に移動させる(削除でも良い)。更に、メインヘッダ、タイルパートヘッダ、或いはパケットヘッダに、当該コードブロックが暗号化されている情報が記録されている場合には、これらの情報を暗号化されていないことを表すように変更する。
【0091】
この後、処理はステップS107に進み、暗号解除毎のコードブロックを出力し、変数iを更新することになる。
【0092】
以上の処理を、ステップS108で注目パケットに含まれる全コードブロックに対して行ない、その処理を終えた場合には図9のステップS95に復帰し、次のパケットに対する処理を行うことになる。
【0093】
以上、本実施形態における暗号復号処理部について説明した。
【0094】
上記処理を行うと、暗号化を解除する鍵情報が存在しない場合、各パケットを構成するコードブロックの終端マーカは、入力したストリームのまま維持されることになる。換言すれば、暗号化したユーザの意図が反映された状態で、符号化画像データの復号処理が行われることになる。
【0095】
一方、暗号化を解除する鍵情報が存在した場合には、暗号化されたコードブロックのデータの暗号化が解除され、尚且つ、終端マーカがコードブロックの後端に位置する、もしくは削除されることになり、そのコードブロックを利用した再現処理が行われることになる。
【0096】
<圧縮符号化処理部>
以上であるが、実施形態における装置141は、既にJPEG2000で圧縮符号化された画像ファイルを暗号化する例を説明したが、生の画像データを符号化し、それに後続する処理として図1の構成を設けても構わない。
【0097】
従って、かかる構成にした場合の画像圧縮符号化について説明することとする。
【0098】
まずはじめに、図11を用いて本実施形態における圧縮符号化処理を説明する。
【0099】
図11において、111は画像入力部、112は離散ウェーブレット変換部、113は量子化部、114はエントロピ符号化部、115は符号出力部である。まず、画像入力部111に対して符号化対象となる画像を構成する画素信号がラスタ−スキャン順に入力し、その出力は離散ウェーブレット変換部112に入力される。以降の説明では、その説明を容易なものとするため、画像信号はモノクロの多値画像を表現しているが、カラー画像等、複数の色成分を符号化するならば、RGB各色成分、或いは輝度、色度成分を上記単色成分として圧縮すればよい。
【0100】
離散ウェーブレット変換部112は、入力した画像信号に対して2次元の離散ウェーブレット変換処理を行い、変換係数を計算して出力するものである。図12(a)は離散ウェーブレット変換部12の基本構成を表したものであり、入力された画像信号はメモリ121に記憶され、処理部122により順次読み出されて変換処理が行われ、再びメモリ121に書きこまれており、本実施の形態においては、処理部122における処理の構成は同図(b)に示すものとする。同図において、入力された画像信号は遅延素子およびダウンサンプラの組み合わせにより、偶数アドレスおよび奇数アドレスの信号に分離され、2つのフィルタpおよびuによりフィルタ処理が施される。同図sおよびdは、各々1次元の画像信号に対して1レベルの分解を行った際のローパス係数およびハイパス係数を表しており、次式により計算されるものとする。
d(n) = x(2*n + 1) − floor((x(2*n) + x(2*n + 2))/2) (式1)
s(n) = x(2*n) + floor((d(n − 1) + d(n))/4) (式2)
ただし、x(n)は変換対象となる画像信号であり、floor(x)はxを越えない最大整数を返す関数である。
【0101】
以上の処理により、画像信号に対する1次元の離散ウェーブレット変換処理が行われる。2次元の離散ウェーブレット変換は、1次元の変換を画像の水平・垂直方向に対して順次行うものであり、その詳細は公知であるのでここでは説明を省略する。図12(c)は2次元の変換処理により得られる2レベルの変換係数群の構成例であり、画像信号は異なる周波数帯域の係数列HH1、HL1、LH1、…、LLに分解される。なお、以降の説明ではこれらの係数列をサブバンドと呼ぶ。また、同じ分割レベルに属するサブバンドの集合を解像度レベルと呼ぶ。例えば、HH1、HL1、LH1は同じ解像度レベルに属する。各サブバンドの係数は後続の量子化部113に出力される。
【0102】
量子化部113は、入力した係数を所定の量子化ステップにより量子化し、その量子化値に対するインデックスを出力する。ここで、量子化は次式により行われる。
q = sign (c) floor(abs(c) / Δ) (式3)
sign(c) = 1; c >= 0 (式4)
sign(c) = −1; c < 0 (式5)
ここで、cは量子化対象となる係数である。
【0103】
また、本実施の形態においてはΔの値として1を含むものとする。この場合実際に量子化は行われず、量子化部113に入力された変換係数はそのまま後続のエントロピ符号化部114に出力される。
【0104】
エントロピ符号化部114は入力したサブバンドを互いに重ならない複数の矩形領域に分割し、夫々の分割した矩形領域に含まれる量子化インデックスをビットプレーンに分解し、ビットプレーンを単位として2値算術符号化を行ってコードストリームを出力する。ここで、エントロピ符号化部における符号化単位となる矩形領域をコードブロックと呼ぶ。
【0105】
図13はエントロピ符号化部14の動作を説明する図であり、この例においては4×4の大きさを持つコードブロックにおいて非0の量子化インデックスが3個存在しており、それぞれ+13、−6、+3の値を持っている。エントロピ符号化部14はコードブロックを走査して最大値MAXを求め、次式により最大の量子化インデックスを表現するために必要なビット数Sを計算する。
S = ceil(log2( abs(MAX) )) (式6)
ここでceil(x)はx以上の整数の中で最も小さい整数値を表す関数である。
【0106】
図13においては、最大の係数値は13であるのでSは4であり、シーケンス中の16個の量子化インデックスは同図(b)に示すように4つのビットプレーンを単位として処理が行われる。最初にエントロピ符号化部114は最上位ビットプレーン(同図MSBで表す)の各ビットをエントロピ符号化(本実施の形態では2値算術符号化)し、ビットストリームとして出力する。次にビットプレーンを1レベル下げ、以下同様に対象ビットプレーンが最下位ビットプレーン(同図LSBで表す)に至るまで、ビットプレーン内の各ビットを符号化し符号出力部15に出力する。なお上記エントロピ符号化時において、各量子化インデックスの符号は、上位から下位へのビットプレーン走査において最初(最上位)に符号化されるべき非0ビットが検出されるとそのすぐ後に当該量子化インデックスの正負符号を示す1ビットを続けて2値算術符号化することとする。これにより、0以外の量子化インデックスの正負符号は効率良く符号化される。
【0107】
尚、以上の様にエントロピ符号化されたエントロピ符号を所定の符号量となるように集めた処理単位をレイヤと呼ぶ。複数のレイヤを構成することにより、復号時に種々の符号量に対応した画像を再生することが可能となる。
【0108】
また、最上位のビットプレーンの情報が各値に支配的であることに注意されたい。つまり、先に説明した例では、ウェーブレット変換する際のサブバンド、もしくは周波数成分グループに対して暗号化する/しないを設定したが、上記の如く、各ビットプレーンのどのレベルについて暗号化する/しないを設定したとしても同様の効果が期待できる。例えば、最下位(ビット0)のビットプレーンに対して暗号化を行えば、それより1つ上位(ビット1)のプレーンまでの復号化でもって再生される画像は、最高解像度よりも1つ下の解像度となって再現できることになり、図7とほぼ等価の状態となる。
【0109】
<圧縮復号処理部>
次に以上述べた圧縮符号化処理部による符号列を復号する方法について説明する。
【0110】
図15は本実施の形態における圧縮復号化処理部の構成を表すブロック図であり、151が符号入力部、152はエントロピ復号部、153は逆量子化部、154は逆離散ウェーブレット変換部、155は画像出力部である。
【0111】
符号入力部151は符号列を入力し、それに含まれるヘッダを解析して後続の処理に必要なパラメータを抽出し必要な場合は処理の流れを制御し、あるいは後続の処理ユニットに対して該当するパラメータを送出するものである。図8に示すコードストリーム出力部83からの出力を、入力すると言えばわかり易い。また、符号列に含まれるビットストリームはエントロピ復号部152に出力される。
【0112】
エントロピ復号部152はビットストリームをコードブロックに分割し、コードブロック内においてビットプレーン単位で復号し、出力する。この時の復号化手順を図16に示す。図16(a)は復号対象となるコードブロックをビットプレーン単位で順次復号化し、最終的に量子化インデックスを復元する流れを図示したものであり、同図の矢印の順にビットプレーンが復号される。復元された量子化インデックスは逆量子化部153に出力される。
【0113】
次に、逆量子化部153は入力した量子化インデックスから、次式に基づいて離散ウェーブレット変換係数を復元する。
c’ = Δ * q ; q ≠ 0 (式7)
c’ = 0 ; q = 0 (式8)
ここで、qは量子化インデックス、Δは量子化ステップであり、Δは符号化時に用いられたものと同じ値である。c’は復元された変換係数であり、符号化時ではsまたはdで表される係数の復元したものである。変換係数c’は後続の逆離散ウェーブレット変換部154に出力される。
【0114】
図17は逆離散ウェーブレット変換部154の構成および処理のブロック図を示したものである。同図(a)において、入力された変換係数はメモリ171に記憶される。処理部172は1次元の逆離散ウェーブレット変換を行い、メモリ171から順次変換係数を読み出して処理を行うことで、2次元の逆離散ウェーブレット変換を実行する。2次元の逆離散ウェーブレット変換は、順変換と逆の手順により実行されるが、詳細は公知であるので説明を省略する。また同図(b)は処理部172処理ブロックを示したものであり、入力された変換係数はuおよびpの2つのフィルタ処理を施され、アップサンプリングされた後に重ね合わされて画像信号x’が出力される。これらの処理は次式により行われる。
x’(2*n) = s’(n) − floor ((d’(n−1) + d’(n))/4) (式9)
x’(2*n+1) = d’(n) + floor ((x’(2*n) + x’(2*n+2))/2) (式10)
ここで、式(1)、式(2)、および式(9)、式(10)による順方向および逆方向の離散ウェーブレット変換は完全再構成条件を満たしているため、本実施形態において量子化ステップΔが1であり、ビットプレーン復号において全てのビットプレーンが復号されていれば、復元された画像信号x’は原画像の信号xと一致する。
【0115】
以上の処理により画像が復元されて画像出力部155に出力される。 画像出力部155はモニタ等の画像表示装置であってもよいし、あるいは磁気ディスク等の記憶装置であってもよい。
【0116】
<第1の実施形態の変形例>
上記実施形態では、例えば、図7の如く、{LH3+HH3+HL3}について暗号化され、それ以外では非暗号化の符号化データを装置142が受信し再生するときであって、その装置142が暗号解除鍵情報を持たない場合には、上記最高解像度に相当するデータが暗号化されたまま再生することになり、結果的に、図7(b)に示すようなスクランブルされた画像が表示されてしまう。
【0117】
しかしながら、もともと暗号化する側である装置141のユーザは、{LH2+HH2+HL2}までの、最高解像度よりも1つ手前までの再生を許容しているわけであるから、装置142のユーザが仮に暗号化を解除する鍵情報を所有していなくても、必要に応じて{LH3+HH3+HL3}のデータを利用する直前までの状態で再現できるようにすることが望まれる。
【0118】
そこで、本第1の実施形態における変形例では、この問題を解決する。
【0119】
図10Bは、先に説明した図10Aに置き換わるものである。それ以外の装置構成は第1の実施形態と同様であるものとし、以下では、図10Bについて説明することとする。
【0120】
図10Bにおいて、図10Aと異なる点は、ステップS105、109、110が追加された点であるが、以下、順に説明することとする。なお、以下の処理をはじめるに当たって、装置142のユーザは、スクランブルを解除するか否かを設定しているとする。この設定は、暗号化解除する際に適宜設定しても良いし、予め、そのユーザの設定事項をファイル等に記憶保持しておくようにしてもよい。前者の場合には、個々の画像を再生する際に、その都度行えることになり、後者の場合には特に変更しない限りは、その設定内容が全ての画像復号に反映されることになる。
【0121】
まず、入力されたパケットjに対して、ステップS101では、パケットjのパケットヘッダが解析され、当該パケットに含まれるコードブロック等の構造が解析される。その後、ステップS102では、パラメータiが0に初期化される。パラメータiはコードブロックを特定するパラメータである。
【0122】
続いて、ステップS103では、特定されたコードブロックiが暗号化されているか否かが判定される。この判断は、先に説明したように、終端マーカの直後に暗号化されていることを示す情報があるか否かで判断するが、メインヘッダ、タイルパートヘッダ、或いはパケットヘッダ内に、暗号化されている箇所を明記する情報を格納しておき、これによって判断しても構わない。
【0123】
暗号化されていないと判断した場合には、ステップS107に進み、注目コードブロックはそのままの状態で出力され、変数iを1つ増加させ、上記ステップS103以降の処理(次のコードブロックに対する処理)を行う。
【0124】
また、コードブロックjが暗号化されていると判断した場合、処理はステップS104に進み、暗号化を解除する鍵情報が存在するか否かを判断する。
【0125】
もし、その鍵情報が存在しないと判断した場合には、ステップS109に分岐し、鍵情報が存在すると判断した場合には、ステップS105に進むことになる。
【0126】
ステップS105では、所定のコードブロックをスクランブル再生するか、或いは非スクランブル再生するかが判定される。これは先に説明したように、装置142のユーザの設定内容によって判断することになる。通常、復号鍵を有している場合は非スクランブル再生することが多い。しかしながら、暗号化されているコードストリームの一部だけを復号し、一部の暗号文を復号しない場合などに、ステップS105により明示的にスクランブル再生を選択することが可能である。尚、復号鍵を有する全ての暗号文を復号する場合には、ステップS105は省略可能であることは明らかである。
【0127】
そして、ステップS106に進むと、コードブロックiが暗号の復号処理(暗号解除処理)される。暗号復号処理は、前述した図4におけるステップS44で用いた暗号アルゴリズムに対応したものでなければならない。ステップS44で用いた暗号アルゴリズムは、メインヘッダ、タイルパートヘッダ、或いはパケットヘッダに記録してある情報を調べることにより知ることができる。また、前述したする終端マーカの後に付与されている付加情報を調べるようにしても良い。また、暗号復号処理が施されたコードブロック内の終端マーカはコードブロックの終端に位置させるか、或いは、除去する。更に、メインヘッダ、タイルパートヘッダ、或いはパケットヘッダに、当該コードブロックが暗号化されている情報が記録されている場合には、これらの情報を暗号化されていないことを表すように変更する。
【0128】
一方、ステップS104で暗号を解除する鍵情報がないと判断した場合、処理はステップS109に進むことになる。このステップS109では、復号鍵がない場合に、非スクランブル再生するか否かが判定される。この判定は、ステップS105と同様であり、ユーザによって明示的に指示するようにしても良いし、予めRAMやHDDに記憶されている情報を用いて判定するようにしても良い。そして、非スクランブル再生する場合にはステップS110に進み、スクランブル再生する場合にはステップS107に進む。ステップS110では、終端マーカが暗号文の前に付与されている場合には暗号文の後ろに移動させる。或いは、終端マーカを消去するようにしても構わない。
【0129】
ステップS109、及びステップS110における処理について説明する。前述した暗号化処理部において、非スクランブル再生モードとした場合には、コードブロックi内において暗号文の前に終端マーカが付加されている。これにより、当該終端マーカにより暗号文を復号しないために、通常は非スクランブル再生モードとなる。しかしながら、本実施形態によれば判定処理S109により、スクランブル再生とするか非スクランブル再生とするかを選択することが可能となる。
【0130】
処理が、ステップS107に進むと、そのコードブロックを出力し、変数iをインクリメントし、ステップS108で注目パケットに含まれる全コードブロックに対して行なったか否かを判断し、否の場合には、ステップS103以降の処理を繰り返す。また、注目パケットの全コードブロックに対する処理が終了したと判断した場合には、図9のステップS95に復帰し、次のパケットに対する処理を行うことになる。
【0131】
以上の結果、この変形例によれば、暗号化を解除する鍵情報を有しなくても、暗号化したユーザが認めた最高解像度レベルでの非スクランブル再生が行えるようになり、少なくともオリジナル画像そのものとはいかないまでも、許容された範囲内で最高画質を閲覧することが可能になる。
【0132】
なお、上記例では、暗号化されているか否かは、終端マーカの直後に、暗号化されているか否かの情報を付加し、それを識別することで行うものとして説明したが、JPEG2000では、通常、終端マーカを使うことが少ない。従って、終端マーカが存在するか否かで判定するようにしてもよい。この場合、終端マーカが存在すれば、暗号化が行われ、尚且つ、非スクランブル再生モードが設定されると見なすことになるであろう。
【0133】
<第2の実施形態>
上記実施形態(第1の実施形態及びその変形例)においては、図4に示したように暗号化をコードブロック単位で行うようにしたが、本発明はこれに限定されることなく、入力されたコードストリームを構成する種々の論理単位毎や、階層構造毎に暗号化をするようにすることも可能であることは明らかである。
【0134】
ここで、論理単位としては、パケット、タイルパート、タイル、コードストリーム、及びこれらの組み合わせなどを適応可能である。また、階層構造としては、解像度レベル、レイヤ、プレシンクト、コンポーネント、及びこれらの組み合わせなどを適応可能である。更に、階層構造毎に暗号化が施された場合には、メインヘッダ、タイルパートヘッダ、或いはパケットヘッダなどに、「どの階層構造が暗号されているか」ということを特定する情報を記録するようにしておく。
【0135】
これらの論理単位や階層構造ごとに暗号化が施された場合でも、第1の実施形態に示したように、非スクランブル再生モードの場合は、暗号化が施された論理単位や階層構造に含まれる全てのコードブロック内の暗号文の前に終端マーカを付与するようにすることによって、非スクランブル再生モードとすることが可能である。
【0136】
また、前述したように、論理単位毎や階層構造毎に暗号化を施した場合には、当該暗号化されている論理単位や階層構造を特定し、特定された論理単位や解像構造の暗号を復号するようにすればよい。
【0137】
<第3の実施形態>
上記第1、第2の実施形態においては、図1に示したように暗号化処理部への入力は既に圧縮符号化された後のコードストリームであった。これは、圧縮符号化処理の実行と暗号化処理の実行を夫々独立な処理とし、一旦、圧縮符号化処理を実行した後に暗号化処理を実行するような構成とするものである。つまり、画像圧縮符号化は既存のアプリケーション等で行い、暗号化処理をそれとは独立したものとするのに都合が良い。
【0138】
同様に、図8に示したように暗号復号部からの出力もコードストリームであった。これは、暗号復号処理と圧縮復号処理とをそれぞれ独立にし、圧縮復号s取りを既存のアプリケーションで行うのに都合が良いものと言える。
【0139】
しかしながら本発明はこれに限定されることなく、圧縮符号化処理と暗号化処理とを同じアプリケーションとして実行、或いは、暗号符号化処理と圧縮復号処理を同じアプリケーションとして実行するような構成とすることも可能である。
【0140】
まずはじめに、図18を用いて本実施の形態における画像圧縮処理と暗号化処理部の構成を説明する。
【0141】
図18において、181は画像発生部(CCDスキャナやデジタルカメラ等のデバイスから画像データ入力するユニット)、182は離散ウェーブレット変換部、183は量子化部、184はエントロピ符号化部、185は暗号化部、186はコードストリーム出力部である。
【0142】
画像発生部181、離散ウェーブレット変換部182、量子化部183、エントロピ符号化部184、及びコードストリーム出力部186の動作は、夫々、前述した図11における、画像発生部111、離散ウェーブレット変換部112、量子化部113、エントロピ符号化部114、及びコードストリーム出力部115の動作と同様の動作であるので詳細な説明は省略する。ただし、ウェーブレット変換する多少のタイル数、変換回数、量子化部での量子化ステップ等がユーザの設定に応じて処理される。
【0143】
本実施形態では、エントロピ符号化部184においてエントロピ復号されたビットストリームに対して、暗号化部185において暗号化処理が実行される。暗号化処理の対象は第2の実施形態に示したように、種々の論理単位や階層構造に対応するビットストリームを選択可能である。また、非スクランブル再生モードの場合には、当該暗号化された論理単位や階層構造に含まれる全てのコードブロック内の暗号文の前に終端マーカを付与するようにすることによって、非スクランブル再生モードとすることが可能である。
【0144】
尚、本実施形態ではエントロピ符号化部184の後に暗号化部185が続く構成例を説明した。これは、暗号化部185でエントロピ復号されたビットストリームを暗号化の対象とするものである。しかしながら、本発明はこれに限定されることなく、量子化部183、離散ウェーブレット変換部182、或いは画像発生部181の後に暗号化部185が続く構成とすることも可能であるであることは明らかである。
【0145】
暗号化部185が量子化部183の後に続く場合には量子化インデックス(或いは、量子化インデックスを構成するビット列)が暗号化対象となる。また、離散ウェーブレット変換部182の後に続く場合には離散ウェーブレット変換係数(或いは、離散ウェーブレット変換係数を構成するビット列)が暗号化対象となる。更に、画像発生部181の後に続く場合には画素(或いは、画素を構成するビット列)が暗号化対象となる。
【0146】
なお、上記の処理を行う場合、生の画像データ(非圧縮の画像データ)を指定することになるので、暗号化対象ファイルは非圧縮の画像(例えば拡張子がBMP)が選択可能になる。従って、この場合のGUIの例は、図21のようになる。また、また、JPEG2000では、1つの画像に対して複数のタイルを設定できるので、図20の画面にはタイル数の設定の入力欄□×□(デフォルトで1×1=1画像1タイル)を設け、更に、ウェーブレット変換回数をユーザが指定できるようにする。
【0147】
図21の場合、タイル数を2×2としているので、先ず、タイルを選択し、その中で暗号化対象を第1の実施形態と同様に設定することになる。なお、タイルそのものをも圧縮させることも可能であるので、図示の設定ウインドウ208には、タイル全体(2×2の1つ)について暗号化させることも可能とした。従って、オリジナル画像中の所望とする位置の、所望とする解像度について暗号化させることも可能となる。
【0148】
次に、図19を用いて本実施形態における暗号復号処理部の構成を説明する。
【0149】
図19において、191はコードストリーム入力部、192は暗号復号部、193はエントロピ復号部、194は逆量子化部、195は逆離散ウェーブレット変換部、196は画像データ出力部である。
【0150】
コードストリーム入力部191、エントロピ復号部193、逆量子化部194、逆離散ウェーブレット変換部195、及び画像データ出力部196の動作は、夫々、前述した図15における、コードストリーム入力部151、エントロピ復号部152、逆量子化部153、逆離散ウェーブレット変換部154、及び画像出力部155と同様の動作であるので詳細な説明は省略する。
【0151】
本実施形態では、コードストリーム入力部191において入力されたビットストリームに対して、暗号復号部192において暗号復号処理が実行される。暗号復号処理の対象は第2の実施形態に示したように、種々の論理単位や階層構造に対応するビットストリームである。
【0152】
尚、本実施形態ではコードストリーム入力部191の後に暗号復号部192が続く構成例を説明した。これは、暗号復号部192で入力された暗号化されたビットストリームを暗号復号の対象とするものである。しかしながら、本発明はこれに限定されることなく、エントロピ復号部193、逆量子化部194、逆離散ウェーブレット変換部195の後に暗号復号部192が続く構成とすることも可能であることは明らかである。
【0153】
暗号復号部192がエントロピ復号部193の後に続く場合には暗号化された量子化インデックス(或いは、量子化インデックスを構成するビット列)が暗号復号の対象となる。また、逆量子化部194の後に続く場合には暗号化された離散ウェーブレット変換係数(或いは、離散ウェーブレット変換係数を構成するビット列)が暗号復号の対象となる。更に、逆離散ウェーブレット変換部195の後に続く場合には暗号化された画素(或いは、画素を構成するビット列)が暗号復号の対象となる。
【0154】
以上、本発明に係る実施形態を説明した。実施形態では、JPEG2000を例にして説明したが、上記実施形態で説明した終端マーカ或いはそれと等価の意味を持つ終端情報を有する画像データであれば適用可能なので、上記実施形態で本願発明が限定されるものではない。また、暗号化対象は伝送効率の点で圧縮符号化されていて、尚且つ、階層構造を持つ、或いは、それに類する圧縮符号化データ(例えばJPEG)等であることが望ましいが、これは好適な例であって、必須のものではない。
【0155】
また、実施形態での説明から明らかなように、装置141、142はパーソナルコンピュータ等の汎用情報処理装置上で動作するプログラムでもって実現できるわけであるから、本願発明はかかるコンピュータプログラムをもその範疇するのは明らかである。更にまた、通常コンピュータプログラムは、CDROM等のコンピュータ可読記憶媒体に記録され、それをコンピュータにセットすることで、システムにコピーもしくはインストールすることで実行可能になるわけであるから、本発明はかかるコンピュータ可読記憶媒体をもその範疇とするのは明らかである。
【0156】
【発明の効果】
以上説明したように本発明によれば、画像再生装置でスクランブルさせて再生させるか、或いは、非スクランブル状態で再生させるかを暗号化する側で設定可能となる。
【図面の簡単な説明】
【図1】実施形態における暗号化処理部の構成を示す図である。
【図2】図1におけるコードストリーム暗号化部の処理手順を示すフローチャートである。
【図3】実施形態におけるコードストリームのデータフォーマットを示す図である。
【図4】図2におけるパケット暗号化処理の詳細を示すフローチャートである。
【図5】終端マーカの配置位置の一例を示す図である。
【図6】実施形態における暗号化後のコードブロックのデータフォーマットを示す図である。
【図7】実施形態における暗号化処理と、その再生例との対応関係を示す図である。
【図8】実施形態における暗号復号処理部の構成を示す図である。
【図9】図8におけるコードストリーム暗号復号処理部の処理手順を示すフローチャートである。
【図10A】図9におけるパケット復号処理の処理手順の詳細を示すフローチャートである。
【図10B】図9におけるパケット復号処理の他の処理手順の詳細を示すフローチャートである。
【図11】実施形態における画像圧縮符号化処理を行う際の構成を示す図である。
【図12】図11における離散ウェーブレット変換部の構成とその動作を説明するための図である。
【図13】図11におけるエントロピー符号化部の処理内容を説明するための図である。
【図14】実施形態におけるシステム全体の構成を示す図である。
【図15】実施形態における圧縮符号化データの復号処理を行う際の構成を示す図である。
【図16】図15におけるエントロピー復号部の処理内容を説明するための図である。
【図17】図15における逆離散ウェーブレット変換部の構成とその動作を説明するための図である。
【図18】第3の実施形態における画像圧縮・暗号化装置のブロック構成図である。
【図19】第3の実施形態における暗号復号・圧縮画像復号装置のブロック構成図である。
【図20】実施形態における暗号化処理におけるユーザインタフェースとなる設定ウインドウの一例を示す図である。
【図21】第3の実施形態における暗号化処理におけるユーザインタフェースとなる設定ウインドウの一例を示す図である。
Claims (26)
- 画像データを暗号化する画像データ暗号化方法であって、
複数のデータブロックで構成される画像データを、前記データブロック単位に入力する工程と、
入力したデータブロックが暗号化対象であるか否かを判定する判定工程と、
該判定工程で暗号化対象のデータブロックが入力された場合、当該データブロックを暗号化する暗号化工程と、
復号する際の有意なデータの終端位置を特定するための終端情報を、前記暗号化工程で暗号化されたデータブロックの先頭位置に付加する付加工程と、
前記付加工程を実行するか否かを切り換える切り換え工程と、
前記判定工程で暗号化対象外と判定されたデータブロック、前記切り換え工程のもとで生成されたデータブロックを出力する出力工程と
を備えることを特徴とする画像データの暗号化方法。 - 更に、
前記終端情報を、データブロックの後端位置に付加する第2の付加工程とを備え、
前記切り換え工程は、前記付加工程、前記第2の付加工程とを切り換えることを特徴とする請求項1に記載に記載の画像データの暗号化方法。 - 暗号化されているか否かを示す情報を、前記終端情報の直後に付加することを特徴とする請求項2に記載の画像データの暗号化方法。
- 前記終端情報を付加する工程は、暗号化された画像データと置換することを特徴とする請求項1乃至3のいずれか1項に記載の画像データの暗号化方法。
- 前記判定工程の判定は、入力したデータブロックが、予め暗号化対象として設定された対象であるか否かを判定することで行ない、
前記切り換え工程は、暗号化されたデータブロックを、非暗号化のデータブロックと同じ扱いで復号処理に渡して良いか否かの設定情報に従って切り換えることを特徴とする請求項1乃至4のいずれか1項に記載の画像データの暗号化方法。 - 更に、画像データを圧縮符号化する符号化工程を備え、前記入力工程は圧縮符号化後の画像データを入力することを特徴とする請求項1乃至4のいずれか1項に記載の画像データの暗号化方法。
- 前記符号化工程は、空間領域のデータを周波数領域のデータに変換する周波数変換工程と、
前記周波数領域のデータを量子化し量子化インデックスを算出する量子化工程と、
前記量子化インデックスをエントロピ符号化するエントロピ符号化工程と
を有することを特徴とする請求項6に記載の画像データの暗号化方法。 - 前記エントロピ符号化工程は、
所定の周波数領域を少なくも一つ以上の互いに重ならない複数の矩形領域に分割する領域分割工程と、
前記矩形領域毎にビットプレーン単位で、前記量子化インデックスをエントロピ符号化するエントロピ符号化工程と、
前記矩形領域内のエントロピ符号列を少なくとも一つ以上の符号列の集合に分割するエントロピ符号列分割工程と
とを特徴とする請求項7に記載の画像データの暗号化方法。 - 前記付加工程は、前記矩形領域内の符号列の集合毎に、前記終端情報を付与することを特徴とする請求項8に記載の画像データの暗号化方法。
- 前記符号化工程は、
空間領域のデータを周波数領域のデータに変換する周波数変換工程と、
前記周波数領域のデータを量子化し量子化インデックスを算出する量子化工程と、
前記量子化インデックスをエントロピ符号化するエントロピ符号化工程とを有し、
前記暗号化工程は、前記エントロピ符号化されたエントロピ符号列に対して暗号化処理を実行することを特徴とする請求項6に記載の画像データの暗号化方法。 - 前記符号化工程は、
空間領域のデータを周波数領域のデータに変換する周波数変換工程と、
前記周波数領域のデータを量子化し量子化インデックスを算出する量子化工程と、
前記量子化インデックスをエントロピ符号化するエントロピ符号化工程とを有し、
前記暗号化工程は、前記量子化された量子化インデックスに対して暗号化処理を実行することを特徴とする請求項6に記載の画像データの暗号化方法。 - 前記符号化工程は、
空間領域のデータを周波数領域のデータに変換する周波数変換工程と、
前記周波数領域のデータを量子化し量子化インデックスを算出する量子化工程と、
前記量子化インデックスをエントロピ符号化するエントロピ符号化工程とを有し、
前記暗号化工程は、前記周波数変換された周波数領域のデータに対して暗号化処理を実行することを特徴とする請求項6に記載の画像データの暗号化方法。 - 前記エントロピ符号化工程は、
所定の周波数領域を少なくも一つ以上の互いに重ならない複数の矩形領域に分割する領域分割工程と、
前記矩形領域毎にビットプレーン単位でエントロピ符号化しエントロピ符号列を生成するエントロピ符号化工程と、
前記矩形領域内のエントロピ符号列を少なくとも一つ以上の符号列の集合に分割するエントロピ符号列分割工程と
を備えることを特徴とする請求項10乃至12のいずれか1項に記載の画像データの暗号化方法。 - 前記付加工程は、前記矩形領域内の符号列の集合毎に、前記終端情報を付与することを特徴とする請求項13に記載の画像データの暗号化方法。
- 暗号化されたデータを含む画像データを再生処理用に変換する画像データ変換方法であって、
複数のデータブロックで構成される画像データを、前記データブロック単位に入力する工程と、
入力したデータブロックが暗号化されているか否かを判定する第1の判定工程と、
該判定工程で、暗号化されたデータブロックであると判定した場合、暗号化を解除する鍵情報があるか否か判定する第2の判定工程と、
該第2の判定工程で、前記鍵情報があると判定した場合、入力したデータブロックの暗号化を前記鍵情報に従って復号すると共に、当該暗号復号するデータブロックの先頭位置に有意なデータの終端位置を特定するための終端情報がある場合には前記終端情報を無効化する暗号復号工程と、
該暗号復号工程で暗号復号されたデータブロック、及び、前記第1の判定工程で非暗号化であると判定されたデータブロック、及び、前記第2の判定工程で前記鍵情報がないと判定されたデータブロックを出力する出力工程と
を備えることを特徴とする画像データ変換方法。 - 前記暗号復号工程での、前記終端情報の無効化は、当該終端情報を削除又は暗号復号したデータブロックの後端に配置することを特徴とする請求項15に記載の画像データ変換方法。
- 暗号化されたデータを含む画像データを再生処理用に変換する画像データ変換方法であって、
複数のデータブロックで構成される画像データを、前記データブロック単位に入力する工程と、
入力したデータブロックが暗号化されているか否かを判定する第1の判定工程と、
該判定工程で、暗号化されたデータブロックであると判定した場合、暗号化を解除する鍵情報があるか否か判定する第2の判定工程と、
該第2の判定工程で、前記鍵情報がないと判定した場合、入力したデータブロックの先頭位置に、有意なデータの終端位置を特定するための終端情報がある場合に、その終端情報を無効化するか否かを判定する第3の判定工程と、
該第3の判定工程で、前記終端情報を無効化すると判定した場合、前記終端情報を除去、もしくはデータブロックの後端に位置させる終端情報無効化工程と、
前記第2の判定工程で前記鍵情報があると判定した場合、入力したデータブロックの暗号化を復号する復号工程と、
前記第1の判定工程で暗号化されていないと判定されたデータブロック、前記第3の判定工程で、前記終端情報を無効化しないと判定されたデータブロック、前記終端情報無効化工程で終端情報が無効化されたデータブロック、及び、前記復号工程で復号されたデータブロックを出力する出力工程と
を備えることを特徴とする画像データ変換方法。 - 前記入力工程で入力する画像データは、圧縮符号化されていることを特徴とする請求項15乃至17のいずれか1項に記載の画像データ変換方法。
- 更に、前記出力工程で出力された圧縮符号化されたデータブロックを復号する復号工程を備えることを特徴とする請求項18に記載の画像データ変換方法。
- 画像データを暗号化する画像データ暗号化装置であって、
複数のデータブロックで構成される画像データを、前記データブロック単位に入力する入力手段と、
入力したデータブロックが暗号化対象であるか否かを判定する判定手段と、
該判定手段で暗号化対象のデータブロックが入力された場合、当該データブロックを暗号化する暗号化手段と、
復号する際の有意なデータの終端位置を特定するための終端情報を、前記暗号化手段で暗号化されたデータブロックの先頭位置に付加する付加手段と、
前記付加手段を実行するか否かを切り換える切り換え手段と、
前記判定手段で暗号化対象外と判定されたデータブロック、前記切り換え手段のもとで生成されたデータブロックを出力する出力手段と
を備えることを特徴とする画像データの暗号化装置。 - 暗号化されたデータを含む画像データを再生処理用に変換する画像データ変換装置であって、
複数のデータブロックで構成される画像データを、前記データブロック単位に入力する入力手段と、
入力したデータブロックが暗号化されているか否かを判定する第1の判定手段と、
該判定手段で、暗号化されたデータブロックであると判定した場合、暗号化を解除する鍵情報があるか否か判定する第2の判定手段と、
該第2の判定手段で、前記鍵情報があると判定した場合、入力したデータブロックの暗号化を前記鍵情報に従って復号すると共に、当該暗号復号するデータブロックの先頭位置に有意なデータの終端位置を特定するための終端情報がある場合には前記終端情報を無効化する暗号復号手段と、
該暗号復号手段で暗号復号されたデータブロック、及び、前記第1の判定手段で非暗号化であると判定されたデータブロック、及び、前記第2の判定手段で前記鍵情報がないと判定されたデータブロックを出力する出力手段と
を備えることを特徴とする画像データ変換装置。 - 暗号化されたデータを含む画像データを再生処理用に変換する画像データ変換装置であって、
複数のデータブロックで構成される画像データを、前記データブロック単位に入力する入力手段と、
入力したデータブロックが暗号化されているか否かを判定する第1の判定手段と、
該判定手段で、暗号化されたデータブロックであると判定した場合、暗号化を解除する鍵情報があるか否か判定する第2の判定手段と、
該第2の判定手段で、前記鍵情報がないと判定した場合、入力したデータブロックの先頭位置に、有意なデータの終端位置を特定するための終端情報がある場合に、その終端情報を無効化するか否かを判定する第3の判定手段と、
該第3の判定手段で、前記終端情報を無効化すると判定した場合、前記終端情報を除去、もしくはデータブロックの後端に位置させる終端情報無効化手段と、
前記第2の判定手段で前記鍵情報があると判定した場合、入力したデータブロックの暗号化を復号する復号手段と、
前記第1の判定手段で暗号化されていないと判定されたデータブロック、前記第3の判定手段で、前記終端情報を無効化しないと判定されたデータブロック、前記終端情報無効化手段で終端情報が無効化されたデータブロック、及び、前記復号手段で復号されたデータブロックを出力する出力手段と
を備えることを特徴とする画像データ変換装置。 - 画像データを暗号化する画像データ暗号化装置として機能するコンピュータプログラムであって、
複数のデータブロックで構成される画像データを、前記データブロック単位に入力する入力手段と、
入力したデータブロックが暗号化対象であるか否かを判定する判定手段と、
該判定手段で暗号化対象のデータブロックが入力された場合、当該データブロックを暗号化する暗号化手段と、
復号する際の有意なデータの終端位置を特定するための終端情報を、前記暗号化手段で暗号化されたデータブロックの先頭位置に付加する付加手段と、
前記付加手段を実行するか否かを切り換える切り換え手段と、
前記判定手段で暗号化対象外と判定されたデータブロック、前記切り換え手段のもとで生成されたデータブロックを出力する出力手段と
して機能することを特徴とするコンピュータプログラム。 - 暗号化されたデータを含む画像データを再生処理用に変換する画像データ変換装置として機能するコンピュータプログラムであって、
複数のデータブロックで構成される画像データを、前記データブロック単位に入力する入力手段と、
入力したデータブロックが暗号化されているか否かを判定する第1の判定手段と、
該判定手段で、暗号化されたデータブロックであると判定した場合、暗号化を解除する鍵情報があるか否か判定する第2の判定手段と、
該第2の判定手段で、前記鍵情報があると判定した場合、入力したデータブロックの暗号化を前記鍵情報に従って復号すると共に、当該暗号復号するデータブロックの先頭位置に有意なデータの終端位置を特定するための終端情報がある場合には前記終端情報を無効化する暗号復号手段と、
該暗号復号手段で暗号復号されたデータブロック、及び、前記第1の判定手段で非暗号化であると判定されたデータブロック、及び、前記第2の判定手段で前記鍵情報がないと判定されたデータブロックを出力する出力手段と
して機能することを特徴とするコンピュータプログラム。 - 暗号化されたデータを含む画像データを再生処理用に変換する画像データ変換装置として機能するコンピュータプログラムであって、
複数のデータブロックで構成される画像データを、前記データブロック単位に入力する入力手段と、
入力したデータブロックが暗号化されているか否かを判定する第1の判定手段と、
該判定手段で、暗号化されたデータブロックであると判定した場合、暗号化を解除する鍵情報があるか否か判定する第2の判定手段と、
該第2の判定手段で、前記鍵情報がないと判定した場合、入力したデータブロックの先頭位置に、有意なデータの終端位置を特定するための終端情報がある場合に、その終端情報を無効化するか否かを判定する第3の判定手段と、
該第3の判定手段で、前記終端情報を無効化すると判定した場合、前記終端情報を除去、もしくはデータブロックの後端に位置させる終端情報無効化手段と、
前記第2の判定手段で前記鍵情報があると判定した場合、入力したデータブロックの暗号化を復号する復号手段と、
前記第1の判定手段で暗号化されていないと判定されたデータブロック、前記第3の判定手段で、前記終端情報を無効化しないと判定されたデータブロック、前記終端情報無効化手段で終端情報が無効化されたデータブロック、及び、前記復号手段で復号されたデータブロックを出力する出力手段と
して機能することを特徴とするコンピュータプログラム。 - 請求項23乃至25のいずれか1項に記載のコンピュータプログラムを格納することを特徴とするコンピュータ可読記憶媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003061863A JP4612787B2 (ja) | 2003-03-07 | 2003-03-07 | 画像データの暗号化装置の制御方法及び画像データ変換装置の制御方法、及び、それらの装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
US10/789,986 US7362860B2 (en) | 2003-03-07 | 2004-03-02 | Image data encryption method, image data transform method, apparatus for the methods, computer program, and computer-readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003061863A JP4612787B2 (ja) | 2003-03-07 | 2003-03-07 | 画像データの暗号化装置の制御方法及び画像データ変換装置の制御方法、及び、それらの装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004274358A true JP2004274358A (ja) | 2004-09-30 |
JP2004274358A5 JP2004274358A5 (ja) | 2006-04-13 |
JP4612787B2 JP4612787B2 (ja) | 2011-01-12 |
Family
ID=32923646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003061863A Expired - Fee Related JP4612787B2 (ja) | 2003-03-07 | 2003-03-07 | 画像データの暗号化装置の制御方法及び画像データ変換装置の制御方法、及び、それらの装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7362860B2 (ja) |
JP (1) | JP4612787B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006279502A (ja) * | 2005-03-29 | 2006-10-12 | Sanyo Electric Co Ltd | 画像処理装置、画像表示装置および方法 |
JP2008160416A (ja) * | 2006-12-22 | 2008-07-10 | Canon Inc | データ処理装置、データ処理方法、データ処理プログラム並びに記憶媒体 |
WO2008129883A1 (ja) * | 2007-04-18 | 2008-10-30 | Mitsubishi Electric Corporation | 符号化装置、復号装置、符号変換装置及びプログラム |
JP2010525746A (ja) * | 2007-04-25 | 2010-07-22 | チャウム,デイビッド | 相互作用と圧縮とを有するビデオコピー防止システム |
US7925097B2 (en) | 2005-02-18 | 2011-04-12 | Sanyo Electric Co., Ltd. | Image display method, image coding apparatus, and image decoding apparatus |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4181802B2 (ja) * | 2002-06-28 | 2008-11-19 | キヤノン株式会社 | 情報処理装置、情報処理方法、プログラム、記憶媒体 |
JP2005151459A (ja) * | 2003-11-19 | 2005-06-09 | Canon Inc | 画像処理システムおよびその画像データ処理方法 |
JP4766888B2 (ja) * | 2004-03-30 | 2011-09-07 | 三洋電機株式会社 | 画像処理装置 |
JP2006085676A (ja) * | 2004-08-20 | 2006-03-30 | Matsushita Electric Ind Co Ltd | 暗号化命令処理装置 |
FR2879878B1 (fr) * | 2004-12-22 | 2007-05-25 | Thales Sa | Procede de chiffrement selectif compatible pour flux video |
JP4310285B2 (ja) * | 2005-02-09 | 2009-08-05 | キヤノン株式会社 | 情報処理方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
EP1798974A1 (fr) * | 2005-12-15 | 2007-06-20 | Nagra France Sarl | Procédé de transmission d'un contenu à accès conditionnel |
JP5043421B2 (ja) | 2005-12-28 | 2012-10-10 | キヤノン株式会社 | 情報処理装置およびその方法 |
US8229245B2 (en) * | 2006-10-10 | 2012-07-24 | Zoran (France) | Method and apparatus for spatio-temporal subband video enhancement with small time delay |
US20090019553A1 (en) * | 2007-07-10 | 2009-01-15 | International Business Machines Corporation | Tagging private sections in text, audio, and video media |
US9031241B2 (en) * | 2009-02-05 | 2015-05-12 | D.E. Shaw Research, Llc | Link and physical coding sub-layer protocols |
US8850410B2 (en) * | 2010-01-29 | 2014-09-30 | International Business Machines Corporation | System using a unique marker with each software code-block |
WO2011101994A1 (ja) * | 2010-02-22 | 2011-08-25 | 株式会社東芝 | 暗号化装置 |
US8971532B1 (en) * | 2011-01-17 | 2015-03-03 | Exaimage Corporation | System and methods for protecting video content |
US9075493B2 (en) * | 2011-03-07 | 2015-07-07 | Sas Institute, Inc. | Techniques to present hierarchical information using orthographic projections |
JP5921120B2 (ja) | 2011-09-07 | 2016-05-24 | キヤノン株式会社 | 情報処理装置、情報処理方法 |
KR20140052243A (ko) * | 2012-10-23 | 2014-05-07 | 한국전자통신연구원 | 네트워크 데이터 서비스 장치 및 방법, 네트워크 데이터 서비스를 위한 클라이언트 단말 장치 |
KR101964229B1 (ko) * | 2013-07-26 | 2019-04-01 | 한화테크윈 주식회사 | 감시 서버, 감시 서버의 데이터 처리 방법, 및 감시 시스템 |
FR3054945B1 (fr) * | 2016-08-05 | 2019-09-06 | Viaccess | Procede de lecture et de generation d'un flux video contenant des images compressees et chiffrees |
CN111031193B (zh) * | 2020-01-06 | 2021-08-06 | 中国矿业大学 | 基于立体复合置乱模型和混沌的图像加密方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1175178A (ja) * | 1997-08-28 | 1999-03-16 | Sanyo Electric Co Ltd | 画像符号化装置及び画像符号化方法 |
JPH11331618A (ja) * | 1998-05-19 | 1999-11-30 | Canon Inc | 画像処理装置、画像データ配布装置、画像データ配布システム、画像データ配布方法、及び記憶媒体 |
JPH11341291A (ja) * | 1998-05-27 | 1999-12-10 | Nec Eng Ltd | 画像ファイルの暗号化、復号化方法及び画像ファイルの暗号化、復号化装置 |
JP2002539545A (ja) * | 1999-03-12 | 2002-11-19 | エルオーカー ロンバルトカッセ アクチエンゲゼルシャフト | 匿名化の方法 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3925663A1 (de) * | 1989-08-03 | 1991-02-07 | Thomson Brandt Gmbh | Digitales signalverarbeitungssystem |
US6061451A (en) * | 1996-09-03 | 2000-05-09 | Digital Vision Laboratories Corporation | Apparatus and method for receiving and decrypting encrypted data and protecting decrypted data from illegal use |
US6134269A (en) * | 1996-09-25 | 2000-10-17 | At&T Corp | Fixed or adaptive deinterleaved transform coding for image coding and intra coding of video |
JP4026933B2 (ja) * | 1998-06-24 | 2007-12-26 | キヤノン株式会社 | 情報処理装置及び方法並びに記録媒体 |
SE513356C2 (sv) * | 1998-11-20 | 2000-08-28 | Ericsson Telefon Ab L M | Förfarande och anordning för kryptering av bilder |
US6741758B2 (en) * | 2000-04-07 | 2004-05-25 | Canon Kabushiki Kaisha | Image processor and image processing method |
ATE505905T1 (de) * | 2001-02-09 | 2011-04-15 | Canon Kk | Informationsverarbeitungsgerät und seine steuerverfahren, computerprogramm, und speichermedium |
US6677868B2 (en) * | 2001-03-16 | 2004-01-13 | Sharp Laboratories Of America, Inc. | Entropy coding with adaptive syntax to replace high probability symbols with lower probabilities symbols |
JP2002325170A (ja) * | 2001-04-24 | 2002-11-08 | Canon Inc | 画像処理装置及びその方法並びにプログラムコード、記憶媒体 |
JP3977216B2 (ja) * | 2001-09-27 | 2007-09-19 | キヤノン株式会社 | 情報処理装置及び方法及び情報処理プログラム及び記憶媒体 |
JP3937841B2 (ja) * | 2002-01-10 | 2007-06-27 | キヤノン株式会社 | 情報処理装置及びその制御方法 |
US20030210803A1 (en) * | 2002-03-29 | 2003-11-13 | Canon Kabushiki Kaisha | Image processing apparatus and method |
JP4136731B2 (ja) * | 2002-04-24 | 2008-08-20 | キヤノン株式会社 | 情報処理方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
JP4143441B2 (ja) * | 2002-04-24 | 2008-09-03 | キヤノン株式会社 | 情報処理方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 |
JP2004040246A (ja) * | 2002-06-28 | 2004-02-05 | Canon Inc | 情報処理装置、情報処理方法 |
US8843378B2 (en) * | 2004-06-30 | 2014-09-23 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Multi-channel synthesizer and method for generating a multi-channel output signal |
-
2003
- 2003-03-07 JP JP2003061863A patent/JP4612787B2/ja not_active Expired - Fee Related
-
2004
- 2004-03-02 US US10/789,986 patent/US7362860B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1175178A (ja) * | 1997-08-28 | 1999-03-16 | Sanyo Electric Co Ltd | 画像符号化装置及び画像符号化方法 |
JPH11331618A (ja) * | 1998-05-19 | 1999-11-30 | Canon Inc | 画像処理装置、画像データ配布装置、画像データ配布システム、画像データ配布方法、及び記憶媒体 |
JPH11341291A (ja) * | 1998-05-27 | 1999-12-10 | Nec Eng Ltd | 画像ファイルの暗号化、復号化方法及び画像ファイルの暗号化、復号化装置 |
JP2002539545A (ja) * | 1999-03-12 | 2002-11-19 | エルオーカー ロンバルトカッセ アクチエンゲゼルシャフト | 匿名化の方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7925097B2 (en) | 2005-02-18 | 2011-04-12 | Sanyo Electric Co., Ltd. | Image display method, image coding apparatus, and image decoding apparatus |
JP2006279502A (ja) * | 2005-03-29 | 2006-10-12 | Sanyo Electric Co Ltd | 画像処理装置、画像表示装置および方法 |
JP2008160416A (ja) * | 2006-12-22 | 2008-07-10 | Canon Inc | データ処理装置、データ処理方法、データ処理プログラム並びに記憶媒体 |
WO2008129883A1 (ja) * | 2007-04-18 | 2008-10-30 | Mitsubishi Electric Corporation | 符号化装置、復号装置、符号変換装置及びプログラム |
JPWO2008129883A1 (ja) * | 2007-04-18 | 2010-07-22 | 三菱電機株式会社 | 符号化装置、復号装置、符号変換装置及びプログラム |
JP4722214B2 (ja) * | 2007-04-18 | 2011-07-13 | 三菱電機株式会社 | 符号化装置、復号装置、符号変換装置及びプログラム |
JP2010525746A (ja) * | 2007-04-25 | 2010-07-22 | チャウム,デイビッド | 相互作用と圧縮とを有するビデオコピー防止システム |
Also Published As
Publication number | Publication date |
---|---|
US7362860B2 (en) | 2008-04-22 |
JP4612787B2 (ja) | 2011-01-12 |
US20040177251A1 (en) | 2004-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4612787B2 (ja) | 画像データの暗号化装置の制御方法及び画像データ変換装置の制御方法、及び、それらの装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 | |
Grosbois et al. | Authentication and access control in the JPEG 2000 compressed domain | |
US7457419B2 (en) | Information processing method and apparatus for encrypting encoded data | |
US7463736B2 (en) | Data process apparatus and method therefor | |
US7571316B2 (en) | Method and device for transforming a digital signal | |
US8509434B2 (en) | Method and apparatus for protecting scalable video coding contents | |
JP3960597B2 (ja) | 符号生成装置、画像処理装置、符号生成プログラム、画像処理プログラムおよび記憶媒体 | |
JP2007526507A (ja) | スケーラブルメディアを記述するデータを生成するための方法 | |
US20040252834A1 (en) | Scrambling of image by randomizing pixel values | |
US20070217607A1 (en) | Repetition Coded Compression For Encrypting Highly Correlated Data | |
Liu | Efficient selective encryption for JPEG 2000 images using private initial table | |
JP4181802B2 (ja) | 情報処理装置、情報処理方法、プログラム、記憶媒体 | |
JP2007534230A (ja) | プログレッシブ暗号化されたスケーラブルデータ列をスケーリングするための方法 | |
JP2003153228A (ja) | 画像符号化装置及び画像復号化装置 | |
KR100859897B1 (ko) | 스케일러블 비디오 부호화 콘텐츠의 보호 방법 및 그 장치 | |
JP4136812B2 (ja) | 画像暗号化方法及び画像暗号復号方法及びそれらの装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体 | |
JP2004032538A (ja) | 情報処理装置及び情報処理方法 | |
JP4227425B2 (ja) | 情報処理方法及び装置、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体 | |
Babel et al. | Preserving data integrity of encoded medical images: the LAR compression framework | |
JPH1118070A (ja) | 画像圧縮装置および画像伸長装置および伝送装置 | |
JP4036363B2 (ja) | 画像処理装置及び画像処理方法 | |
JP4174254B2 (ja) | 動画像符号化装置及び動画像復号装置並びにそれらの方法 | |
JP2006148251A (ja) | スクランブル処理装置、スクランブル解除装置 | |
Fotopoulos et al. | Watermarking and Authentication in JPEG2000 | |
l Grosbois et al. | DFE3 (0 G& &) G |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060221 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060221 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090703 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090901 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100212 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100413 |
|
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: 20101001 |
|
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: 20101016 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131022 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4612787 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |