JP2005197808A - Image signature device and method thereof - Google Patents

Image signature device and method thereof Download PDF

Info

Publication number
JP2005197808A
JP2005197808A JP2003435451A JP2003435451A JP2005197808A JP 2005197808 A JP2005197808 A JP 2005197808A JP 2003435451 A JP2003435451 A JP 2003435451A JP 2003435451 A JP2003435451 A JP 2003435451A JP 2005197808 A JP2005197808 A JP 2005197808A
Authority
JP
Japan
Prior art keywords
image
signature
presented
stored
algorithm
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.)
Withdrawn
Application number
JP2003435451A
Other languages
Japanese (ja)
Inventor
Koichi Oi
浩一 大井
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2003435451A priority Critical patent/JP2005197808A/en
Publication of JP2005197808A publication Critical patent/JP2005197808A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image signature device and a method thereof capable of changing a method or the like of an electronic signature in response to a user's request, thereby performing more flexible falsification determination. <P>SOLUTION: The image signature method according to one aspect has a step (S502) of selecting a presenting destination of an image, a step (S503) of selecting an image to be presented from a memory, a step (S508) of determining whether or not the image to be presented is not modified from a time point when the selected image to be presented is firstly stored in the memory, and a step (S512) of adding an electronic signature to the image to be presented on the basis of a signature algorithm corresponding to the presenting destination if it is judged that the image to be presented is not modified from the time point when the image to be presented firstly stored in the memory. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、画像署名装置および方法に関し、特に、画像の改竄防止機能を有する画像署名装置および方法に関する。   The present invention relates to an image signature apparatus and method, and more particularly to an image signature apparatus and method having an image falsification preventing function.

デジタルカメラで撮影した画像の改竄防止に関する従来技術としては例えば、特開平11−308564号公報(特許文献1)や特開2001−078070号公報(特許文献2)が挙げられる。これらの文献は、カメラ内部に備える暗号化鍵を用いて画像に対し改竄検知用データ(メッセージ認証コード)あるいは電子署名を付加する技術を開示している。画像が改竄されていないことを確認するためには、カメラ内部に備えた暗号化鍵に対応する復号化鍵を用いて、改竄検知用データあるいは電子署名を復号化し、得られたハッシュ値(メッセージダイジェスト)と画像から計算されたハッシュ値を比較することになる。   For example, Japanese Patent Application Laid-Open No. 11-308564 (Patent Document 1) and Japanese Patent Application Laid-Open No. 2001-078070 (Patent Document 2) are known as conventional techniques related to falsification prevention of images taken with a digital camera. These documents disclose a technique for adding falsification detection data (message authentication code) or an electronic signature to an image using an encryption key provided in the camera. In order to confirm that the image has not been tampered with, the decryption key corresponding to the encryption key provided in the camera is used to decrypt the tampering detection data or electronic signature, and the obtained hash value (message The hash value calculated from the digest and the image is compared.

特開平11−308564号公報Japanese Patent Laid-Open No. 11-308564 特開2001−078070号公報JP 2001-0778070 A

上記した従来技術には以下のような課題が存在する。   The above-described prior art has the following problems.

すなわち、画像が無修正であることを確認するためにカメラ内部に備えた暗号化鍵に対応する復号化鍵を用いるため、ユーザがこれを取り扱うには、そのカメラの暗号化について知っていなければならなかった。ユーザが知る必要があるものは、鍵だけでなく、暗号化アルゴリズムやハッシュ値を求めるためのハッシュアルゴリズム等も知る必要がある。   In other words, since the decryption key corresponding to the encryption key provided in the camera is used to confirm that the image is uncorrected, the user has to know about the encryption of the camera in order to handle this. did not become. What the user needs to know needs to know not only the key but also the encryption algorithm and the hash algorithm for obtaining the hash value.

しかし、カメラメーカーとしてはこれら暗号化に関する情報は公開したくないという理由と、ユーザの利便を図るという理由から、カメラメーカーが改竄判定システムを提供して、改竄判定システムが復号化鍵、暗号化アルゴリズム、及びハッシュアルゴリズムを管理することによって、ユーザに暗号化に関する詳細を見せないで、改竄判定を可能にするのが通常であった。   However, for the reason that the camera manufacturer does not want to disclose the information related to encryption and for the convenience of the user, the camera manufacturer provides a falsification judgment system, and the falsification judgment system uses the decryption key and encryption. By managing the algorithm and the hash algorithm, it has been usual to allow tampering determination without showing the user details about encryption.

このようにすると、改竄判定は可能になるが、ユーザ側から見ると改竄判定の確かさや暗号の強度については知り得ず、従って原本性の保証にも疑問を持たざるを得ず、不満が生じ得る。   In this way, tampering determination is possible, but from the user's perspective, it is impossible to know the certainty of tampering determination and the strength of the encryption, so there is no doubt about the guarantee of the originality, resulting in dissatisfaction. obtain.

また、たとえ各カメラメーカーが暗号化に関する詳細を公開したとして、ユーザ側で改竄判定システムを構築できるようにしたとしても、その詳細を決定する権限はカメラメーカー側にあるので、いつそれが変更されるか分からず、変更されたらユーザ側で改竄判定システムを修正しなければならなくなるといった不都合もある。   In addition, even if each camera manufacturer has disclosed details about encryption, even if it is possible to construct a falsification judgment system on the user side, the authority to determine the details is on the camera manufacturer side. There is also an inconvenience that the tampering determination system must be corrected on the user side if it is changed.

さらに、従来、製造上の都合からカメラに内蔵された鍵や暗号化アルゴリズムといったものは固定的で変更できず、ユーザ側が必要な暗号強度を持つ暗号化方式を採りたいという希望をもったとしても、従来方式ではこれを実現することはできない。つまり、従来の技術では改竄判定システムを構築する上での柔軟性に欠けている。   Furthermore, for the convenience of manufacturing, the keys and encryption algorithms built into the camera are fixed and cannot be changed. Even if the user wishes to adopt an encryption method with the required encryption strength, However, this cannot be realized by the conventional method. That is, the conventional technology lacks flexibility in constructing a falsification determination system.

さらに、従来のカメラにおける署名方法は一つの方法をサポートするのみで、署名入り画像を受け取る相手に合わせて署名方法を変えるなどということは行っていない。   Furthermore, the conventional camera signature method only supports one method, and does not change the signature method according to the recipient of the signed image.

本発明は上記した問題を解決するためになされたもので、その目的は、ユーザの要求に応じて電子署名の方法等を変更することを可能にし、もって、より柔軟性のある改竄判定を行うことのできる画像署名装置および方法を提供することである。   The present invention has been made to solve the above-described problems, and its object is to make it possible to change the electronic signature method and the like in response to a user's request, thereby making a more flexible tampering determination. It is an object of the present invention to provide an image signature apparatus and method capable of performing the above.

本発明の一側面に係る画像署名装置は、入力した画像を記憶する画像記憶手段と、画像の提示先を選択する提示先選択手段と、提示対象の画像を前記画像記憶手段から選択する画像選択手段と、前記画像選択手段により選択された前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であるか否かを判定する判定手段と、前記判定手段により前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であると判定された場合、前記提示先に応じた署名アルゴリズムにより前記提示対象の画像に電子署名を付加する署名手段とを有することを特徴とする。   An image signature device according to an aspect of the present invention includes an image storage unit that stores an input image, a presentation destination selection unit that selects a presentation destination of the image, and an image selection unit that selects an image to be presented from the image storage unit. Determining means for determining whether or not the image to be presented selected by the image selecting means is uncorrected from the time when the image is first stored in the image storage means; and A signature unit that adds an electronic signature to the image to be presented by a signature algorithm according to the presentation destination when it is determined that the image is uncorrected from the time when the image is first stored in the image storage unit It is characterized by that.

本発明の別の側面に係る画像署名装置は、入力した画像に、ユーザの指示によっては変更することのできない第1の署名アルゴリズムにより電子署名を付加する第1の署名手段と、前記第1の署名手段による電子署名が付加された画像を記憶する画像記憶手段と、画像の提示先を選択する提示先選択手段と、提示対象の画像を前記画像記憶手段から選択する画像選択手段と、前記画像選択手段により選択された前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であるか否かを判定する判定手段と、前記判定手段により前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であると判定された場合、前記提示先に応じた第2の署名アルゴリズムにより前記提示対象の画像に電子署名を付加する第2の署名手段とを有することを特徴とする。   An image signature apparatus according to another aspect of the present invention includes: a first signature unit that adds an electronic signature to an input image using a first signature algorithm that cannot be changed according to a user instruction; Image storage means for storing an image to which an electronic signature is added by a signature means, presentation destination selection means for selecting an image presentation destination, image selection means for selecting an image to be presented from the image storage means, and the image A determination unit that determines whether or not the image to be presented selected by the selection unit is uncorrected from the time when the image is first stored in the image storage unit; and the image to be presented by the determination unit is the image When it is determined that there is no correction from the time when it is first stored in the storage means, the second signature algorithm corresponding to the presentation destination adds a digital signature to the image to be presented. And having a signature means.

本発明の更に別の側面は画像署名方法に係り、入力した画像をメモリに記憶する画像記憶ステップと、画像の提示先を選択する提示先選択ステップと、提示対象の画像を前記メモリから選択する画像選択ステップと、前記画像選択ステップにより選択された前記提示対象の画像が前記メモリに最初に記憶された時点から無修正であるか否かを判定する判定ステップと、前記判定ステップにより前記提示対象の画像が前記メモリに最初に記憶された時点から無修正であると判定された場合、前記提示先に応じた署名アルゴリズムにより前記提示対象の画像に電子署名を付加する署名ステップとを有することを特徴とする。   Still another aspect of the present invention relates to an image signature method, an image storage step for storing an input image in a memory, a presentation destination selection step for selecting a presentation destination of the image, and an image to be presented is selected from the memory. An image selection step, a determination step of determining whether or not the image of the presentation target selected by the image selection step is uncorrected from the time when the image was first stored in the memory, and the presentation target by the determination step A signature step of adding an electronic signature to the image to be presented by a signature algorithm corresponding to the presentation destination when it is determined that the image is uncorrected from the time when the image is first stored in the memory. Features.

本発明の更に別の側面に係る画像署名方法は、入力した画像に、ユーザの指示によっては変更することのできない第1の署名アルゴリズムにより電子署名を付加する第1の署名ステップと、前記第1の署名ステップで電子署名が付加された画像をメモリに記憶する画像記憶ステップと、画像の提示先を選択する提示先選択ステップと、提示対象の画像を前記メモリから選択する画像選択ステップと、前記画像選択ステップにより選択された前記提示対象の画像が前記メモリに最初に記憶された時点から無修正であるか否かを判定する判定ステップと、前記判定ステップにより前記提示対象の画像が前記メモリに最初に記憶された時点から無修正であると判定された場合、前記提示先に応じた第2の署名アルゴリズムにより前記提示対象の画像に電子署名を付加する第2の署名ステップとを有することを特徴とする。   An image signature method according to still another aspect of the present invention includes a first signature step of adding an electronic signature to an input image using a first signature algorithm that cannot be changed according to a user instruction; An image storage step for storing in the memory the image to which the electronic signature is added in the signature step, a presentation destination selection step for selecting a presentation destination of the image, an image selection step for selecting an image to be presented from the memory, A determination step for determining whether or not the image to be presented selected by the image selection step is uncorrected from the time when the image is first stored in the memory; and the image to be presented is stored in the memory by the determination step. When it is determined that there is no correction from the time when it is first stored, the image to be presented by the second signature algorithm corresponding to the presentation destination And having a second signature step of adding an electronic signature.

本発明によれば、ユーザの要求に応じて電子署名の方法等を変更することを可能になり、これにより、柔軟性のある改竄判定を行うことのできる画像署名装置および方法が提供される。   According to the present invention, it is possible to change an electronic signature method or the like according to a user's request, thereby providing an image signature apparatus and method capable of performing flexible tampering determination.

以下、図面を参照して本発明の好適な実施形態について詳細に説明する。なお、以下の説明において、単に「署名」とあるのは「電子署名」の意である。   DESCRIPTION OF EMBODIMENTS Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings. In the following description, “signature” simply means “electronic signature”.

図1は、本実施形態に係る画像署名システムの構成を示すブロック図である。   FIG. 1 is a block diagram showing the configuration of the image signature system according to this embodiment.

同図において、101は本発明が適用される画像署名装置としてのデジタルカメラである。   In the figure, reference numeral 101 denotes a digital camera as an image signature apparatus to which the present invention is applied.

102は、最終的に画像を受け取る画像受信者から署名アプリケーション105と画像受信者に関する画像受信者情報114とを受信し、これらを蓄積するとともにデジタルカメラ101に送信する第1のサーバ装置としてのアプリケーションサーバである。   Reference numeral 102 denotes an application as a first server device that receives the signature application 105 and the image receiver information 114 related to the image receiver from the image receiver that finally receives the image, accumulates them, and transmits them to the digital camera 101. It is a server.

103は、画像受信者から画像受信者の公開鍵106、その公開鍵106を用いた暗号化を行うための暗号化アルゴリズム107、ハッシュアルゴリズム108、及び画像受信者情報114を受信し、これらを蓄積するとともにデジタルカメラ101に送信する第2のサーバ装置としての公開鍵サーバである。   103 receives the image recipient's public key 106 from the image recipient, the encryption algorithm 107 for performing encryption using the public key 106, the hash algorithm 108, and the image recipient information 114, and stores these And a public key server as a second server device that transmits to the digital camera 101.

104は、デジタルカメラ101から署名付き画像データ109を受信する画像受信者クライアントであり、上記の署名アプリケーション105および画像受信者情報114をアプリケーションサーバ102に送信すると共に、公開鍵106、暗号化アルゴリズム107、ハッシュアルゴリズム108、及び画像受信者情報114を公開鍵サーバ103に送信する。   Reference numeral 104 denotes an image recipient client that receives the signed image data 109 from the digital camera 101, and transmits the signature application 105 and the image recipient information 114 to the application server 102, as well as a public key 106 and an encryption algorithm 107. The hash algorithm 108 and the image recipient information 114 are transmitted to the public key server 103.

画像受信者クライアント104は公開鍵106に対応する私的鍵110を有している。つまり、公開鍵106で暗号化したデータは私的鍵110で復号化可能である。   The image recipient client 104 has a private key 110 corresponding to the public key 106. That is, data encrypted with the public key 106 can be decrypted with the private key 110.

暗号化アルゴリズム107及びハッシュアルゴリズム108については、アルゴリズムを実現するプログラム自体が通信されてもよいが、一般的な暗号化処理には標準的なアルゴリズムが使用されることが通常であるから、アルゴリズムに関する情報、例えばアルゴリズムの通称名が通信されてもよい。通称名だけでも、互いにどのような処理をすればよいかが分かる。以後、通信されるものがどちらであっても、暗号化アルゴリズム107、ハッシュアルゴリズム108と記述する。   As for the encryption algorithm 107 and the hash algorithm 108, a program for realizing the algorithm itself may be communicated, but a standard algorithm is usually used for general encryption processing. Information may be communicated, such as the common name of the algorithm. You can tell what to do with each other using just the common name. Hereinafter, the encryption algorithm 107 and the hash algorithm 108 are described regardless of which one is communicated.

暗号化アルゴリズム107及びハッシュアルゴリズム108については、プログラム自体が通信されてデジタルカメラ101にて受信される場合、暗号化及びハッシュ値計算を行う際、それらのプログラムを呼び出せばよい。アルゴリズムに関する情報のみがデジタルカメラ101に送られてくる場合は、そのアルゴリズムを実装したプログラム(図示せず)をデジタルカメラ101が有していて、これを実行できるものとする。   As for the encryption algorithm 107 and the hash algorithm 108, when the programs themselves are communicated and received by the digital camera 101, these programs may be called when performing encryption and hash value calculation. When only the information related to the algorithm is sent to the digital camera 101, it is assumed that the digital camera 101 has a program (not shown) that implements the algorithm and can execute this program.

さらに、暗号化アルゴリズム107及びハッシュアルゴリズム108は必ず画像受信者クライアント104からデジタルカメラ101に送られなければならないということはない。後述するように、これらが送られなければ、デジタルカメラ101ではデフォルトのアルゴリズムを用いることができる。   Further, the encryption algorithm 107 and the hash algorithm 108 do not necessarily have to be sent from the image recipient client 104 to the digital camera 101. As will be described later, if these are not sent, the digital camera 101 can use a default algorithm.

デジタルカメラ101は共通鍵111を有している。この一つの鍵を用いるだけで、データの暗号化及び復号化が可能なので、「共通」という語が用いられる。共通鍵111と公開鍵106及び私的鍵110とが行うデータの暗号化及び復号化についての関連はない。例えば、公開鍵106で暗号化したデータを共通鍵111では復号化できない。   The digital camera 101 has a common key 111. Since data can be encrypted and decrypted by using only this one key, the word “common” is used. There is no relationship regarding the encryption and decryption of data performed by the common key 111, the public key 106, and the private key 110. For example, data encrypted with the public key 106 cannot be decrypted with the common key 111.

また、デジタルカメラ101は、共通鍵111を用いた暗号化を行うための暗号化アルゴリズム112及びハッシュアルゴリズム113を、それぞれデフォルトとして有する。暗号化アルゴリズム112及びハッシュアルゴリズム113は実行可能なプログラムの形式でデジタルカメラ101内に存在する。これらの共通鍵111、暗号化アルゴリズム112及びハッシュアルゴリズム113は、デジタルカメラに内蔵されたもので、操作者の指示によっては変更できないものであることが好ましい。   The digital camera 101 also has an encryption algorithm 112 and a hash algorithm 113 for performing encryption using the common key 111 as defaults. The encryption algorithm 112 and the hash algorithm 113 exist in the digital camera 101 in the form of an executable program. The common key 111, the encryption algorithm 112, and the hash algorithm 113 are built in the digital camera, and preferably cannot be changed according to an operator's instruction.

図2は本実施形態におけるデジタルカメラ101の内部構成を示すブロック図である。   FIG. 2 is a block diagram showing the internal configuration of the digital camera 101 in this embodiment.

同図において、デジタルカメラ101は、デジタルカメラ101全体を制御する中央制御装置(以下、「CPU」と称す。)201、各種動作プログラムを読み取り可能に格納したROM202、プログラム動作中の一時的な値の保存に用いるRAM203、各種時間を計測するタイマ204、各種設定メニュー及び画像を表示するディスプレイ205、音声録音に用いるマイク206、音声出力に用いるスピーカ207、各種操作ボタン208、撮影した画像ファイルや各種設定データファイルを保存しておくための不揮発性メモリであるFlashROM209、デジタルカメラ101の外部と接続するインタフェースとなるネットワークI/F210、図示しないレンズを通して集めた光を電気信号に置き換える電荷結合素子(以下、CCDと称す)211を備え、相互にバスで接続されている。   In the figure, a digital camera 101 includes a central control device (hereinafter referred to as “CPU”) 201 that controls the entire digital camera 101, a ROM 202 that stores various operation programs in a readable manner, and temporary values during program operation. RAM 203 used for storage, timer 204 for measuring various times, display 205 for displaying various setting menus and images, microphone 206 used for voice recording, speaker 207 used for voice output, various operation buttons 208, captured image files and various types FlashROM 209, which is a non-volatile memory for storing setting data files, network I / F 210 as an interface for connecting to the outside of digital camera 101, a charge coupled device (hereinafter referred to as an electrical signal) that replaces light collected through a lens (not shown). , CD and referred) includes a 211, are connected to each other by a bus.

なお、FlashROM209はデジタルカメラ101に内蔵されていてもよいし、外部から挿入可能なメモリカード上に搭載されているものでもよい。   The FlashROM 209 may be built in the digital camera 101 or may be mounted on a memory card that can be inserted from the outside.

また、デジタルカメラ101が撮影した画像データの格納場所はFlashROM209の他、RAM203でもよいし、または図示しないがハードディスク等の記憶媒体でもよい。以後の例では、代表的な画像データの格納場所として、FlashROM209についてのみ言及する。   Further, the storage location of the image data captured by the digital camera 101 may be the RAM 203 in addition to the Flash ROM 209, or a storage medium such as a hard disk (not shown). In the following examples, only the FlashROM 209 will be mentioned as a typical image data storage location.

また、図1において外部からデジタルカメラ101が受信する署名アプリケーション105、公開鍵106、暗号化アルゴリズム107及びハッシュアルゴリズム108についても、その格納場所はRAM203、FlashROM209、あるいは図示しないがハードディスク等の記憶媒体でもよい。   Also, the signature application 105, public key 106, encryption algorithm 107, and hash algorithm 108 received by the digital camera 101 from the outside in FIG. 1 are stored in the RAM 203, Flash ROM 209, or a storage medium such as a hard disk (not shown). Good.

図1のデジタルカメラ101が有する共通鍵111、暗号化アルゴリズム112、及びハッシュアルゴリズム113はROM202に格納されている。外部からこれを読み出すことはできない。   A common key 111, an encryption algorithm 112, and a hash algorithm 113 included in the digital camera 101 of FIG. 1 are stored in the ROM 202. It cannot be read from the outside.

図2では、デジタルカメラ101が外部と何らかのデータを通信する手段として、ネットワークI/F210を挙げたが、それ以外にも、着脱可能なメモリカードを用いることができる。その場合は、例えば、FlashROM209が着脱可能なメモリカードとなっており、外部でそのメモリカードにデータを書き込んでから、再度デジタルカメラ101に装着することで、外部で書き込んだデータをデジタルカメラ101の内部に取り込むことが可能である。逆に、デジタルカメラ101が書き込んだデータを外部に持っていくことも当然可能である。   In FIG. 2, the network I / F 210 is used as a means for the digital camera 101 to communicate some data with the outside, but a removable memory card can also be used. In that case, for example, the flash ROM 209 is a detachable memory card, and after data is written to the memory card externally and then attached to the digital camera 101 again, the data written externally is stored in the digital camera 101. It is possible to capture inside. Conversely, it is naturally possible to take the data written by the digital camera 101 to the outside.

つまり、図1に示した署名付き画像データ109、署名アプリケーション105、公開鍵106、暗号化アルゴリズム107及びハッシュアルゴリズム108はネットワークI/F210の他に、メモリカードを用いて、外部と通信することが可能である。   That is, the signed image data 109, the signature application 105, the public key 106, the encryption algorithm 107, and the hash algorithm 108 shown in FIG. 1 can communicate with the outside using a memory card in addition to the network I / F 210. Is possible.

また、ネットワークI/F210の通信方式は通常用いられるどのようなものでもよく、有線、無線、その他の種別を問わない。   Further, the communication method of the network I / F 210 may be any method that is normally used, and may be any type such as wired, wireless, or the like.

次に画像に署名を付加する方法及び署名付き画像の改竄判定を行う方法について、図3を用いて説明する。   Next, a method for adding a signature to an image and a method for performing falsification determination of an image with a signature will be described with reference to FIG.

まず、画像に署名を付加する方法について説明する。   First, a method for adding a signature to an image will be described.

FlashROM209に、画像データが格納されているものとする。画像データのフォーマットはJPEGあるいはTIFF等の画像ヘッダを有するものを例にとり説明するが、特開2001−78070号公報(特許文献2)に記載されているような、画像イメージ中に署名を埋め込む方式であれば、画像ヘッダを有しないフォーマットでもかまわない。   Assume that image data is stored in the FlashROM 209. The format of the image data will be described by taking an example having an image header such as JPEG or TIFF. A method of embedding a signature in an image image as described in JP-A-2001-78070 (Patent Document 2) If so, a format without an image header may be used.

この画像データをCPU201が読み出し、画像データ中のイメージ部分のデータ(画像イメージデータ)あるいは画像イメージデータと画像ヘッダを合わせた画像データ全体から、所定のハッシュアルゴリズム(108あるいは113)を用いて、ハッシュ値(メッセージダイジェスト、MD)を計算する。   The CPU 201 reads out this image data and uses a predetermined hash algorithm (108 or 113) to hash the image portion data (image image data) in the image data or the entire image data including the image image data and the image header. Calculate the value (message digest, MD).

次に、CPU201は、暗号化鍵(公開鍵106あるいは共通鍵111)と暗号化アルゴリズム(107あるいは112)を用いて、MDからメッセージ認証コード(MAC:Message Authentication Code)を計算する。   Next, the CPU 201 calculates a message authentication code (MAC) from the MD using the encryption key (public key 106 or common key 111) and the encryption algorithm (107 or 112).

計算の結果、得られたMACをCPU201は画像ヘッダ中の所定の位置に埋め込む。   As a result of the calculation, the CPU 201 embeds the obtained MAC at a predetermined position in the image header.

以上のようにして、画像に署名が付加される。   As described above, the signature is added to the image.

また、以上の説明から分かるように、署名に用いる道具として、デジタルカメラ101に内蔵された共通鍵111、暗号化アルゴリズム112、及びハッシュアルゴリズム113を使用することも可能であるし、さらに、デジタルカメラ101の外部からデジタルカメラ101に供給された公開鍵106、暗号化アルゴリズム107、及びハッシュアルゴリズム108を使用することも可能である。なお、デジタルカメラ101が署名と署名の復号化を行う時に、デジタルカメラ101に内蔵された共通鍵111、暗号化アルゴリズム112、及びハッシュアルゴリズム113を使用する代わりに、図示しない公開鍵、私的鍵、それらを使用する暗号化アルゴリズム、及びハッシュアルゴリズムを使用してもよい。公開鍵、私的鍵とも外部に公開されなければ、共通鍵を用いるのと同様な効果が得られる。但し、共通鍵を用いた暗号化方式の方が、一般的に言って処理は高速である。   As can be seen from the above description, the common key 111, the encryption algorithm 112, and the hash algorithm 113 built in the digital camera 101 can be used as a tool used for signature, and further, the digital camera It is also possible to use the public key 106, the encryption algorithm 107, and the hash algorithm 108 supplied to the digital camera 101 from the outside of the 101. When the digital camera 101 performs signature and decryption of the signature, instead of using the common key 111, the encryption algorithm 112, and the hash algorithm 113 built in the digital camera 101, a public key and a private key (not shown) are used. Encryption algorithms that use them, and hash algorithms may be used. If neither the public key nor the private key is disclosed to the outside, the same effect as using the common key can be obtained. However, generally speaking, the encryption method using the common key is faster.

次に、署名付き画像の改竄判定を行う方法について説明する。   Next, a method for performing falsification determination on a signed image will be described.

まず、FlashROM209に記憶された署名付き画像を読み出し、それからCPU201がMACを取り出す。図3ではMACは署名付き画像の画像ヘッダに埋め込まれており、CPU201は署名付き画像のフォーマットからMACがどのように埋め込まれているか知っているものとする。   First, a signed image stored in the FlashROM 209 is read, and then the CPU 201 extracts the MAC. In FIG. 3, it is assumed that the MAC is embedded in the image header of the signed image, and the CPU 201 knows how the MAC is embedded from the format of the signed image.

次いで、CPU201は復号化によって、MACからMDを取得する。この際に用いる復号化鍵はもちろん、前述したMDからMACを計算する時に使用した鍵と対になるものでなければならない。MDからMACを計算する時に共通鍵111を使用した場合は、MACからMDを計算するときも共通鍵111を使用する。MDからMACを計算する時に公開鍵106を使用した場合は、MACからMDを計算するときは私的鍵110を使用する。なお、正確に言えば、画像受信者クライアント104が有する私的鍵110をCPU201が使用することはできないので、CPU201が暗号化及び復号化できるのは共通鍵111を用いた場合である。CPU201が公開鍵106を用いて付与した署名を復号化して検証できるのは画像受信者クライアント104である。画像受信者クライアント104が署名付き画像の改竄判定を行う場合もここで説明したのと同様の手順になる。   Next, the CPU 201 acquires the MD from the MAC by decoding. Of course, the decryption key used in this case must be paired with the key used when the MAC is calculated from the MD described above. When the common key 111 is used when calculating the MAC from the MD, the common key 111 is also used when calculating the MD from the MAC. When the public key 106 is used when calculating the MAC from the MD, the private key 110 is used when calculating the MD from the MAC. Strictly speaking, since the CPU 201 cannot use the private key 110 of the image recipient client 104, the CPU 201 can encrypt and decrypt it when the common key 111 is used. The image recipient client 104 can decrypt and verify the signature provided by the CPU 201 using the public key 106. The procedure similar to that described here is also performed when the image recipient client 104 makes a falsification determination on a signed image.

なお、復号化を行うCPU201や画像受信者クライアント104は復号化を行う際に用いる復号化アルゴリズム(これも署名時に用いた暗号化アルゴリズムと対になるものである)の選択も適切にできるものとする。   It should be noted that the CPU 201 and the image recipient client 104 that perform decryption can also appropriately select a decryption algorithm used for decryption (which is also paired with the encryption algorithm used at the time of signature). To do.

デジタルカメラ101が有する暗号化アルゴリズム112は、広義の暗号化アルゴリズムであり、前記の署名時に用いた暗号化アルゴリズムの他に、この復号化アルゴリズムも含むものとする。   The encryption algorithm 112 possessed by the digital camera 101 is an encryption algorithm in a broad sense, and includes this decryption algorithm in addition to the encryption algorithm used at the time of signing.

このようにして得たMDと画像データから前述の署名時と同様の手順で得たMDとを比較する。比較の結果一致すれば、その画像は改竄されていないということが判定できる。   The MD obtained in this way is compared with the MD obtained from the image data in the same procedure as the above-mentioned signature. If they match as a result of the comparison, it can be determined that the image has not been tampered with.

次に、デジタルカメラ101における画像撮影処理について、図4のフローチャートを用いて説明する。   Next, image shooting processing in the digital camera 101 will be described with reference to the flowchart of FIG.

まず、デジタルカメラ101のユーザが撮影を行う(ステップS401)。この時点では撮影した画像の画像データはRAM203に格納されている。   First, the user of the digital camera 101 performs shooting (step S401). At this time, the image data of the photographed image is stored in the RAM 203.

次に、CPU201はカメラ情報、例えばカメラメーカー名や、デジタルカメラ101の製造シリアル番号など、を画像ヘッダ内に入れるかどうかを判断する(ステップS402)。この判断はRAM203上に記憶された所定のフラグにより行う。このフラグはユーザ設定によって更新できる。カメラ情報を画像ヘッダに入れるのは、どのカメラでこの画像を撮影したのかを明示するためである。この情報がなくても改竄判定はできるため、必須の情報という訳ではないが、カメラ情報があったほうが、画像がどのカメラで撮影されたかの追跡ができるため、撮影者が改竄画像を見て、改竄されたかどうか判断することが容易になり、結果として、より改竄防止には効果がある。   Next, the CPU 201 determines whether or not camera information, for example, the camera manufacturer name, the manufacturing serial number of the digital camera 101, or the like is included in the image header (step S402). This determination is made based on a predetermined flag stored on the RAM 203. This flag can be updated by user settings. The camera information is included in the image header in order to clearly indicate with which camera the image was captured. It is not essential information because tampering can be determined without this information, but it is not necessary information, but if there is camera information, it is possible to track which camera the image was taken, so the photographer looks at the tampered image, It becomes easy to determine whether or not tampering has occurred, and as a result, it is more effective in preventing tampering.

ステップS402でYに進んだ場合、CPU201がカメラ情報を画像ヘッダに入れる(ステップS403)。   When the process proceeds to Y in step S402, the CPU 201 enters camera information in the image header (step S403).

次に、CPU201は画像に対し、共通鍵111を用いて署名する(ステップS404)。署名方法は図3で説明した方法をとる。   Next, the CPU 201 signs the image using the common key 111 (step S404). The signing method is the method described in FIG.

このようにして得た署名付き画像(まだRAM203上にある)をFlashROM209に書き込み、記憶する(ステップS405)。   The signed image (still on the RAM 203) obtained in this way is written and stored in the FlashROM 209 (step S405).

本実施形態におけるデジタルカメラ101は、前述のようにカメラ内部の共通鍵を用いて署名を付けた画像をFlashROM209から読み出し、最終的に署名付き画像を提示する相手に応じた署名方法を用いて更に署名を付ける処理を行うことが可能である。これにより得られる署名付き画像データはネットワークI/F210を介してその相手のクライアントに送信することもできるし、FlashROM209に戻すこともできる。FlashROM209が着脱自在に構成されている場合には、署名付き画像データをネットワークI/F210を介して送信するのではなく、FlashROM209自体を相手先のクライアントに装着することもできる点で、署名付き画像データをFlashROM209に戻す実益がある。   As described above, the digital camera 101 according to the present embodiment reads an image with a signature using a common key inside the camera as described above from the FlashROM 209, and finally uses a signature method according to a partner who presents the signed image. It is possible to perform a process of attaching a signature. The image data with signature thus obtained can be transmitted to the client of the other party via the network I / F 210 or can be returned to the Flash ROM 209. When the FlashROM 209 is configured to be detachable, the signed image data can be attached to the client of the other party instead of transmitting the signed image data via the network I / F 210. There is a benefit of returning data to FlashROM 209.

以下ではまず、共通鍵を用いて署名が付けられた画像に、提示する相手に応じた署名方法を用いて更に署名を付け、これをFlashROM209に記憶する処理を、図5のフローチャートを用いて説明する。署名付き画像データをネットワークI/F210を介して相手のクライアントに送信する処理ついては図7のフローチャートを用いて後述することとする。   In the following, first, a process of adding a signature to an image that has been signed using a common key using a signature method according to the other party to be presented and storing it in the FlashROM 209 will be described with reference to the flowchart of FIG. To do. Processing for transmitting the signed image data to the other client via the network I / F 210 will be described later with reference to the flowchart of FIG.

まず、デジタルカメラ101のユーザは数ある機能の中から、メニュー選択等の手段を通じて署名機能を選択する(ステップS501)。   First, the user of the digital camera 101 selects a signature function from a number of functions through means such as menu selection (step S501).

署名機能を選択後、ユーザは最終的に署名付き画像を提示する相手を選択する(ステップS502)。このステップが必要な理由は、後で、相手に応じて署名方法を変更するためである。   After selecting the signature function, the user finally selects a partner to present the signed image (step S502). The reason why this step is necessary is to change the signature method later according to the other party.

次に、CPU201は選択された相手がRAM203上に画像受信者として記憶されているかどうかを判定する(ステップS514)。詳細は後述するが図8に示すように、画像受信者のリストがRAM203上に存在する。このリスト中に選択した相手がいなければ、相手に対応する署名手段がない旨をディスプレイ205に表示して(ステップS515)終了する。リスト中に選択した相手がいる場合は、次に、ユーザは署名を付けようとする画像を選択する(ステップS503)。   Next, the CPU 201 determines whether or not the selected partner is stored as an image receiver on the RAM 203 (step S514). Although details will be described later, a list of image recipients exists in the RAM 203 as shown in FIG. If there is no selected partner in the list, it is displayed on the display 205 that there is no signature means corresponding to the partner (step S515), and the process ends. If there is a selected partner in the list, the user next selects an image to be signed (step S503).

選択が終了すると、CPU201は選択された画像をFlashROM209から読み出し、RAM203上に置く(ステップS504)。   When the selection is completed, the CPU 201 reads the selected image from the flash ROM 209 and places it on the RAM 203 (step S504).

次に、CPU201は画像が共通鍵111で署名されているかどうかを判断する(ステップS505)。これを判断するのは、FlashROM209に格納されている画像が全て署名されているとは限らないからである。画像を自分のためのみに使うのであって、改竄防止が必要ないのであれば、図4のように撮影時に署名をする必要はない。   Next, the CPU 201 determines whether the image is signed with the common key 111 (step S505). This is determined because not all images stored in the FlashROM 209 are signed. If the image is used only for oneself and it is not necessary to prevent falsification, there is no need to sign at the time of shooting as shown in FIG.

署名されていなければ、無修正が保証できない旨をディスプレイ205に表示し(ステップS507)、画像に署名を行わないまま終了する。   If it is not signed, a message that no correction can be guaranteed is displayed on the display 205 (step S507), and the process ends without signing the image.

署名されていれば、図3に示したごとく、画像中の署名を共通鍵111で復号化する(ステップS506)。   If it is signed, as shown in FIG. 3, the signature in the image is decrypted with the common key 111 (step S506).

そして、CPU201は復号化して得られたMDと画像から計算したMDを比較することにより、画像は無修正のままかどうかを判定する(ステップS508)。   Then, the CPU 201 compares the MD obtained by decoding with the MD calculated from the image to determine whether the image remains unmodified (step S508).

MDが一致せず、画像が修正されていると判断した場合は、画像が修正されている旨を表示し(ステップS510)、画像に署名を行わないまま終了する。   If it is determined that the MDs do not match and the image has been corrected, the fact that the image has been corrected is displayed (step S510), and the process ends without signing the image.

CPU201が画像は無修正であると判断した場合は、次にCPU201は共通鍵111で行った署名は画像から削除すべきかどうかを判定する(ステップS509)。この判定は所定のフラグに基づいて行う。デジタルカメラ101のユーザがこのフラグを設定できるようにしておいてもよい。   If the CPU 201 determines that the image is unmodified, the CPU 201 next determines whether or not the signature made with the common key 111 should be deleted from the image (step S509). This determination is made based on a predetermined flag. The user of the digital camera 101 may be allowed to set this flag.

削除すべきと判断した場合は、画像から共通鍵111で行った署名部分(MAC)を削除する(ステップS511)。   If it is determined that the signature should be deleted, the signature part (MAC) performed with the common key 111 is deleted from the image (step S511).

改竄判定のためには、この後で付与する署名を用いればよいので、共通鍵111で行った署名を残しておく必要はない。しかし、この後で行う署名は公開鍵106を用いて行うので、CPU201がこの署名を復号化することはできなくなってしまう。従って、後でCPU201が再度、この画像に対して改竄判定や復号化を行うのであれば、共通鍵111で行った署名を画像に付けたままにしておくのがよい。   Since it is sufficient to use a signature to be given later for tampering determination, it is not necessary to leave a signature made with the common key 111. However, since the subsequent signature is performed using the public key 106, the CPU 201 cannot decrypt the signature. Therefore, if the CPU 201 performs tampering determination or decryption on this image again later, it is preferable to leave the signature made with the common key 111 attached to the image.

次に、CPU201はこの画像に対し、公開鍵106を用いて署名を実行する(ステップS512)。この手順の詳細については後述する。   Next, the CPU 201 executes a signature on the image using the public key 106 (step S512). Details of this procedure will be described later.

共通鍵111で行った署名(MAC1とする)を画像に残したまま、公開鍵106で行った署名(MAC2とする)を追加するとなると、2つの署名が画像に付与されることになる。   If the signature (MAC2) made with the public key 106 is added while the signature (MAC1) made with the common key 111 is left in the image, two signatures are given to the image.

公開鍵106で行った署名を復号化するのは、通常どおり復号化すれば問題はない。問題は、共通鍵111で署名を行った後に、公開鍵106で行った署名が追加されることになるので、これが画像の改竄と判定されてしまう恐れがあることである。   There is no problem in decrypting the signature made with the public key 106 if it is decrypted as usual. The problem is that since the signature made with the public key 106 is added after the signature with the common key 111, this may be determined to be falsification of the image.

この問題を解決するためには、共通鍵111で行う暗号化及び公開鍵106で行う暗号化の対象を、図3の画像イメージデータに対して計算したMDとする方法、あるいは、公開鍵106で付与するMAC2の領域をCPU201が知っており、その部分を除いて、MDを計算する方法等が挙げられる。   In order to solve this problem, the encryption target performed with the common key 111 and the encryption target performed with the public key 106 are set to the MD calculated for the image image data in FIG. For example, the CPU 201 knows the MAC2 area to be assigned, and the MD is calculated by excluding that area.

ステップS512による署名終了後、署名した画像をFlashROM209に記憶して終了する(ステップS513)。   After completing the signature in step S512, the signed image is stored in the FlashROM 209 and the process ends (step S513).

次に、ステップS512に示した署名機能実行手順の詳細について図6のフローチャートを用いて説明する。   Next, details of the signature function execution procedure shown in step S512 will be described with reference to the flowchart of FIG.

まず、CPU201は署名機能を署名アプリケーション105によって行うかどうかを判定する(ステップS601)。署名機能は、アプリケーションサーバ102からデジタルカメラ101が受信した署名アプリケーション105で行う方法と、公開鍵サーバ103からデジタルカメラ101が受信した公開鍵106、暗号化アルゴリズム107、及びハッシュアルゴリズム108の全て、あるいはそのうちの部分(ただし、公開鍵106は必須である)を用いて行う方法の2種類がある。   First, the CPU 201 determines whether or not the signature function is performed by the signature application 105 (step S601). The signature function is a method performed by the signature application 105 received by the digital camera 101 from the application server 102, and all of the public key 106, the encryption algorithm 107, and the hash algorithm 108 received by the digital camera 101 from the public key server 103, or There are two types of methods that use that part (however, the public key 106 is essential).

なお、署名アプリケーション105を用いるといっても、CPU201から見て公開鍵106、暗号化アルゴリズム107、及びハッシュアルゴリズム108の詳細が分からないだけで、署名アプリケーション105自体はこれらの情報及びプログラムを保持している。   Note that even if the signature application 105 is used, only the details of the public key 106, the encryption algorithm 107, and the hash algorithm 108 are not seen from the CPU 201, and the signature application 105 itself holds these information and programs. ing.

ステップS601でCPU201が署名機能を署名アプリケーション105によって行うかどうかを判定するには、ここで署名が付けられた画像が提示される相手、つまり、ステップS502で選択された相手に対して、署名アプリケーション105がRAM203上に記憶されているかどうかを調べる。   In step S601, the CPU 201 determines whether or not the signature function is performed by the signature application 105. The signature application is sent to the partner to whom the image to which the signature is attached is presented, that is, the partner selected in step S502. Whether 105 is stored in the RAM 203 is checked.

ここで図8に、RAM203上に記憶される、デジタルカメラ101が画像を提示する相手と署名手段とを関連付けたテーブルの例を示す。ここで、相手とは、例えば画像受信者クライアント104における画像受信者のことであり、相手情報とは画像受信者情報114のことである。   Here, FIG. 8 shows an example of a table stored on the RAM 203 in which the digital camera 101 presents an image presentation partner and a signature unit. Here, the partner is an image receiver in the image receiver client 104, for example, and the partner information is the image receiver information 114.

同図において、相手としては、A、B、C、及びDの4者が記憶され、その各々に関連付けられた形で、署名手段が記憶されている。署名手段としては、署名アプリケーション105、公開鍵106、暗号化アルゴリズム107、及びハッシュアルゴリズム108が記憶される。   In the same figure, four parties A, B, C, and D are stored as counterparts, and signature means are stored in a form associated with each of them. As signature means, a signature application 105, a public key 106, an encryption algorithm 107, and a hash algorithm 108 are stored.

署名アプリケーションA、Bとあるのは、互いに異なった署名アプリケーション105を指している。デジタルカメラ101は画像受信者クライアント104A(図示しないが、相手Aにあたる)からアプリケーションサーバ102を通じて署名アプリケーションAを受信する。同様に、画像受信者クライアント104B(図示しないが、相手Bにあたる)から署名アプリケーションBを受信する。CPU201は署名アプリケーション105を受信したときに、相手情報も受け取り(相手情報は、アプリケーションサーバ102との所定のプロトコルに則ったやりとりの中で得てもよいし、署名アプリケーション105の中に埋め込まれていてもよい)、そのようにして得た相手情報と署名アプリケーション105を関連付ける形で記憶している。   The signing applications A and B indicate different signing applications 105. The digital camera 101 receives the signature application A from the image receiver client 104A (not shown, corresponding to the partner A) through the application server 102. Similarly, the signature application B is received from the image receiver client 104B (not shown, corresponding to the partner B). When the CPU 201 receives the signature application 105, the CPU 201 also receives partner information (the partner information may be obtained in an exchange according to a predetermined protocol with the application server 102 or embedded in the signature application 105. The partner information obtained in this way and the signature application 105 are stored in association with each other.

一方、相手Cと相手Dに関しては、デジタルカメラ101は公開鍵サーバ103から情報を得ている。公開鍵C、公開鍵Dが示すように、これらの鍵は別物である。相手Dに関しては、公開鍵106D、暗号化アルゴリズム107、及びハッシュアルゴリズム108が記憶されているが、相手Cに関しては、公開鍵106Cしか記憶されていない。これは、相手Cからは(直接には公開鍵サーバ103からだが)公開鍵106Cしか受け取らなかったことを示す。相手Cに対する署名時には、暗号化アルゴリズムおよびハッシュアルゴリズムには例えば、デフォルトである暗号化アルゴリズム112およびハッシュアルゴリズム113が使用される。   On the other hand, regarding the other party C and the other party D, the digital camera 101 obtains information from the public key server 103. As shown by the public key C and the public key D, these keys are different. For partner D, public key 106D, encryption algorithm 107, and hash algorithm 108 are stored, but for partner C, only public key 106C is stored. This indicates that only the public key 106C has been received from the partner C (although directly from the public key server 103). When signing to the other party C, for example, the encryption algorithm 112 and the hash algorithm 113 which are defaults are used as the encryption algorithm and the hash algorithm.

デジタルカメラ101が相手C(画像受信者クライアント104C)に対し署名付き画像データ109を送ろうとして、デフォルトのアルゴリズムを署名に使用した場合は、どの暗号化アルゴリズムやハッシュアルゴリズムを用いたかを、画像受信者クライアント104Cに送る署名付き画像データ109の中に埋め込む方法か、画像受信者クライアント104Cとの所定のプロトコルを用いる方法によって、画像受信者クライアント104Cに通知する。あるいは、最初から画像受信者クライアント104Cが、デジタルカメラ101が用いるデフォルトアルゴリズムを知っているように、デジタルカメラ101と画像受信者クライアント104Cの間で了解を取った上で、図1のシステムを構築してもよい。   When the digital camera 101 tries to send the signed image data 109 to the partner C (image receiver client 104C) and uses the default algorithm for the signature, the image reception indicates which encryption algorithm or hash algorithm is used. The image recipient client 104C is notified by a method of embedding in the signed image data 109 to be sent to the recipient client 104C or a method using a predetermined protocol with the image recipient client 104C. Alternatively, the system shown in FIG. 1 is constructed after obtaining an understanding between the digital camera 101 and the image receiver client 104C so that the image receiver client 104C knows the default algorithm used by the digital camera 101 from the beginning. May be.

図8の例でステップS601の判定はどうなるかと言えば、相手A及び相手Bに関しては、署名アプリケーション105が記憶されているので、Yesとなる。逆に、相手C及び相手Dに関してはNoである。   In the example of FIG. 8, what happens to the determination in step S601 is “Yes” because the signature application 105 is stored for the partner A and the partner B. On the contrary, regarding partner C and partner D, No.

ステップS601でNと判定された場合、次にCPU201は選択された相手に応じて図8のテーブルから公開鍵106を読み出し、使用する(正確には使用するものとして記憶するということ。実際に使用するのは後のステップS612においてである。)(ステップS604)。   If it is determined as N in step S601, the CPU 201 next reads out the public key 106 from the table of FIG. 8 according to the selected partner and uses it (to be stored exactly as it is used. Actually use it). This is done in later step S612.) (Step S604).

次に、CPU201は選択した相手から暗号化アルゴリズム107が提供されているかどうかを判定する(ステップS606)。提供されている場合は、その暗号化アルゴリズム107を使用する(ステップS607)。提供されていない場合は、前述したデフォルトの暗号化アルゴリズムを使用する(ステップS608)。   Next, the CPU 201 determines whether or not the encryption algorithm 107 is provided from the selected partner (step S606). If provided, the encryption algorithm 107 is used (step S607). If not provided, the aforementioned default encryption algorithm is used (step S608).

次に、CPU201は選択した相手からハッシュアルゴリズム108が提供されているかどうかを判定する(ステップS609)。提供されている場合は、そのハッシュアルゴリズム108を使用する(ステップS610)。提供されていない場合は、前述したデフォルトのハッシュアルゴリズムを使用する(ステップS611)。   Next, the CPU 201 determines whether or not the hash algorithm 108 is provided from the selected partner (step S609). If provided, the hash algorithm 108 is used (step S610). If not provided, the above-described default hash algorithm is used (step S611).

そして、CPU201は前記の手順で選んだ公開鍵106、暗号化アルゴリズム107、及びハッシュアルゴリズム108を用いて、画像に署名を行って(ステップS612)、終了する。   Then, the CPU 201 signs the image using the public key 106, the encryption algorithm 107, and the hash algorithm 108 selected in the above procedure (step S612), and the process ends.

ステップS601でCPU201が署名機能を署名アプリケーション105で行うと判定した場合は、画像データを署名アプリケーション105に渡し、署名アプリケーション105を実行することによって、署名を行って(ステップS603)、終了する。ここで署名アプリケーション105が行う処理の内容は、図3やステップS612で説明したのと同様の処理である。   If the CPU 201 determines in step S601 that the signature function is to be performed by the signature application 105, the image data is transferred to the signature application 105, and the signature application 105 is executed to perform the signature (step S603), and the process ends. Here, the content of the processing performed by the signature application 105 is the same processing as described in FIG. 3 and step S612.

署名アプリケーション105はCPU201が実行するが、アプリケーションはCPU201が実行できるものであればその形式は問わない。CPU201が実行できるネイティブバイナリの形でもよいし、Java(Javaは米国Sun Microsystems社の米国およびその他の国における商標または登録商標である。)アプリケーションのような中間コード形式でもよいし、インタプリタが解釈、実行するスクリプト形式でもよい。   The signature application 105 is executed by the CPU 201, but the format of the application is not limited as long as the application can be executed by the CPU 201. It may be in the form of a native binary that can be executed by the CPU 201, or may be in the form of an intermediate code such as a Java application (Java is a trademark or registered trademark of Sun Microsystems, Inc. in the United States and other countries). The script format to be executed may be used.

さて、図5で説明したのは、署名した画像を再度記憶媒体に記憶する手順についてであった。これは、前述のように、FlashROM209が着脱自在に構成されている場合にはそのFlashROM209を取り外して画像受信者クライアントに装着する態様を想定してのものである。一方、図7のフローチャートは、ネットワークI/F210を介して署名付き画像を送信する態様を示している。なお、署名付き画像を受信した画像受信者クライアント104は、その画像に対し改竄判定を行うことになる。   Now, what has been described with reference to FIG. 5 is the procedure for storing the signed image in the storage medium again. As described above, in the case where the FlashROM 209 is configured to be detachable, it is assumed that the FlashROM 209 is removed and attached to the image recipient client. On the other hand, the flowchart of FIG. 7 shows a mode in which a signed image is transmitted via the network I / F 210. Note that the image recipient client 104 that has received the image with the signature makes a falsification determination on the image.

以下、図7のフローチャートについて説明する。   Hereinafter, the flowchart of FIG. 7 will be described.

まず、デジタルカメラ101のユーザは数ある機能の中から、メニュー選択等の手段を通じて送信機能を選択する(ステップS701)。   First, the user of the digital camera 101 selects a transmission function from a number of functions through means such as menu selection (step S701).

送信機能を選択後、ユーザは最終的に署名付き画像を送信する相手を選択する(ステップS702)。このステップが必要な理由は、後で、相手に応じて署名方法を変更するためである。   After selecting the transmission function, the user finally selects a partner to which the signed image is transmitted (step S702). The reason why this step is necessary is to change the signature method later according to the other party.

次に、CPU201は選択された相手がRAM203上に画像受信者として記憶されているかどうかを判定する(ステップS719)。RAM203上に存在する画像受信者のリスト中に選択した相手がいなければ、相手に対応する署名手段がない旨をディスプレイ205に表示する(ステップS720)。そして、署名を付けないまま画像を相手に送信して(ステップS707)、終了する。リスト中に選択した相手がいる場合は、次に、ユーザは署名を付けようとする画像を選択する(ステップS703)。   Next, the CPU 201 determines whether or not the selected partner is stored as an image receiver on the RAM 203 (step S719). If there is no selected partner in the list of image recipients existing on the RAM 203, a message indicating that there is no signature means corresponding to the partner is displayed on the display 205 (step S720). Then, the image is transmitted to the other party without a signature (step S707), and the process ends. If there is a selected partner in the list, the user next selects an image to be signed (step S703).

選択が終了すると、CPU201は選択された画像をFlashROM209から読み出し、RAM203上に置く(ステップS704)。   When the selection is completed, the CPU 201 reads the selected image from the flash ROM 209 and places it on the RAM 203 (step S704).

次に、CPU201は画像が共通鍵111で署名されているかどうかを判断する(ステップS708)。これを判断するのは、FlashROM209に格納されている画像が全て署名されているとは限らないからである。画像を自分のためのみに使うのであって、改竄防止が必要ないのであれば、図4のように撮影時に署名をする必要はない。   Next, the CPU 201 determines whether or not the image is signed with the common key 111 (step S708). This is determined because not all images stored in the FlashROM 209 are signed. If the image is used only for oneself and it is not necessary to prevent falsification, there is no need to sign at the time of shooting as shown in FIG.

署名されていなければ、無修正が保証できない旨をディスプレイ205に表示し(ステップS710)、署名を付けないまま画像を相手に送信して(ステップS707)、終了する。署名されていれば、図3に示したごとく、画像中の署名を共通鍵111で復号化する(ステップS709)。   If it is not signed, a message that no correction can be guaranteed is displayed on the display 205 (step S710), the image is transmitted to the other party without a signature (step S707), and the process ends. If it is signed, as shown in FIG. 3, the signature in the image is decrypted with the common key 111 (step S709).

そして、CPU201は復号化して得られたMDと画像から計算したMDを比較することにより、画像は無修正のままかどうかを判定する(ステップS711)。   Then, the CPU 201 determines whether the image remains unmodified by comparing the MD obtained by decoding with the MD calculated from the image (step S711).

MDが一致せず、画像が修正されていると判断した場合は、画像が修正されている旨を表示し(ステップS713)、署名を付けないまま画像を相手に送信して(ステップS707)、終了する。   When it is determined that the MD does not match and the image is corrected, the fact that the image is corrected is displayed (step S713), and the image is transmitted to the other party without a signature (step S707). finish.

CPU201が画像は無修正であると判断した場合は、次にCPU201は共通鍵111で行った署名は画像から削除すべきかどうかを判定する(ステップS712)。この判定は所定のフラグに基づいて行う。デジタルカメラ101のユーザがこのフラグを設定できるようにしておいてもよい。   If the CPU 201 determines that the image is unmodified, the CPU 201 next determines whether or not the signature made with the common key 111 should be deleted from the image (step S712). This determination is made based on a predetermined flag. The user of the digital camera 101 may be allowed to set this flag.

削除すべきと判断した場合は、画像から共通鍵111で行った署名部分(MAC)を削除する(ステップS714)。   If it is determined that the signature should be deleted, the signature part (MAC) performed with the common key 111 is deleted from the image (step S714).

改竄判定のためには、この後で付与する署名を用いればよいので、共通鍵111で行った署名を残しておく必要はない。しかし、この後で行う署名は公開鍵106を用いて行うので、CPU201がこの署名を復号化することはできなくなってしまう。従って、後でCPU201が再度、この画像に対して改竄判定や復号化を行うのであれば、共通鍵111で行った署名を画像に付けたままにしておくのがよい。   Since it is sufficient to use a signature to be given later for tampering determination, it is not necessary to leave a signature made with the common key 111. However, since the subsequent signature is performed using the public key 106, the CPU 201 cannot decrypt the signature. Therefore, if the CPU 201 performs tampering determination or decryption on this image again later, it is preferable to leave the signature made with the common key 111 attached to the image.

なお、この手順においては署名を付けた画像は画像受信者クライアント104に送信してしまうのであるから、CPU201が再度、署名を復号化することはないとも判断できる。しかし、図7のシーケンスでは明示していないが、署名付き画像データ109を送信を行うとともに記憶媒体に記憶しておいて、再度署名を復号化する可能性があるなら(元の画像データを署名付き画像データ109で上書き保存しておく場合等)、共通鍵111で行った署名を残しておく意味もある。   In this procedure, since the image with the signature is transmitted to the image recipient client 104, it can be determined that the CPU 201 does not decrypt the signature again. However, although not explicitly shown in the sequence of FIG. 7, if there is a possibility that the signed image data 109 is transmitted and stored in the storage medium and the signature is decrypted again (the original image data is signed). For example, when the image data 109 is overwritten and saved with the attached image data 109), the signature made with the common key 111 may be left behind.

次に、CPU201はこの画像に対し、公開鍵106を用いて署名を実行する(ステップS717)。この手順は図6を用いて説明したとおりである。   Next, the CPU 201 executes a signature on the image using the public key 106 (step S717). This procedure is as described with reference to FIG.

署名終了後、署名付き画像データ109を選択した相手である画像受信者クライアント104にネットワークI/F210を通じて送信し(ステップS718)、終了する。   After the signature is completed, the signed image data 109 is transmitted to the selected image recipient client 104 through the network I / F 210 (step S718), and the process ends.

署名付き画像データ109を画像受信者クライアント104に送信する手段としては、どのようなものでもよく、有線あるいは無線、通信プロトコルの如何を問わない。   Any means may be used for transmitting the signed image data 109 to the image recipient client 104, regardless of wired, wireless, or communication protocol.

次に、デジタルカメラ101がアプリケーションサーバ102から署名アプリケーション105を即座にダウンロードする際の手順について、図9のフローチャートを用いて説明する。   Next, a procedure when the digital camera 101 immediately downloads the signature application 105 from the application server 102 will be described with reference to the flowchart of FIG.

まず、デジタルカメラ101のCPU201はネットワークI/F210を通じて、所定のプロトコルを用いて、アプリケーションサーバ102にアクセスする(ステップS901)。アプリケーションサーバ102は、必要であれば、デジタルカメラ101のアクセスの認証を行う。   First, the CPU 201 of the digital camera 101 accesses the application server 102 using a predetermined protocol via the network I / F 210 (step S901). The application server 102 authenticates access to the digital camera 101 if necessary.

署名アプリケーション105のダウンロードがアプリケーションサーバ102によって許可されれば、デジタルカメラ101のCPU201はネットワークI/F210を通じて署名アプリケーション105をダウンロードする(ステップS902)。   If downloading of the signature application 105 is permitted by the application server 102, the CPU 201 of the digital camera 101 downloads the signature application 105 through the network I / F 210 (step S902).

さらに、CPU201は、ダウンロードした署名アプリケーション105に対応する相手情報すなわち画像受信者情報114をアプリケーションサーバ102から取得する(ステップS903)。   Further, the CPU 201 acquires partner information corresponding to the downloaded signature application 105, that is, image recipient information 114 from the application server 102 (step S903).

ここで取得する画像受信者情報114は相手を特定できるものであればその内容は問わない。図5のように最終的に署名付き画像データ109を記憶媒体に記憶するだけなら、ステップS502で相手を選択するためには、相手の名前だけでもよいことになる。   The content of the image recipient information 114 acquired here is not limited as long as it can identify the other party. If only the signed image data 109 is finally stored in the storage medium as shown in FIG. 5, in order to select the partner in step S502, only the name of the partner may be used.

一方、図7のように最終的に署名付き画像データ109を相手に送信するなら、画像受信者情報114とは、相手がコンピュータであれば、そのアドレス(例えばIPアドレス)、電話線につながっている端末なら電話番号、インターネット上のリソースであればこれを表現するURL(Uniform Resource Locator)等、様々なものが考えられるが、そのうちのいずれでも、あるいはそれら以外のものでもよい。   On the other hand, if the signed image data 109 is finally transmitted to the other party as shown in FIG. 7, if the other party is a computer, the image recipient information 114 is connected to the address (for example, IP address) and the telephone line. Various terminals such as a telephone number for a terminal, a URL (Uniform Resource Locator) for expressing this for a resource on the Internet, and the like may be used, but any of them may be used.

そして、CPU201は、前述のようにして得た及び画像受信者情報114に関連付けて署名アプリケーション105を図8に示したテーブルに記憶する(ステップS904)。その際、画像受信者情報114は図8のテーブルの相手欄に格納される。   The CPU 201 stores the signature application 105 in the table shown in FIG. 8 in association with the image recipient information 114 obtained as described above (step S904). At that time, the image recipient information 114 is stored in the partner column of the table of FIG.

一人の画像受信者に対し、画像受信者情報114が複数存在することも考えられる。(例えば、IPアドレスとURL等)その場合には相手欄に複数の画像受信者情報114が格納される。その場合には、なるべく変更が少ない情報を相手欄のキーとするのがよい。例えば前記のIPアドレスとURLの2つの画像受信者情報114が送られてきたときのことを考えると、URLの方が変更が少ないと考えられるので、これをキーとしておく。そうすれば、IPアドレスだけ変更された場合、URLをキーとして、IPアドレス情報だけを更新すればよいことになる。   It is also conceivable that a plurality of pieces of image recipient information 114 exist for one image recipient. In this case, a plurality of pieces of image recipient information 114 are stored in the partner column. In that case, it is better to use information with as little change as possible as the key of the opponent column. For example, considering that the two image recipient information 114 of the IP address and the URL are sent, the URL is considered to be less changed, and this is used as a key. Then, when only the IP address is changed, only the IP address information needs to be updated using the URL as a key.

同じ画像受信者クライアント104から複数回、署名アプリケーション105及び画像受信者情報114(画像受信者情報114は同じで、署名アプリケーション105が異なるとする)を受け取った場合は、図8のテーブルにおいて、該当する相手の欄を後で受け取ったデータで上書きする方法がまず考えられる。この方法では、署名アプリケーション105を更新することができる。   If the signature application 105 and the image recipient information 114 (assuming that the image recipient information 114 is the same and the signature application 105 is different) are received from the same image recipient client 104 a plurality of times, in the table of FIG. First of all, the method of overwriting the field of the partner to be overwritten with the data received later can be considered. In this method, the signature application 105 can be updated.

また、図8のテーブルにおいて、同じ画像受信者クライアント104を指す複数のエントリ(互いに署名アプリケーション105は異なる)を作成する方法でもよい。この方法では、同じ画像受信者クライアント104に対し、実行する署名アプリケーション105を選択することによって、署名方法を変えることができる。   Further, a method of creating a plurality of entries (signature applications 105 are different from each other) pointing to the same image recipient client 104 in the table of FIG. In this method, the signature method can be changed by selecting the signature application 105 to be executed for the same image recipient client 104.

ここまで画像受信者情報114を図8のテーブルのキーとして扱ってきたが、この情報は必須というわけではない。ステップS502において、画像を提示する相手を選択する代わりに、最初から署名アプリケーション105を選択するのであれば、画像受信者情報114は不要である。この場合は図8のテーブルに相手欄が存在しなくてもよい。   Up to this point, the image recipient information 114 has been treated as a key in the table of FIG. 8, but this information is not essential. In step S502, if the signature application 105 is selected from the beginning instead of selecting a partner to present an image, the image recipient information 114 is not necessary. In this case, the opponent field does not have to exist in the table of FIG.

図7のシーケンスにおいては、後で署名付き画像データ109を送信する都合上、相手選択が必須のように見えるが、署名アプリケーション105が送信機能までも内包しており、予め決まった所へ署名付き画像データ109を送信するのであれば、これもまた相手の選択をしないで、署名アプリケーション105の選択さえすればよいことになる。   In the sequence of FIG. 7, it seems that selection of the other party is indispensable for the purpose of transmitting the signed image data 109 later. However, the signature application 105 includes a transmission function, and a signature is added to a predetermined place. If the image data 109 is to be transmitted, it is only necessary to select the signature application 105 without selecting the other party.

さて、以上の記述では、署名アプリケーション105、公開鍵106、暗号化アルゴリズム107、及びハッシュアルゴリズム108をデジタルカメラ101に送る際の暗号化については何も触れてこなかった。改竄防止という観点からはそれらの情報の暗号化は不要だからである。デジタルカメラ101が署名をつけた画像に対し、第三者が改竄すれば、前述の処理で画像受信者クライアント104は必ず改竄を発見できる。   In the above description, nothing has been said about encryption when sending the signature application 105, the public key 106, the encryption algorithm 107, and the hash algorithm 108 to the digital camera 101. This is because encryption of such information is unnecessary from the viewpoint of preventing falsification. If a third party falsifies an image to which the digital camera 101 has attached a signature, the image recipient client 104 can always find the falsification by the above-described processing.

しかし、なりすましに関しては、注意する必要がある。公開鍵106、暗号化アルゴリズム107、及びハッシュアルゴリズム108(署名アプリケーション105もこれらの情報を内包していると考えれば、これらだけを考慮すればよい)を第三者が知ることができれば、そして、画像のどの部分に対してMDを計算して、どのようにMACを埋め込めばよいかを知ることができれば、第三者はデジタルカメラ101になりすまして、偽画像を画像受信者クライアント104に送りつけることができる可能性がある。   However, care must be taken regarding impersonation. If a third party can know the public key 106, the encryption algorithm 107, and the hash algorithm 108 (if the signing application 105 is considered to contain these pieces of information, only this can be considered), and If it is possible to calculate the MD for which part of the image and know how to embed the MAC, the third party impersonates the digital camera 101 and sends a fake image to the image receiver client 104. Could be possible.

従って、少なくとも公開鍵106は第三者に対して秘匿しておく必要がある。なお、暗号化アルゴリズム107やハッシュアルゴリズム108は公開鍵106に比べると、秘匿しておく必要性は少ない。それらのアルゴリズムを隠しても、暗号の強度が高まるわけではないからである。公開鍵106は「公開」という文字がついているが、この場合、第三者に公開するという意味ではなく、私的鍵110と対をなすという意味での公開鍵106である。   Accordingly, at least the public key 106 needs to be kept secret from a third party. Note that the encryption algorithm 107 and the hash algorithm 108 need not be kept secret as compared to the public key 106. Hiding these algorithms does not increase the strength of the encryption. The public key 106 has a character “public”. In this case, the public key 106 does not mean to be disclosed to a third party but is a public key 106 in the sense that it is paired with the private key 110.

このように見てくると、公開鍵106と私的鍵110は、第三者に対して秘匿するのであるから、それらは共通鍵暗号方式で用いる共通鍵でもよいことになる。その場合は、もちろん、暗号化アルゴリズム107はその共通鍵暗号方式に即したものが選ばれる。また、その共通鍵はデジタルカメラ内部での署名に用いられるわけではなく、共通鍵111とは異なるものである。   In this way, since the public key 106 and the private key 110 are kept secret from a third party, they may be a common key used in a common key cryptosystem. In that case, of course, the encryption algorithm 107 is selected according to the common key encryption method. The common key is not used for signature inside the digital camera and is different from the common key 111.

さて、公開鍵106を使用する場合について考えると、これを第三者に対して秘匿するためには、公開鍵106が画像受信者クライアント104からデジタルカメラ101に送られるまでの経路を暗号化すればよい。例えば、SSL(Secure Socket Layer)を使用したり、以上に述べたのと別の公開鍵暗号方式を用いて、公開鍵106をデジタルカメラ101に送ったりする方法が考えられる。また、このとき暗号化アルゴリズム107やハッシュアルゴリズム108も同様に暗号化してもよい。   Considering the case where the public key 106 is used, in order to conceal this from a third party, the path from the public key 106 to the digital camera 101 sent from the image receiver client 104 must be encrypted. That's fine. For example, a method of sending the public key 106 to the digital camera 101 using SSL (Secure Socket Layer) or using another public key encryption method as described above can be considered. At this time, the encryption algorithm 107 and the hash algorithm 108 may be similarly encrypted.

次に、デジタルカメラ101が公開鍵106を公開鍵サーバ103から受信する際の手順について、図10のフローチャートを用いて説明する。   Next, a procedure when the digital camera 101 receives the public key 106 from the public key server 103 will be described with reference to the flowchart of FIG.

まず、デジタルカメラ101のCPU201はネットワークI/F210を通じて、所定のプロトコルを用いて、公開鍵サーバ103にアクセスする(ステップS1001)。公開鍵106を取得するのに必要であれば、デジタルカメラ101のアクセスの認証を公開鍵サーバ103は行う。   First, the CPU 201 of the digital camera 101 accesses the public key server 103 using a predetermined protocol via the network I / F 210 (step S1001). If necessary to acquire the public key 106, the public key server 103 authenticates access to the digital camera 101.

公開鍵106のダウンロードが公開鍵サーバ103によって許可されれば、デジタルカメラ101のCPU201はネットワークI/F210を通じて公開鍵106をダウンロードする(ステップS1002)。   If downloading of the public key 106 is permitted by the public key server 103, the CPU 201 of the digital camera 101 downloads the public key 106 through the network I / F 210 (step S1002).

次に、CPU201は、暗号化アルゴリズム107が公開鍵サーバ103から提供されている場合は(ステップS1003)、公開鍵サーバ103からネットワークI/F210を通じて暗号化アルゴリズム107を取得する(ステップS1004)。   Next, when the encryption algorithm 107 is provided from the public key server 103 (step S1003), the CPU 201 acquires the encryption algorithm 107 from the public key server 103 through the network I / F 210 (step S1004).

次に、CPU201は、ハッシュアルゴリズム108が公開鍵サーバ103から提供されている場合は(ステップS1005)、公開鍵サーバ103からネットワークI/F210を通じてハッシュアルゴリズム108を取得する(ステップS1006)。   Next, when the hash algorithm 108 is provided from the public key server 103 (step S1005), the CPU 201 acquires the hash algorithm 108 from the public key server 103 through the network I / F 210 (step S1006).

さらに、CPU201は、ダウンロードした公開鍵106に対応する相手情報すなわち画像受信者情報114を公開鍵サーバ103から取得する(ステップS1007)。   Further, the CPU 201 acquires the partner information corresponding to the downloaded public key 106, that is, the image recipient information 114 from the public key server 103 (step S1007).

最後に、CPU201は、前述のようにして得た及び画像受信者情報114に関連付けて公開鍵106、そしてあれば暗号化アルゴリズム107あるいはハッシュアルゴリズム108を図8に示したテーブルに記憶する(ステップS1008)。   Finally, the CPU 201 stores the public key 106 obtained in the manner described above and the public key 106 in association with the image recipient information 114, and the encryption algorithm 107 or the hash algorithm 108, if any, in the table shown in FIG. ).

次に、デジタルカメラ101において画像を撮影後、即座に画像受信者クライアント104に対して送信する手順について、図11のフローチャートを用いて説明する。   Next, a procedure for immediately sending an image to the image recipient client 104 after taking an image with the digital camera 101 will be described with reference to a flowchart of FIG.

まず、デジタルカメラ101のユーザが撮影を行う(ステップS1101)。このとき、デジタルカメラ101のモードは、予め選択されていた画像受信者クライアント104に即座に撮影画像を送信するようになっているものとする。   First, the user of the digital camera 101 performs shooting (step S1101). At this time, it is assumed that the mode of the digital camera 101 is such that the captured image is immediately transmitted to the image recipient client 104 selected in advance.

CPU201は、前記の選択した相手(画像受信者クライアント104)は署名を必要とするかどうかを判定する(ステップS1102)。ここでは、同じ相手に送信するにしても、署名を行わなくてもよい場合があり、それを示すフラグがあると仮定して、このような判定を行っている。   The CPU 201 determines whether the selected partner (image recipient client 104) requires a signature (step S1102). Here, there is a case where it is not necessary to sign even if it is transmitted to the same party, and such a determination is made on the assumption that there is a flag indicating that.

署名が必要であった場合は、CPU201は選択した相手が署名手段を提供しているかどうかを判定する(ステップS1103)。図8のテーブルに選択した相手が存在し、その相手に対する署名手段が記憶されていれば、署名手段が提供されているものと見なす。   If the signature is necessary, the CPU 201 determines whether or not the selected partner provides a signing means (step S1103). If the selected partner exists in the table of FIG. 8 and the signing means for that partner is stored, it is considered that the signing means is provided.

ステップS1102あるいはステップS1103でいずれかがNの場合は、撮影した画像を相手にそのまま送信して(ステップS1104)、終了する。   If either of them is N in step S1102 or step S1103, the photographed image is transmitted as it is to the other party (step S1104), and the process ends.

相手が署名手段を提供していた場合は、CPU201は画像ヘッダの中にカメラ情報を入れる(ステップS1105)。   If the other party has provided a signature means, the CPU 201 puts camera information in the image header (step S1105).

そして、CPU201は署名機能を実行する(ステップS1106)。これは図6のシーケンスを用いて説明したのと同様の手順をとる。   Then, the CPU 201 executes a signature function (step S1106). This takes the same procedure as described with reference to the sequence of FIG.

最後に、CPU201は、署名付き画像データ109を画像受信者クライアント104に送信して(ステップS1107)、終了する。   Finally, the CPU 201 transmits the signed image data 109 to the image recipient client 104 (step S1107), and the process ends.

(他の実施形態)
以上、説明した実施形態は、図1に示したように、デジタルカメラ101、アプリケーションサーバ102、公開鍵サーバ103および画像受信者クライアント104で構成される画像署名システムを前提に説明したが、デジタルカメラ101がアプリケーションサーバ102および公開鍵サーバ103の両機能を含む構成であってもよい。つまり本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
(Other embodiments)
The above-described embodiment has been described on the assumption that the image signature system includes the digital camera 101, the application server 102, the public key server 103, and the image recipient client 104 as shown in FIG. 101 may include both functions of the application server 102 and the public key server 103. That is, the present invention may be applied to a system composed of a plurality of devices, or may be applied to an apparatus composed of a single device.

なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータがその供給されたプログラムコードを読み出して実行することによっても実現される。その場合、プログラムの機能を有していれば、その形態はプログラムである必要はない。   In the present invention, a software program that realizes the functions of the above-described embodiments is directly or remotely supplied to a system or apparatus, and the computer of the system or apparatus reads and executes the supplied program code. It is also realized by. In that case, as long as it has the function of a program, the form does not need to be a program.

従って、本発明の機能処理をコンピュータで実現するために、そのコンピュータにインストールされるプログラムコード自体およびそのプログラムを格納した記憶媒体も本発明を構成することになる。つまり、本発明の特許請求の範囲には、本発明の機能処理を実現するためのコンピュータプログラム自体、およびそのプログラムを格納した記憶媒体も含まれる。   Therefore, in order to realize the functional processing of the present invention with a computer, the program code itself installed in the computer and the storage medium storing the program also constitute the present invention. In other words, the claims of the present invention include the computer program itself for realizing the functional processing of the present invention and a storage medium storing the program.

その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。   In this case, the program may be in any form as long as it has a program function, such as an object code, a program executed by an interpreter, or script data supplied to the OS.

プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。   As a storage medium for supplying the program, for example, flexible disk, hard disk, optical disk, magneto-optical disk, MO, CD-ROM, CD-R, CD-RW, magnetic tape, nonvolatile memory card, ROM, DVD (DVD-ROM, DVD-R).

その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、そのホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記憶媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明のクレームに含まれるものである。   As another program supply method, a client computer browser is used to connect to an Internet homepage, and the computer program of the present invention itself or a compressed file including an automatic installation function is downloaded from the homepage to a storage medium such as a hard disk. Can also be supplied. It can also be realized by dividing the program code constituting the program of the present invention into a plurality of files and downloading each file from a different homepage. That is, a WWW server that allows a plurality of users to download a program file for realizing the functional processing of the present invention on a computer is also included in the claims of the present invention.

また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。   In addition, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM, distributed to users, and key information for decryption is downloaded from a homepage via the Internet to users who have cleared predetermined conditions. It is also possible to execute the encrypted program by using the key information and install the program on a computer.

また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。   In addition to the functions of the above-described embodiments being realized by the computer executing the read program, the OS running on the computer based on the instruction of the program is a part of the actual processing. Alternatively, the functions of the above-described embodiment can be realized by performing all of them and performing the processing.

さらに、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。   Furthermore, after the program read from the storage medium is written to a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion board or The CPU or the like provided in the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.

本発明の実施形態に係る画像署名システムの構成を示すブロック図である。It is a block diagram which shows the structure of the image signature system which concerns on embodiment of this invention. 実施形態におけるデジタルカメラの内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the digital camera in embodiment. 画像に署名を付加する方法及び署名付き画像の改竄判定を行う方法を説明する図である。It is a figure explaining the method of adding a signature to an image, and the method of performing the falsification determination of the image with a signature. 実施形態のデジタルカメラにおける画像撮影処理を示すフローチャートである。It is a flowchart which shows the image imaging process in the digital camera of embodiment. 共通鍵を用いて署名が付けられた画像に、提示する相手に応じた署名方法を用いて更に署名を付け、これをFlashROMに記憶する処理を示すフローチャートである。It is a flowchart which shows the process which attaches a signature further to the image to which the signature was attached using the common key using the signature method according to the other party to show, and memorize | stores this in FlashROM. 署名機能実行手順の詳細を示すフローチャートである。It is a flowchart which shows the detail of a signature function execution procedure. 共通鍵を用いて署名が付けられた画像に、提示する相手に応じた署名方法を用いて更に署名を付け、これを相手先のクライアントに送信する処理を示すフローチャートである。It is a flowchart which shows the process which attaches a signature further to the image to which the signature was attached using the common key using the signature method according to the other party to show, and transmits this to the other party's client. 相手(画像受信者)と署名方法を関連付けて記憶するテーブルの例を示す図である。It is a figure which shows the example of the table which links | relates and memorize | stores an other party (image receiver) and a signature method. デジタルカメラが署名アプリケーションをアプリケーションサーバから即座にダウンロードする際の手順を示すフローチャートである。It is a flowchart which shows the procedure at the time of a digital camera downloading a signature application from an application server immediately. デジタルカメラが公開鍵を公開鍵サーバから受信する際の手順を示すフローチャートである。It is a flowchart which shows the procedure at the time of a digital camera receiving a public key from a public key server. デジタルカメラにおいて画像を撮影後、即座に画像受信者に対して送信する手順について説明したフローチャートである。It is the flowchart explaining the procedure which transmits to an image recipient immediately after image | photographing an image with a digital camera.

Claims (12)

入力した画像を記憶する画像記憶手段と、
画像の提示先を選択する提示先選択手段と、
提示対象の画像を前記画像記憶手段から選択する画像選択手段と、
前記画像選択手段により選択された前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であるか否かを判定する判定手段と、
前記判定手段により前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であると判定された場合、前記提示先に応じた署名アルゴリズムにより前記提示対象の画像に電子署名を付加する署名手段と、
を有することを特徴とする画像署名装置。
Image storage means for storing the input image;
A presentation destination selection means for selecting a presentation destination of the image;
Image selection means for selecting an image to be presented from the image storage means;
A determination unit that determines whether or not the image to be presented selected by the image selection unit is uncorrected from the time when the image is first stored in the image storage unit;
When it is determined that the image to be presented is uncorrected from the time when the image to be presented is first stored in the image storage means by the judging means, an electronic signature is attached to the image to be presented by a signature algorithm corresponding to the presentation destination. A signature means to be added;
An image signature apparatus comprising:
前記署名アルゴリズムは、前記提示先の公開鍵を含むことを特徴とする請求項1に記載の画像署名装置。   The image signature apparatus according to claim 1, wherein the signature algorithm includes a public key of the presentation destination. 入力した画像に、ユーザの指示によっては変更することのできない第1の署名アルゴリズムにより電子署名を付加する第1の署名手段と、
前記第1の署名手段による電子署名が付加された画像を記憶する画像記憶手段と、
画像の提示先を選択する提示先選択手段と、
提示対象の画像を前記画像記憶手段から選択する画像選択手段と、
前記画像選択手段により選択された前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であるか否かを判定する判定手段と、
前記判定手段により前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であると判定された場合、前記提示先に応じた第2の署名アルゴリズムにより前記提示対象の画像に電子署名を付加する第2の署名手段と、
を有することを特徴とする画像署名装置。
A first signature means for adding an electronic signature to the input image by a first signature algorithm that cannot be changed according to a user instruction;
Image storage means for storing an image with an electronic signature added by the first signature means;
A presentation destination selection means for selecting a presentation destination of the image;
Image selection means for selecting an image to be presented from the image storage means;
A determination unit that determines whether or not the image to be presented selected by the image selection unit is uncorrected from the time when the image is first stored in the image storage unit;
When it is determined that the image to be presented is uncorrected from the time when the image to be presented is first stored in the image storage means by the judging means, the image to be presented is displayed by the second signature algorithm corresponding to the presentation destination. A second signing means for adding an electronic signature;
An image signature apparatus comprising:
前記第2の署名アルゴリズムを実現するためのデータを外部装置から受信する受信手段を更に有し、
前記第2の署名手段は、前記受信手段により受信された前記データにより実現される前記第2の署名アルゴリズムに基づいて前記提示対象の画像に電子署名を付加することを特徴とする請求項3に記載の画像署名装置。
Further comprising receiving means for receiving data for realizing the second signature algorithm from an external device;
The second signature unit adds an electronic signature to the image to be presented based on the second signature algorithm realized by the data received by the receiving unit. The image signature device described.
前記受信手段は、前記判定手段により前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であると判定された場合に、前記データを前記外部装置から受信することを特徴とする請求項3に記載の画像署名装置。   The receiving unit receives the data from the external device when the determining unit determines that the image to be presented is uncorrected from the time when the image is first stored in the image storing unit. The image signature device according to claim 3. 前記データは、公開鍵を含むことを特徴とする請求項4または5に記載の画像署名装置。   The image signature apparatus according to claim 4, wherein the data includes a public key. 入力した画像をメモリに記憶する画像記憶ステップと、
画像の提示先を選択する提示先選択ステップと、
提示対象の画像を前記メモリから選択する画像選択ステップと、
前記画像選択ステップにより選択された前記提示対象の画像が前記メモリに最初に記憶された時点から無修正であるか否かを判定する判定ステップと、
前記判定ステップにより前記提示対象の画像が前記メモリに最初に記憶された時点から無修正であると判定された場合、前記提示先に応じた署名アルゴリズムにより前記提示対象の画像に電子署名を付加する署名ステップと、
を有することを特徴とする画像署名方法。
An image storage step for storing the input image in a memory;
A presentation selection step for selecting a presentation destination of the image;
An image selection step of selecting an image to be presented from the memory;
A determination step of determining whether or not the presentation target image selected by the image selection step is uncorrected from the time when the image is first stored in the memory;
When it is determined by the determination step that the image to be presented is uncorrected from the time when the image to be presented is first stored in the memory, an electronic signature is added to the image to be presented by a signature algorithm according to the presentation destination Signing step;
An image signature method characterized by comprising:
入力した画像に、ユーザの指示によっては変更することのできない第1の署名アルゴリズムにより電子署名を付加する第1の署名ステップと、
前記第1の署名ステップで電子署名が付加された画像をメモリに記憶する画像記憶ステップと、
画像の提示先を選択する提示先選択ステップと、
提示対象の画像を前記メモリから選択する画像選択ステップと、
前記画像選択ステップにより選択された前記提示対象の画像が前記メモリに最初に記憶された時点から無修正であるか否かを判定する判定ステップと、
前記判定ステップにより前記提示対象の画像が前記メモリに最初に記憶された時点から無修正であると判定された場合、前記提示先に応じた第2の署名アルゴリズムにより前記提示対象の画像に電子署名を付加する第2の署名ステップと、
を有することを特徴とする画像署名方法。
A first signature step of adding an electronic signature to the input image by a first signature algorithm that cannot be changed according to a user instruction;
An image storage step of storing in a memory the image to which the electronic signature has been added in the first signature step;
A presentation selection step for selecting a presentation destination of the image;
An image selection step of selecting an image to be presented from the memory;
A determination step of determining whether or not the presentation target image selected by the image selection step is uncorrected from the time when the image is first stored in the memory;
When it is determined by the determination step that the image to be presented is uncorrected from the time when the image to be presented is first stored in the memory, the electronic signature is applied to the image to be presented by the second signature algorithm according to the presentation destination. A second signing step of appending
An image signature method characterized by comprising:
請求項7又は8に記載の画像署名方法を実行するためのプログラム。   A program for executing the image signature method according to claim 7 or 8. 請求項9に記載のプログラムを格納したコンピュータ読み取り可能な可読記憶媒体。   A computer-readable storage medium storing the program according to claim 9. 画像に電子署名を付加する署名装置と、署名アルゴリズムを実現するためのデータを前記署名装置に供給するサーバ装置とを含む画像署名システムであって、
前記署名装置は、
入力した画像を記憶する画像記憶手段と、
画像の提示先を選択する提示先選択手段と、
提示対象の画像を前記画像記憶手段から選択する画像選択手段と、
前記画像選択手段により選択された前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であるか否かを判定する判定手段と、
前記判定手段により前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であると判定された場合、前記サーバ装置から提供される前記データにより実現される署名アルゴリズムに基づいて前記提示対象の画像に電子署名を付加する署名手段と、
を有することを特徴とする画像署名システム。
An image signature system comprising: a signature device that adds an electronic signature to an image; and a server device that supplies data for implementing a signature algorithm to the signature device,
The signing device is:
Image storage means for storing the input image;
A presentation destination selection means for selecting a presentation destination of the image;
Image selection means for selecting an image to be presented from the image storage means;
A determination unit that determines whether or not the image to be presented selected by the image selection unit is uncorrected from the time when the image is first stored in the image storage unit;
When it is determined by the determination means that the image to be presented is uncorrected from the time when the image to be presented is first stored in the image storage means, based on a signature algorithm realized by the data provided from the server device Signature means for adding an electronic signature to the image to be presented;
An image signature system comprising:
画像に電子署名を付加する署名装置と、署名アルゴリズムを実現するためのデータを前記署名装置に供給するサーバ装置とを含む画像署名システムであって、
前記署名装置は、
入力した画像に、ユーザの指示によっては変更することのできない第1のアルゴリズムにより電子署名を付加する第1の署名手段と、
前記第1の署名手段による電子署名が付加された画像を記憶する画像記憶手段と、
画像の提示先を選択する提示先選択手段と、
提示対象の画像を前記画像記憶手段から選択する画像選択手段と、
前記画像選択手段により選択された前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であるか否かを判定する判定手段と、
前記判定手段により前記提示対象の画像が前記画像記憶手段に最初に記憶された時点から無修正であると判定された場合、前記サーバ装置から提供される前記データにより実現される第2の署名アルゴリズムに基づいて前記提示対象の画像に電子署名を付加する第2の署名手段と、
を有することを特徴とする画像署名システム。
An image signature system comprising: a signature device that adds an electronic signature to an image; and a server device that supplies data for implementing a signature algorithm to the signature device,
The signing device is:
A first signature means for adding an electronic signature to the input image by a first algorithm that cannot be changed according to a user instruction;
Image storage means for storing an image with an electronic signature added by the first signature means;
A presentation destination selection means for selecting a presentation destination of the image;
Image selection means for selecting an image to be presented from the image storage means;
A determination unit that determines whether or not the image to be presented selected by the image selection unit is uncorrected from the time when the image is first stored in the image storage unit;
A second signature algorithm realized by the data provided from the server device when the determination unit determines that the image to be presented is uncorrected from the time when the image to be presented is first stored in the image storage unit; Second signing means for adding an electronic signature to the image to be presented based on
An image signature system comprising:
JP2003435451A 2003-12-26 2003-12-26 Image signature device and method thereof Withdrawn JP2005197808A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003435451A JP2005197808A (en) 2003-12-26 2003-12-26 Image signature device and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003435451A JP2005197808A (en) 2003-12-26 2003-12-26 Image signature device and method thereof

Publications (1)

Publication Number Publication Date
JP2005197808A true JP2005197808A (en) 2005-07-21

Family

ID=34815531

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003435451A Withdrawn JP2005197808A (en) 2003-12-26 2003-12-26 Image signature device and method thereof

Country Status (1)

Country Link
JP (1) JP2005197808A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114270776A (en) * 2019-08-30 2022-04-01 索尼集团公司 Imaging apparatus, image data processing method, and program
US20220366868A1 (en) * 2019-10-30 2022-11-17 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and storage medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114270776A (en) * 2019-08-30 2022-04-01 索尼集团公司 Imaging apparatus, image data processing method, and program
US20220366868A1 (en) * 2019-10-30 2022-11-17 Canon Kabushiki Kaisha Image processing apparatus, image processing method, and storage medium

Similar Documents

Publication Publication Date Title
US8738917B2 (en) Image data verification
WO2007066738A1 (en) Proxy terminal, server device, proxy terminal communication path setting method, and server device communication path setting method
JP5600407B2 (en) COMMUNICATION DEVICE, COMMUNICATION DEVICE CONTROL METHOD, AND COMPUTER PROGRAM
JP2004355562A (en) Apparatus authentication system
JP5372595B2 (en) Content transmitting apparatus and content receiving apparatus
JP4518969B2 (en) Mobile communication device, backup device, backup method, and backup program
JP2004272770A (en) Relay apparatus of network device, system and method for managing the same, authentication server and update server
JP2006018399A (en) Information processor, information processing method and program
JP2004040307A (en) Image forming apparatus
JP4750133B2 (en) Digital watermark embedding device, digital watermark detection device, and digital watermark system
JP2019161580A (en) Data transmission device, data transmission/reception system, data reception device, data transmission method, and program
JP2005197808A (en) Image signature device and method thereof
JP5563361B2 (en) Imaging apparatus, image storage method, and program
JP4631303B2 (en) Data utilization system, storage device, data utilization method, and computer program
JP4910956B2 (en) Communication control system, terminal, and program
JP5063303B2 (en) IMAGING DEVICE, IMAGING DEVICE CONTROL METHOD, AND PROGRAM
JPWO2006126580A1 (en) Image data transmission system and method, and terminal device and management center constituting the transmission side and the reception side of the system, respectively
JP2005286823A (en) Image input device, communication system, control method, computer program, and storage medium
JP6095730B2 (en) Content transmission apparatus and method
JP2019070882A (en) Server apparatus
JP2007318583A (en) Content reproducing apparatus
JP2007142811A (en) Data receiver
JP2007156829A (en) Apparatus, method and program for content transfer, and apparatus, method and program for content reproduction
JP2008146571A (en) Data processing system, data processing apparatus, data authentication method, and program
JP2006129080A (en) Data processing apparatus and method thereof

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20070306