JP5623657B2 - Cryptographic communication system, cryptographic processing apparatus, computer program, and cryptographic communication method - Google Patents

Cryptographic communication system, cryptographic processing apparatus, computer program, and cryptographic communication method Download PDF

Info

Publication number
JP5623657B2
JP5623657B2 JP2013545721A JP2013545721A JP5623657B2 JP 5623657 B2 JP5623657 B2 JP 5623657B2 JP 2013545721 A JP2013545721 A JP 2013545721A JP 2013545721 A JP2013545721 A JP 2013545721A JP 5623657 B2 JP5623657 B2 JP 5623657B2
Authority
JP
Japan
Prior art keywords
temporary key
unit
key generation
communication device
generation 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.)
Active
Application number
JP2013545721A
Other languages
Japanese (ja)
Other versions
JPWO2013076848A1 (en
Inventor
晃由 山口
晃由 山口
信博 小林
信博 小林
ユミコ 村上
ユミコ 村上
佐藤 恒夫
恒夫 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2013545721A priority Critical patent/JP5623657B2/en
Application granted granted Critical
Publication of JP5623657B2 publication Critical patent/JP5623657B2/en
Publication of JPWO2013076848A1 publication Critical patent/JPWO2013076848A1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols

Description

この発明は、複数の装置が暗号通信をする暗号通信システムに関する。   The present invention relates to a cryptographic communication system in which a plurality of devices perform cryptographic communication.

インターネット通信や無線通信など容易に盗聴が可能な通信方式を使って通信をする場合、第三者による盗聴や改竄を防ぐため、暗号通信が利用される。
例えば、共通鍵暗号を使って暗号通信をする場合、送信側と受信側とで使用する鍵を共有する必要があり、共有した鍵が外部に漏洩しないようにする必要がある。
When communication is performed using a communication method that can be easily wiretapped, such as Internet communication or wireless communication, encryption communication is used to prevent wiretapping or tampering by a third party.
For example, when performing encrypted communication using common key encryption, it is necessary to share a key used between a transmission side and a reception side, and it is necessary to prevent the shared key from leaking to the outside.

特開2010−68396号公報JP 2010-68396 A 特開2001−251292号公報JP 2001-251292 A 特開2002−290391号公報JP 2002-290391 A

例えば自動検針システムで用いられる携帯端末のように小型で携帯可能な装置が鍵を持っていると、使用者が装置を紛失し、第三者がそれを拾得することにより、鍵が漏洩する可能性がある。
この発明は、例えば、暗号通信に使う鍵を容易に共有・変更できるようにすることを目的とする。
For example, if a small and portable device, such as a portable terminal used in an automatic meter reading system, has a key, the user can lose the device and a third party can pick it up and the key can leak. There is sex.
An object of the present invention is to make it easy to share and change a key used for encrypted communication, for example.

この発明にかかる暗号通信システムは、
管理装置と、第一暗号通信装置と、第二暗号通信装置とを備える暗号通信システムにおいて、
上記管理装置は、マスター鍵記憶部と、一時鍵生成部とを有し、
上記管理装置の上記マスター鍵記憶部は、第一マスター鍵を記憶し、
上記管理装置の上記一時鍵生成部は、上記管理装置の上記マスター鍵記憶部が記憶した上記第一マスター鍵と、一時鍵生成用データとを使って、第一一時鍵を生成し、
上記第一暗号通信装置は、一時鍵生成用データ通知部と、暗号通信部とを有し、
上記第一暗号通信装置の上記一時鍵生成用データ通知部は、上記管理装置の上記一時鍵生成部が上記第一一時鍵の生成に使った上記一時鍵生成用データを、上記第二暗号通信装置に対して通知し、
上記第一暗号通信装置の上記暗号通信部は、上記管理装置の上記一時鍵生成部が生成した上記第一一時鍵を使って、上記第二暗号通信装置との間で暗号通信をし、
上記第二暗号通信装置は、マスター鍵記憶部と、一時鍵生成用データ検証部と、一時鍵生成部と、暗号通信部とを有し、
上記第二暗号通信装置の上記マスター鍵記憶部は、上記管理装置の上記マスター鍵記憶部が記憶した上記第一マスター鍵と同一の、又は、上記第一マスター鍵に対応する、第二マスター鍵を記憶し、
上記第二暗号通信装置の上記一時鍵生成用データ検証部は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であるか否かを判定し、
上記第二暗号通信装置の上記一時鍵生成部は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であると上記第二暗号通信装置の上記一時鍵生成用データ検証部が判定した場合に、上記第二暗号通信装置の上記マスター鍵記憶部が記憶した上記第二マスター鍵と、上記第二暗号通信装置の上記一時鍵生成用データ検証部が有効であると判定した上記一時鍵生成用データとを使って、上記管理装置の上記一時鍵生成部が生成した上記第一一時鍵と同一の、又は、上記第一一時鍵に対応する第二一時鍵を生成し、
上記第二暗号通信装置の上記暗号通信部は、上記第二暗号通信装置の上記一時鍵生成部が生成した上記第二一時鍵を使って、上記第一暗号通信装置との間で暗号通信をすることを特徴とする。
An encryption communication system according to the present invention includes:
In a cryptographic communication system comprising a management device, a first cryptographic communication device, and a second cryptographic communication device,
The management device includes a master key storage unit and a temporary key generation unit,
The master key storage unit of the management device stores a first master key,
The temporary key generation unit of the management device generates a first temporary key using the first master key stored in the master key storage unit of the management device and the temporary key generation data,
The first encryption communication device includes a temporary key generation data notification unit and an encryption communication unit,
The temporary key generation data notifying unit of the first encryption communication device is configured to transfer the temporary key generation data used by the temporary key generation unit of the management device to generate the first temporary key to the second encryption Notify the communication device,
The cryptographic communication unit of the first cryptographic communication device performs cryptographic communication with the second cryptographic communication device using the first temporary key generated by the temporary key generation unit of the management device,
The second cryptographic communication device includes a master key storage unit, a temporary key generation data verification unit, a temporary key generation unit, and an encryption communication unit,
The master key storage unit of the second encryption communication device is the same as the first master key stored in the master key storage unit of the management device or corresponds to the first master key. Remember
The temporary key generation data verification unit of the second encryption communication device determines whether the temporary key generation data notified from the temporary key generation data notification unit of the first encryption communication device is valid. Judgment,
When the temporary key generation data notified from the temporary key generation data notifying unit of the first cryptographic communication device is valid, the temporary key generation unit of the second cryptographic communication device is valid. When the temporary key generation data verification unit determines, the second master key stored in the master key storage unit of the second encryption communication device and the temporary key generation data of the second encryption communication device The first temporary key that is the same as the first temporary key generated by the temporary key generation unit of the management device using the temporary key generation data determined to be valid by the verification unit or the first temporary key Generate a second temporary key corresponding to
The cryptographic communication unit of the second cryptographic communication device uses the second temporary key generated by the temporary key generation unit of the second cryptographic communication device to perform cryptographic communication with the first cryptographic communication device. It is characterized by doing.

第二暗号通信装置が第一暗号通信装置から通知された一時鍵生成用データを使って一時鍵を生成するので、第一暗号通信装置と第二暗号通信装置とが、同一の、又は対応する一時鍵を使って、暗号通信をすることができる。これにより、一時鍵を共有しあるいは変更することが容易になる。   Since the second cryptographic communication apparatus generates a temporary key using the temporary key generation data notified from the first cryptographic communication apparatus, the first cryptographic communication apparatus and the second cryptographic communication apparatus are the same or correspond to each other. You can use the temporary key for encrypted communication. This makes it easy to share or change the temporary key.

実施の形態1における暗号通信システム800の全体構成の一例を示すシステム構成図。1 is a system configuration diagram illustrating an example of an overall configuration of a cryptographic communication system 800 according to Embodiment 1. FIG. 実施の形態1における管理装置100、暗号通信装置200及び暗号通信装置300のハードウェア資源の一例を示すハードウェア構成図。2 is a hardware configuration diagram illustrating an example of hardware resources of a management apparatus 100, an encryption communication apparatus 200, and an encryption communication apparatus 300 in Embodiment 1. FIG. 実施の形態1における管理装置100の機能ブロックの一例を示すブロック構成図。FIG. 3 is a block configuration diagram illustrating an example of functional blocks of the management apparatus 100 according to the first embodiment. 実施の形態1における暗号通信装置200の機能ブロックの一例を示すブロック構成図。FIG. 3 is a block configuration diagram illustrating an example of functional blocks of the cryptographic communication device 200 according to the first embodiment. 実施の形態1における暗号通信装置300の機能ブロックの一例を示すブロック構成図。FIG. 3 is a block configuration diagram illustrating an example of functional blocks of the cryptographic communication device 300 according to the first embodiment. 実施の形態1における初期化処理S601の流れの一例を示すフロー図。FIG. 6 is a flowchart showing an example of a flow of initialization processing S601 in the first embodiment. 実施の形態1における更新処理S602の流れの一例を示すフロー図。FIG. 6 is a flowchart showing an example of a flow of update processing S602 in the first embodiment. 実施の形態1における一時鍵通知処理S603の流れの一例を示すフロー図。FIG. 6 is a flowchart showing an example of a flow of temporary key notification processing S603 in the first embodiment. 実施の形態1における暗号通信処理S604の流れの一例を示すフロー図。FIG. 4 is a flowchart showing an example of the flow of cryptographic communication processing S604 in the first embodiment. 実施の形態3における自動検針システム801の全体構成の一例を示す図。FIG. 10 is a diagram illustrating an example of an overall configuration of an automatic meter reading system 801 according to a third embodiment. 実施の形態3における管理サーバ101の機能ブロックの一例を示す図。FIG. 10 is a diagram illustrating an example of functional blocks of the management server 101 according to the third embodiment. 実施の形態3における携帯端末201の機能ブロックの一例を示す図。FIG. 9 shows an example of functional blocks of a mobile terminal 201 in Embodiment 3. 実施の形態3における検針メータ301の機能ブロックの一例を示す図。FIG. 10 is a diagram illustrating an example of functional blocks of a meter-reading meter 301 according to a third embodiment. 実施の形態3の管理サーバ101における鍵情報管理部161の詳細な機能ブロックの一例を示す図。FIG. 10 is a diagram illustrating an example of detailed functional blocks of a key information management unit 161 in the management server 101 according to the third embodiment. 実施の形態3の携帯端末201における対管理サーバ通信部221の詳細な機能ブロックの一例を示す図。FIG. 10 is a diagram illustrating an example of detailed functional blocks of a management server communication unit 221 in the portable terminal 201 according to the third embodiment. 実施の形態3の携帯端末201における対検針メータ通信部291の詳細な機能ブロックの一例を示す図。FIG. 10 is a diagram illustrating an example of detailed functional blocks of a meter reading meter communication unit 291 in the portable terminal 201 according to the third embodiment. 実施の形態3の検針メータ301における対携帯端末通信部391の詳細な機能ブロックの一例を示す図。The figure which shows an example of the detailed functional block of the portable terminal communication part 391 in the meter-reading meter 301 of Embodiment 3. FIG. 実施の形態3における一時鍵通知処理S603の流れの一例を示すフロー図。FIG. 10 is a flowchart showing an example of a flow of temporary key notification processing S603 in the third embodiment. 実施の形態3における暗号通信処理S604の流れの一例を示すフロー図。FIG. 11 is a flowchart showing an example of the flow of cryptographic communication processing S604 in the third embodiment. 実施の形態4における暗号通信システム800の全体構成の一例を示すシステム構成図。FIG. 10 is a system configuration diagram illustrating an example of an overall configuration of an encryption communication system 800 according to a fourth embodiment. 実施の形態4における暗号通信装置500の全体構成の一例を示すシステム構成図。FIG. 6 is a system configuration diagram illustrating an example of an overall configuration of an encryption communication device 500 according to a fourth embodiment. 実施の形態4における初期化処理S601の流れの一例を示すフロー図。FIG. 20 is a flowchart showing an example of a flow of initialization processing S601 in the fourth embodiment. 実施の形態4における更新処理S602の流れの一例を示すフロー図。FIG. 20 is a flowchart showing an example of a flow of update processing S602 in the fourth embodiment. 実施の形態4における暗号通信処理S604の流れの一例を示すフロー図。FIG. 18 is a flowchart showing an example of the flow of cryptographic communication processing S604 in the fourth embodiment. 実施の形態5における自動検針システム801の全体構成の一例を示す図。FIG. 10 shows an example of the overall configuration of an automatic meter reading system 801 in a fifth embodiment. 実施の形態5における検針メータ301の機能ブロックの一例を示す図。FIG. 10 is a diagram illustrating an example of functional blocks of a meter-reading meter 301 according to a fifth embodiment. 実施の形態6における管理装置100の機能ブロックの一例を示すブロック構成図。FIG. 18 is a block configuration diagram illustrating an example of functional blocks of the management apparatus 100 according to the sixth embodiment. 実施の形態6における暗号通信装置200の機能ブロックの一例を示すブロック構成図。FIG. 20 is a block configuration diagram illustrating an example of functional blocks of an encryption communication device 200 according to a sixth embodiment. 実施の形態6における暗号通信装置300の機能ブロックの一例を示すブロック構成図。FIG. 18 is a block configuration diagram illustrating an example of functional blocks of an encryption communication device 300 according to a sixth embodiment. 実施の形態6における一時鍵通知処理S603の流れの一例を示すフロー図。FIG. 25 is a flowchart showing an example of the flow of temporary key notification processing S603 in the sixth embodiment. 実施の形態6における暗号通信処理S604の流れの一例を示すフロー図。FIG. 19 is a flowchart showing an example of the flow of cryptographic communication processing S604 in the sixth embodiment. 実施の形態7における暗号通信装置200の機能ブロックの一例を示すブロック構成図。FIG. 18 is a block configuration diagram illustrating an example of functional blocks of an encryption communication device 200 according to a seventh embodiment. 実施の形態7における暗号通信処理S604の流れの一例を示すフロー図。FIG. 20 is a flowchart showing an example of the flow of cryptographic communication processing S604 in the seventh embodiment. 実施の形態8における管理サーバ101の機能ブロックの一例を示す図。FIG. 20 is a diagram illustrating an example of functional blocks of the management server 101 according to the eighth embodiment. 実施の形態8における携帯端末201の機能ブロックの一例を示す図。FIG. 20 shows an example of functional blocks of a portable terminal 201 in Embodiment 8. 実施の形態8における検針メータ301の機能ブロックの一例を示す図。FIG. 18 shows an example of functional blocks of a meter-reading meter 301 in the eighth embodiment. 実施の形態8の管理サーバ101におけるリセットパケット生成部166の詳細な機能ブロックの一例を示す図。FIG. 20 is a diagram illustrating an example of detailed functional blocks of a reset packet generation unit 166 in the management server 101 according to the eighth embodiment. 実施の形態8の携帯端末201における対管理サーバ通信部221及び対検針メータ通信部291の詳細な機能ブロックの一例を示す図。The figure which shows an example of the detailed functional block of the pair management server communication part 221 and the meter-reading meter communication part 291 in the portable terminal 201 of Embodiment 8. FIG. 実施の形態8の検針メータ301における対携帯端末通信部391の詳細な機能ブロックの一例を示す図。FIG. 20 is a diagram illustrating an example of detailed functional blocks of a portable terminal communication unit 391 in the meter-reading meter 301 according to the eighth embodiment. 実施の形態8におけるリセットパケット通知処理S605の流れの一例を示すフロー図。FIG. 19 is a flowchart showing an example of the flow of reset packet notification processing S605 in the eighth embodiment. 実施の形態8における世代番号リセット処理S606の流れの一例を示すフロー図。FIG. 19 is a flowchart showing an example of the flow of generation number reset processing S606 in the eighth embodiment.

実施の形態1.
実施の形態1について、図1〜図9を用いて説明する。
Embodiment 1 FIG.
The first embodiment will be described with reference to FIGS.

図1は、この実施の形態における暗号通信システム800の全体構成の一例を示すシステム構成図である。   FIG. 1 is a system configuration diagram showing an example of the overall configuration of the cryptographic communication system 800 in this embodiment.

暗号通信システム800は、例えば、管理装置100と、暗号通信装置200と、暗号通信装置300とを備える。
管理装置100(暗号処理装置)は、マスター鍵を保管している。管理装置100は、保管しているマスター鍵を使って、一時鍵を生成する。
暗号通信装置200(暗号処理装置)は、管理装置100と安全な方式を使って通信し、管理装置100が生成した一時鍵を取得する。暗号通信装置200は、取得した一時鍵を使って、暗号通信装置300との間で暗号通信をする。
暗号通信装置300(暗号処理装置)は、マスター鍵を保管している。暗号通信装置300が保管しているマスター鍵は、管理装置100が保管しているマスター鍵と同一のマスター鍵であってもよいし、管理装置100が保管しているマスター鍵に対応するマスター鍵であってもよい。暗号通信装置300は、保管しているマスター鍵を使って、一時鍵を生成する。暗号通信装置300が生成する一時鍵は、管理装置100が生成する一時鍵と同一の一時鍵であってもよいし、管理装置100が生成する一時鍵に対応する一時鍵であってもよい。暗号通信装置300は、自らが生成した一時鍵を使って、暗号通信装置200との間で暗号通信をする。
The cryptographic communication system 800 includes, for example, a management device 100, a cryptographic communication device 200, and a cryptographic communication device 300.
The management device 100 (encryption processing device) stores a master key. The management device 100 generates a temporary key using the stored master key.
The cryptographic communication device 200 (cryptographic processing device) communicates with the management device 100 using a secure method, and acquires the temporary key generated by the management device 100. The cryptographic communication device 200 performs cryptographic communication with the cryptographic communication device 300 using the acquired temporary key.
The cryptographic communication device 300 (cryptographic processing device) stores a master key. The master key stored in the encryption communication device 300 may be the same master key as the master key stored in the management device 100, or a master key corresponding to the master key stored in the management device 100. It may be. The cryptographic communication device 300 generates a temporary key using the stored master key. The temporary key generated by the cryptographic communication device 300 may be the same temporary key as the temporary key generated by the management device 100, or may be a temporary key corresponding to the temporary key generated by the management device 100. The cryptographic communication device 300 performs cryptographic communication with the cryptographic communication device 200 using a temporary key generated by itself.

図2は、この実施の形態における管理装置100、暗号通信装置200及び暗号通信装置300のハードウェア資源の一例を示すハードウェア構成図である。   FIG. 2 is a hardware configuration diagram illustrating an example of hardware resources of the management device 100, the cryptographic communication device 200, and the cryptographic communication device 300 according to this embodiment.

管理装置100、暗号通信装置200及び暗号通信装置300は、例えば、コンピュータである。コンピュータは、例えば、処理装置911と、入力装置912と、出力装置913と、記憶装置914と、通信装置915とを有する。
処理装置911は、記憶装置914が記憶したコンピュータプログラムを実行することにより、データを処理し、入力装置912、出力装置913、記憶装置914及び通信装置915を制御する。
記憶装置914は、処理装置911が実行するコンピュータプログラムや、処理装置911が処理するデータなどを記憶する。
入力装置912は、コンピュータの外部から情報を入力し、処理装置911が処理できるデータに変換する。入力装置912が変換したデータは、処理装置911が直接処理する構成であってもよいし、記憶装置914が一時的に記憶する構成であってもよい。例えば、入力装置912は、キーボードやマウスなどの操作入力装置であり、コンピュータを操作する操作者による操作を入力する。あるいは、入力装置912は、マイクであり、音声を入力する。あるいは、入力装置912は、カメラであり、画像を撮影する。あるいは、入力装置912は、センサであり、温度や電圧などの物理量を測定する。あるいは、入力装置912は、アナログデジタル変換回路であり、アナログ信号をデジタルデータに変換する。
出力装置913は、処理装置911が処理したデータや記憶装置914が記憶したデータを変換して、コンピュータの外部へ出力する。例えば、出力装置913は、液晶表示装置であり、画像を出力する。あるいは、出力装置913は、スピーカーであり、音声を出力する。あるいは、出力装置913は、デジタルアナログ変換回路であり、アナログ信号を生成する。
通信装置915は、他の装置との間で通信をする。通信装置915は、他の装置が送信した信号を受信して、受信した信号が表わす情報を入力して、処理装置911が処理できるデータに変換する。すなわち、通信装置915は、入力装置912の一種である。また、通信装置915は、処理装置911が処理したデータや記憶装置914が記憶したデータを信号に変換して、他の装置に対して送信する。すなわち、通信装置915は、記憶装置914の一種である。
The management device 100, the encryption communication device 200, and the encryption communication device 300 are, for example, computers. The computer includes, for example, a processing device 911, an input device 912, an output device 913, a storage device 914, and a communication device 915.
The processing device 911 processes the data by executing the computer program stored in the storage device 914 and controls the input device 912, the output device 913, the storage device 914, and the communication device 915.
The storage device 914 stores a computer program executed by the processing device 911, data processed by the processing device 911, and the like.
The input device 912 inputs information from outside the computer and converts it into data that can be processed by the processing device 911. The data converted by the input device 912 may be directly processed by the processing device 911 or may be temporarily stored by the storage device 914. For example, the input device 912 is an operation input device such as a keyboard or a mouse, and inputs an operation by an operator who operates the computer. Alternatively, the input device 912 is a microphone and inputs sound. Alternatively, the input device 912 is a camera and takes an image. Alternatively, the input device 912 is a sensor and measures physical quantities such as temperature and voltage. Alternatively, the input device 912 is an analog / digital conversion circuit, and converts an analog signal into digital data.
The output device 913 converts the data processed by the processing device 911 and the data stored in the storage device 914 and outputs the converted data to the outside of the computer. For example, the output device 913 is a liquid crystal display device and outputs an image. Alternatively, the output device 913 is a speaker and outputs sound. Alternatively, the output device 913 is a digital / analog conversion circuit, and generates an analog signal.
The communication device 915 communicates with other devices. The communication device 915 receives a signal transmitted by another device, inputs information represented by the received signal, and converts it into data that can be processed by the processing device 911. That is, the communication device 915 is a kind of the input device 912. Further, the communication device 915 converts the data processed by the processing device 911 and the data stored by the storage device 914 into a signal and transmits the signal to another device. That is, the communication device 915 is a kind of the storage device 914.

以下に説明する機能ブロックは、記憶装置914が記憶したコンピュータプログラムを、処理装置911が実行することにより実現される。なお、これは一例であり、以下に説明する機能ブロックは、他の構成により実現されるものであってもよい。例えば、アナログ回路やデジタル回路などの電子回路やその他の電気的構成、機械的構成やその他の構成により、以下に説明する機能ブロックが実現されるものであってもよい。   The functional blocks described below are realized by the processing device 911 executing the computer program stored in the storage device 914. This is an example, and the functional blocks described below may be realized by other configurations. For example, the functional blocks described below may be realized by an electronic circuit such as an analog circuit or a digital circuit, other electrical configurations, mechanical configurations, or other configurations.

図3は、この実施の形態における管理装置100の機能ブロックの一例を示すブロック構成図である。   FIG. 3 is a block configuration diagram illustrating an example of functional blocks of the management apparatus 100 in this embodiment.

管理装置100は、例えば、マスター鍵記憶部110と、一時鍵生成用データ記憶部130と、一時鍵生成用データ更新部140と、一時鍵生成用データ通知部150と、一時鍵生成部160と、一時鍵通知部170とを有する。   The management device 100 includes, for example, a master key storage unit 110, a temporary key generation data storage unit 130, a temporary key generation data update unit 140, a temporary key generation data notification unit 150, and a temporary key generation unit 160. And a temporary key notification unit 170.

マスター鍵記憶部110は、記憶装置914を用いて、マスター鍵(第一マスター鍵)を記憶する。マスター鍵記憶部110が記憶するマスター鍵は、暗号通信装置200が暗号通信装置300との間で暗号通信をするときに使用する一時鍵を生成するために使われるデータである。マスター鍵の漏洩を防ぐため、マスター鍵記憶部110は、例えば、耐タンパ性を有する記憶装置914を用いて、マスター鍵を記憶する構成であってもよい。マスター鍵記憶部110が記憶するマスター鍵は、あらかじめ定められたものであって変更できない構成であってもよいし、例えばマスター鍵が漏洩した疑いがある場合など、必要な場合に変更可能な構成であってもよい。   The master key storage unit 110 uses the storage device 914 to store a master key (first master key). The master key stored in the master key storage unit 110 is data used to generate a temporary key used when the cryptographic communication device 200 performs cryptographic communication with the cryptographic communication device 300. In order to prevent leakage of the master key, the master key storage unit 110 may be configured to store the master key using, for example, a tamper-resistant storage device 914. The master key stored in the master key storage unit 110 may be configured in advance and cannot be changed. For example, when the master key is suspected to be leaked, the master key can be changed when necessary. It may be.

一時鍵生成用データ記憶部130は、記憶装置914を用いて、一時鍵生成用データを記憶する。一時鍵生成用データ記憶部130が記憶する一時鍵生成用データは、マスター鍵記憶部110が記憶したマスター鍵と同様、一時鍵を生成するために使われるデータである。同じマスター鍵を使用しても、一時鍵生成用データが異なれば、異なる一時鍵が生成される。   The temporary key generation data storage unit 130 uses the storage device 914 to store temporary key generation data. Similar to the master key stored in the master key storage unit 110, the temporary key generation data stored in the temporary key generation data storage unit 130 is data used to generate a temporary key. Even if the same master key is used, if the temporary key generation data is different, different temporary keys are generated.

一時鍵生成用データ更新部140は、処理装置911を用いて、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを更新する。一時鍵生成用データ更新部140は、例えば、所定の周期(例えば1日)が経過するごとに、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを、繰り返し更新する。これにより、所定の周期が経過するごとに、生成される一時鍵が変化する。   The temporary key generation data update unit 140 uses the processing device 911 to update the temporary key generation data stored in the temporary key generation data storage unit 130. For example, the temporary key generation data update unit 140 repeatedly updates the temporary key generation data stored in the temporary key generation data storage unit 130 every time a predetermined period (for example, one day) elapses. As a result, the generated temporary key changes every time a predetermined period elapses.

一時鍵生成用データは、新旧が判別できるものであれば、どのようなデータであってもよい。
例えば、一時鍵生成用データは、数値を表わすデータである。一時鍵生成用データを更新する場合、一時鍵生成用データ更新部140は、一時鍵生成用データが表わす数値に所定の増分値(例えば1)を加算した和を算出する。一時鍵生成用データ更新部140は、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを、算出した和を表わすデータで更新する。一時鍵生成用データ記憶部130は、古い一時鍵生成用データを、更新された新しい一時鍵生成用データで置き換えて記憶する。これにより、新しい一時鍵生成用データのほうが大きい数値を表わすので、2つの一時鍵生成用データが表わす数値を比較することにより、どちらの一時鍵生成用データが新しいかを判別することができる。
The temporary key generation data may be any data as long as the old and new can be distinguished.
For example, the temporary key generation data is data representing a numerical value. When updating the temporary key generation data, the temporary key generation data update unit 140 calculates a sum obtained by adding a predetermined increment value (for example, 1) to the numerical value represented by the temporary key generation data. The temporary key generation data update unit 140 updates the temporary key generation data stored in the temporary key generation data storage unit 130 with data representing the calculated sum. The temporary key generation data storage unit 130 replaces and stores the old temporary key generation data with the updated new temporary key generation data. Thus, since the new temporary key generation data represents a larger numerical value, it is possible to determine which temporary key generation data is newer by comparing the numerical values represented by the two temporary key generation data.

一時鍵生成部160は、処理装置911を用いて、一時鍵(第一一時鍵)を生成する。一時鍵生成部160は、マスター鍵記憶部110が記憶したマスター鍵と、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データとを使って、一時鍵を生成する。   The temporary key generation unit 160 uses the processing device 911 to generate a temporary key (first temporary key). The temporary key generation unit 160 generates a temporary key using the master key stored in the master key storage unit 110 and the temporary key generation data stored in the temporary key generation data storage unit 130.

一時鍵生成部160が一時鍵を生成する方式は、以下の条件を満たす方式であれば、どのような方式であってもよい。
第一の条件は、マスター鍵と一時鍵生成用データとの組が同じであれば、同一もしくは同類の一時鍵が生成されることである。なお、同類の一時鍵とは、同じ鍵で復号できる暗号文を生成し、あるいは、同じ鍵で暗号化した暗号文を復号できる一群の一時鍵のことである。
第二の条件は、マスター鍵及び一時鍵生成用データのいずれか一方でも異なれば、同一でなく、かつ同類でもない一時鍵が生成されることである。これにより、一時鍵生成用データが更新されると、更新前の古い一時鍵生成用データを使って生成した一時鍵を使って生成した暗号文を復号でき、あるいは、更新前の古い一時鍵生成用データを使って生成した一時鍵で復号できる暗号文を生成する鍵では、更新後の新しい一時鍵生成用データを使って生成した一時鍵を使って生成した暗号文を復号できず、あるいは、更新後の新しい一時鍵生成用データを使って生成した一時鍵で復号できる暗号文を生成できない。
第三の条件は、一時鍵生成用データと、それを使って生成した一時鍵とから、マスター鍵が推測できないことである。これにより、マスター鍵の漏洩を防ぐことができる。
The method by which the temporary key generation unit 160 generates a temporary key may be any method as long as it satisfies the following conditions.
The first condition is that the same or similar temporary key is generated if the combination of the master key and the temporary key generation data is the same. A similar temporary key is a group of temporary keys that can generate a ciphertext that can be decrypted with the same key, or that can decrypt a ciphertext that has been encrypted with the same key.
The second condition is that if either the master key or the temporary key generation data is different, a temporary key that is not the same and similar is generated. As a result, when the temporary key generation data is updated, the ciphertext generated using the temporary key generated using the old temporary key generation data before update can be decrypted, or the old temporary key generation before update can be performed. With a key that generates a ciphertext that can be decrypted with the temporary key generated using the data for encryption, the ciphertext generated using the temporary key generated using the updated new temporary key generation data cannot be decrypted, or Ciphertext that can be decrypted with the temporary key generated using the new temporary key generation data after the update cannot be generated.
The third condition is that the master key cannot be estimated from the temporary key generation data and the temporary key generated using the temporary key generation data. Thereby, leakage of the master key can be prevented.

例えば、一時鍵生成部160は、マスター鍵記憶部110が記憶したマスター鍵を使って、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを暗号化する。一時鍵生成部160は、暗号化した暗号文を一時鍵とする。
あるいは、一時鍵生成部160は、一方向性を有するハッシュ関数を使って、マスター鍵記憶部110が記憶したマスター鍵と、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データとをハッシュ関数の入力とし、ハッシュ値を算出する。一時鍵生成部160は、算出したハッシュ値を一時鍵とする。
For example, the temporary key generation unit 160 encrypts the temporary key generation data stored in the temporary key generation data storage unit 130 using the master key stored in the master key storage unit 110. The temporary key generation unit 160 uses the encrypted ciphertext as a temporary key.
Alternatively, the temporary key generation unit 160 uses a one-way hash function to store the master key stored in the master key storage unit 110 and the temporary key generation data stored in the temporary key generation data storage unit 130. The hash value is calculated using the hash function input. The temporary key generation unit 160 uses the calculated hash value as a temporary key.

一時鍵通知部170は、一時鍵生成部160が生成した一時鍵を、暗号通信装置200に対して通知する。例えば、一時鍵通知部170は、通信装置915を用いて、一時鍵生成部160が生成した一時鍵を、暗号通信装置200に対して送信する。
一時鍵を通知する方式は、一時鍵の漏洩を防ぐことができる方式であれば、どのような方式であってもよい。例えば、一時鍵通知部170は、暗号化された通信を使って、一時鍵を送信する。あるいは、管理装置100と暗号通信装置200とを直接有線接続して、一時鍵の送信を行う。
The temporary key notification unit 170 notifies the encryption communication apparatus 200 of the temporary key generated by the temporary key generation unit 160. For example, the temporary key notification unit 170 uses the communication device 915 to transmit the temporary key generated by the temporary key generation unit 160 to the encryption communication device 200.
The method for notifying the temporary key may be any method as long as it can prevent leakage of the temporary key. For example, the temporary key notification unit 170 transmits the temporary key using encrypted communication. Alternatively, the management device 100 and the encryption communication device 200 are directly connected by wire to transmit a temporary key.

一時鍵生成用データ通知部150は、一時鍵通知部170が暗号通信装置200に対して通知した一時鍵を一時鍵生成部160が生成するときに使った一時鍵生成用データを、暗号通信装置200に対して通知する。例えば、一時鍵生成用データ通知部150は、通信装置915を用いて、一時鍵生成用データ記憶部130が記憶した一時鍵を、暗号通信装置200に対して送信する。なお、一時鍵と一時鍵生成用データとの対応関係が明確化するように、例えば、一時鍵通知部170が通知する一時鍵と、一時鍵生成用データ通知部150が通知する一時鍵生成用データとを1つにまとめて送信する構成であってもよい。   The temporary key generation data notification unit 150 uses the temporary communication key generation unit 160 to generate temporary key generation data used when the temporary key generation unit 160 generates the temporary key notified by the temporary key notification unit 170 to the encryption communication device 200. 200 is notified. For example, the temporary key generation data notification unit 150 uses the communication device 915 to transmit the temporary key stored in the temporary key generation data storage unit 130 to the encryption communication device 200. In order to clarify the correspondence between the temporary key and the temporary key generation data, for example, the temporary key notified by the temporary key notification unit 170 and the temporary key generation data notified by the temporary key generation data notification unit 150 are used. A configuration may be used in which data is transmitted together as one.

図4は、この実施の形態における暗号通信装置200の機能ブロックの一例を示すブロック構成図である。   FIG. 4 is a block configuration diagram illustrating an example of functional blocks of the cryptographic communication device 200 according to this embodiment.

暗号通信装置200(第一暗号通信装置)は、例えば、一時鍵生成用データ取得部220と、一時鍵生成用データ記憶部230と、一時鍵生成用データ通知部250と、一時鍵取得部260と、一時鍵記憶部270と、暗号通信部290とを有する。   The encryption communication device 200 (first encryption communication device) includes, for example, a temporary key generation data acquisition unit 220, a temporary key generation data storage unit 230, a temporary key generation data notification unit 250, and a temporary key acquisition unit 260. A temporary key storage unit 270, and an encryption communication unit 290.

一時鍵取得部260は、管理装置100の一時鍵通知部170から通知された一時鍵(第一一時鍵)を取得する。例えば、一時鍵取得部260は、通信装置915を用いて、一時鍵通知部170が送信した一時鍵を受信する。
一時鍵記憶部270は、記憶装置914を用いて、一時鍵取得部260が取得した一時鍵を記憶する。一時鍵の漏洩を防ぐため、例えば、一時鍵取得部260は、耐タンパ性のある記憶装置914を用いて、一時鍵を記憶する構成であってもよい。
The temporary key acquisition unit 260 acquires the temporary key (first temporary key) notified from the temporary key notification unit 170 of the management apparatus 100. For example, the temporary key acquisition unit 260 receives the temporary key transmitted by the temporary key notification unit 170 using the communication device 915.
The temporary key storage unit 270 stores the temporary key acquired by the temporary key acquisition unit 260 using the storage device 914. In order to prevent leakage of the temporary key, for example, the temporary key acquisition unit 260 may be configured to store the temporary key using a tamper-resistant storage device 914.

一時鍵生成用データ取得部220は、管理装置100の一時鍵生成用データ通知部150から通知された一時鍵生成用データを取得する。例えば、一時鍵生成用データ取得部220は、通信装置915を用いて、一時鍵生成用データ通知部150が送信した一時鍵生成用データを受信する。
一時鍵生成用データ記憶部230は、記憶装置914を用いて、一時鍵生成用データ取得部220が取得した一時鍵生成用データを記憶する。
The temporary key generation data acquisition unit 220 acquires the temporary key generation data notified from the temporary key generation data notification unit 150 of the management apparatus 100. For example, the temporary key generation data acquisition unit 220 receives the temporary key generation data transmitted by the temporary key generation data notification unit 150 using the communication device 915.
The temporary key generation data storage unit 230 uses the storage device 914 to store the temporary key generation data acquired by the temporary key generation data acquisition unit 220.

一時鍵生成用データ通知部250は、一時鍵生成用データ記憶部230が記憶した一時鍵生成用データを、暗号通信装置300に対して通知する。例えば、一時鍵生成用データ通知部250は、通信装置915を用いて、一時鍵生成用データ取得部220が記憶した一時鍵生成用データを、暗号通信装置300に対して送信する。   The temporary key generation data notification unit 250 notifies the encryption communication device 300 of the temporary key generation data stored in the temporary key generation data storage unit 230. For example, the temporary key generation data notification unit 250 transmits the temporary key generation data stored in the temporary key generation data acquisition unit 220 to the encryption communication device 300 using the communication device 915.

暗号通信部290は、一時鍵記憶部270が記憶した一時鍵を使って、暗号通信装置300との間で暗号通信をする。例えば、暗号通信部290は、処理装置911を用いて、一時鍵通知部170が記憶した一時鍵を使って暗号文を生成し、通信装置915を用いて、生成した暗号文を暗号通信装置300に対して送信する。あるいは、暗号通信部290は、通信装置915を用いて、暗号通信装置300が送信した暗号文を受信し、処理装置911を用いて、受信した暗号文を、暗号通信部290が記憶した一時鍵を使って復号する。   The cryptographic communication unit 290 performs cryptographic communication with the cryptographic communication device 300 using the temporary key stored in the temporary key storage unit 270. For example, the cryptographic communication unit 290 uses the processing device 911 to generate a ciphertext using the temporary key stored in the temporary key notification unit 170, and uses the communication device 915 to generate the ciphertext using the cryptographic communication device 300. Send to. Alternatively, the cipher communication unit 290 receives the ciphertext transmitted by the cipher communication device 300 using the communication device 915, and uses the processing device 911 to store the ciphertext received by the cipher communication unit 290. Decrypt using.

図5は、この実施の形態における暗号通信装置300の機能ブロックの一例を示すブロック構成図である。   FIG. 5 is a block configuration diagram illustrating an example of functional blocks of the cryptographic communication device 300 according to this embodiment.

暗号通信装置300(第二暗号通信装置)は、例えば、マスター鍵記憶部310と、一時鍵生成用データ取得部320と、検証用データ記憶部330と、検証用データ更新部340と、一時鍵生成用データ検証部350と、一時鍵生成部360と、暗号通信部390とを有する。   The cryptographic communication device 300 (second cryptographic communication device) includes, for example, a master key storage unit 310, a temporary key generation data acquisition unit 320, a verification data storage unit 330, a verification data update unit 340, and a temporary key. A generation data verification unit 350, a temporary key generation unit 360, and an encryption communication unit 390 are included.

マスター鍵記憶部310は、記憶装置914を用いて、マスター鍵(第二マスター鍵)を記憶する。マスター鍵記憶部310が記憶するマスター鍵は、暗号通信装置300が暗号通信装置200との間で暗号通信をするときに使用する一時鍵を生成するために使われるデータである。マスター鍵の漏洩を防ぐため、マスター鍵記憶部310は、例えば、耐タンパ性のある記憶装置914を用いて、マスター鍵を記憶する構成であってもよい。マスター鍵記憶部310が記憶するマスター鍵は、あらかじめ定められたものであって変更できない構成であってもよいし、例えばマスター鍵が漏洩した疑いがある場合など、必要な場合に変更可能な構成であってもよい。   The master key storage unit 310 uses the storage device 914 to store a master key (second master key). The master key stored in the master key storage unit 310 is data used to generate a temporary key used when the cryptographic communication device 300 performs cryptographic communication with the cryptographic communication device 200. In order to prevent leakage of the master key, the master key storage unit 310 may be configured to store the master key using a tamper-resistant storage device 914, for example. The master key stored in the master key storage unit 310 may be configured in advance and cannot be changed. For example, when the master key is suspected to be leaked, the master key can be changed when necessary. It may be.

マスター鍵記憶部310が記憶するマスター鍵は、管理装置100の一時鍵生成部160が一時鍵の生成に使った一時鍵生成用データと組み合わせることにより、一時鍵生成部160が生成した一時鍵と同一の、又は、その一時鍵に対応する一時鍵を生成できるものであればよい。ここで、「2つの一時鍵が対応する」とは、一方の一時鍵を使って暗号化した暗号文を、もう一方の一時鍵を使って復号できる関係のことである。また、「2つのマスター鍵が対応する」とは、2つのマスター鍵から、同一の、又は、対応する一時鍵を生成できる関係のことである。
マスター鍵記憶部310が記憶するマスター鍵は、管理装置100のマスター鍵記憶部110が記憶したマスター鍵と同一のマスター鍵であってもよいし、異なるマスター鍵であってもよい。マスター鍵記憶部310が記憶したマスター鍵と、管理装置100のマスター鍵記憶部110が記憶したマスター鍵とが異なる場合、マスター鍵記憶部310が記憶したマスター鍵から、管理装置100のマスター鍵記憶部110が記憶したマスター鍵を推測できない構成であってもよい。そうすれば、マスター鍵記憶部310が記憶したマスター鍵が漏洩した場合でも、管理装置100のマスター鍵記憶部110が記憶したマスター鍵が知られるのを防ぐことができる。
また、暗号通信装置300が複数ある場合、それぞれの暗号通信装置300のマスター鍵記憶部310が異なるマスター鍵を記憶する構成であってもよい。その場合、ある暗号通信装置300のマスター鍵記憶部310が記憶したマスター鍵を使って生成した一時鍵と、他の暗号通信装置300のマスター鍵記憶部310が記憶したマスター鍵を使って生成した一時鍵とが対応しない構成であってもよい。そうすれば、ある暗号通信装置300のマスター鍵記憶部310が記憶したマスター鍵が漏洩した場合でも、他の暗号通信装置300との間で暗号通信ができる一時鍵が生成されるのを防ぐことができる。
The master key stored in the master key storage unit 310 is combined with the temporary key generation data used by the temporary key generation unit 160 of the management device 100 to generate the temporary key, and the temporary key generated by the temporary key generation unit 160 Any one that can generate the same or a temporary key corresponding to the temporary key may be used. Here, “two temporary keys correspond” refers to a relationship in which a ciphertext encrypted using one temporary key can be decrypted using the other temporary key. “Two master keys correspond” means a relationship in which the same or corresponding temporary key can be generated from two master keys.
The master key stored in the master key storage unit 310 may be the same master key as the master key stored in the master key storage unit 110 of the management apparatus 100, or may be a different master key. When the master key stored in the master key storage unit 310 is different from the master key stored in the master key storage unit 110 of the management device 100, the master key storage of the management device 100 is determined from the master key stored in the master key storage unit 310. The configuration may be such that the master key stored by the unit 110 cannot be estimated. Then, even if the master key stored in the master key storage unit 310 is leaked, it is possible to prevent the master key stored in the master key storage unit 110 of the management apparatus 100 from being known.
When there are a plurality of encryption communication devices 300, the master key storage unit 310 of each encryption communication device 300 may store different master keys. In that case, the temporary key generated using the master key stored in the master key storage unit 310 of a certain cryptographic communication device 300 and the master key stored in the master key storage unit 310 of another cryptographic communication device 300 are generated. The configuration may not correspond to the temporary key. Then, even when the master key stored in the master key storage unit 310 of a certain cryptographic communication device 300 is leaked, it is possible to prevent generation of a temporary key that can be used for cryptographic communication with another cryptographic communication device 300. Can do.

検証用データ記憶部330は、記憶装置914を用いて、検証用データを記憶する。検証用データとは、暗号通信装置200から通知された一時鍵生成用データが有効であるか否かを検証するために使われるデータである。   The verification data storage unit 330 uses the storage device 914 to store verification data. The verification data is data used to verify whether the temporary key generation data notified from the cryptographic communication device 200 is valid.

検証用データ更新部340は、処理装置911を用いて、検証用データ記憶部330が記憶した検証用データを更新する。検証用データ更新部340は、例えば、所定の周期(例えば1日)が経過するごとに、検証用データ記憶部330が記憶した検証用データを、繰り返し更新する。   The verification data update unit 340 uses the processing device 911 to update the verification data stored in the verification data storage unit 330. For example, the verification data update unit 340 repeatedly updates the verification data stored in the verification data storage unit 330 every time a predetermined period (for example, one day) elapses.

検証用データは、古い一時鍵生成用データを無効であると判定できるものであれば、どのようなデータであってもよい。
例えば、検証用データは、数値を表わすデータである。検証用データを更新する場合、検証用データ更新部340は、検証用データが表わす数値に所定の増分値(例えば1)を加算した和を算出する。検証用データ更新部340は、検証用データ記憶部330が記憶した検証用データを、算出した和を表わすデータで更新する。検証用データ記憶部330は、古い検証用データを、更新された新しい検証用データで置き換えて記憶する。
検証用データ更新部340は、検証用データが表わす数値が増加する速さが、一時鍵生成用データが表わす数値が増加する速さとほぼ同一になるように、検証用データを更新する。例えば、検証用データ更新部340は、管理装置100の一時鍵生成用データ更新部140が一時鍵生成用データを更新する周期と同じ周期で検証用データを更新し、一時鍵生成用データが表わす数値に管理装置100の一時鍵生成用データ更新部140が加算する増分値と同じ増分値を、検証用データが表わす数値に加算する。あるいは、検証用データ更新部340は、一時鍵生成用データの更新周期のn倍(nは、正の実数。)の周期で検証用データを更新し、一時鍵生成用データの増分値のn倍の増分値を、検証用データが表わす数値に加算する。
The verification data may be any data as long as it can be determined that the old temporary key generation data is invalid.
For example, the verification data is data representing a numerical value. When updating the verification data, the verification data update unit 340 calculates a sum obtained by adding a predetermined increment value (for example, 1) to the numerical value represented by the verification data. The verification data update unit 340 updates the verification data stored in the verification data storage unit 330 with data representing the calculated sum. The verification data storage unit 330 stores the old verification data by replacing it with the updated new verification data.
The verification data update unit 340 updates the verification data so that the speed at which the numerical value represented by the verification data increases is substantially the same as the speed at which the numerical value represented by the temporary key generation data increases. For example, the verification data update unit 340 updates the verification data in the same cycle as the temporary key generation data update unit 140 of the management apparatus 100 updates the temporary key generation data, and the temporary key generation data represents The same increment value as the increment value added by the temporary key generation data update unit 140 of the management apparatus 100 is added to the numeric value to the numeric value represented by the verification data. Alternatively, the verification data update unit 340 updates the verification data at a cycle that is n times the update cycle of the temporary key generation data (n is a positive real number), and the increment value n of the temporary key generation data is n. The double increment value is added to the numerical value represented by the verification data.

一時鍵生成用データ取得部320は、暗号通信装置200の一時鍵生成用データ通知部250から通知された一時鍵生成用データを取得する。例えば、一時鍵生成用データ取得部320は、通信装置915を用いて、一時鍵生成用データ通知部250が送信した一時鍵生成用データを受信する。   The temporary key generation data acquisition unit 320 acquires the temporary key generation data notified from the temporary key generation data notification unit 250 of the encryption communication device 200. For example, the temporary key generation data acquisition unit 320 receives the temporary key generation data transmitted by the temporary key generation data notification unit 250 using the communication device 915.

一時鍵生成用データ検証部350は、処理装置911を用いて、一時鍵生成用データ取得部320が取得した一時鍵生成用データを検証する。一時鍵生成用データ検証部350は、検証用データ記憶部330が記憶した検証用データを使って、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であるか否かを判定する。
例えば、一時鍵生成用データ検証部350は、一時鍵生成用データが表わす数値と、検証用データが表わす数値とを比較する。一時鍵生成用データが表わす数値が、検証用データが表わす数値以上である場合、一時鍵生成用データ検証部350は、一時鍵生成用データが有効であると判定する。一時鍵生成用データが表わす数値が、検証用データが表わす数値よりも小さい場合、一時鍵生成用データ検証部350は、一時鍵生成用データが有効でないと判定する。
The temporary key generation data verification unit 350 uses the processing device 911 to verify the temporary key generation data acquired by the temporary key generation data acquisition unit 320. The temporary key generation data verification unit 350 uses the verification data stored in the verification data storage unit 330 to determine whether the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is valid. judge.
For example, the temporary key generation data verification unit 350 compares the numerical value represented by the temporary key generation data with the numerical value represented by the verification data. If the numerical value represented by the temporary key generation data is greater than or equal to the numerical value represented by the verification data, the temporary key generation data verification unit 350 determines that the temporary key generation data is valid. When the numerical value represented by the temporary key generation data is smaller than the numerical value represented by the verification data, the temporary key generation data verification unit 350 determines that the temporary key generation data is not valid.

一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると一時鍵生成用データ検証部350が判定した場合、検証用データ記憶部330は、記憶装置914を用いて、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データを、検証用データとして記憶する。   When the temporary key generation data verification unit 350 determines that the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is valid, the verification data storage unit 330 uses the storage device 914 to enable The temporary key generation data determined by the temporary key generation data verification unit 350 is stored as verification data.

初期状態において、検証用データ記憶部330は、例えば、一時鍵生成用データが表わす数値の最小値を表わすデータを、最初の検証用データとして記憶しておく。この時点において、検証用データ記憶部330が記憶している検証用データが表わす数値は、必ず、管理装置100の一時鍵生成用データ記憶部130が記憶している一時鍵生成用データが表わす数値以下である。
検証用データ記憶部330が記憶した検証用データを検証用データ更新部340が更新することにより、検証用データが表わす数値が徐々に大きくなる。また、管理装置100の一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを一時鍵生成用データ更新部140が更新することにより、一時鍵生成用データが表わす数値も徐々に大きくなる。両者が増加する速さはほぼ同じであるから、検証用データ記憶部330が記憶している検証用データが表わす数値は、常に、管理装置100の一時鍵生成用データ記憶部130が記憶している一時鍵生成用データが表わす数値以下である。
したがって、暗号通信装置200の一時鍵生成用データ通知部250が暗号通信装置300に対して通知した一時鍵生成用データが最新のものであれば、一時鍵生成用データ検証部350は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると判定する。また、最初の有効性判定時には、検証用データ記憶部330が記憶した検証用データが表わす数値と、管理装置100の一時鍵生成用データ記憶部130が記憶した一時鍵生成用データが表わす数値とが異なる可能性があり、その場合、暗号通信装置200の一時鍵生成用データ通知部250が暗号通信装置300に対して通知した一時鍵生成用データが必ずしも最新のものでなくても、一時鍵生成用データ検証部350は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると判定する場合がある。
In the initial state, the verification data storage unit 330 stores, for example, data representing the minimum value represented by the temporary key generation data as the first verification data. At this time, the numerical value represented by the verification data stored in the verification data storage unit 330 is always the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit 130 of the management apparatus 100. It is as follows.
As the verification data update unit 340 updates the verification data stored in the verification data storage unit 330, the numerical value represented by the verification data gradually increases. Further, the temporary key generation data update unit 140 updates the temporary key generation data stored in the temporary key generation data storage unit 130 of the management apparatus 100, so that the numerical value represented by the temporary key generation data gradually increases. . Since both increase speeds are almost the same, the numerical value represented by the verification data stored in the verification data storage unit 330 is always stored in the temporary key generation data storage unit 130 of the management device 100. Or less than the numerical value represented by the temporary key generation data.
Therefore, if the temporary key generation data notifying part 250 notified to the encryption communication apparatus 300 by the temporary key generation data notifying part 250 of the encryption communication apparatus 200 is the latest, the temporary key generation data verification part 350 It is determined that the temporary key generation data acquired by the generation data acquisition unit 320 is valid. Further, at the time of the first validity determination, the numerical value represented by the verification data stored in the verification data storage unit 330 and the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit 130 of the management device 100 In this case, even if the temporary key generation data notified by the temporary key generation data notification unit 250 of the cryptographic communication device 200 to the cryptographic communication device 300 is not necessarily the latest, the temporary key The generation data verification unit 350 may determine that the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is valid.

一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると一時鍵生成用データ検証部350が判定した場合、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データを検証用データ記憶部330が検証用データとして記憶するので、暗号通信装置200の一時鍵生成用データ通知部250が暗号通信装置300に対して通知した一時鍵生成用データが最新のものであれば、その時点で、検証用データ記憶部330が記憶した検証用データと、管理装置100の一時鍵生成用データ記憶部130が記憶した一時鍵生成用データとが同じになる。すなわち、管理装置100と暗号通信装置300とが同期する。したがって、それ以降は、暗号通信装置200の一時鍵生成用データ通知部250が暗号通信装置300に対して通知した一時鍵生成用データが最新のものでなければ、一時鍵生成用データ検証部350は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると判定しない。   When the temporary key generation data verification unit 350 determines that the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is valid, the temporary key generation data verification unit 350 determines that it is valid. Since the verification data storage unit 330 stores the key generation data as verification data, the temporary key generation data notified by the temporary key generation data notification unit 250 of the cryptographic communication device 200 to the cryptographic communication device 300 is the latest. In this case, at that time, the verification data stored in the verification data storage unit 330 and the temporary key generation data stored in the temporary key generation data storage unit 130 of the management apparatus 100 are the same. That is, the management device 100 and the encryption communication device 300 are synchronized. Therefore, after that, if the temporary key generation data notified by the temporary key generation data notification unit 250 of the cryptographic communication device 200 to the cryptographic communication device 300 is not the latest, the temporary key generation data verification unit 350 Does not determine that the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is valid.

このような構成とすることにより、容易に、管理装置100と暗号通信装置300との間の同期を取ることができる。   With this configuration, the management device 100 and the encryption communication device 300 can be easily synchronized.

また、暗号通信装置300の時計の進み方が、管理装置100の時計の進み方より遅い場合、検証用データ記憶部330が記憶した検証用データが表わす数値が増加する速さが、管理装置100の一時鍵生成用データ記憶部130が記憶した一時鍵生成用データが表わす数値が増加する速さよりも遅くなる。しかし、最新の一時鍵生成用データを暗号通信装置200の一時鍵生成用データ通知部250が暗号通信装置300に対して通知するたびに、管理装置100と暗号通信装置300との間の同期が取られるので、検証用データ記憶部330が記憶した検証用データが表わす数値と、管理装置100の一時鍵生成用データ記憶部130が記憶した一時鍵生成用データが表わす数値との差が大きくなるのを防ぐことができる。   Further, when the time of the clock of the encryption communication device 300 is slower than the time of the clock of the management device 100, the speed at which the numerical value represented by the verification data stored in the verification data storage unit 330 increases is the management device 100. The temporary key generation data storage unit 130 stores the temporary key generation data, which is slower than the rate at which the numerical value is increased. However, every time the temporary key generation data notifying unit 250 of the cryptographic communication device 200 notifies the cryptographic communication device 300 of the latest temporary key generation data, the synchronization between the management device 100 and the cryptographic communication device 300 is synchronized. Therefore, the difference between the numerical value represented by the verification data stored in the verification data storage unit 330 and the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit 130 of the management apparatus 100 increases. Can be prevented.

一時鍵生成部360は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると一時鍵生成用データ検証部350が判定した場合、処理装置911を用いて、一時鍵を生成する。一時鍵生成部360は、マスター鍵記憶部310が記憶したマスター鍵と、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データとを使って、一時鍵を生成する。   If the temporary key generation data verification unit 350 determines that the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is valid, the temporary key generation unit 360 uses the processing device 911 to Is generated. The temporary key generation unit 360 generates a temporary key using the master key stored in the master key storage unit 310 and the temporary key generation data determined by the temporary key generation data verification unit 350 to be valid.

一時鍵生成部360が一時鍵を生成する方式は、以下の条件を満たす方式であれば、どのような方式であってもよい。
第一の条件は、マスター鍵と一時鍵生成用データとの組が同じであれば、同一もしくは同類の一時鍵が生成されることである。
第二の条件は、マスター鍵が、管理装置100の一時鍵生成部160が一時鍵の生成に使ったマスター鍵と同一の、又は、そのマスター鍵に対応するマスター鍵であり、一次鍵生成用データが、一時鍵生成部160が一時鍵の生成に使った一時鍵生成用データと同一であれば、一時鍵生成部160が生成した一時鍵と同一の、又は、その一時鍵に対応する一時鍵が生成されることである。逆に、それ以外の場合には、一時鍵生成部160が生成した一時鍵と同一でなく、かつ、一時鍵生成部160が生成した一時鍵に対応しない一時鍵が生成されることである。
第三の条件は、一時鍵生成用データと、それを使って生成した一時鍵を使って生成した暗号文とから、一時鍵やマスター鍵が推測できないことである。これにより、一時鍵やマスター鍵の漏洩を防ぐことができる。
The method by which the temporary key generation unit 360 generates a temporary key may be any method as long as it satisfies the following conditions.
The first condition is that the same or similar temporary key is generated if the combination of the master key and the temporary key generation data is the same.
The second condition is that the master key is a master key that is the same as or corresponds to the master key used by the temporary key generation unit 160 of the management apparatus 100 to generate the temporary key. If the data is the same as the temporary key generation data used by the temporary key generation unit 160 to generate the temporary key, the temporary key that is the same as or corresponds to the temporary key generated by the temporary key generation unit 160 The key is to be generated. On the other hand, in other cases, a temporary key that is not the same as the temporary key generated by the temporary key generation unit 160 and does not correspond to the temporary key generated by the temporary key generation unit 160 is generated.
The third condition is that the temporary key and the master key cannot be inferred from the temporary key generation data and the ciphertext generated using the temporary key generated using the temporary key generation data. Thereby, leakage of a temporary key and a master key can be prevented.

例えば、一時鍵生成部360は、マスター鍵記憶部310が記憶したマスター鍵を使って、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データを暗号化する。一時鍵生成部360は、暗号化した暗号文を一時鍵とする。
あるいは、一時鍵生成部360は、一方向性を有するハッシュ関数を使って、マスター鍵記憶部310が記憶したマスター鍵と、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データとをハッシュ関数の入力とし、ハッシュ値を算出する。一時鍵生成部360は、算出したハッシュ値を一時鍵とする。
For example, the temporary key generation unit 360 uses the master key stored in the master key storage unit 310 to encrypt the temporary key generation data determined by the temporary key generation data verification unit 350 to be valid. The temporary key generation unit 360 uses the encrypted ciphertext as a temporary key.
Alternatively, the temporary key generation unit 360 uses a one-way hash function to generate the master key stored in the master key storage unit 310 and the temporary key generation data determined by the temporary key generation data verification unit 350 to be valid. The hash value is calculated using the business data as input of the hash function. The temporary key generation unit 360 uses the calculated hash value as a temporary key.

暗号通信部390は、一時鍵生成部360が生成した一時鍵を使って、暗号通信装置200との間で暗号通信をする。例えば、暗号通信部390は、通信装置915を用いて、暗号通信装置200の暗号通信部290が送信した暗号文を受信し、処理装置911を用いて、受信した暗号文を、一時鍵生成部360が生成した一時鍵を使って復号する。あるいは、暗号通信部390は、処理装置911を用いて、一時鍵生成部360が生成した一時鍵を使って暗号文を生成し、通信装置915を用いて、生成した暗号文を暗号通信装置200に対して送信する。   The cryptographic communication unit 390 performs cryptographic communication with the cryptographic communication device 200 using the temporary key generated by the temporary key generation unit 360. For example, the cryptographic communication unit 390 receives the ciphertext transmitted by the cryptographic communication unit 290 of the cryptographic communication device 200 using the communication device 915 and uses the processing device 911 to convert the received ciphertext to the temporary key generation unit. 360 is decrypted using the temporary key generated. Alternatively, the cryptographic communication unit 390 uses the processing device 911 to generate a ciphertext using the temporary key generated by the temporary key generation unit 360, and uses the communication device 915 to convert the generated ciphertext to the cryptographic communication device 200. Send to.

マスター鍵記憶部310が記憶したマスター鍵は、管理装置100のマスター鍵記憶部110が記憶したマスター鍵と同一の、又は、そのマスター鍵に対応するマスター鍵である。また、一時鍵生成用データ取得部320が取得した一時鍵生成用データは、暗号通信装置200の暗号通信部290が暗号通信に使う一時鍵を管理装置100の一時鍵生成部160が生成するときに使った一時鍵生成用データと同一のデータである。したがって、一時鍵生成部360が生成する一時鍵は、暗号通信装置200の暗号通信部290が暗号通信に使う一時鍵と同一の、又は、その一時鍵に対応する一時鍵である。したがって、暗号通信部390は、暗号通信装置200の暗号通信部290が暗号化した暗号文を復号することができ、暗号通信装置200の暗号通信部290が復号できる暗号文を生成することができる。   The master key stored in the master key storage unit 310 is the same as or corresponding to the master key stored in the master key storage unit 110 of the management apparatus 100. The temporary key generation data acquired by the temporary key generation data acquisition unit 320 is generated when the temporary key generation unit 160 of the management apparatus 100 generates a temporary key that the encryption communication unit 290 of the encryption communication apparatus 200 uses for encryption communication. This is the same data as the temporary key generation data used in the above. Therefore, the temporary key generated by the temporary key generation unit 360 is a temporary key that is the same as or corresponds to the temporary key that the cryptographic communication unit 290 of the cryptographic communication device 200 uses for cryptographic communication. Therefore, the encryption communication unit 390 can decrypt the ciphertext encrypted by the encryption communication unit 290 of the encryption communication device 200, and can generate a ciphertext that can be decrypted by the encryption communication unit 290 of the encryption communication device 200. .

また、暗号通信装置200の一時鍵生成用データ記憶部230が記憶した一時鍵生成用データと、一時鍵記憶部270が記憶した一時鍵との組が漏洩し、一時鍵生成用データと一時鍵との組を入手した第三者が、暗号通信装置300と暗号通信をして、暗号通信装置300から情報を窃取しようとした場合について考える。
検証用データ記憶部330が記憶した検証用データを検証用データ更新部340が更新すると、第三者が入手した一時鍵生成用データ及びそれを使って生成した一時鍵は、最新のものではなくなる。このため、第三者が入手した一時鍵生成用データを暗号通信装置300に対して通知しても、一時鍵生成用データ検証部350は、それを有効でないと判定する。これにより、第三者が暗号通信装置300と暗号通信をするのを防ぐことができる。
Further, a set of temporary key generation data stored in the temporary key generation data storage unit 230 of the encryption communication device 200 and temporary key stored in the temporary key storage unit 270 leaks, and the temporary key generation data and the temporary key are leaked. Consider a case in which a third party who has obtained a set of and tries to steal information from the cryptographic communication device 300 by performing cryptographic communication with the cryptographic communication device 300.
When the verification data update unit 340 updates the verification data stored in the verification data storage unit 330, the temporary key generation data obtained by the third party and the temporary key generated using the data are not the latest. . For this reason, even if the cipher communication device 300 is notified of the temporary key generation data obtained by a third party, the temporary key generation data verification unit 350 determines that it is not valid. Thereby, it is possible to prevent a third party from performing cryptographic communication with the cryptographic communication device 300.

次に、動作について説明する。   Next, the operation will be described.

暗号通信システム800における処理には、大きく分けて、初期化処理S601と、更新処理S602と、一時鍵通知処理S603と、暗号通信処理S604とがある。
初期化処理S601において、管理装置100や暗号通信装置300が、マスター鍵、一時鍵生成用データ、検証用データなどを初期化する。
更新処理S602において、管理装置100や暗号通信装置300が、一時鍵生成用データや検証用データを定期的に更新する。
一時鍵通知処理S603において、管理装置100が一時鍵を生成し、生成した一時鍵を暗号通信装置200に対して通知する。
暗号通信処理S604において、暗号通信装置200と暗号通信装置300とが暗号通信に使う一時鍵を合意して、暗号通信をする。
The processes in the cryptographic communication system 800 are roughly divided into an initialization process S601, an update process S602, a temporary key notification process S603, and a cryptographic communication process S604.
In the initialization process S601, the management device 100 and the cryptographic communication device 300 initialize a master key, temporary key generation data, verification data, and the like.
In the update process S602, the management device 100 and the cryptographic communication device 300 periodically update the temporary key generation data and the verification data.
In the temporary key notification process S603, the management device 100 generates a temporary key and notifies the encrypted communication device 200 of the generated temporary key.
In the encryption communication processing S604, the encryption communication device 200 and the encryption communication device 300 agree on a temporary key used for encryption communication and perform encryption communication.

図6は、この実施の形態における初期化処理S601の流れの一例を示すフロー図である。   FIG. 6 is a flowchart showing an example of the flow of the initialization process S601 in this embodiment.

管理装置100は、初期化処理S601において、例えば、マスター鍵記憶工程S611と、一時鍵生成用データ初期化工程S612とを実行する。   In the initialization process S601, the management apparatus 100 executes, for example, a master key storage step S611 and a temporary key generation data initialization step S612.

マスター鍵記憶工程S611において、管理装置100のマスター鍵記憶部110は、マスター鍵を取得する。
例えば、管理装置100の外部にマスター鍵生成装置を設ける。マスター鍵記憶部110は、通信装置915を用いて、マスター鍵生成装置と通信することにより、マスター鍵生成装置が生成した管理装置100用のマスター鍵を取得する。あるいは、管理装置100の内部にマスター鍵生成部を設ける。マスター鍵記憶部110は、処理装置911を用いて、マスター鍵生成部が生成した管理装置100用のマスター鍵を取得する。
マスター鍵記憶部110は、記憶装置914を用いて、取得したマスター鍵を記憶する。
In the master key storage step S611, the master key storage unit 110 of the management device 100 acquires a master key.
For example, a master key generation device is provided outside the management device 100. The master key storage unit 110 acquires the master key for the management apparatus 100 generated by the master key generation apparatus by communicating with the master key generation apparatus using the communication apparatus 915. Alternatively, a master key generation unit is provided inside the management apparatus 100. The master key storage unit 110 uses the processing device 911 to acquire the master key for the management device 100 generated by the master key generation unit.
The master key storage unit 110 uses the storage device 914 to store the acquired master key.

一時鍵生成用データ初期化工程S612において、管理装置100の一時鍵生成用データ記憶部130は、一時鍵生成用データを初期化する。
例えば、一時鍵生成用データ記憶部130は、一時鍵生成用データの初期データを取得する。一時鍵生成用データ記憶部130が取得する初期データは、例えば、一時鍵生成用データが表わす数値の最小値を表わす。一時鍵生成用データ記憶部130は、記憶装置914を用いて、取得した初期データを、一時鍵生成用データとして記憶する。
In the temporary key generation data initialization step S612, the temporary key generation data storage unit 130 of the management apparatus 100 initializes the temporary key generation data.
For example, the temporary key generation data storage unit 130 acquires initial data of temporary key generation data. The initial data acquired by the temporary key generation data storage unit 130 represents, for example, the minimum value represented by the temporary key generation data. Using the storage device 914, the temporary key generation data storage unit 130 stores the acquired initial data as temporary key generation data.

暗号通信装置300は、初期化処理S601において、例えば、マスター鍵記憶工程S631と、検証用データ初期化工程S632とを実行する。なお、暗号通信装置300は、管理装置100と無関係に初期化処理S601を実行する。すなわち、暗号通信装置300が初期化処理S601を実行するタイミングは、管理装置100が初期化処理S601を実行するタイミングと同じである必要はない。   In the initialization process S601, the cryptographic communication device 300 executes, for example, a master key storage step S631 and a verification data initialization step S632. Note that the cryptographic communication device 300 executes the initialization process S601 regardless of the management device 100. That is, the timing at which the cryptographic communication apparatus 300 executes the initialization process S601 does not have to be the same as the timing at which the management apparatus 100 executes the initialization process S601.

マスター鍵記憶工程S631において、暗号通信装置300のマスター鍵記憶部310は、マスター鍵記憶工程S611で管理装置100のマスター鍵記憶部110が記憶したマスター鍵と同一の、又は、そのマスター鍵に対応するマスター鍵を取得する。
例えば、マスター鍵記憶部310は、通信装置915を用いて、マスター鍵生成装置と通信することにより、マスター鍵生成装置が生成した暗号通信装置300用のマスター鍵を取得する。あるいは、マスター鍵記憶部310は、通信装置915を用いて、管理装置100と通信することにより、管理装置100のマスター鍵生成部が生成した暗号通信装置300用のマスター鍵を取得する。
マスター鍵記憶部310は、記憶装置914を用いて、取得したマスター鍵を記憶する。
In the master key storage step S631, the master key storage unit 310 of the encryption communication device 300 is the same as or corresponds to the master key stored in the master key storage unit 110 of the management device 100 in the master key storage step S611. To obtain the master key.
For example, the master key storage unit 310 uses the communication device 915 to communicate with the master key generation device, thereby acquiring the master key for the encryption communication device 300 generated by the master key generation device. Alternatively, the master key storage unit 310 uses the communication device 915 to communicate with the management device 100, thereby acquiring the master key for the encryption communication device 300 generated by the master key generation unit of the management device 100.
The master key storage unit 310 uses the storage device 914 to store the acquired master key.

検証用データ初期化工程S632において、暗号通信装置300の検証用データ記憶部330は、検証用データを初期化する。
例えば、検証用データ記憶部330は、検証用データの初期データを取得する。検証用データ記憶部330が取得する初期データは、例えば、一時鍵生成用データが表わす数値の最小値を表わす。検証用データ記憶部330は、記憶装置914を用いて、取得した初期データを、検証用データとして記憶する。
In the verification data initialization step S632, the verification data storage unit 330 of the cryptographic communication device 300 initializes the verification data.
For example, the verification data storage unit 330 acquires initial data of verification data. The initial data acquired by the verification data storage unit 330 represents, for example, the minimum value of the numerical value represented by the temporary key generation data. The verification data storage unit 330 uses the storage device 914 to store the acquired initial data as verification data.

図7は、この実施の形態における更新処理S602の流れの一例を示すフロー図である。   FIG. 7 is a flowchart showing an example of the flow of the update process S602 in this embodiment.

管理装置100は、更新処理S602において、例えば、周期経過判定工程S613と、一時鍵生成用データ更新工程S614とを実行する。   In the update process S602, the management device 100 executes, for example, a period elapsed determination process S613 and a temporary key generation data update process S614.

周期経過判定工程S613において、管理装置100の一時鍵生成用データ更新部140は、あらかじめ定められた更新周期が経過したか否かを判定する。例えば、一時鍵生成用データ更新部140は、処理装置911を用いて、前回の更新からの経過時間と更新周期とを比較して、経過時間が更新周期より大きい場合に、更新周期が経過したと判定する。
更新周期が経過したと判定した場合、一時鍵生成用データ更新部140は、一時鍵生成用データ更新工程S614へ処理を進める。
In the cycle elapse determination step S613, the temporary key generation data update unit 140 of the management device 100 determines whether or not a predetermined update cycle has elapsed. For example, the temporary key generation data update unit 140 uses the processing device 911 to compare the elapsed time from the previous update with the update cycle, and when the elapsed time is greater than the update cycle, the update cycle has elapsed. It is determined.
If it is determined that the update cycle has elapsed, the temporary key generation data update unit 140 proceeds to the temporary key generation data update step S614.

一時鍵生成用データ更新工程S614において、管理装置100の一時鍵生成用データ更新部140は、一時鍵生成用データを更新する。
例えば、一時鍵生成用データ更新部140は、処理装置911を用いて、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを取得する。一時鍵生成用データ更新部140は、処理装置911を用いて、取得した一時鍵生成用データが表わす数値と、あらかじめ定められた増分値とを合計した合計値を算出する。一時鍵生成用データ更新部140は、算出した合計値を表わすデータを使って、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを更新する。一時鍵生成用データ記憶部130は、古い一時鍵生成用データに代えて、新しく一時鍵生成用データ更新部140が算出した合計値を表わすデータを、記憶装置914を用いて、一時鍵生成用データとして記憶する。
その後、一時鍵生成用データ更新部140は、周期経過判定工程S613に処理を戻し、次の更新周期が経過するのを待つ。
In the temporary key generation data update step S614, the temporary key generation data update unit 140 of the management apparatus 100 updates the temporary key generation data.
For example, the temporary key generation data update unit 140 uses the processing device 911 to acquire the temporary key generation data stored in the temporary key generation data storage unit 130. Using the processing device 911, the temporary key generation data update unit 140 calculates a total value obtained by summing up the numerical value represented by the acquired temporary key generation data and a predetermined increment value. The temporary key generation data updating unit 140 updates the temporary key generation data stored in the temporary key generation data storage unit 130 using the data representing the calculated total value. The temporary key generation data storage unit 130 uses the storage device 914 to generate data representing the total value newly calculated by the temporary key generation data update unit 140 instead of the old temporary key generation data. Store as data.
Thereafter, the temporary key generation data update unit 140 returns the process to the cycle elapse determination step S613 and waits for the next update cycle to elapse.

暗号通信装置300は、更新処理S602において、例えば、周期経過判定工程S633と、検証用データ更新工程S634とを実行する。なお、暗号通信装置300は、管理装置100と無関係に更新処理S602を実行する。すなわち、暗号通信装置300が更新処理S602を実行するタイミングは、管理装置100が更新処理S602を実行するタイミングと同じである必要はない。   In the update process S602, the cryptographic communication device 300 executes, for example, a cycle elapse determination step S633 and a verification data update step S634. The cryptographic communication device 300 executes the update process S602 regardless of the management device 100. That is, the timing at which the cryptographic communication apparatus 300 executes the update process S602 does not have to be the same as the timing at which the management apparatus 100 executes the update process S602.

周期経過判定工程S633において、暗号通信装置300の検証用データ更新部340は、あらかじめ定められた更新周期が経過したか否かを判定する。例えば、検証用データ更新部340は、処理装置911を用いて、前回の更新からの経過時間と更新周期とを比較して、経過時間が更新周期より大きい場合に、更新周期が経過したと判定する。
更新周期が経過したと判定した場合、検証用データ更新部340は、検証用データ更新工程S634へ処理を進める。
In the cycle elapse determination step S633, the verification data update unit 340 of the encryption communication device 300 determines whether or not a predetermined update cycle has elapsed. For example, the verification data update unit 340 compares the elapsed time from the previous update with the update cycle using the processing device 911, and determines that the update cycle has passed if the elapsed time is greater than the update cycle. To do.
When it is determined that the update cycle has elapsed, the verification data update unit 340 advances the processing to the verification data update step S634.

検証用データ更新工程S634において、暗号通信装置300の検証用データ更新部340は、検証用データを更新する。
例えば、検証用データ更新部340は、処理装置911を用いて、検証用データ記憶部330が記憶した検証用データを取得する。検証用データ更新部340は、処理装置911を用いて、取得した検証用データが表わす数値と、あらかじめ定められた増分値とを合計した合計値を算出する。検証用データ更新部340は、算出した合計値を表わすデータを使って、検証用データ記憶部330が記憶した検証用データを更新する。検証用データ記憶部330は、古い検証用データに代えて、新しく検証用データ更新部340が算出した合計値を表わすデータを、記憶装置914を用いて、検証用データとして記憶する。
その後、検証用データ更新部340は、周期経過判定工程S633に処理を戻し、次の更新周期が経過するのを待つ。
In the verification data update step S634, the verification data update unit 340 of the cryptographic communication device 300 updates the verification data.
For example, the verification data update unit 340 uses the processing device 911 to acquire the verification data stored in the verification data storage unit 330. The verification data update unit 340 uses the processing device 911 to calculate a total value obtained by summing the numerical value represented by the acquired verification data and a predetermined increment value. The verification data update unit 340 uses the data representing the calculated total value to update the verification data stored in the verification data storage unit 330. The verification data storage unit 330 stores data representing the total value newly calculated by the verification data update unit 340 as verification data using the storage device 914 instead of the old verification data.
Thereafter, the verification data update unit 340 returns the process to the cycle elapse determination step S633 and waits for the next update cycle to elapse.

図8は、この実施の形態における一時鍵通知処理S603の流れの一例を示すフロー図である。   FIG. 8 is a flowchart showing an example of the flow of the temporary key notification process S603 in this embodiment.

管理装置100は、一時鍵通知処理S603において、例えば、一時鍵要求受付工程S615と、一時鍵生成工程S616と、一時鍵通知工程S618と、一時鍵生成用データ通知工程S619とを実行する。
また、暗号通信装置200は、一時鍵通知処理S603において、例えば、一時鍵要求工程S621と、一時鍵取得工程S622と、一時鍵生成用データ取得工程S623とを実行する。
In the temporary key notification process S603, the management device 100 executes, for example, a temporary key request reception step S615, a temporary key generation step S616, a temporary key notification step S618, and a temporary key generation data notification step S619.
Also, in the temporary key notification process S603, the cryptographic communication apparatus 200 executes, for example, a temporary key request process S621, a temporary key acquisition process S622, and a temporary key generation data acquisition process S623.

一時鍵要求工程S621において、暗号通信装置200の一時鍵取得部260は、管理装置100に対して、一時鍵を要求する。例えば、一時鍵取得部260は、通信装置915を用いて、一時鍵を要求する一時鍵要求メッセージを管理装置100に対して送信する。
一時鍵要求受付工程S615において、管理装置100の一時鍵通知部170は、暗号通信装置200からの要求を受け付ける。例えば、一時鍵通知部170は、通信装置915を用いて、暗号通信装置200の一時鍵取得部260が送信した一時鍵要求メッセージを受信する。
In the temporary key request step S621, the temporary key acquisition unit 260 of the cryptographic communication device 200 requests the management device 100 for a temporary key. For example, the temporary key acquisition unit 260 uses the communication device 915 to transmit a temporary key request message requesting a temporary key to the management device 100.
In the temporary key request reception step S615, the temporary key notification unit 170 of the management device 100 receives a request from the encryption communication device 200. For example, the temporary key notification unit 170 receives the temporary key request message transmitted by the temporary key acquisition unit 260 of the encryption communication device 200 using the communication device 915.

なお、暗号通信装置200に対して一時鍵を通知してよいか否かを確認するため、管理装置100が暗号通信装置200を認証する構成であってもよい。例えば、暗号通信装置200に認証情報入力部を設け、管理装置100に認証情報検証部を設ける。暗号通信装置200の認証情報入力部は、入力装置912を用いて、利用者の指紋などの生体情報やパスワードなどの認証情報を入力する。暗号通信装置200の一時鍵取得部260は、処理装置911を用いて、認証情報入力部が入力した認証情報を含む一時鍵要求メッセージを生成する。管理装置100の認証情報検証部は、処理装置911を用いて、暗号通信装置200から通知された一時鍵要求メッセージに含まれる認証情報を検証することにより、暗号通信装置200を認証する。認証に失敗した場合、管理装置100は、以後の工程を実行せず、一時鍵通知処理S603を終了する。これにより、正規の利用者以外の者が暗号通信装置200を操作している場合に、暗号通信装置200に対して管理装置100が一時鍵を通知するのを防ぐことができる。   The management apparatus 100 may authenticate the encryption communication apparatus 200 in order to confirm whether or not the encryption communication apparatus 200 may be notified of the temporary key. For example, the encryption communication device 200 is provided with an authentication information input unit, and the management device 100 is provided with an authentication information verification unit. The authentication information input unit of the encryption communication device 200 uses the input device 912 to input biometric information such as a user's fingerprint and authentication information such as a password. Using the processing device 911, the temporary key acquisition unit 260 of the encryption communication device 200 generates a temporary key request message including the authentication information input by the authentication information input unit. The authentication information verification unit of the management device 100 authenticates the cryptographic communication device 200 by using the processing device 911 to verify the authentication information included in the temporary key request message notified from the cryptographic communication device 200. If the authentication fails, the management apparatus 100 ends the temporary key notification process S603 without executing the subsequent steps. Thereby, it is possible to prevent the management apparatus 100 from notifying the encryption communication apparatus 200 of the temporary key when a person other than the authorized user is operating the encryption communication apparatus 200.

一時鍵生成工程S616において、管理装置100の一時鍵生成部160は、処理装置911を用いて、マスター鍵記憶部110が記憶したマスター鍵と、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データとに基づいて、一時鍵を生成する。   In the temporary key generation step S616, the temporary key generation unit 160 of the management device 100 uses the processing device 911 to store the master key stored in the master key storage unit 110 and the temporary key stored in the temporary key generation data storage unit 130. A temporary key is generated based on the generation data.

一時鍵通知工程S618において、管理装置100の一時鍵通知部170は、一時鍵生成工程S616で一時鍵生成部160が生成した一時鍵を暗号通信装置200に対して通知する。
一時鍵取得工程S622において、暗号通信装置200の一時鍵取得部260は、一時鍵通知工程S618で管理装置100の一時鍵通知部170が通知した一時鍵を取得する。暗号通信装置200の一時鍵記憶部270は、記憶装置914を用いて、一時鍵取得部260が取得した一時鍵を記憶する。
In the temporary key notification step S618, the temporary key notification unit 170 of the management device 100 notifies the encryption communication device 200 of the temporary key generated by the temporary key generation unit 160 in the temporary key generation step S616.
In the temporary key acquisition step S622, the temporary key acquisition unit 260 of the cryptographic communication device 200 acquires the temporary key notified by the temporary key notification unit 170 of the management device 100 in the temporary key notification step S618. The temporary key storage unit 270 of the encryption communication device 200 stores the temporary key acquired by the temporary key acquisition unit 260 using the storage device 914.

一時鍵生成用データ通知工程S619において、管理装置100の一時鍵生成用データ通知部150は、一時鍵通知工程S618で一時鍵通知部170が暗号通信装置200に対して通知した一時鍵を、一時鍵生成工程S616で一時鍵生成部160が生成するときに使った一時鍵生成用データを暗号通信装置200に対して通知する。
一時鍵生成用データ取得工程S623において、暗号通信装置200の一時鍵生成用データ取得部220は、一時鍵生成用データ通知工程S619で管理装置100の一時鍵生成用データ通知部150が通知した一時鍵生成用データを取得する。暗号通信装置200の一時鍵生成用データ記憶部230は、記憶装置914を用いて、一時鍵生成用データ取得部220が取得した一時鍵生成用データを記憶する。
In the temporary key generation data notification step S619, the temporary key generation data notification unit 150 of the management device 100 temporarily stores the temporary key notified to the encryption communication device 200 by the temporary key notification unit 170 in the temporary key notification step S618. Temporary key generation data used when the temporary key generation unit 160 generates in the key generation step S616 is notified to the encryption communication device 200.
In the temporary key generation data acquisition step S623, the temporary key generation data acquisition unit 220 of the cryptographic communication device 200 receives the temporary key notified by the temporary key generation data notification unit 150 of the management device 100 in the temporary key generation data notification step S619. Get key generation data. The temporary key generation data storage unit 230 of the encryption communication device 200 stores the temporary key generation data acquired by the temporary key generation data acquisition unit 220 using the storage device 914.

図9は、この実施の形態における暗号通信処理S604の流れの一例を示すフロー図である。   FIG. 9 is a flowchart showing an example of the flow of the cryptographic communication processing S604 in this embodiment.

暗号通信装置200は、暗号通信処理S604において、例えば、一時鍵生成用データ通知工程S624と、暗号通信工程S625とを実行する。
また、暗号通信装置300は、暗号通信処理S604において、例えば、一時鍵生成用データ取得工程S635と、一時鍵生成用データ検証工程S636と、一時鍵生成工程S637と、暗号通信工程S638とを実行する。
In the cryptographic communication process S604, the cryptographic communication device 200 executes, for example, a temporary key generation data notification step S624 and a cryptographic communication step S625.
Further, in the cryptographic communication process S604, the cryptographic communication device 300 executes, for example, a temporary key generation data acquisition step S635, a temporary key generation data verification step S636, a temporary key generation step S637, and a cryptographic communication step S638. To do.

一時鍵生成用データ通知工程S624において、暗号通信装置200の一時鍵生成用データ通知部250は、一時鍵生成用データ記憶部230が記憶した一時鍵生成用データを暗号通信装置300に対して通知する。
一時鍵生成用データ取得工程S635において、暗号通信装置300の一時鍵生成用データ取得部320は、一時鍵生成用データ通知工程S624で暗号通信装置200の一時鍵生成用データ通知部250が通知した一時鍵生成用データを取得する。
In the temporary key generation data notification step S624, the temporary key generation data notification unit 250 of the cryptographic communication apparatus 200 notifies the cryptographic communication apparatus 300 of the temporary key generation data stored in the temporary key generation data storage unit 230. To do.
In the temporary key generation data acquisition step S635, the temporary key generation data acquisition unit 320 of the cryptographic communication device 300 notifies the temporary key generation data notification unit 250 of the cryptographic communication device 200 in the temporary key generation data notification step S624. Get temporary key generation data.

なお、暗号通信装置200は、一時鍵生成用データだけでなく、暗号通信装置200を識別する識別データや認証情報など、暗号通信装置300との間で暗号通信を開始するために必要な情報を、暗号通信装置300に対して通知する構成であってもよい。   Note that the cryptographic communication device 200 includes not only temporary key generation data but also information necessary for starting cryptographic communication with the cryptographic communication device 300 such as identification data and authentication information for identifying the cryptographic communication device 200. The encryption communication device 300 may be notified.

一時鍵生成用データ検証工程S636において、暗号通信装置300の一時鍵生成用データ検証部350は、処理装置911を用いて、検証用データ記憶部330が記憶した検証用データと、一時鍵生成用データ取得部320が取得した一時鍵生成用データとに基づいて、一時鍵生成用データが有効であるか否かを判定する。
一時鍵生成用データが有効でないと一時鍵生成用データ検証部350が判定した場合、暗号通信装置300は、それ以後の工程を実行せず、暗号通信処理S604を終了する。
一時鍵生成用データが有効であると一時鍵生成用データ検証部350が判定した場合、検証用データ記憶部330は、記憶装置914を用いて、それまで記憶していた検証用データに代えて、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データを、新たな検証用データとして記憶する。これにより、管理装置100と暗号通信装置300とが、緩やかに同期する。
In the temporary key generation data verification step S636, the temporary key generation data verification unit 350 of the cryptographic communication device 300 uses the processing device 911 to verify the verification data stored in the verification data storage unit 330 and the temporary key generation data. Based on the temporary key generation data acquired by the data acquisition unit 320, it is determined whether or not the temporary key generation data is valid.
If the temporary key generation data verification unit 350 determines that the temporary key generation data is not valid, the cryptographic communication apparatus 300 does not execute the subsequent steps and ends the cryptographic communication process S604.
When the temporary key generation data verification unit 350 determines that the temporary key generation data is valid, the verification data storage unit 330 uses the storage device 914 to replace the verification data stored so far. The temporary key generation data determined by the temporary key generation data verification unit 350 as valid is stored as new verification data. Thereby, the management apparatus 100 and the encryption communication apparatus 300 are gently synchronized.

なお、暗号通信装置300は、検証結果を暗号通信装置200に対して通知する構成であってもよい。また、暗号通信装置300は、検証結果だけでなく、暗号通信装置300を識別する識別データや認証情報など、暗号通信装置200との間で暗号通信を開始するために必要な情報を暗号通信装置200に対して送信する構成であってもよい。   The encryption communication device 300 may be configured to notify the verification result to the encryption communication device 200. Also, the cryptographic communication device 300 transmits not only the verification result but also information necessary for starting cryptographic communication with the cryptographic communication device 200 such as identification data for identifying the cryptographic communication device 300 and authentication information. 200 may be configured to transmit to 200.

一時鍵生成工程S637において、暗号通信装置300の一時鍵生成部360は、処理装置911を用いて、マスター鍵記憶部310が記憶したマスター鍵と、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データとに基づいて、一時鍵を生成する。   In the temporary key generation step S637, the temporary key generation unit 360 of the cryptographic communication device 300 uses the processing device 911 and the master key stored in the master key storage unit 310, and the temporary key generation data verification unit 350 that is valid. A temporary key is generated based on the temporary key generation data determined by.

暗号通信工程S625において、暗号通信装置200の暗号通信部290は、一時鍵記憶部270が記憶した一時鍵を使って、暗号通信装置300との間で暗号通信をする。
暗号通信工程S638において、暗号通信装置300の暗号通信部390は、一時鍵生成工程S637で一時鍵生成部360が生成した一時鍵を使って、暗号通信装置200との間で暗号通信をする。
例えば、暗号通信装置200の暗号通信部290は、処理装置911を用いて、一時鍵記憶部270が記憶した一時鍵を使って暗号文を生成し、通信装置915を用いて、生成した暗号文を暗号通信装置300に対して送信する。暗号通信装置300の暗号通信部390は、通信装置915を用いて、暗号通信装置200が送信した暗号文を受信し、処理装置911を用いて、一時鍵生成部360が生成した一時鍵を使って暗号文を復号する。また、暗号通信装置300の暗号通信部390は、処理装置911を用いて、一時鍵生成部360が生成した一時鍵を使って暗号文を生成し、通信装置915を用いて、生成した暗号文を暗号通信装置200に対して送信する。暗号通信装置200の暗号通信部290は、通信装置915を用いて、暗号通信装置300が送信した暗号文を受信し、処理装置911を用いて、一時鍵記憶部270が記憶した一時鍵を使って、受信した暗号文を復号する。
In the cryptographic communication step S625, the cryptographic communication unit 290 of the cryptographic communication device 200 performs cryptographic communication with the cryptographic communication device 300 using the temporary key stored in the temporary key storage unit 270.
In the cryptographic communication step S638, the cryptographic communication unit 390 of the cryptographic communication device 300 performs cryptographic communication with the cryptographic communication device 200 using the temporary key generated by the temporary key generation unit 360 in the temporary key generation step S637.
For example, the cryptographic communication unit 290 of the cryptographic communication device 200 uses the processing device 911 to generate a ciphertext using the temporary key stored in the temporary key storage unit 270 and uses the communication device 915 to generate the ciphertext generated. Is transmitted to the cryptographic communication apparatus 300. The encryption communication unit 390 of the encryption communication device 300 receives the ciphertext transmitted by the encryption communication device 200 using the communication device 915, and uses the temporary key generated by the temporary key generation unit 360 using the processing device 911. To decrypt the ciphertext. Also, the cryptographic communication unit 390 of the cryptographic communication device 300 uses the processing device 911 to generate a ciphertext using the temporary key generated by the temporary key generation unit 360 and uses the communication device 915 to generate the ciphertext generated. Is transmitted to the cryptographic communication apparatus 200. The encryption communication unit 290 of the encryption communication device 200 receives the ciphertext transmitted by the encryption communication device 300 using the communication device 915 and uses the temporary key stored in the temporary key storage unit 270 using the processing device 911. And decrypts the received ciphertext.

なお、すぐに暗号通信を開始するのではなく、暗号通信を開始するために必要な情報を、合意された一時鍵を使って暗号化して、暗号通信装置200と暗号通信装置300との間でやり取りする構成であってもよい。例えば、暗号通信装置200と暗号通信装置300とは、やり取りした情報に基づいて相互認証をする。あるいは、暗号通信装置200と暗号通信装置300とは、やり取りした情報に基づいて、暗号通信に使う鍵を合意し、合意した鍵を使って暗号通信をする。   Instead of starting the encryption communication immediately, the information necessary for starting the encryption communication is encrypted using the agreed temporary key between the encryption communication device 200 and the encryption communication device 300. The structure which communicates may be sufficient. For example, the cryptographic communication device 200 and the cryptographic communication device 300 perform mutual authentication based on the exchanged information. Alternatively, the encryption communication device 200 and the encryption communication device 300 agree on a key to be used for encryption communication based on the exchanged information, and perform encryption communication using the agreed key.

以上のように、一時鍵生成用データの有効性を判定することにより、古い一時鍵を使って、暗号通信装置200と暗号通信装置300とが暗号通信をするのを防ぐことができる。   As described above, by determining the validity of the temporary key generation data, it is possible to prevent the cryptographic communication device 200 and the cryptographic communication device 300 from performing cryptographic communication using the old temporary key.

例えば、暗号通信装置200が小型で携帯可能である場合、暗号通信装置200の正当な利用者が暗号通信装置200を紛失し、第三者が暗号通信装置200を拾得して悪用する可能性がある。検証用データの更新により、第三者が拾得した暗号通信装置200に保存されている一時鍵が古いものになれば、その暗号通信装置200は、暗号通信装置300との間で暗号通信をすることができない。このため、暗号通信装置300から情報が漏洩するのを防ぐことができる。また、暗号通信装置200には、一時鍵と一時鍵生成用データとが保存されているが、マスター鍵は保存されていない。一時鍵と一時鍵生成用データとからマスター鍵を推測することはできないので、暗号通信装置200を拾得した第三者が、暗号通信装置200から一時鍵や一時鍵生成用データを取り出したとしても、マスター鍵が漏洩することはない。   For example, when the cryptographic communication device 200 is small and portable, there is a possibility that a legitimate user of the cryptographic communication device 200 loses the cryptographic communication device 200 and a third party picks up the cryptographic communication device 200 and misuses it. is there. If the temporary key stored in the cryptographic communication device 200 picked up by the third party becomes old due to the update of the verification data, the cryptographic communication device 200 performs cryptographic communication with the cryptographic communication device 300. I can't. For this reason, it is possible to prevent information from leaking from the encryption communication device 300. The cryptographic communication apparatus 200 stores a temporary key and temporary key generation data, but does not store a master key. Since the master key cannot be estimated from the temporary key and the temporary key generation data, even if a third party who picks up the cryptographic communication device 200 extracts the temporary key or temporary key generation data from the cryptographic communication device 200 The master key will not be leaked.

実施の形態2.
実施の形態2について、説明する。
なお、実施の形態1と共通する部分については、同一の符号を付し、説明を省略する。
Embodiment 2. FIG.
The second embodiment will be described.
In addition, about the part which is common in Embodiment 1, the same code | symbol is attached | subjected and description is abbreviate | omitted.

この実施の形態における暗号通信システム800の全体構成、管理装置100や暗号通信装置200,300のハードウェア構成及びブロック構成は、実施の形態1と同様なので、異なる部分のみ説明する。   Since the overall configuration of the cryptographic communication system 800 and the hardware configuration and block configuration of the management device 100 and the cryptographic communication devices 200 and 300 in this embodiment are the same as those in the first embodiment, only different parts will be described.

暗号通信装置300において、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると一時鍵生成用データ検証部350が判定し、検証用データ記憶部330が、その一時鍵生成用データを検証用データとして記憶した場合、検証用データ更新部340は、前回の更新からの経過時間をリセットする。すなわち、検証用データ更新部340は、検証用データ記憶部330が一時鍵生成用データを検証用データとして記憶してからの経過時間が所定の更新周期に達したときに、検証用データ記憶部330が記憶した検証用データを更新する。   In the cryptographic communication apparatus 300, the temporary key generation data verification unit 350 determines that the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is valid, and the verification data storage unit 330 determines that the temporary key generation data is valid. When the generation data is stored as verification data, the verification data update unit 340 resets the elapsed time from the previous update. That is, the verification data update unit 340 includes a verification data storage unit when an elapsed time after the verification data storage unit 330 stores the temporary key generation data as verification data reaches a predetermined update period. The verification data stored in 330 is updated.

暗号通信装置300の時計が正確でなく、暗号通信装置300の時計の進み方が管理装置100の時計の進み方より速い場合、検証用データ記憶部330が記憶した検証用データが表わす数値が増加する速さが、管理装置100の一時鍵生成用データ記憶部130が記憶した一時鍵生成用データが表わす数値が増加する速さよりも速くなる。そのままだと、いずれは、検証用データ記憶部330が記憶した検証用データが表わす数値が、管理装置100の一時鍵生成用データ記憶部130が記憶した一時鍵生成用データが表わす数値よりも大きくなり、最新の一時鍵生成用データであっても、一時鍵生成用データ検証部350が有効でないと判定するので、暗号通信装置200と暗号通信装置300との間の暗号通信ができなくなる。   When the clock of the cryptographic communication device 300 is not accurate and the clock of the cryptographic communication device 300 advances faster than the clock of the management device 100, the numerical value represented by the verification data stored in the verification data storage unit 330 increases. Is faster than the speed at which the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit 130 of the management apparatus 100 increases. As it is, in any case, the numerical value represented by the verification data stored in the verification data storage unit 330 is larger than the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit 130 of the management apparatus 100. Thus, even with the latest temporary key generation data, it is determined that the temporary key generation data verification unit 350 is not valid, so that encrypted communication between the encrypted communication device 200 and the encrypted communication device 300 cannot be performed.

暗号通信装置200が暗号通信装置300に対して通知した一時鍵生成用データが有効であると一時鍵生成用データ検証部350が判定した時点において、管理装置100では、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを一時鍵生成用データ更新部140が更新してからある程度の時間が既に経過している。したがって、暗号通信装置300において、その時点から検証用データ更新部340が経過時間を測り直せば、次回の検証用データの更新は、管理装置100における一時鍵生成用データの更新よりも遅くなる。したがって、ある程度定期的に暗号通信装置200と暗号通信装置300とが通信をすれば、暗号通信装置300の時計の進み方が管理装置100の時計の進み方より速い場合でも、検証用データ記憶部330が記憶した検証用データが表わす数値が増加する速さが、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データが表わす数値が増加する速さより速くなるのを防ぐことができる。   When the temporary key generation data verification unit 350 determines that the temporary key generation data notified from the encryption communication device 200 to the encryption communication device 300 is valid, the management device 100 stores the temporary key generation data storage unit. A certain amount of time has already passed since the temporary key generation data update unit 140 updates the temporary key generation data stored in 130. Therefore, in the cryptographic communication apparatus 300, if the verification data update unit 340 measures the elapsed time from that time, the next update of the verification data is slower than the update of the temporary key generation data in the management apparatus 100. Therefore, if the encryption communication device 200 and the encryption communication device 300 communicate with each other on a regular basis, even if the clock of the encryption communication device 300 advances faster than the clock of the management device 100, the verification data storage unit The speed at which the numerical value represented by the verification data stored in 330 is increased can be prevented from becoming faster than the speed at which the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit 130 is increased.

実施の形態3.
実施の形態3について、図10〜図19を用いて説明する。
なお、実施の形態1または実施の形態2と共通する部分については、同一の符号を付し、説明を省略する。
Embodiment 3 FIG.
The third embodiment will be described with reference to FIGS.
Note that portions common to Embodiment 1 or Embodiment 2 are denoted by the same reference numerals and description thereof is omitted.

図10は、この実施の形態における自動検針システム801の全体構成の一例を示す図である。   FIG. 10 is a diagram showing an example of the overall configuration of the automatic meter reading system 801 in this embodiment.

自動検針システム801(暗号通信システム)は、例えば、管理サーバ101と、携帯端末201と、検針メータ301とを有する。
検針メータ301と携帯端末201とは、無線網802を使って通信する。携帯端末201と管理サーバ101とは、公衆網803を使って通信する。携帯端末201と管理サーバ101との通信は、例えばSSL(Secure Socket Layer)などの安全な通信路を用いる。無線通信と公衆網通信とは、必ずしも同時に行う必要はない。
なお、携帯端末201や検針メータ301は、通常、複数存在する。
The automatic meter reading system 801 (encryption communication system) includes, for example, a management server 101, a portable terminal 201, and a meter reading meter 301.
The meter-reading meter 301 and the portable terminal 201 communicate using the wireless network 802. The portable terminal 201 and the management server 101 communicate using the public network 803. The communication between the portable terminal 201 and the management server 101 uses a secure communication path such as SSL (Secure Socket Layer). Wireless communication and public network communication are not necessarily performed simultaneously.
Note that there are usually a plurality of portable terminals 201 and meter-reading meters 301.

管理サーバ101、携帯端末201及び検針メータ301のハードウェア構成は、例えば、実施の形態1で説明した管理装置100や暗号通信装置200や暗号通信装置300と同様である。   The hardware configuration of the management server 101, the portable terminal 201, and the meter-reading meter 301 is the same as, for example, the management device 100, the encryption communication device 200, and the encryption communication device 300 described in the first embodiment.

図11は、この実施の形態における管理サーバ101の機能ブロックの一例を示す図である。   FIG. 11 is a diagram showing an example of functional blocks of the management server 101 in this embodiment.

管理サーバ101(管理装置)は、例えば、マスター鍵記憶部111と、世代番号カウンタ131と、鍵情報管理部161とを有する。   The management server 101 (management device) includes, for example, a master key storage unit 111, a generation number counter 131, and a key information management unit 161.

マスター鍵記憶部111は、マスター鍵411(第一マスター鍵)を記憶している。マスター鍵411は、共通鍵暗号で使用する鍵であり、検針メータ301も同じ鍵を持っている。複数の検針メータ301がある場合、複数の検針メータ301で共通のマスター鍵を使う構成であってもよいし、検針メータ301ごとに異なる個別のマスター鍵を使う構成であってもよい。   The master key storage unit 111 stores a master key 411 (first master key). The master key 411 is a key used in common key encryption, and the meter-reading meter 301 has the same key. When there are a plurality of meter-reading meters 301, a configuration in which a plurality of meter-reading meters 301 use a common master key may be used, or a configuration in which a different master key is used for each meter-reading meter 301 may be used.

世代番号カウンタ131(一時鍵生成用データ記憶部)は、世代番号412(一時鍵生成用データ)を記憶している。世代番号カウンタ131(一時鍵生成用データ更新部)は、日付に同期して、世代番号412をインクリメントする。あるいは、世代番号カウンタ131は、一定期間(例えば24時間)が経過するごとに、世代番号412をインクリメントする構成であってもよい。   The generation number counter 131 (temporary key generation data storage unit) stores a generation number 412 (temporary key generation data). The generation number counter 131 (temporary key generation data update unit) increments the generation number 412 in synchronization with the date. Alternatively, the generation number counter 131 may be configured to increment the generation number 412 every time a certain period (for example, 24 hours) elapses.

鍵情報管理部161は、携帯端末201から一時鍵発行要求421を受信する。鍵情報管理部161は、世代番号カウンタ131から世代番号412を受け取る。鍵情報管理部161は、マスター鍵記憶部111からマスター鍵411を受け取る。鍵情報管理部161(一時鍵生成部)は、マスター鍵411と世代番号412とから一時鍵413(第一一時鍵)を生成する。鍵情報管理部161(一時鍵通知部・一時鍵生成用データ通知部)は、一時鍵413と世代番号412とを携帯端末201に対して送付する。   The key information management unit 161 receives the temporary key issue request 421 from the portable terminal 201. The key information management unit 161 receives the generation number 412 from the generation number counter 131. The key information management unit 161 receives the master key 411 from the master key storage unit 111. The key information management unit 161 (temporary key generation unit) generates a temporary key 413 (first temporary key) from the master key 411 and the generation number 412. The key information management unit 161 (temporary key notification unit / temporary key generation data notification unit) sends the temporary key 413 and the generation number 412 to the portable terminal 201.

図12は、この実施の形態における携帯端末201の機能ブロックの一例を示す図である。   FIG. 12 is a diagram showing an example of functional blocks of the mobile terminal 201 in this embodiment.

携帯端末201(第一暗号通信装置)は、例えば、対管理サーバ通信部221と、メッセージ生成部281と、対検針メータ通信部291とを有する。   The portable terminal 201 (first encryption communication device) includes, for example, a management server communication unit 221, a message generation unit 281, and a meter reading meter communication unit 291.

対管理サーバ通信部221は、管理サーバ101の鍵情報管理部161に対して一時鍵発行要求421を送出する。対管理サーバ通信部221は、パスワードや、指紋などのバイオメトリックスその他の認証情報を一時鍵発行要求421の一部として送付する構成であってもよい。また、対管理サーバ通信部221は、鍵種別情報422を一時鍵発行要求421として送付する。鍵種別情報422は、使用する鍵の種別を示す。これにより、検針メータ301ごとにマスター鍵が異なる場合などにおいて、用途に応じて複数の鍵を使い分けることができる。
対管理サーバ通信部221(一時鍵取得部・一時鍵生成用データ取得部)は、管理サーバ101から一時鍵413と世代番号412とを受信する。対管理サーバ通信部221は、受信した一時鍵413と世代番号412とを、対検針メータ通信部291に渡す。
The management server communication unit 221 sends a temporary key issue request 421 to the key information management unit 161 of the management server 101. The management server communication unit 221 may be configured to send a password, biometrics such as a fingerprint, and other authentication information as part of the temporary key issue request 421. Also, the management server communication unit 221 sends the key type information 422 as a temporary key issue request 421. The key type information 422 indicates the type of key to be used. Thereby, when a master key differs for every meter-reading meter 301 etc., a some key can be used properly according to a use.
The management server communication unit 221 (temporary key acquisition unit / temporary key generation data acquisition unit) receives the temporary key 413 and the generation number 412 from the management server 101. The pair management server communication unit 221 passes the received temporary key 413 and the generation number 412 to the pair meter reading meter communication unit 291.

メッセージ生成部281は、検針メータ301に対するメッセージ423を生成する。   The message generation unit 281 generates a message 423 for the meter-reading meter 301.

対検針メータ通信部291は、検針メータ301と通信する。
例えば、対検針メータ通信部291は、メッセージ生成部281が生成したメッセージ423を受け取る。対検針メータ通信部291は、メッセージ423を一時鍵413で暗号化する。対検針メータ通信部291は、メッセージ識別子を生成する。対検針メータ通信部291は、メッセージ423を暗号化した暗号文と、メッセージ識別子と、世代番号412とを連接して暗号化メッセージ424を生成する。対検針メータ通信部291(一時鍵生成用データ通知部・暗号通信部)は、暗号化メッセージ424を検針メータ301に対して送付する。
また、対検針メータ通信部291(暗号通信部)は、検針メータ301から暗号化応答434を受信する。対検針メータ通信部291は、暗号化応答434を一時鍵413で復号する。
The meter reading meter communication unit 291 communicates with the meter reading meter 301.
For example, the meter reading meter communication unit 291 receives the message 423 generated by the message generation unit 281. The meter reading meter communication unit 291 encrypts the message 423 with the temporary key 413. The meter reading meter communication unit 291 generates a message identifier. The meter reading meter communication unit 291 generates an encrypted message 424 by concatenating the ciphertext obtained by encrypting the message 423, the message identifier, and the generation number 412. The meter reading meter communication unit 291 (temporary key generation data notifying unit / encrypted communication unit) sends an encrypted message 424 to the meter reading meter 301.
Further, the meter reading meter communication unit 291 (encrypted communication unit) receives the encrypted response 434 from the meter reading meter 301. The meter reading meter communication unit 291 decrypts the encrypted response 434 with the temporary key 413.

図13は、この実施の形態における検針メータ301の機能ブロックの一例を示す図である。   FIG. 13 is a diagram showing an example of functional blocks of the meter-reading meter 301 in this embodiment.

検針メータ301(第二暗号通信装置)は、例えば、マスター鍵記憶部311と、世代番号カウンタ331と、メッセージ処理部381と、対携帯端末通信部391とを有する。   The meter-reading meter 301 (second encryption communication device) includes, for example, a master key storage unit 311, a generation number counter 331, a message processing unit 381, and a portable terminal communication unit 391.

マスター鍵記憶部311は、マスター鍵431(第二マスター鍵)を記憶している。   The master key storage unit 311 stores a master key 431 (second master key).

世代番号カウンタ331(検証用データ記憶部)は、世代番号432(検証用データ)を記憶している。世代番号カウンタ331(検証用データ更新部)は、日付に同期して、世代番号432をインクリメントする。あるいは、世代番号カウンタ331は、一定期間(例えば24時間)が経過するごとに、世代番号432をインクリメントする構成であってもよい。   The generation number counter 331 (verification data storage unit) stores a generation number 432 (verification data). The generation number counter 331 (verification data update unit) increments the generation number 432 in synchronization with the date. Alternatively, the generation number counter 331 may be configured to increment the generation number 432 every time a certain period (for example, 24 hours) elapses.

対携帯端末通信部391は、携帯端末201と通信する。
例えば、対携帯端末通信部391(一時鍵生成用データ取得部)は、暗号化メッセージ424を受信する。対携帯端末通信部391は、世代番号カウンタ331から世代番号432を取得する。対携帯端末通信部391(一時鍵生成用データ検証部)は、世代番号432と、暗号化メッセージ424に含まれる世代番号412とを比較する。
世代番号432が世代番号412より新しい場合、対携帯端末通信部391は、暗号化メッセージ424を破棄し、暗号化応答434としてエラーメッセージを携帯端末201に対して送付する。
世代番号432が世代番号412と同じか、世代番号412より古い場合、対携帯端末通信部391は、マスター鍵記憶部311からマスター鍵431を取得する。対携帯端末通信部391(一時鍵生成部)は、世代番号412とマスター鍵431とから一時鍵(第二一時鍵)を生成する。対携帯端末通信部391は、一時鍵413と同じ鍵を生成する。対携帯端末通信部391(暗号通信部)は、生成した一時鍵で暗号化メッセージ424を復号し、メッセージ423を再現する。対携帯端末通信部391は、再現したメッセージ423を検証する。
検証に成功した場合、対携帯端末通信部391は、メッセージ423をメッセージ処理部381に対して送付する。また、世代番号432が世代番号412より古い場合、対携帯端末通信部391は、世代番号412を世代番号カウンタ331に上書きする。
The mobile terminal communication unit 391 communicates with the mobile terminal 201.
For example, the mobile terminal communication unit 391 (temporary key generation data acquisition unit) receives the encrypted message 424. The mobile terminal communication unit 391 acquires the generation number 432 from the generation number counter 331. The mobile terminal communication unit 391 (temporary key generation data verification unit) compares the generation number 432 with the generation number 412 included in the encrypted message 424.
When the generation number 432 is newer than the generation number 412, the mobile terminal communication unit 391 discards the encrypted message 424 and sends an error message to the mobile terminal 201 as the encrypted response 434.
If the generation number 432 is the same as or older than the generation number 412, the mobile terminal communication unit 391 acquires the master key 431 from the master key storage unit 311. The mobile terminal communication unit 391 (temporary key generation unit) generates a temporary key (second temporary key) from the generation number 412 and the master key 431. The mobile terminal communication unit 391 generates the same key as the temporary key 413. The mobile terminal communication unit 391 (encryption communication unit) decrypts the encrypted message 424 with the generated temporary key and reproduces the message 423. The mobile terminal communication unit 391 verifies the reproduced message 423.
If the verification is successful, the mobile terminal communication unit 391 sends a message 423 to the message processing unit 381. When the generation number 432 is older than the generation number 412, the mobile terminal communication unit 391 overwrites the generation number 412 on the generation number counter 331.

あるいは、対携帯端末通信部391は、メッセージ処理部381が生成した応答433を受信する。対携帯端末通信部391は、世代番号カウンタ331から世代番号432を取得する。対携帯端末通信部391は、マスター鍵記憶部311からマスター鍵431を取得する。対携帯端末通信部391(一時鍵生成部)は、世代番号432とマスター鍵431とから一時鍵(第二一時鍵)を生成する。対携帯端末通信部391(暗号通信部)は、応答433を暗号化する。対携帯端末通信部391は、メッセージ認証子を生成する。対携帯端末通信部391は、暗号化応答434を生成する。対携帯端末通信部391は、暗号化応答434を携帯端末201の対検針メータ通信部291に対して送付する。   Alternatively, the mobile terminal communication unit 391 receives the response 433 generated by the message processing unit 381. The mobile terminal communication unit 391 acquires the generation number 432 from the generation number counter 331. The mobile terminal communication unit 391 acquires the master key 431 from the master key storage unit 311. The mobile terminal communication unit 391 (temporary key generation unit) generates a temporary key (second temporary key) from the generation number 432 and the master key 431. The mobile terminal communication unit 391 (encryption communication unit) encrypts the response 433. The mobile terminal communication unit 391 generates a message authenticator. The mobile terminal communication unit 391 generates an encryption response 434. The mobile terminal communication unit 391 sends the encryption response 434 to the meter reading meter communication unit 291 of the mobile terminal 201.

メッセージ処理部381は、対検針メータ通信部291が復号したメッセージ423を処理し、応答433を生成する。メッセージ処理部381は、応答433を対携帯端末通信部391に対して送付する。   The message processing unit 381 processes the message 423 decoded by the meter reading meter communication unit 291 and generates a response 433. The message processing unit 381 sends a response 433 to the mobile terminal communication unit 391.

図14は、この実施の形態の管理サーバ101における鍵情報管理部161の詳細な機能ブロックの一例を示す図である。   FIG. 14 is a diagram showing an example of detailed functional blocks of the key information management unit 161 in the management server 101 of this embodiment.

鍵情報管理部161は、例えば、認証部162と、マスター鍵選択部163と、一時鍵生成部164と、出力判定部171とを有する。   The key information management unit 161 includes, for example, an authentication unit 162, a master key selection unit 163, a temporary key generation unit 164, and an output determination unit 171.

認証部162は、携帯端末201(対管理サーバ通信部221)から一時鍵発行要求421を受信する。認証部162は、一時鍵発行要求421に含まれる認証情報に基づいて、一時鍵発行要求421を処理するか否かを決定する。例えば、認証部162は、認証情報に基づいて送信者の認証を行う。一時鍵発行要求421を処理しないと決定した場合、認証部162は、鍵を出力しない旨を表わす出力判定信号414を出力判定部171に対して出力する。一時鍵発行要求421を処理すると決定した場合、認証部162は、一時鍵発行要求421から鍵種別情報422を分離する。認証部162は、鍵種別情報422をマスター鍵選択部163に渡す。
なお、認証を行わない場合、認証部162はなくてもよい。
The authentication unit 162 receives the temporary key issue request 421 from the mobile terminal 201 (to the management server communication unit 221). The authentication unit 162 determines whether to process the temporary key issue request 421 based on the authentication information included in the temporary key issue request 421. For example, the authentication unit 162 authenticates the sender based on the authentication information. When it is determined not to process the temporary key issue request 421, the authentication unit 162 outputs an output determination signal 414 indicating that the key is not output to the output determination unit 171. When it is determined to process the temporary key issue request 421, the authentication unit 162 separates the key type information 422 from the temporary key issue request 421. The authentication unit 162 passes the key type information 422 to the master key selection unit 163.
If authentication is not performed, the authentication unit 162 may not be provided.

認証部162は、マスター鍵選択部163は、鍵種別情報422に基づいて、マスター鍵記憶部111が記憶した複数のマスター鍵411のなかから、一時鍵の生成に使うマスター鍵411を選択する。マスター鍵記憶部111が記憶した複数のマスター鍵411のなかに、鍵種別情報422に対応するマスター鍵411が存在しない場合、マスター鍵選択部163は、鍵を出力しない旨を表わす出力判定信号414を出力判定部171に対して出力する。
なお、マスター鍵記憶部111が記憶したマスター鍵411が一種類である場合、マスター鍵選択部163はなくてもよい。
Based on the key type information 422, the authentication unit 162 selects the master key 411 used for temporary key generation from the plurality of master keys 411 stored in the master key storage unit 111 based on the key type information 422. When the master key 411 corresponding to the key type information 422 does not exist among the plurality of master keys 411 stored in the master key storage unit 111, the master key selection unit 163 outputs an output determination signal 414 indicating that no key is output. Is output to the output determination unit 171.
Note that when the master key 411 stored in the master key storage unit 111 is one type, the master key selection unit 163 may not be provided.

一時鍵生成部164は、マスター鍵選択部163が選択したマスター鍵411と、世代番号カウンタ131が記憶した世代番号412とを取得する。一時鍵生成部164は、マスター鍵411と世代番号412とに基づいて、一時鍵413を生成する。例えば、一時鍵生成部164は、一時鍵413として、所定の暗号化方式によって世代番号412をマスター鍵411で暗号化したデータを生成する。あるいは、一時鍵生成部164は、一時鍵413として、世代番号412とマスター鍵411とを入力とした鍵付きハッシュ関数でハッシュ値を生成する。なお、一時鍵生成部164が一時鍵413の生成に使う鍵生成方式は、世代番号412とマスター鍵411とから一時鍵413が一意に生成されること、及び、一時鍵413と世代番号412とからマスター鍵411が推定されないことが必要である。   The temporary key generation unit 164 acquires the master key 411 selected by the master key selection unit 163 and the generation number 412 stored by the generation number counter 131. The temporary key generation unit 164 generates a temporary key 413 based on the master key 411 and the generation number 412. For example, the temporary key generation unit 164 generates, as the temporary key 413, data obtained by encrypting the generation number 412 with the master key 411 by a predetermined encryption method. Alternatively, the temporary key generation unit 164 generates a hash value as a temporary key 413 using a keyed hash function with the generation number 412 and the master key 411 as inputs. Note that the key generation method used by the temporary key generation unit 164 to generate the temporary key 413 is that the temporary key 413 is uniquely generated from the generation number 412 and the master key 411, and that the temporary key 413 and the generation number 412 Therefore, it is necessary that the master key 411 is not estimated.

世代番号カウンタ131は、世代番号412を保有している。一定期間(例えば1日)が過ぎると、世代番号カウンタ131は、世代番号412を1つ増加する。   The generation number counter 131 has a generation number 412. After a certain period (for example, one day), the generation number counter 131 increments the generation number 412 by one.

出力判定部171(一時鍵通知部・一時鍵生成用データ通知部)は、一時鍵生成部164が生成した一時鍵413と世代番号412とを出力するか否かを判定する。
鍵を出力しない旨を表わす出力判定信号414を認証部162やマスター鍵選択部163から受信した場合、出力判定部171は、一時鍵413と世代番号412とを出力しない。なお、出力判定部171は、その代わりとして、所定のエラーコードを携帯端末201(対管理サーバ通信部221)に対して出力する構成であってもよい。
鍵を出力しない旨を表わす出力判定信号414を認証部162やマスター鍵選択部163から受信しない場合、出力判定部171は、一時鍵413と世代番号412とを携帯端末201(対管理サーバ通信部221)に対して出力する。
The output determination unit 171 (temporary key notification unit / temporary key generation data notification unit) determines whether to output the temporary key 413 and the generation number 412 generated by the temporary key generation unit 164.
When the output determination signal 414 indicating that the key is not output is received from the authentication unit 162 or the master key selection unit 163, the output determination unit 171 does not output the temporary key 413 and the generation number 412. Alternatively, the output determination unit 171 may be configured to output a predetermined error code to the mobile terminal 201 (to the management server communication unit 221) instead.
When the output determination signal 414 indicating that the key is not output is not received from the authentication unit 162 or the master key selection unit 163, the output determination unit 171 sends the temporary key 413 and the generation number 412 to the portable terminal 201 (to the management server communication unit). 221).

図15は、この実施の形態の携帯端末201における対管理サーバ通信部221の詳細な機能ブロックの一例を示す図である。   FIG. 15 is a diagram illustrating an example of detailed functional blocks of the management server communication unit 221 in the portable terminal 201 according to this embodiment.

対管理サーバ通信部221は、例えば、一時鍵発行要求生成部222と、一時鍵情報取得部223とを有する。   The management server communication unit 221 includes, for example, a temporary key issue request generation unit 222 and a temporary key information acquisition unit 223.

一時鍵発行要求生成部222は、例えば、入力装置912から、鍵種別情報422と、認証情報425とを受け取る。入力装置912は、例えば、キーボードのような文字列入力装置である。あるいは、入力装置912は、指紋読取装置のようなバイオメトリック情報を取得する装置である。一時鍵発行要求生成部222は、記憶装置914の所定の記憶領域に鍵種別情報422を記憶しておく。
一時鍵発行要求生成部222は、取得した認証情報425と鍵種別情報422とに基づいて、一時鍵発行要求421を生成する。一時鍵発行要求生成部222が生成する一時鍵発行要求421は、認証情報425と、鍵種別情報422とを含む。
一時鍵発行要求生成部222は、一時鍵発行要求421を管理サーバ101(鍵情報管理部161)に対して送付する。
なお、管理サーバ101が利用者認証を行わない場合、一時鍵発行要求生成部222は、認証情報425を取得しない構成であってもよい。その場合、一時鍵発行要求421は、認証情報425を含まない構成であってもよい。
また、使用する鍵が一種類である場合、一時鍵発行要求生成部222は、鍵種別情報422を入力装置912から取得しない構成であってもよい。その場合、一時鍵発行要求生成部222は、鍵種別情報422を内部で生成する構成であってもよい。あるいは、一時鍵発行要求421は、鍵種別情報422を含まない構成であってもよい。
For example, the temporary key issue request generation unit 222 receives key type information 422 and authentication information 425 from the input device 912. The input device 912 is a character string input device such as a keyboard, for example. Alternatively, the input device 912 is a device that acquires biometric information such as a fingerprint reader. The temporary key issue request generator 222 stores the key type information 422 in a predetermined storage area of the storage device 914.
The temporary key issue request generator 222 generates a temporary key issue request 421 based on the acquired authentication information 425 and key type information 422. The temporary key issue request 421 generated by the temporary key issue request generator 222 includes authentication information 425 and key type information 422.
The temporary key issue request generation unit 222 sends a temporary key issue request 421 to the management server 101 (key information management unit 161).
When the management server 101 does not perform user authentication, the temporary key issuance request generation unit 222 may be configured not to acquire the authentication information 425. In that case, the temporary key issue request 421 may be configured not to include the authentication information 425.
Further, when there is only one type of key to be used, the temporary key issue request generation unit 222 may be configured not to acquire the key type information 422 from the input device 912. In this case, the temporary key issue request generation unit 222 may be configured to generate the key type information 422 internally. Alternatively, the temporary key issue request 421 may be configured not to include the key type information 422.

一時鍵発行要求421に対する応答を管理サーバ101から受信した場合、一時鍵発行要求生成部222は、鍵種別情報422を対検針メータ通信部291に対して送付する。   When a response to the temporary key issue request 421 is received from the management server 101, the temporary key issue request generation unit 222 sends the key type information 422 to the counter meter communication unit 291.

一時鍵情報取得部223(一時鍵取得部・一時鍵生成用データ取得部)は、管理サーバ101から一時鍵413と世代番号412とを受信する。一時鍵情報取得部223は、一時鍵413と世代番号412とを対検針メータ通信部291に対して送付する。   The temporary key information acquisition unit 223 (temporary key acquisition unit / temporary key generation data acquisition unit) receives the temporary key 413 and the generation number 412 from the management server 101. The temporary key information acquisition unit 223 sends the temporary key 413 and the generation number 412 to the counter meter communication unit 291.

図16は、この実施の形態の携帯端末201における対検針メータ通信部291の詳細な機能ブロックの一例を示す図である。   FIG. 16 is a diagram illustrating an example of detailed functional blocks of the meter reading meter communication unit 291 in the mobile terminal 201 of this embodiment.

対検針メータ通信部291は、例えば、暗号化部292と、多重化部293と、分離部294と、復号部295と、受信判定部296とを有する。   The meter reading meter communication unit 291 includes, for example, an encryption unit 292, a multiplexing unit 293, a separation unit 294, a decryption unit 295, and a reception determination unit 296.

メッセージ生成部281は、携帯端末201に対して送信するメッセージ423を生成する。メッセージ生成部281は、メッセージ423を暗号化部292に対して送付する。   The message generation unit 281 generates a message 423 to be transmitted to the mobile terminal 201. The message generation unit 281 sends the message 423 to the encryption unit 292.

暗号化部292は、対管理サーバ通信部221から一時鍵413を受信する。暗号化部292は、メッセージ423を一時鍵413で暗号化する。暗号化部292は、メッセージ認証子を生成する。暗号化部292は、暗号文426を生成する。暗号文426は、メッセージ423を暗号化した暗号文本体と、メッセージ認証子とを含む。
例えば、暗号化部292は、AES(Advanced Encryption Standard)やTDES(Triple Data Encryption Standard)などの共通鍵暗号を所定の利用モードで実行して、メッセージ423を暗号化する。
また、例えば、暗号化部292は、AESやTDESなどの共通鍵暗号を所定の利用モードで実行して、メッセージ認証子を生成する。あるいは、暗号化部292は、鍵付き暗号ハッシュなどを実行して、メッセージ認証子を生成する。
The encryption unit 292 receives the temporary key 413 from the management server communication unit 221. The encryption unit 292 encrypts the message 423 with the temporary key 413. The encryption unit 292 generates a message authenticator. The encryption unit 292 generates the ciphertext 426. The ciphertext 426 includes a ciphertext body obtained by encrypting the message 423 and a message authenticator.
For example, the encryption unit 292 executes common key encryption such as AES (Advanced Encryption Standard) and TDES (Triple Data Encryption Standard) in a predetermined usage mode, and encrypts the message 423.
For example, the encryption unit 292 executes a common key encryption such as AES or TDES in a predetermined usage mode to generate a message authenticator. Alternatively, the encryption unit 292 executes a keyed cryptographic hash or the like to generate a message authenticator.

多重化部293は、対管理サーバ通信部221から鍵種別情報422と鍵種別情報422とを受信する。多重化部293は、鍵種別情報422と、世代番号412と、暗号文426とを多重化して、暗号化メッセージ424を生成する。多重化部293(一時鍵生成用データ通知部、暗号通信部)は、暗号化メッセージ424を携帯端末201(対検針メータ通信部291)に対して送付する。   The multiplexing unit 293 receives the key type information 422 and the key type information 422 from the management server communication unit 221. The multiplexing unit 293 generates the encrypted message 424 by multiplexing the key type information 422, the generation number 412 and the ciphertext 426. The multiplexing unit 293 (temporary key generation data notification unit, encryption communication unit) sends the encrypted message 424 to the portable terminal 201 (counter meter communication unit 291).

分離部294は、携帯端末201(対検針メータ通信部291)から暗号化応答434を受信する。分離部294は、暗号化応答434を暗号文436と世代番号432とに分離する。   The separation unit 294 receives the encrypted response 434 from the portable terminal 201 (the meter reading meter communication unit 291). The separation unit 294 separates the encrypted response 434 into the ciphertext 436 and the generation number 432.

復号部295は、対管理サーバ通信部221から一時鍵413を受信する。復号部295は、一時鍵413を用いて、暗号文436を復号して、応答433を生成する。復号部295は、検針メータ301における対携帯端末通信部391が使用した暗号化方式に対応する復号方式を使って、暗号文436を復号する。
また、復号部295は、暗号文436のメッセージ検証をして、検証結果427を生成する。復号部295は、検針メータ301における対携帯端末通信部391が使用したメッセージ認証子生成方式に対応する検証方式を使って、暗号文436を検証する。
復号部295は、応答433と検証結果427とを出力する。
The decryption unit 295 receives the temporary key 413 from the management server communication unit 221. The decryption unit 295 decrypts the ciphertext 436 using the temporary key 413 and generates a response 433. The decryption unit 295 decrypts the ciphertext 436 using a decryption method corresponding to the encryption method used by the portable terminal communication unit 391 in the meter-reading meter 301.
In addition, the decryption unit 295 performs message verification of the ciphertext 436 and generates a verification result 427. The decryption unit 295 verifies the ciphertext 436 using a verification method corresponding to the message authenticator generation method used by the portable terminal communication unit 391 in the meter-reading meter 301.
The decryption unit 295 outputs the response 433 and the verification result 427.

受信判定部296は、対管理サーバ通信部221から世代番号412を受信する。受信判定部296は、世代番号412と、世代番号432と、検証結果427とに基づいて、出力判定をする。判定基準は、以下のとおりである。
・復号部295がメッセージ検証に失敗した場合、応答433を出力しない。
・世代番号432が世代番号412より古い場合、応答433を出力しない。
・復号部295がメッセージ検証に成功し、かつ、世代番号432が世代番号412と同じか世代番号412より新しい場合、応答433を出力する。
応答433を出力するという判定結果の場合、受信判定部296は、応答433をメッセージ生成部281に対して出力する。
The reception determination unit 296 receives the generation number 412 from the management server communication unit 221. The reception determination unit 296 performs output determination based on the generation number 412, the generation number 432, and the verification result 427. Judgment criteria are as follows.
When the decryption unit 295 fails in message verification, the response 433 is not output.
If the generation number 432 is older than the generation number 412, the response 433 is not output.
If the decryption unit 295 succeeds in the message verification and the generation number 432 is the same as or newer than the generation number 412, a response 433 is output.
In the case of the determination result that the response 433 is output, the reception determination unit 296 outputs the response 433 to the message generation unit 281.

図17は、この実施の形態の検針メータ301における対携帯端末通信部391の詳細な機能ブロックの一例を示す図である。   FIG. 17 is a diagram illustrating an example of detailed functional blocks of the portable terminal communication unit 391 in the meter-reading meter 301 according to this embodiment.

対携帯端末通信部391は、例えば、マスター鍵選択部363と、一時鍵生成部364と、暗号化部392と、多重化部393と、分離部394と、復号部395と、受信判定部396とを有する。   The mobile terminal communication unit 391 includes, for example, a master key selection unit 363, a temporary key generation unit 364, an encryption unit 392, a multiplexing unit 393, a separation unit 394, a decryption unit 395, and a reception determination unit 396. And have.

分離部394は、携帯端末201(対検針メータ通信部291)から暗号化メッセージ424を受信する。分離部394は、暗号化メッセージ424を、鍵種別情報422と、暗号文426と、世代番号412とに分離する。   The separation unit 394 receives the encrypted message 424 from the mobile terminal 201 (the meter reading meter communication unit 291). The separation unit 394 separates the encrypted message 424 into key type information 422, ciphertext 426, and generation number 412.

マスター鍵選択部363は、鍵種別情報422に基づいて、マスター鍵記憶部311が記憶した複数のマスター鍵431のなかから、一時鍵435の生成に使用するマスター鍵431を選択する。   Based on the key type information 422, the master key selection unit 363 selects the master key 431 used for generating the temporary key 435 from the plurality of master keys 431 stored in the master key storage unit 311.

一時鍵生成部364は、マスター鍵選択部363が選択したマスター鍵431と、世代番号412とから、一時鍵435を生成する。一時鍵生成部364は、管理サーバ101における鍵情報管理部161の一時鍵生成部164と同じ一時鍵生成方式により、一時鍵435を生成する。   The temporary key generation unit 364 generates a temporary key 435 from the master key 431 selected by the master key selection unit 363 and the generation number 412. The temporary key generation unit 364 generates the temporary key 435 by the same temporary key generation method as the temporary key generation unit 164 of the key information management unit 161 in the management server 101.

復号部395は、一時鍵435を用いて、暗号文426を復号して、メッセージ423を生成する。復号部395は、携帯端末201における対検針メータ通信部291の暗号化部292が使用した暗号化方式に対応する復号方式を使って、暗号文426を復号する。
また、復号部395は、暗号文426のメッセージ検証をして、検証結果437を生成する。復号部395は、携帯端末201における対検針メータ通信部291の暗号化部292が使用したメッセージ認証子生成方式に対応する検証方式を使って、暗号文426を検証する。
復号部395は、暗号文426と検証結果437とを出力する。
The decryption unit 395 decrypts the ciphertext 426 using the temporary key 435 and generates a message 423. The decryption unit 395 decrypts the ciphertext 426 using a decryption method corresponding to the encryption method used by the encryption unit 292 of the meter reading meter communication unit 291 in the portable terminal 201.
In addition, the decryption unit 395 performs message verification of the ciphertext 426 and generates a verification result 437. The decryption unit 395 verifies the ciphertext 426 using a verification method corresponding to the message authenticator generation method used by the encryption unit 292 of the meter reading meter communication unit 291 in the portable terminal 201.
The decryption unit 395 outputs the ciphertext 426 and the verification result 437.

受信判定部396は、世代番号カウンタ331から世代番号432を取得する。受信判定部396は、世代番号432と世代番号412と検証結果437とに基づいて、出力判定をする。判定基準は、以下のとおりである。
・復号部395がメッセージ検証に失敗した場合、メッセージ423を出力しない。
・世代番号412が世代番号432より古い場合、メッセージ423を出力しない。
・復号部395がメッセージ検証に成功し、かつ、世代番号412が世代番号432と同じか世代番号432より新しい場合、メッセージ423を出力する。
メッセージ423を出力すると判定した場合、受信判定部396は、メッセージ423をメッセージ処理部381に対して出力する。
また、メッセージ検証に成功し、かつ、世代番号412が世代番号432より新しい場合、受信判定部396は、世代番号カウンタ331が記憶した値を世代番号412に書き換える。
The reception determination unit 396 acquires the generation number 432 from the generation number counter 331. The reception determination unit 396 performs output determination based on the generation number 432, the generation number 412, and the verification result 437. Judgment criteria are as follows.
If the decryption unit 395 fails in message verification, the message 423 is not output.
If the generation number 412 is older than the generation number 432, the message 423 is not output.
When the decryption unit 395 succeeds in the message verification and the generation number 412 is the same as or newer than the generation number 432, the message 423 is output.
If it is determined that the message 423 is to be output, the reception determination unit 396 outputs the message 423 to the message processing unit 381.
If the message verification is successful and the generation number 412 is newer than the generation number 432, the reception determination unit 396 rewrites the value stored in the generation number counter 331 to the generation number 412.

世代番号カウンタ331は、保持する世代番号432が変更されてから一定期間(例えば1日)が経過すると、保有している世代番号432を1つ増加する。   The generation number counter 331 increases the generation number 432 held by one when a certain period (for example, one day) has elapsed since the generation number 432 to be held is changed.

暗号化部392は、メッセージ処理部381から応答433を受信する。暗号化部392は、一時鍵435を用いて、応答433を暗号化する。また、暗号化部392は、メッセージ認証子を生成する。暗号化部392は、暗号文436を生成する。暗号化部392は、例えば、携帯端末201における対検針メータ通信部291の暗号化部292と同じ暗号化方式及びメッセージ認証子生成方式を使って、暗号文436を生成する。   The encryption unit 392 receives the response 433 from the message processing unit 381. The encryption unit 392 encrypts the response 433 using the temporary key 435. Further, the encryption unit 392 generates a message authenticator. The encryption unit 392 generates the ciphertext 436. For example, the encryption unit 392 generates the ciphertext 436 using the same encryption method and message authenticator generation method as the encryption unit 292 of the meter reading meter communication unit 291 in the portable terminal 201.

多重化部393は、鍵種別情報422と、世代番号432と、暗号文436とを多重化して、暗号化応答434を生成する。多重化部393は、暗号化応答434を携帯端末201(対検針メータ通信部291)に対して送付する。   The multiplexing unit 393 multiplexes the key type information 422, the generation number 432, and the ciphertext 436 to generate an encryption response 434. The multiplexing unit 393 sends the encryption response 434 to the portable terminal 201 (counter meter communication unit 291).

次に、動作について説明する。   Next, the operation will be described.

図18は、この実施の形態における一時鍵通知処理S603の流れの一例を示すフロー図である。   FIG. 18 is a flowchart showing an example of the flow of the temporary key notification processing S603 in this embodiment.

一時鍵通知処理S603は、例えば、一時鍵発行要求生成工程S641と、認証工程S642と、マスター鍵選択工程S643と、一時鍵生成工程S644と、出力工程S645と、一時鍵情報取得工程S646とを有する。   The temporary key notification processing S603 includes, for example, a temporary key issue request generation step S641, an authentication step S642, a master key selection step S643, a temporary key generation step S644, an output step S645, and a temporary key information acquisition step S646. Have.

一時鍵発行要求生成工程S641において、携帯端末201の一時鍵発行要求生成部222は、一時鍵発行要求421を生成する。一時鍵発行要求生成部222は、一時鍵発行要求421を管理サーバ101(鍵情報管理部161)に対して送信する。
認証工程S642において、管理サーバ101の認証部162は、一時鍵発行要求421を受信する。認証部162は、一時鍵発行要求421を検証する。検証に失敗した場合、認証部162は、一時鍵通知処理S603を終了する。検証に成功した場合、認証部162は、一時鍵発行要求421から鍵種別情報422を分離して、マスター鍵選択工程S643へ処理を進める。
マスター鍵選択工程S643において、管理サーバ101のマスター鍵選択部163は、鍵種別情報422に基づいて、マスター鍵411を選択する。鍵種別情報422が不正である場合、マスター鍵選択部163は、一時鍵通知処理S603を終了する。鍵種別情報422が正しい場合、マスター鍵選択部163は、一時鍵生成工程S644へ処理を進める。
一時鍵生成工程S644において、管理サーバ101の一時鍵生成部164は、マスター鍵411と世代番号412とに基づいて、一時鍵413を生成する。
出力工程S645において、管理サーバ101の出力判定部171は、一時鍵413と世代番号412とを携帯端末201(対管理サーバ通信部221)に対して送信する。
一時鍵情報取得工程S646において、携帯端末201の一時鍵情報取得部223は、一時鍵413と世代番号412とを受信する。一時鍵情報取得部223は、一時鍵413と世代番号412とを対検針メータ通信部291に対して出力する。一時鍵発行要求生成部222は、鍵種別情報422を対検針メータ通信部291に対して出力する。
なお、この時点で、管理サーバ101と携帯端末201との間の通信は、切断してもよい。
In the temporary key issue request generation step S <b> 641, the temporary key issue request generation unit 222 of the mobile terminal 201 generates a temporary key issue request 421. The temporary key issue request generation unit 222 transmits a temporary key issue request 421 to the management server 101 (key information management unit 161).
In the authentication step S642, the authentication unit 162 of the management server 101 receives the temporary key issue request 421. The authentication unit 162 verifies the temporary key issue request 421. If the verification fails, the authentication unit 162 ends the temporary key notification process S603. If the verification is successful, the authentication unit 162 separates the key type information 422 from the temporary key issuance request 421 and proceeds to the master key selection step S643.
In the master key selection step S643, the master key selection unit 163 of the management server 101 selects the master key 411 based on the key type information 422. If the key type information 422 is invalid, the master key selection unit 163 ends the temporary key notification process S603. If the key type information 422 is correct, the master key selection unit 163 advances the process to the temporary key generation step S644.
In the temporary key generation step S 644, the temporary key generation unit 164 of the management server 101 generates a temporary key 413 based on the master key 411 and the generation number 412.
In the output step S645, the output determination unit 171 of the management server 101 transmits the temporary key 413 and the generation number 412 to the mobile terminal 201 (to the management server communication unit 221).
In the temporary key information acquisition step S646, the temporary key information acquisition unit 223 of the mobile terminal 201 receives the temporary key 413 and the generation number 412. The temporary key information acquisition unit 223 outputs the temporary key 413 and the generation number 412 to the counter meter reading unit 291. The temporary key issue request generation unit 222 outputs the key type information 422 to the meter reading meter communication unit 291.
At this time, communication between the management server 101 and the mobile terminal 201 may be disconnected.

図19は、この実施の形態における暗号通信処理S604の流れの一例を示すフロー図である。   FIG. 19 is a flowchart showing an example of the flow of the cryptographic communication process S604 in this embodiment.

暗号通信処理S604は、例えば、暗号化工程S651と、多重化工程S652と、分離工程S653と、マスター鍵選択工程S654と、一時鍵生成工程S655と、復号工程S656と、受信判定工程S657と、メッセージ処理工程S660と、マスター鍵選択工程S671と、一時鍵生成工程S672と、暗号化工程S673と、多重化工程S674と、分離工程S675と、復号工程S676と、受信判定工程S677とを有する。   The encryption communication process S604 includes, for example, an encryption step S651, a multiplexing step S652, a separation step S653, a master key selection step S654, a temporary key generation step S655, a decryption step S656, and a reception determination step S657. A message processing step S660, a master key selection step S671, a temporary key generation step S672, an encryption step S673, a multiplexing step S674, a separation step S675, a decryption step S676, and a reception determination step S677.

暗号化工程S651において、携帯端末201の暗号化部292は、一時鍵413を使って、メッセージ423を暗号化し、暗号文426を生成する。
多重化工程S652において、携帯端末201の多重化部293は、暗号文426と、世代番号412と、鍵種別情報422とを多重化して、暗号化メッセージ424を生成する。多重化部293は、暗号化メッセージ424を検針メータ301(対携帯端末通信部391)に対して送信する。
分離工程S653において、検針メータ301の分離部394は、暗号化メッセージ424を受信する。分離部394は、暗号化メッセージ424を、暗号文426と世代番号412と鍵種別情報422とに分離する。
マスター鍵選択工程S654において、検針メータ301のマスター鍵選択部363は、鍵種別情報422に基づいて、マスター鍵431を選択する。マスター鍵選択部363は、鍵種別情報422を記憶する。
一時鍵生成工程S655において、検針メータ301の一時鍵生成部364は、マスター鍵431と世代番号412とに基づいて、一時鍵435を生成する。
復号工程S656において、検針メータ301の復号部395は、一時鍵435を使って、暗号文426を復号し、メッセージ423と検証結果437とを生成する。
受信判定工程S657において、検針メータ301の受信判定部396は、世代番号412と世代番号432と検証結果437とに基づいて、メッセージ423を出力するか否かを判定する。メッセージ423を出力しないと判定した場合、受信判定部396は、暗号通信処理S604を終了する。メッセージ423を出力すると判定した場合、受信判定部396は、メッセージ423を出力する。世代番号カウンタ331は、世代番号412を記憶する。
メッセージ処理工程S660において、検針メータ301のメッセージ処理部381は、メッセージ423を処理し、応答433を生成する。
マスター鍵選択工程S671において、検針メータ301のマスター鍵選択部363は、記憶していた鍵種別情報422に基づいて、マスター鍵431を選択する。マスター鍵選択部363は、選択したマスター鍵431と鍵種別情報422とを出力する。
一時鍵生成工程S672において、検針メータ301の一時鍵生成部364は、マスター鍵431と世代番号432とに基づいて、一時鍵435を生成する。一時鍵生成工程S672で一時鍵生成部364が生成する一時鍵435は、一時鍵生成工程S655で一時鍵生成部364が生成した一時鍵435と同一である。
暗号化工程S673において、検針メータ301の暗号化部392は、一時鍵生成工程S672で一時鍵生成部364が生成した一時鍵435を使って、応答433を暗号化し、暗号文436を生成する。なお、暗号化部392は、一時鍵生成工程S655で一時鍵生成部364が生成した一時鍵435を使って応答433を暗号化する構成であってもよい。その場合、マスター鍵選択工程S671及び一時鍵生成工程S672は、なくてもよい。
多重化工程S674において、検針メータ301の多重化部393は、暗号文436と世代番号432と鍵種別情報422とを多重化して、暗号化応答434を生成する。多重化部393は、暗号化応答434を携帯端末201(対検針メータ通信部291)に対して送信する。
分離工程S675において、携帯端末201の分離部294は、暗号化応答434を受信する。分離部294は、暗号化応答434を、暗号文436と世代番号432とに分離する。
復号工程S676において、携帯端末201の復号部295は、暗号文436を復号して、応答433と検証結果427とを生成する。
受信判定工程S677において、携帯端末201の受信判定部296は、世代番号432と世代番号412と検証結果427とに基づいて、応答433を出力するか否かを判定する。応答433を出力すると判定した場合、受信判定部296は、応答433をメッセージ生成部281に対して出力する。
In the encryption step S651, the encryption unit 292 of the mobile terminal 201 encrypts the message 423 using the temporary key 413 and generates a ciphertext 426.
In the multiplexing step S652, the multiplexing unit 293 of the mobile terminal 201 multiplexes the ciphertext 426, the generation number 412 and the key type information 422 to generate an encrypted message 424. The multiplexing unit 293 transmits the encrypted message 424 to the meter-reading meter 301 (for the portable terminal communication unit 391).
In the separation step S653, the separation unit 394 of the meter-reading meter 301 receives the encrypted message 424. The separation unit 394 separates the encrypted message 424 into a ciphertext 426, a generation number 412 and key type information 422.
In the master key selection step S654, the master key selection unit 363 of the meter-reading meter 301 selects the master key 431 based on the key type information 422. The master key selection unit 363 stores key type information 422.
In the temporary key generation step S655, the temporary key generation unit 364 of the meter-reading meter 301 generates a temporary key 435 based on the master key 431 and the generation number 412.
In the decryption step S656, the decryption unit 395 of the meter-reading meter 301 decrypts the ciphertext 426 using the temporary key 435, and generates a message 423 and a verification result 437.
In the reception determination step S657, the reception determination unit 396 of the meter-reading meter 301 determines whether to output the message 423 based on the generation number 412, the generation number 432, and the verification result 437. When it is determined that the message 423 is not output, the reception determination unit 396 ends the encryption communication process S604. When it is determined that the message 423 is output, the reception determination unit 396 outputs the message 423. The generation number counter 331 stores the generation number 412.
In the message processing step S660, the message processing unit 381 of the meter-reading meter 301 processes the message 423 and generates a response 433.
In the master key selection step S671, the master key selection unit 363 of the meter-reading meter 301 selects the master key 431 based on the stored key type information 422. The master key selection unit 363 outputs the selected master key 431 and key type information 422.
In the temporary key generation step S672, the temporary key generation unit 364 of the meter-reading meter 301 generates a temporary key 435 based on the master key 431 and the generation number 432. The temporary key 435 generated by the temporary key generation unit 364 in the temporary key generation step S672 is the same as the temporary key 435 generated by the temporary key generation unit 364 in the temporary key generation step S655.
In the encryption step S673, the encryption unit 392 of the meter-reading meter 301 encrypts the response 433 using the temporary key 435 generated by the temporary key generation unit 364 in the temporary key generation step S672, and generates a ciphertext 436. The encryption unit 392 may be configured to encrypt the response 433 using the temporary key 435 generated by the temporary key generation unit 364 in the temporary key generation step S655. In that case, the master key selection step S671 and the temporary key generation step S672 may be omitted.
In the multiplexing step S674, the multiplexing unit 393 of the meter-reading meter 301 multiplexes the ciphertext 436, the generation number 432, and the key type information 422, and generates an encrypted response 434. The multiplexing unit 393 transmits the encryption response 434 to the mobile terminal 201 (the meter reading meter communication unit 291).
In the separation step S675, the separation unit 294 of the mobile terminal 201 receives the encryption response 434. The separation unit 294 separates the encrypted response 434 into the ciphertext 436 and the generation number 432.
In the decryption step S676, the decryption unit 295 of the mobile terminal 201 decrypts the ciphertext 436 and generates a response 433 and a verification result 427.
In the reception determination step S677, the reception determination unit 296 of the mobile terminal 201 determines whether to output the response 433 based on the generation number 432, the generation number 412, and the verification result 427. When it is determined that the response 433 is output, the reception determination unit 296 outputs the response 433 to the message generation unit 281.

この実施の形態における通信装置(携帯端末201、検針メータ301)は、共通鍵暗号通信において、一時的に生成した暗号鍵を用いて通信する。
通信装置は、予め装置間で共有しているマスター鍵と、一定期間で単調増加するカウンタとを保持し、前記カウンタからカウンタ値を取得し、前記マスター鍵と前記カウンタ値から一時鍵を生成し、前記一時鍵を用いて所定のメッセージに対しメッセージ認証子を生成し、前記カウンタ値と前記メッセージと前記メッセージ認証子とを送信する。
The communication device (portable terminal 201, meter-reading meter 301) in this embodiment communicates using the encryption key temporarily generated in the common key encryption communication.
The communication device holds a master key shared between the devices in advance and a counter that monotonously increases over a certain period, obtains a counter value from the counter, and generates a temporary key from the master key and the counter value The message authenticator is generated for a predetermined message using the temporary key, and the counter value, the message, and the message authenticator are transmitted.

通信装置(携帯端末201)は、前記一時鍵と前記カウンタ値を、公衆網経由で所定のサーバ(管理サーバ101)から取得し、前記一時鍵で所定のメッセージに対しメッセージ認証子を生成し、前記カウンタ値と前記メッセージと前記メッセージ認証子とを送信する。   The communication device (mobile terminal 201) acquires the temporary key and the counter value from a predetermined server (management server 101) via a public network, generates a message authenticator for a predetermined message with the temporary key, The counter value, the message, and the message authenticator are transmitted.

通信装置(携帯端末201、検針メータ301)は、メッセージを前記一時鍵で暗号化する。   The communication device (portable terminal 201, meter-reading meter 301) encrypts the message with the temporary key.

通信装置(携帯端末201、検針メータ301)は、他の通信装置によって送信されるメッセージを受信する。
通信装置は、予め装置間で共有しているマスター鍵と、一定期間で単調増加するカウンタを保持し、前記マスター鍵と受信したカウンタ値から一時鍵を生成し、受信したメッセージの検証を行い、メッセージ検証に成功し、かつ前記カウンタから取得したカウンタ値より、受信したカウンタ値が同じか新しい場合に、当該メッセージを受理する。
The communication device (portable terminal 201, meter-reading meter 301) receives a message transmitted by another communication device.
The communication device holds a master key shared between devices in advance and a counter that monotonously increases in a certain period, generates a temporary key from the master key and the received counter value, performs verification of the received message, If the message verification is successful and the received counter value is the same or newer than the counter value acquired from the counter, the message is accepted.

通信装置(検針メータ301)は、前記カウンタから取得したカウンタ値より、受信したカウンタ値が新しい場合に、前期カウンタの値を前記受信したカウンタ値に更新する。   When the received counter value is newer than the counter value acquired from the counter, the communication device (meter reading meter 301) updates the value of the previous period counter to the received counter value.

この実施の形態における自動検針システム801(暗号通信システム)は、マスター鍵と世代番号から一時鍵を生成し、暗号化に使用する。世代番号は一定期間ごとに更新されるため、一時鍵も更新可能となる。よって、携帯端末から鍵が漏洩しても、一定期間後に無効化できる。   The automatic meter reading system 801 (encryption communication system) in this embodiment generates a temporary key from a master key and a generation number and uses it for encryption. Since the generation number is updated at regular intervals, the temporary key can also be updated. Therefore, even if the key leaks from the mobile terminal, it can be invalidated after a certain period.

また、受信側となる携帯端末通信部は、送られてきた世代番号と自身の保持する世代番号とを比較する。よって、仮に一時鍵が漏洩しても、一時鍵に対応する世代番号が無効になった時点で当該一時鍵を使用することができない。   The mobile terminal communication unit on the receiving side compares the sent generation number with the generation number held by itself. Therefore, even if the temporary key is leaked, the temporary key cannot be used when the generation number corresponding to the temporary key becomes invalid.

さらに、検針メータ内の携帯端末通信部は、メッセージ検証に成功し、自身の保持する世代番号が送られてきた世代番号より古い場合は、自身の世代番号を書き換えるため、世代番号の同期を取ることができる。メッセージ検証を行なうため、仮に攻撃者が任意の世代番号を送っても、その不正を検知できる。   Further, the portable terminal communication unit in the meter-reading meter succeeds in the message verification, and if the generation number held by the portable terminal is older than the sent generation number, it synchronizes the generation number to rewrite its own generation number. be able to. Since message verification is performed, even if an attacker sends an arbitrary generation number, fraud can be detected.

実施の形態4.
実施の形態4について、図20〜図24を用いて説明する。
なお、実施の形態1〜実施の形態3と共通する部分については、同一の符号を付し、説明を省略する。
Embodiment 4 FIG.
The fourth embodiment will be described with reference to FIGS.
In addition, about the part which is common in Embodiment 1- Embodiment 3, the same code | symbol is attached | subjected and description is abbreviate | omitted.

図20は、この実施の形態における暗号通信システム800の全体構成の一例を示すシステム構成図である。   FIG. 20 is a system configuration diagram showing an example of the overall configuration of the cryptographic communication system 800 in this embodiment.

暗号通信システム800は、複数の暗号通信装置500を有する。複数の暗号通信装置500は、互いに暗号通信をする。
暗号通信装置500のハードウェア構成は、例えば、実施の形態1で説明した管理装置100や暗号通信装置200や暗号通信装置300と同様である。
The cryptographic communication system 800 includes a plurality of cryptographic communication devices 500. The plurality of cryptographic communication devices 500 perform cryptographic communication with each other.
The hardware configuration of the cryptographic communication device 500 is the same as, for example, the management device 100, the cryptographic communication device 200, and the cryptographic communication device 300 described in the first embodiment.

図21は、この実施の形態における暗号通信装置500の全体構成の一例を示すシステム構成図である。   FIG. 21 is a system configuration diagram showing an example of the overall configuration of the cryptographic communication device 500 according to this embodiment.

暗号通信装置500は、例えば、管理部102と、通信部202と、検証部302とを有する。   The cryptographic communication device 500 includes, for example, a management unit 102, a communication unit 202, and a verification unit 302.

管理部102(管理装置)は、マスター鍵や一時鍵生成用データを管理し、一時鍵を生成する。
管理部102は、例えば、マスター鍵記憶部110と、一時鍵生成用データ記憶部130と、一時鍵生成用データ更新部140と、一時鍵生成部160とを有する。
マスター鍵記憶部110は、記憶装置914を用いて、マスター鍵を記憶している。複数の暗号通信装置500において、マスター鍵記憶部110が記憶しているマスター鍵は、すべて同一である。
一時鍵生成用データ記憶部130は、記憶装置914を用いて、一時鍵生成用データを記憶している。複数の暗号通信装置500において、一時鍵生成用データ記憶部130が記憶している一時鍵生成用データは、必ずしも同一でなくてよい。
一時鍵生成用データ更新部140は、処理装置911を用いて、所定の周期が経過するごとに、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを、繰り返し更新する。
一時鍵生成部160は、処理装置911を用いて、一時鍵を生成する。一時鍵生成部160は、マスター鍵記憶部110が記憶したマスター鍵と、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データとを使って、一時鍵を生成する。
The management unit 102 (management device) manages a master key and temporary key generation data, and generates a temporary key.
The management unit 102 includes, for example, a master key storage unit 110, a temporary key generation data storage unit 130, a temporary key generation data update unit 140, and a temporary key generation unit 160.
The master key storage unit 110 uses the storage device 914 to store a master key. In the plurality of cryptographic communication devices 500, the master keys stored in the master key storage unit 110 are all the same.
The temporary key generation data storage unit 130 uses the storage device 914 to store temporary key generation data. In the plurality of cryptographic communication devices 500, the temporary key generation data stored in the temporary key generation data storage unit 130 is not necessarily the same.
Using the processing device 911, the temporary key generation data update unit 140 repeatedly updates the temporary key generation data stored in the temporary key generation data storage unit 130 every time a predetermined period elapses.
The temporary key generation unit 160 generates a temporary key using the processing device 911. The temporary key generation unit 160 generates a temporary key using the master key stored in the master key storage unit 110 and the temporary key generation data stored in the temporary key generation data storage unit 130.

通信部202(第一暗号通信装置)は、管理部102が一時鍵を生成するために使った一時鍵生成用データを他の暗号通信装置500に対して通知するとともに、管理部102が生成した一時鍵を使って、他の暗号通信装置500との間で暗号通信をする。
通信部202は、例えば、一時鍵生成用データ通知部250と、暗号通信部290とを有する。
一時鍵生成用データ通知部250は、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを他の暗号通信装置500に対して通知する。例えば、一時鍵生成用データ通知部250は、通信装置915を用いて、一時鍵生成用データを他の暗号通信装置500に対して送信する。
暗号通信部290は、一時鍵生成部160が生成した一時鍵を使って、他の暗号通信装置500との間で暗号通信をする。例えば、暗号通信部290は、処理装置911を用いて、一時鍵生成部160が生成した一時鍵を使って暗号化した暗号文を生成し、通信装置915を用いて、他の暗号通信装置500に対して送信する。あるいは、暗号通信部290は、通信装置915を用いて、他の暗号通信装置500が送信した暗号文を受信し、処理装置911を用いて、一時鍵生成部160が生成した一時鍵を使って、受信した暗号文を復号する。
The communication unit 202 (first cryptographic communication device) notifies the other cryptographic communication device 500 of temporary key generation data used by the management unit 102 to generate a temporary key, and the management unit 102 generates the temporary key generation data. Cryptographic communication is performed with another cryptographic communication device 500 using the temporary key.
The communication unit 202 includes, for example, a temporary key generation data notification unit 250 and an encryption communication unit 290.
The temporary key generation data notification unit 250 notifies the other encryption communication apparatus 500 of the temporary key generation data stored in the temporary key generation data storage unit 130. For example, the temporary key generation data notifying unit 250 transmits the temporary key generation data to the other encryption communication device 500 using the communication device 915.
The cryptographic communication unit 290 performs cryptographic communication with another cryptographic communication device 500 using the temporary key generated by the temporary key generation unit 160. For example, the cryptographic communication unit 290 uses the processing device 911 to generate a ciphertext that is encrypted using the temporary key generated by the temporary key generation unit 160, and uses the communication device 915 to generate another encrypted communication device 500. Send to. Alternatively, the cryptographic communication unit 290 receives the ciphertext transmitted by the other cryptographic communication device 500 using the communication device 915 and uses the temporary key generated by the temporary key generation unit 160 using the processing device 911. Decrypt the received ciphertext.

検証部302は、他の暗号通信装置500から通知された一時鍵生成用データを検証する。
検証部302は、例えば、一時鍵生成用データ取得部320と、一時鍵生成用データ検証部350とを有する。
一時鍵生成用データ取得部320は、他の暗号通信装置500から通知された一時鍵生成用データを取得する。例えば、一時鍵生成用データ取得部320は、通信装置915を用いて、他の暗号通信装置500が送信した一時鍵生成用データを受信する。
一時鍵生成用データ検証部350は、処理装置911を用いて、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であるか否かを判定する。一時鍵生成用データ検証部350は、一時鍵生成用データ記憶部130(検証用データ記憶部)が記憶した一時鍵生成用データ(検証用データ)を使って、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であるか否かを判定する。
The verification unit 302 verifies the temporary key generation data notified from the other cryptographic communication device 500.
The verification unit 302 includes, for example, a temporary key generation data acquisition unit 320 and a temporary key generation data verification unit 350.
The temporary key generation data acquisition unit 320 acquires temporary key generation data notified from the other encryption communication device 500. For example, the temporary key generation data acquisition unit 320 uses the communication device 915 to receive temporary key generation data transmitted by another encryption communication device 500.
The temporary key generation data verification unit 350 uses the processing device 911 to determine whether or not the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is valid. The temporary key generation data verification unit 350 uses the temporary key generation data (verification data) stored in the temporary key generation data storage unit 130 (verification data storage unit). It is determined whether the temporary key generation data acquired by is valid.

一時鍵生成用データ検証部350は、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データと、一時鍵生成用データ取得部320が取得した一時鍵生成用データとを比較して、どちらが新しいかを判定する。
一時鍵生成用データ取得部320が取得した一時鍵生成用データが、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データより古い場合、一時鍵生成用データ検証部350は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効でないと判定する。
一時鍵生成用データ取得部320が取得した一時鍵生成用データが、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データより新しい場合、一時鍵生成用データ検証部350は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると判定する。
また、が取得した一時鍵生成用データと、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データとが同じ新しさである場合も、一時鍵生成用データ検証部350は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると判定する。
The temporary key generation data verification unit 350 compares the temporary key generation data stored in the temporary key generation data storage unit 130 with the temporary key generation data acquired by the temporary key generation data acquisition unit 320. Determine which is newer.
When the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is older than the temporary key generation data stored in the temporary key generation data storage unit 130, the temporary key generation data verification unit 350 It is determined that the temporary key generation data acquired by the generation data acquisition unit 320 is not valid.
When the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is newer than the temporary key generation data stored in the temporary key generation data storage unit 130, the temporary key generation data verification unit 350 It is determined that the temporary key generation data acquired by the generation data acquisition unit 320 is valid.
In addition, even when the temporary key generation data acquired by and the temporary key generation data stored in the temporary key generation data storage unit 130 are the same new, the temporary key generation data verification unit 350 It is determined that the temporary key generation data acquired by the generation data acquisition unit 320 is valid.

例えば、一時鍵生成用データは、数値を表わすデータであり、一時鍵生成用データ更新部140(検証用データ更新部)は、所定の周期が経過するごとに、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データが表わす数値に所定の増分値を加えた和を算出する。一時鍵生成用データ更新部140は、算出した和を表わすデータで、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを更新する。一時鍵生成用データ記憶部130は、それまで記憶していた古い一時鍵生成用データに代えて、更新された新しい一時鍵生成用データを記憶する。複数の暗号通信装置500において、一時鍵生成用データが表わす数値が増加する速さがほぼ同じであれば、一時鍵生成用データ更新部140が一時鍵生成用データを更新する周期や一時鍵生成用データが表わす数値に加算する増分値は、必ずしも同じである必要はない。
一時鍵生成用データ検証部350は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが表わす数値と、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データが表わす数値とを比較し、数値が大きいほうが新しいと判定する。
For example, the temporary key generation data is data representing a numerical value, and the temporary key generation data update unit 140 (verification data update unit) performs the temporary key generation data storage unit 130 every time a predetermined period elapses. Is calculated by adding a predetermined incremental value to the numerical value represented by the temporary key generation data stored. The temporary key generation data update unit 140 updates the temporary key generation data stored in the temporary key generation data storage unit 130 with data representing the calculated sum. The temporary key generation data storage unit 130 stores updated new temporary key generation data in place of the old temporary key generation data stored so far. In the plurality of cryptographic communication devices 500, if the speeds at which the numerical values represented by the temporary key generation data increase are substantially the same, the cycle or temporary key generation cycle in which the temporary key generation data update unit 140 updates the temporary key generation data The increment value added to the numerical value represented by the business data is not necessarily the same.
Temporary key generation data verification unit 350 includes a numerical value represented by temporary key generation data acquired by temporary key generation data acquisition unit 320 and a numerical value represented by temporary key generation data stored by temporary key generation data storage unit 130. And the larger value is judged to be newer.

一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると一時鍵生成用データ検証部350が判定した場合、一時鍵生成用データ記憶部130は、それまで記憶していた古い一時鍵生成用データに代えて、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データを記憶する。
一時鍵生成部160は、更新された一時鍵生成用データに基づいて、一時鍵を生成する。暗号通信部290は、更新された一時鍵生成用データに基づいて一時鍵生成部160が生成した一時鍵を使って、一時鍵生成用データを通知してきた他の暗号通信装置500との間で暗号通信をする。
When the temporary key generation data verification unit 350 determines that the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is valid, the temporary key generation data storage unit 130 stores the data thus far. Instead of the old temporary key generation data, the temporary key generation data determined by the temporary key generation data verification unit 350 to be valid is stored.
The temporary key generation unit 160 generates a temporary key based on the updated temporary key generation data. The encryption communication unit 290 uses the temporary key generated by the temporary key generation unit 160 based on the updated temporary key generation data, and communicates with another encryption communication device 500 that has notified the temporary key generation data. Encrypt communication.

次に、動作について説明する。   Next, the operation will be described.

暗号通信システム800における処理には、大きく分けて、初期化処理S601と、更新処理S602と、暗号通信処理S604とがある。
初期化処理S601において、暗号通信装置500は、マスター鍵や一時鍵生成用データなどを初期化する。
更新処理S602において、暗号通信装置500は、一時鍵生成用データを定期的に更新する。
暗号通信処理S604において、暗号通信装置500は、他の暗号通信装置500との間で暗号通信に使う一時鍵を合意し、暗号通信をする。
The processes in the cryptographic communication system 800 are roughly classified into an initialization process S601, an update process S602, and a cryptographic communication process S604.
In the initialization process S601, the cryptographic communication device 500 initializes a master key, temporary key generation data, and the like.
In the update process S602, the cryptographic communication device 500 periodically updates the temporary key generation data.
In cryptographic communication processing S604, the cryptographic communication device 500 agrees with another cryptographic communication device 500 on a temporary key used for cryptographic communication, and performs cryptographic communication.

図22は、この実施の形態における初期化処理S601の流れの一例を示すフロー図である。   FIG. 22 is a flowchart showing an example of the flow of the initialization process S601 in this embodiment.

初期化処理S601において、暗号通信装置500は、例えば、マスター鍵記憶工程S611と、一時鍵生成用データ初期化工程S612とを実行する。なお、複数の暗号通信装置500が初期化処理S601を実行するタイミングは、同じである必要はない。   In the initialization process S601, the cryptographic communication device 500 executes, for example, a master key storage step S611 and a temporary key generation data initialization step S612. Note that the timings at which the plurality of cryptographic communication devices 500 execute the initialization process S601 need not be the same.

マスター鍵記憶工程S611において、暗号通信装置500のマスター鍵記憶部110は、マスター鍵を取得する。マスター鍵記憶部110は、記憶装置914を用いて、取得したマスター鍵を記憶する。   In the master key storage step S611, the master key storage unit 110 of the encryption communication device 500 acquires a master key. The master key storage unit 110 uses the storage device 914 to store the acquired master key.

一時鍵生成用データ初期化工程S612において、暗号通信装置500の一時鍵生成用データ記憶部130は、一時鍵生成用データを初期化する。   In the temporary key generation data initialization step S612, the temporary key generation data storage unit 130 of the cryptographic communication device 500 initializes the temporary key generation data.

図23は、この実施の形態における更新処理S602の流れの一例を示すフロー図である。   FIG. 23 is a flowchart showing an example of the flow of the update process S602 in this embodiment.

更新処理S602において、暗号通信装置500は、例えば、周期経過判定工程S613と、一時鍵生成用データ更新工程S614とを実行する。   In the update process S602, the cryptographic communication device 500 executes, for example, a period elapsed determination process S613 and a temporary key generation data update process S614.

周期経過判定工程S613において、暗号通信装置500の一時鍵生成用データ更新部140は、あらかじめ定められた更新周期が経過したか否かを判定する。
更新周期が経過したと判定した場合、一時鍵生成用データ更新部140は、一時鍵生成用データ更新工程S614へ処理を進める。
In the cycle elapse determination step S613, the temporary key generation data update unit 140 of the cryptographic communication device 500 determines whether or not a predetermined update cycle has elapsed.
If it is determined that the update cycle has elapsed, the temporary key generation data update unit 140 proceeds to the temporary key generation data update step S614.

一時鍵生成用データ更新工程S614において、暗号通信装置500の一時鍵生成用データ更新部140は、一時鍵生成用データを更新する。
その後、一時鍵生成用データ更新部140は、周期経過判定工程S613に処理を戻し、次の更新周期が経過するのを待つ。
In the temporary key generation data update step S614, the temporary key generation data update unit 140 of the cryptographic communication device 500 updates the temporary key generation data.
Thereafter, the temporary key generation data update unit 140 returns the process to the cycle elapse determination step S613 and waits for the next update cycle to elapse.

なお、一時鍵生成用データ更新部140は、一時鍵生成用データ更新部140による前回の更新時を起点として、更新周期が経過したか否かを判定する構成であってもよいし、前回の更新の後、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データを一時鍵生成用データ記憶部130が記憶した場合、その時点を起点として、更新周期が経過したか否かを判定する構成であってもよい。   The temporary key generation data update unit 140 may be configured to determine whether or not the update cycle has elapsed from the previous update time by the temporary key generation data update unit 140. If the temporary key generation data storage unit 130 stores the temporary key generation data determined by the temporary key generation data verification unit 350 to be valid after the update, has the update cycle elapsed since that point? It may be configured to determine whether or not.

図24は、この実施の形態における暗号通信処理S604の流れの一例を示すフロー図である。   FIG. 24 is a flowchart showing an example of the flow of the cryptographic communication processing S604 in this embodiment.

能動的に暗号通信を開始する側(以下「発呼側」と呼ぶ。)の暗号通信装置500は、暗号通信処理S604において、一時鍵生成工程S616と、一時鍵生成用データ通知工程S624と、一時鍵生成用データ取得工程S635bと、一時鍵生成用データ検証工程S636bと、一時鍵生成工程S637bと、暗号通信工程S625とを実行する。
発呼側の暗号通信装置500からの要求を受けて受動的に暗号通信をする側(以下「着呼側」と呼ぶ。)の暗号通信装置500は、暗号通信処理S604において、一時鍵生成用データ取得工程S635と、一時鍵生成用データ検証工程S636と、一時鍵生成工程S616bと、一時鍵生成用データ通知工程S624bと、一時鍵生成工程S637と、暗号通信工程S638とを実行する。
The cryptographic communication device 500 on the side that actively starts cryptographic communication (hereinafter referred to as “calling side”) includes a temporary key generation step S616, a temporary key generation data notification step S624, and a cryptographic communication process S604. A temporary key generation data acquisition step S635b, a temporary key generation data verification step S636b, a temporary key generation step S637b, and an encryption communication step S625 are executed.
In response to a request from the calling-side encryption communication device 500, the encryption communication device 500 on the side that passively performs encryption communication (hereinafter referred to as “incoming call side”) generates a temporary key in encryption communication processing S 604. A data acquisition step S635, a temporary key generation data verification step S636, a temporary key generation step S616b, a temporary key generation data notification step S624b, a temporary key generation step S637, and an encryption communication step S638 are executed.

一時鍵生成工程S616において、発呼側の暗号通信装置500の一時鍵生成部160は、マスター鍵記憶部110が記憶したマスター鍵と、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データとに基づいて、一時鍵を生成する。   In the temporary key generation step S616, the temporary key generation unit 160 of the calling-side cryptographic communication device 500 generates the master key stored in the master key storage unit 110 and the temporary key generation data stored in the temporary key generation data storage unit 130. Based on the data, a temporary key is generated.

一時鍵生成用データ通知工程S624において、発呼側の暗号通信装置500の一時鍵生成用データ通知部250は、一時鍵生成工程S616で一時鍵生成部160が一時鍵の生成に使った一時鍵生成用データを着呼側の暗号通信装置500に対して通知する。
一時鍵生成用データ取得工程S635において、着呼側の暗号通信装置500の一時鍵生成用データ取得部320は、発呼側の暗号通信装置500から通知された一時鍵を取得する。
In the temporary key generation data notification step S624, the temporary key generation data notification unit 250 of the calling-side encryption communication device 500 is the temporary key used by the temporary key generation unit 160 to generate a temporary key in the temporary key generation step S616. The generation data is notified to the encryption communication device 500 on the called side.
In the temporary key generation data acquisition step S635, the temporary key generation data acquisition unit 320 of the called encryption communication device 500 acquires the temporary key notified from the calling encryption communication device 500.

一時鍵生成用データ検証工程S636において、着呼側の暗号通信装置500の一時鍵生成用データ検証部350は、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データに基づいて、一時鍵生成用データ取得工程S635で一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であるか否かを判定する。
一時鍵生成用データが有効であると一時鍵生成用データ検証部350が判定した場合、着呼側の暗号通信装置500の一時鍵生成用データ記憶部130は、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データを、新たな一時鍵生成用データとして記憶する。着呼側の暗号通信装置500は、一時鍵生成工程S637へ処理を進める。
一時鍵生成用データが有効でないと一時鍵生成用データ検証部350が判定した場合、着呼側の暗号通信装置500は、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを更新せず、一時鍵生成工程S616bへ処理を進める。
In the temporary key generation data verification step S636, the temporary key generation data verification unit 350 of the called-side encryption communication device 500 temporarily stores the temporary key generation data stored in the temporary key generation data storage unit 130 based on the temporary key generation data. It is determined whether or not the temporary key generation data acquired by the temporary key generation data acquisition unit 320 in the key generation data acquisition step S635 is valid.
If the temporary key generation data verification unit 350 determines that the temporary key generation data is valid, the temporary key generation data storage unit 130 of the called-side encryption communication device 500 determines that the temporary key generation data is valid. The temporary key generation data determined by the data verification unit 350 is stored as new temporary key generation data. The called-side encryption communication device 500 proceeds to the temporary key generation step S637.
When the temporary key generation data verification unit 350 determines that the temporary key generation data is not valid, the called-side encryption communication device 500 updates the temporary key generation data stored in the temporary key generation data storage unit 130. Without proceeding, the process proceeds to the temporary key generation step S616b.

一時鍵生成工程S637において、着呼側の暗号通信装置500の一時鍵生成部160は、マスター鍵記憶部110が記憶したマスター鍵と、一時鍵生成用データ検証工程S636で一時鍵生成用データ記憶部130が新たに記憶した一時鍵生成用データとに基づいて、一時鍵を生成する。一時鍵生成工程S637で着呼側の暗号通信装置500の一時鍵生成部160が生成する一時鍵は、一時鍵生成工程S616で発呼側の暗号通信装置500の一時鍵生成部160が生成した一時鍵と同一の、又は、その一時鍵に対応する一時鍵である。
着呼側の暗号通信装置500は、暗号通信工程S638へ処理を進める。
In the temporary key generation step S637, the temporary key generation unit 160 of the called-side encryption communication device 500 stores the master key stored in the master key storage unit 110 and the temporary key generation data verification step S636. The unit 130 generates a temporary key based on the temporary key generation data newly stored. The temporary key generated by the temporary key generation unit 160 of the called-side encryption communication device 500 in the temporary key generation step S637 is generated by the temporary key generation unit 160 of the calling-side encryption communication device 500 in the temporary key generation step S616. The temporary key is the same as or corresponding to the temporary key.
The called-side encryption communication device 500 proceeds to the encryption communication step S638.

一時鍵生成工程S616bにおいて、着呼側の暗号通信装置500の一時鍵生成部160は、マスター鍵記憶部110が記憶したマスター鍵と、もともと一時鍵生成用データ記憶部130が記憶していた一時鍵生成用データとに基づいて、一時鍵を生成する。   In the temporary key generation step S616b, the temporary key generation unit 160 of the called-side encryption communication device 500 includes the master key stored in the master key storage unit 110 and the temporary key originally stored in the temporary key generation data storage unit 130. A temporary key is generated based on the key generation data.

一時鍵生成用データ通知工程S624bにおいて、着呼側の暗号通信装置500の一時鍵生成用データ通知部250は、一時鍵生成工程S616bで一時鍵生成部160が一時鍵の生成に使った一時鍵生成用データを発呼側の暗号通信装置500に対して通知する。
着呼側の暗号通信装置500から一時鍵生成用データを通知された場合、発呼側の暗号通信装置500は、一時鍵生成用データ取得工程S635bへ処理を進める。
一時鍵生成用データ取得工程S635bにおいて、発呼側の暗号通信装置500の一時鍵生成用データ取得部320は、着呼側の暗号通信装置500から通知された一時鍵生成用データを取得する。
In the temporary key generation data notification step S624b, the temporary key generation data notification unit 250 of the called-side encryption communication device 500 uses the temporary key used by the temporary key generation unit 160 to generate a temporary key in the temporary key generation step S616b. The generation data is notified to the encryption communication device 500 on the calling side.
When the temporary key generation data is notified from the called-side encryption communication device 500, the calling-side encryption communication device 500 proceeds to the temporary key generation data acquisition step S635b.
In the temporary key generation data acquisition step S635b, the temporary key generation data acquisition unit 320 of the calling-side encryption communication device 500 acquires the temporary key generation data notified from the called-side encryption communication device 500.

一時鍵生成用データ検証工程S636bにおいて、発呼側の暗号通信装置500の一時鍵生成用データ検証部350は、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データに基づいて、一時鍵生成用データ取得工程S635bで一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であるか否かを判定する。
一時鍵生成用データが有効でないと一時鍵生成用データ検証部350が判定した場合、双方の暗号通信装置500が、相手の一時鍵生成用データが有効でないと判定したので、暗号通信を開始することができない。このため、暗号通信処理S604を終了する。
一時鍵生成用データが有効であると一時鍵生成用データ検証部350が判定した場合、発呼側の暗号通信装置500の一時鍵生成用データ記憶部130は、有効であると一時鍵生成用データ検証部350が判定した一時鍵生成用データを、新たな一時鍵生成用データとして記憶する。
In the temporary key generation data verification step S636b, the temporary key generation data verification unit 350 of the calling-side encryption communication device 500 performs a temporary key generation based on the temporary key generation data stored in the temporary key generation data storage unit 130. It is determined whether or not the temporary key generation data acquired by the temporary key generation data acquisition unit 320 in the key generation data acquisition step S635b is valid.
When the temporary key generation data verification unit 350 determines that the temporary key generation data is not valid, both the encryption communication devices 500 have determined that the other party's temporary key generation data is not valid, and thus the encryption communication is started. I can't. For this reason, encryption communication processing S604 is complete | finished.
When the temporary key generation data verification unit 350 determines that the temporary key generation data is valid, the temporary key generation data storage unit 130 of the calling-side encryption communication device 500 determines that the temporary key generation data is valid. The temporary key generation data determined by the data verification unit 350 is stored as new temporary key generation data.

一時鍵生成工程S637bにおいて、発呼側の暗号通信装置500の一時鍵生成部160は、マスター鍵記憶部110が記憶したマスター鍵と、一時鍵生成用データ検証工程S636bで一時鍵生成用データ記憶部130が新たに記憶した一時鍵生成用データとに基づいて、一時鍵を生成する。一時鍵生成工程S637bで発呼側の暗号通信装置500の一時鍵生成部160が生成する一時鍵は、一時鍵生成工程S616で着呼側の暗号通信装置500の一時鍵生成部160が生成した一時鍵と同一の、又は、その一時鍵に対応する一時鍵である。   In the temporary key generation step S637b, the temporary key generation unit 160 of the calling-side encryption communication device 500 stores the master key stored in the master key storage unit 110 and the temporary key generation data storage in the temporary key generation data verification step S636b. The unit 130 generates a temporary key based on the temporary key generation data newly stored. The temporary key generated by the temporary key generation unit 160 of the calling-side encryption communication device 500 in the temporary key generation step S637b is generated by the temporary key generation unit 160 of the called-side encryption communication device 500 in the temporary key generation step S616. The temporary key is the same as or corresponding to the temporary key.

暗号通信工程S625において、発呼側の暗号通信装置500の暗号通信部290は、一時鍵生成工程S616(または一時鍵生成工程S637b)で一時鍵生成部160が生成した一時鍵を使って、着呼側の暗号通信装置500との間で暗号通信をする。
暗号通信工程S638において、着呼側の暗号通信装置500の暗号通信部290は、一時鍵生成工程S637(または一時鍵生成工程S616b)で一時鍵生成部160が生成した一時鍵を使って、発呼側の暗号通信装置500との間で暗号通信をする。
In the encryption communication step S625, the encryption communication unit 290 of the caller-side encryption communication device 500 uses the temporary key generated by the temporary key generation unit 160 in the temporary key generation step S616 (or temporary key generation step S637b) to receive the call. Cryptographic communication is performed with the cryptographic communication apparatus 500 on the call side.
In the encryption communication step S638, the encryption communication unit 290 of the called-side encryption communication device 500 uses the temporary key generated by the temporary key generation unit 160 in the temporary key generation step S637 (or temporary key generation step S616b). Cryptographic communication is performed with the cryptographic communication apparatus 500 on the call side.

このように、実施の形態1で説明した三つの装置(管理装置100、暗号通信装置200及び暗号通信装置300)の機能を一つの装置(暗号通信装置500)が有することにより、複数の暗号通信装置500が、互いに暗号通信することができる。なお、この実施の形態における一時鍵生成用データは、実施の形態1における一時鍵生成用データとしての役割と検証用データとしての役割とを兼ね備える。このため、暗号通信装置500は、実施の形態1で説明した検証用データ記憶部330や検証用データ更新部340を有する必要はない。   As described above, a single device (encrypted communication device 500) has the functions of the three devices (the management device 100, the encrypted communication device 200, and the encrypted communication device 300) described in the first embodiment. The devices 500 can perform cryptographic communication with each other. Note that the temporary key generation data in this embodiment has both a role as temporary key generation data and a role as verification data in the first embodiment. For this reason, the cryptographic communication apparatus 500 does not need to include the verification data storage unit 330 and the verification data update unit 340 described in the first embodiment.

発呼側の暗号通信装置500の時計の進み方と、着呼側の暗号通信装置500の時計の進み方とが異なる場合、発呼側の時計の進み方のほうが速ければ、発呼側の一時鍵生成用データが表わす数値が増加する速さが着呼側より速いので、発呼側の一時鍵生成用データが有効であると着呼側の一時鍵生成用データ検証部350が判定し、一時鍵生成用データを発呼側に統一して、暗号通信をする。
逆に、着呼側の時計のほうが速い場合、発呼側の一時鍵生成用データが有効でないと着呼側の一時鍵生成用データ検証部350が判定する可能性がある。その場合、着呼側から一時鍵生成用データを発呼側に通知し、一時鍵生成用データを着呼側に統一して、暗号通信をする。
このように、暗号通信装置500同士が暗号通信をするたびに、一時鍵生成用データが、時計の進み方が速いほうに統一される。
If the time of the clock of the calling-side encryption communication device 500 is different from the way of the clock of the called-side encryption communication device 500, if the way of the calling-side clock is faster, Since the speed at which the numerical value represented by the temporary key generation data increases is faster than that of the called side, the incoming side temporary key generation data verification unit 350 determines that the temporary key generation data on the calling side is valid. , Temporary key generation data is unified to the calling side and encrypted communication is performed.
On the other hand, if the incoming side clock is faster, the incoming side temporary key generation data verification unit 350 may determine that the outgoing side temporary key generation data is not valid. In that case, the temporary key generation data is notified from the callee side to the caller side, and the temporary key generation data is unified to the callee side to perform encrypted communication.
In this way, every time the cryptographic communication devices 500 perform cryptographic communication, the temporary key generation data is unified so that the clock advances faster.

なお、一時鍵生成用データ検証部350は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データよりも古い場合であっても、その差が所定の範囲内である場合は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると判定する構成であってもよい。その場合、一時鍵生成用データ記憶部130は、記憶した一時鍵生成用データを更新しない構成であってもよい。   The temporary key generation data verification unit 350 determines that the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is older than the temporary key generation data stored in the temporary key generation data storage unit 130. However, when the difference is within a predetermined range, the configuration may be such that the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is valid. In this case, the temporary key generation data storage unit 130 may be configured not to update the stored temporary key generation data.

実施の形態5.
実施の形態5について、図25〜図26を用いて説明する。
なお、実施の形態1〜実施の形態4と共通する部分については、同一の符号を付し、説明を省略する。
Embodiment 5. FIG.
The fifth embodiment will be described with reference to FIGS.
In addition, about the part which is common in Embodiment 1- Embodiment 4, the same code | symbol is attached | subjected and description is abbreviate | omitted.

図25は、この実施の形態における自動検針システム801の全体構成の一例を示す図である。   FIG. 25 is a diagram showing an example of the overall configuration of the automatic meter reading system 801 in this embodiment.

自動検針システム801は、管理サーバ101と、携帯端末201と、複数の検針メータ301とを有する。なお、携帯端末201は、複数存在してもよい。
検針メータ301は、携帯端末201との間で暗号通信するだけでなく、検針メータ301同士の間でも、無線網802を用いて暗号通信をする。このとき、検針メータ301は、管理サーバ101と通信する必要はない。
The automatic meter reading system 801 includes a management server 101, a portable terminal 201, and a plurality of meter reading meters 301. A plurality of portable terminals 201 may exist.
The meter-reading meter 301 not only performs cryptographic communication with the portable terminal 201, but also performs cryptographic communication between the meter-reading meters 301 using the wireless network 802. At this time, the meter-reading meter 301 does not need to communicate with the management server 101.

管理サーバ101、携帯端末201及び検針メータ301のハードウェア構成や、管理サーバ101及び携帯端末201のブロック構成は、実施の形態3と同様である。   The hardware configuration of the management server 101, the portable terminal 201, and the meter-reading meter 301 and the block configuration of the management server 101 and the portable terminal 201 are the same as those in the third embodiment.

図26は、この実施の形態における検針メータ301の機能ブロックの一例を示す図である。   FIG. 26 is a diagram showing an example of functional blocks of the meter-reading meter 301 in this embodiment.

検針メータ301は、実施の形態3で説明した機能ブロックに加えて、更に、対検針メータ通信部371を有する。なお、対携帯端末通信部391は、図示を省略している。   The meter-reading meter 301 further includes a counter-metering meter communication unit 371 in addition to the functional blocks described in the third embodiment. Note that the mobile terminal communication unit 391 is not shown.

メッセージ処理部381は、他の検針メータ301に対するメッセージ423aを生成して、対検針メータ通信部371に対して送付し、対検針メータ通信部371が生成した他の検針メータ301からの応答433bを受け取る。
また、メッセージ処理部381は、対検針メータ通信部371が生成した他の検針メータ301からのメッセージ423bを処理し、応答433aを生成して、対検針メータ通信部371に対して送付する。
The message processing unit 381 generates a message 423a for the other meter reading meter 301, sends it to the meter reading meter communication unit 371, and sends a response 433b from the other meter reading meter 301 generated by the meter reading meter communication unit 371. receive.
In addition, the message processing unit 381 processes the message 423b from the other meter reading meter 301 generated by the counter meter communication unit 371, generates a response 433a, and sends the response 433a to the meter reading unit 371.

対検針メータ通信部371は、メッセージ処理部381からメッセージ423a/応答433aを受信する。対検針メータ通信部371は、世代番号カウンタ331から世代番号432aを受け取る。対検針メータ通信部371は、マスター鍵記憶部311が記憶したマスター鍵431と、世代番号432aとを用いて、一時鍵を生成する。対検針メータ通信部371は、生成した一時鍵を使って、メッセージ処理部381が生成したメッセージ423a/応答433aを暗号化して、暗号化メッセージ424a/暗号化応答434aを生成する。対検針メータ通信部371は、暗号化メッセージ424a/暗号化応答434aを他の検針メータ301に送る。
また、対検針メータ通信部371は、他の検針メータ301から暗号化メッセージ424b/暗号化応答434bを受信する。対検針メータ通信部371は、世代番号カウンタ331から世代番号432aを取得する。対検針メータ通信部371は、暗号化メッセージ424b/暗号化応答434bに含まれる世代番号432bと、世代番号432aとを比較する。世代番号432bが世代番号432aと同じか世代番号432aより新しい場合、対検針メータ通信部371は、マスター鍵記憶部311が記憶したマスター鍵431と、世代番号432bとを用いて、一時鍵を生成する。対検針メータ通信部371は、生成した一時鍵を使って、暗号化メッセージ424b/暗号化応答434bを復号し、メッセージ423b/応答433bを生成する。対検針メータ通信部371は、暗号化メッセージ424b/暗号化応答434bをメッセージ検証する。
検証にパスした場合、対検針メータ通信部371は、暗号化メッセージ424b/暗号化応答434bを受理し、生成したメッセージ423b/応答433bをメッセージ処理部381に対して送付する。また、世代番号432bが世代番号432aより新しい場合、対検針メータ通信部371は、世代番号カウンタ331の値を世代番号432bに書き換える。
The meter reading meter communication unit 371 receives the message 423a / response 433a from the message processing unit 381. The meter reading meter communication unit 371 receives the generation number 432a from the generation number counter 331. The meter reading meter communication unit 371 generates a temporary key using the master key 431 stored in the master key storage unit 311 and the generation number 432a. The meter reading meter communication unit 371 encrypts the message 423a / response 433a generated by the message processing unit 381 using the generated temporary key, and generates an encrypted message 424a / encrypted response 434a. The meter reading meter communication unit 371 sends the encrypted message 424a / encrypted response 434a to the other meter reading meter 301.
In addition, the meter reading meter communication unit 371 receives the encrypted message 424b / encrypted response 434b from the other meter reading meter 301. The meter reading meter communication unit 371 acquires the generation number 432a from the generation number counter 331. The meter reading meter communication unit 371 compares the generation number 432b included in the encrypted message 424b / encrypted response 434b with the generation number 432a. When the generation number 432b is the same as the generation number 432a or newer than the generation number 432a, the counter meter communication unit 371 generates a temporary key using the master key 431 stored in the master key storage unit 311 and the generation number 432b. To do. The meter reading meter communication unit 371 uses the generated temporary key to decrypt the encrypted message 424b / encrypted response 434b and generate a message 423b / response 433b. The meter reading meter communication unit 371 verifies the encrypted message 424b / encrypted response 434b.
When the verification is passed, the meter reading communication unit 371 receives the encrypted message 424b / encrypted response 434b and sends the generated message 423b / response 433b to the message processing unit 381. When the generation number 432b is newer than the generation number 432a, the counter meter communication unit 371 rewrites the value of the generation number counter 331 to the generation number 432b.

この実施の形態における対検針メータ通信部371の動作の詳細は、実施の形態3における検針メータ301の対携帯端末通信部391と同様なので、詳細な説明は省略する。   Since the details of the operation of the meter reading meter communication unit 371 in this embodiment are the same as those of the meter reading meter 301 in the third embodiment, the detailed description is omitted.

この実施の形態における自動検針システム801は、暗号通信には一時鍵を用いており、さらにその鍵を一定期間で無効化することができる。また、管理サーバとの通信を行なわなくても、機器間の世代番号の同期を取ることができる。   The automatic meter reading system 801 in this embodiment uses a temporary key for encrypted communication, and can invalidate the key for a certain period. Further, generation numbers can be synchronized between devices without communication with the management server.

実施の形態6.
実施の形態6について、図27〜図31を用いて説明する。
なお、実施の形態1〜実施の形態5と共通する部分については、同一の符号を付し、説明を省略する。
Embodiment 6 FIG.
The sixth embodiment will be described with reference to FIGS.
In addition, about the part which is common in Embodiment 1- Embodiment 5, the same code | symbol is attached | subjected and description is abbreviate | omitted.

この実施の形態における暗号通信システム800の全体構成、管理装置100や暗号通信装置200,300のハードウェア構成は、実施の形態1と同様である。   The overall configuration of the cryptographic communication system 800 in this embodiment and the hardware configuration of the management device 100 and the cryptographic communication devices 200 and 300 are the same as those in the first embodiment.

図27は、この実施の形態における管理装置100の機能ブロックの一例を示すブロック構成図である。   FIG. 27 is a block configuration diagram illustrating an example of functional blocks of the management apparatus 100 according to this embodiment.

管理装置100は、実施の形態1で説明した機能ブロックに加えて、更に、初期化コマンド生成部165と、初期化コマンド通知部175とを有する。   The management device 100 further includes an initialization command generation unit 165 and an initialization command notification unit 175 in addition to the functional blocks described in the first embodiment.

初期化コマンド生成部165は、処理装置911を用いて、初期化コマンドを生成する。初期化コマンドは、暗号通信装置300の検証用データ記憶部330が記憶した検証用データを初期化するためのものである。   The initialization command generation unit 165 uses the processing device 911 to generate an initialization command. The initialization command is for initializing the verification data stored in the verification data storage unit 330 of the encryption communication device 300.

初期化コマンド生成部165が生成する初期化コマンドは、有効期限を有する。
例えば、初期化コマンドは、初期化コマンドの有効期限を表わす有効期限情報を含む。暗号通信装置300は、初期化コマンドに含まれる有効期限情報に基づいて、初期化コマンドが有効か否かを判定する。
あるいは、初期化コマンドは、初期化コマンド生成部165がその初期化コマンドを生成した日付や時刻などを表わす生成時刻情報を含む。暗号通信装置300は、初期化コマンドに含まれる生成時刻情報に基づいて、初期化コマンド生成部165が初期化コマンドを生成してから、所定の期間(例えば1日)が経過した場合、その初期化コマンドが有効でないと判定する。
The initialization command generated by the initialization command generation unit 165 has an expiration date.
For example, the initialization command includes expiration date information indicating the expiration date of the initialization command. The cryptographic communication device 300 determines whether the initialization command is valid based on the expiration date information included in the initialization command.
Alternatively, the initialization command includes generation time information indicating the date and time when the initialization command generation unit 165 generated the initialization command. The cryptographic communication apparatus 300, when a predetermined period (for example, one day) has elapsed since the initialization command generation unit 165 generated the initialization command based on the generation time information included in the initialization command, Is determined to be invalid.

また、初期化コマンド生成部165が生成する初期化コマンドは、検証用データを初期化すべき初期値を表わす情報を含む構成であってもよい。その場合、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを、検証用データの初期値とする構成であってもよい。   Further, the initialization command generated by the initialization command generation unit 165 may be configured to include information indicating an initial value for initializing the verification data. In this case, the temporary key generation data stored in the temporary key generation data storage unit 130 may be used as the initial value of the verification data.

また、初期化コマンド生成部165が生成する初期化コマンドは、それを管理装置100が生成したものであることを証明し、暗号通信装置300が検証できる形式を有する。
例えば、初期化コマンドは、マスター鍵記憶部110が記憶したマスター鍵を使って暗号化されている。暗号通信装置300は、マスター鍵記憶部310が記憶したマスター鍵を使って初期化コマンドを復号する。初期化コマンドを正しく復号できれば、初期化コマンドを暗号化したものがマスター鍵を知っていることがわかるので、管理装置100が初期化コマンドを生成したと判定できる。
あるいは、初期化コマンドは、マスター鍵記憶部110が記憶したマスター鍵と、所定の一時鍵生成用データとを使って生成した一時鍵を用いて暗号化される構成であってもよい。暗号通信装置300は、初期化コマンドを暗号化するときに用いる一時鍵の生成に使った一時鍵生成用データを知っていれば、暗号通信装置300は、マスター鍵記憶部310が記憶したマスター鍵と、あらかじめ知っている一時鍵生成用データとを使って一時鍵を生成し、生成した一時鍵を使って初期化コマンドを復号することができる。
なお、初期化コマンドを暗号化するときに使う一時鍵の生成に用いる一時鍵生成用データは、あらかじめ定められたデータでなくてもよい。例えば、初期化コマンド生成部165は、一時鍵生成用データをランダムに生成して一時鍵を生成し、生成した一時鍵を使って暗号化した部分と、暗号化していない一時鍵生成用データとを結合して、初期化コマンドとする構成であってもよい。あるいは、初期化コマンド生成部165は、検証用データの初期値を一時鍵生成用データとして使って一時鍵を生成し、生成した一時鍵を使って暗号化した部分と、暗号化していない検証用データの初期値とを結合して、初期化コマンドとする構成であってもよい。なお、初期化コマンドが、暗号化していない一時鍵生成用データと、その一時鍵生成用データを使って生成した一時鍵により暗号化された部分とを含む場合、暗号化された部分は、その一時鍵生成用データを含むデータを暗号化したものであってもよい。
In addition, the initialization command generated by the initialization command generation unit 165 has a format that can be verified by the encryption communication device 300 by proving that it is generated by the management device 100.
For example, the initialization command is encrypted using the master key stored in the master key storage unit 110. The encryption communication device 300 decrypts the initialization command using the master key stored in the master key storage unit 310. If the initialization command can be decrypted correctly, it can be determined that the encrypted initialization command knows the master key, and therefore it can be determined that the management apparatus 100 has generated the initialization command.
Alternatively, the initialization command may be configured to be encrypted using a temporary key generated using the master key stored in the master key storage unit 110 and predetermined temporary key generation data. If the cryptographic communication device 300 knows the temporary key generation data used to generate the temporary key used when encrypting the initialization command, the cryptographic communication device 300 stores the master key stored in the master key storage unit 310. And a temporary key generation data known in advance, a temporary key can be generated, and an initialization command can be decrypted using the generated temporary key.
Note that the temporary key generation data used to generate a temporary key used when encrypting the initialization command may not be predetermined data. For example, the initialization command generation unit 165 randomly generates temporary key generation data to generate a temporary key, encrypts the generated temporary key, and unencrypted temporary key generation data May be combined to form an initialization command. Alternatively, the initialization command generation unit 165 generates a temporary key using the initial value of the verification data as temporary key generation data, the encrypted part using the generated temporary key, and the unencrypted verification key A configuration in which the initial value of data is combined to form an initialization command may be used. If the initialization command includes unencrypted temporary key generation data and a portion encrypted with the temporary key generated using the temporary key generation data, the encrypted portion Data including data for temporary key generation may be encrypted.

初期化コマンド通知部175は、初期化コマンド生成部165が生成した初期化コマンドを暗号通信装置200に対して通知する。例えば、初期化コマンド通知部175は、通信装置915を用いて、初期化コマンド生成部165が生成した初期化コマンドを暗号通信装置200に対して送信する。   The initialization command notification unit 175 notifies the encryption communication device 200 of the initialization command generated by the initialization command generation unit 165. For example, the initialization command notification unit 175 transmits the initialization command generated by the initialization command generation unit 165 to the encryption communication device 200 using the communication device 915.

図28は、この実施の形態における暗号通信装置200の機能ブロックの一例を示すブロック構成図である。   FIG. 28 is a block configuration diagram illustrating an example of functional blocks of the cryptographic communication device 200 according to this embodiment.

暗号通信装置200は、実施の形態1で説明した機能ブロックに加えて、更に、初期化コマンド取得部265と、初期化コマンド記憶部275と、初期化コマンド通知部285とを有する。   In addition to the functional blocks described in the first embodiment, the cryptographic communication apparatus 200 further includes an initialization command acquisition unit 265, an initialization command storage unit 275, and an initialization command notification unit 285.

初期化コマンド取得部265は、管理装置100の初期化コマンド通知部175から通知された初期化コマンドを取得する。例えば、初期化コマンド取得部265は、通信装置915を用いて、初期化コマンド通知部175が送信した初期化コマンドを受信する。
初期化コマンド記憶部275は、記憶装置914を用いて、初期化コマンド取得部265が取得した初期化コマンドを記憶する。
The initialization command acquisition unit 265 acquires the initialization command notified from the initialization command notification unit 175 of the management apparatus 100. For example, the initialization command acquisition unit 265 receives the initialization command transmitted by the initialization command notification unit 175 using the communication device 915.
The initialization command storage unit 275 stores the initialization command acquired by the initialization command acquisition unit 265 using the storage device 914.

初期化コマンド通知部285は、初期化コマンド記憶部275が記憶した初期化コマンドを暗号通信装置300に対して通知する。例えば、初期化コマンド通知部285は、通信装置915を用いて、初期化コマンドを暗号通信装置300に対して送信する。
初期化コマンド通知部285が暗号通信装置300に対して初期化コマンドを通知するのは、例えば、一時鍵生成用データ通知部250が通知した一時鍵生成用データが有効でないと暗号通信装置300の一時鍵生成用データ検証部350が判定し、暗号通信を開始できなかった場合である。その場合、なんらかの異常により、暗号通信装置300の検証用データ記憶部330が記憶している検証用データが狂っていると考えられる。そこで、初期化コマンドを暗号通信装置300に対して通知することにより、暗号通信装置300の検証用データ記憶部330が記憶している検証用データを初期化する。
The initialization command notification unit 285 notifies the encryption communication device 300 of the initialization command stored in the initialization command storage unit 275. For example, the initialization command notification unit 285 transmits an initialization command to the encryption communication device 300 using the communication device 915.
The initialization command notification unit 285 notifies the encryption communication device 300 of the initialization command, for example, if the temporary key generation data notified by the temporary key generation data notification unit 250 is not valid. This is a case where the temporary key generation data verification unit 350 makes a determination and the encryption communication cannot be started. In this case, it is considered that the verification data stored in the verification data storage unit 330 of the encryption communication device 300 is out of order due to some abnormality. Therefore, the verification data stored in the verification data storage unit 330 of the cryptographic communication device 300 is initialized by notifying the cryptographic communication device 300 of an initialization command.

図29は、この実施の形態における暗号通信装置300の機能ブロックの一例を示すブロック構成図である。   FIG. 29 is a block configuration diagram illustrating an example of functional blocks of the cryptographic communication device 300 according to this embodiment.

暗号通信装置300は、実施の形態1で説明した機能ブロックに加えて、更に、初期化コマンド取得部365と、初期化コマンド検証部375とを有する。   In addition to the functional blocks described in the first embodiment, the cryptographic communication apparatus 300 further includes an initialization command acquisition unit 365 and an initialization command verification unit 375.

初期化コマンド取得部365は、暗号通信装置200の初期化コマンド記憶部275から通知された初期化コマンドを取得する。例えば、初期化コマンド取得部365は、通信装置915を用いて、初期化コマンド通知部285が送信した初期化コマンドを受信する。   The initialization command acquisition unit 365 acquires the initialization command notified from the initialization command storage unit 275 of the encryption communication device 200. For example, the initialization command acquisition unit 365 receives the initialization command transmitted from the initialization command notification unit 285 using the communication device 915.

初期化コマンド検証部375は、処理装置911を用いて、初期化コマンド取得部365が取得した初期化コマンドが有効であるか否かを検証する。初期化コマンド検証部375は、初期化コマンドが管理装置100によって生成された正当なものであることと、有効期限が切れていないこととの2つの点から、初期化コマンドの有効性を判断する。   The initialization command verification unit 375 uses the processing device 911 to verify whether or not the initialization command acquired by the initialization command acquisition unit 365 is valid. The initialization command verification unit 375 determines the validity of the initialization command from the two points that the initialization command is a valid one generated by the management apparatus 100 and that the expiration date has not expired. .

例えば、初期化コマンド検証部375は、マスター鍵記憶部310が記憶したマスター鍵と、所定の一時鍵生成用データとを使って、一時鍵を生成する。初期化コマンド検証部375は、生成した一時鍵を使って、初期化コマンド取得部365が取得した初期化コマンドを復号する。初期化コマンドが正しく復号できた場合、初期化コマンド検証部375は、初期化コマンドが正当であると判定する。
あるいは、初期化コマンド検証部375は、初期化コマンド取得部365が取得した初期化コマンドを暗号化された部分と、一時鍵生成用データとに分離し、マスター鍵記憶部310が記憶したマスター鍵と、分離した一時鍵生成用データとを使って一時鍵を生成する。初期化コマンド検証部375は、生成した一時鍵を使って、分離した暗号化された部分を復号する。初期化コマンド検証部375は、復号した結果から一時鍵生成用データを取得する。分離した一時鍵生成用データと、取得した一時鍵生成用データとが一致した場合に、初期化コマンド検証部375は、初期化コマンドが正当であると判定する。
For example, the initialization command verification unit 375 generates a temporary key using the master key stored in the master key storage unit 310 and predetermined temporary key generation data. The initialization command verification unit 375 decrypts the initialization command acquired by the initialization command acquisition unit 365 using the generated temporary key. If the initialization command is correctly decoded, the initialization command verification unit 375 determines that the initialization command is valid.
Alternatively, the initialization command verification unit 375 separates the initialization command acquired by the initialization command acquisition unit 365 into an encrypted part and temporary key generation data, and stores the master key stored in the master key storage unit 310. A temporary key is generated using the separated temporary key generation data. The initialization command verification unit 375 decrypts the separated encrypted part using the generated temporary key. The initialization command verification unit 375 acquires temporary key generation data from the decrypted result. When the separated temporary key generation data matches the acquired temporary key generation data, the initialization command verification unit 375 determines that the initialization command is valid.

また、例えば、初期化コマンド検証部375は、初期化コマンド取得部365が取得した初期化コマンドから、有効期限情報を取得する。初期化コマンド検証部375は、取得した有効期限情報によって表わされる有効期限と、現在の時刻とを比較して、有効期限が切れているか否かを判定する。
あるいは、初期化コマンド検証部375は、初期化コマンド取得部365が取得した初期化コマンドから、初期化コマンドが生成された日付を表わす生成時刻情報を取得する。初期化コマンド検証部375は、現在の日付から所定の日数前の日付を算出し、算出した日付と、生成時刻情報が表わす日付とを比較する。生成時刻情報が表わす日付が、算出した日付と等しいか、算出した日付より新しい場合、初期化コマンド検証部375は、初期化コマンドが有効期限内であると判定する。
あるいは、初期化コマンド検証部375は、初期化コマンド取得部365が取得した初期化コマンドから、初期化コマンドが生成された時刻を表わす生成時刻情報を取得する。初期化コマンド検証部375は、現在の時刻と、取得した生成時刻情報が表わす時刻とに基づいて、初期化コマンドが生成されてからの経過時間を算出する。算出した経過時間が、所定の有効期間よりも短い場合に、初期化コマンド検証部375は、初期化コマンドが有効期限内であると判定する。
Further, for example, the initialization command verification unit 375 acquires the expiration date information from the initialization command acquired by the initialization command acquisition unit 365. The initialization command verification unit 375 compares the expiration date represented by the acquired expiration date information with the current time, and determines whether or not the expiration date has expired.
Alternatively, the initialization command verification unit 375 acquires generation time information indicating the date when the initialization command was generated from the initialization command acquired by the initialization command acquisition unit 365. The initialization command verification unit 375 calculates a date a predetermined number of days before the current date, and compares the calculated date with the date represented by the generation time information. If the date represented by the generation time information is equal to or newer than the calculated date, the initialization command verification unit 375 determines that the initialization command is within the expiration date.
Alternatively, the initialization command verification unit 375 acquires generation time information indicating the time when the initialization command is generated from the initialization command acquired by the initialization command acquisition unit 365. The initialization command verification unit 375 calculates the elapsed time since the initialization command was generated based on the current time and the time represented by the generated generation time information. When the calculated elapsed time is shorter than the predetermined valid period, the initialization command verification unit 375 determines that the initialization command is within the valid period.

初期化コマンド取得部365が取得した初期化コマンドが有効であると初期化コマンド検証部375が判定した場合、検証用データ記憶部330は、記憶した検証用データを初期化する。
例えば、検証用データ記憶部330は、記憶装置914を用いて、あらかじめ定められた初期値を検証用データとして記憶する。
あるいは、検証用データ記憶部330は、処理装置911を用いて、有効であると初期化コマンド検証部375が判定した初期化コマンドから、検証用データの初期値を取得し、取得した初期値を検証用データとして記憶する。
When the initialization command verification unit 375 determines that the initialization command acquired by the initialization command acquisition unit 365 is valid, the verification data storage unit 330 initializes the stored verification data.
For example, the verification data storage unit 330 uses the storage device 914 to store a predetermined initial value as verification data.
Alternatively, the verification data storage unit 330 uses the processing device 911 to acquire the initial value of the verification data from the initialization command determined by the initialization command verification unit 375 to be valid, and the acquired initial value Store as verification data.

図30は、この実施の形態における一時鍵通知処理S603の流れの一例を示すフロー図である。   FIG. 30 is a flowchart showing an example of the flow of the temporary key notification processing S603 in this embodiment.

管理装置100は、一時鍵通知処理S603において、実施の形態1で説明した工程に加えて、更に、初期化コマンド生成工程S617と、初期化コマンド通知工程S620とを実行する。
暗号通信装置200は、一時鍵通知処理S603において、実施の形態1で説明した工程に加えて、更に、初期化コマンド取得工程S628を実行する。
In the temporary key notification process S603, the management apparatus 100 further executes an initialization command generation step S617 and an initialization command notification step S620 in addition to the steps described in the first embodiment.
In addition to the process described in the first embodiment, the cryptographic communication apparatus 200 further executes an initialization command acquisition process S628 in the temporary key notification process S603.

初期化コマンド生成工程S617において、管理装置100の初期化コマンド生成部165は、初期化コマンドを生成する。例えば、初期化コマンド生成部165は、一時鍵生成工程S616で一時鍵生成部160が一時鍵の生成に使った一時鍵生成用データを、検証用データの初期値として含む初期化コマンドを生成する。   In the initialization command generation step S617, the initialization command generation unit 165 of the management device 100 generates an initialization command. For example, the initialization command generation unit 165 generates an initialization command including the temporary key generation data used by the temporary key generation unit 160 for generating the temporary key in the temporary key generation step S616 as the initial value of the verification data. .

初期化コマンド通知工程S620において、管理装置100の初期化コマンド通知部175は、初期化コマンド生成工程S617で初期化コマンド生成部165が生成した初期化コマンドを暗号通信装置200に対して通知する。なお、管理装置100は、初期化コマンドを、一時鍵や一時鍵生成用データと一つにまとめて送信する構成であってもよい。
初期化コマンド取得工程S628において、暗号通信装置200の初期化コマンド取得部265は、初期化コマンド通知工程S620で管理装置100の初期化コマンド通知部175が通知した初期化コマンドを取得する。初期化コマンド記憶部275は、記憶装置914を用いて、初期化コマンド取得部265が取得した初期化コマンドを記憶する。
In the initialization command notification step S620, the initialization command notification unit 175 of the management device 100 notifies the encryption communication device 200 of the initialization command generated by the initialization command generation unit 165 in the initialization command generation step S617. The management apparatus 100 may be configured to transmit the initialization command together with the temporary key and temporary key generation data.
In the initialization command acquisition step S628, the initialization command acquisition unit 265 of the encryption communication device 200 acquires the initialization command notified by the initialization command notification unit 175 of the management device 100 in the initialization command notification step S620. The initialization command storage unit 275 stores the initialization command acquired by the initialization command acquisition unit 265 using the storage device 914.

なお、管理装置100は、暗号通信装置200からの一時鍵要求に対する応答として、一時鍵や一時鍵生成用データとともに初期化コマンドを暗号通信装置200に対して通知するのではなく、暗号通信装置200から、一時鍵要求とは別に、初期化コマンドを要求する初期化コマンド要求を受け、それに対する応答として初期化コマンドを通知する構成であってもよい。   Note that the management apparatus 100 does not notify the encryption communication apparatus 200 of an initialization command together with the temporary key and temporary key generation data as a response to the temporary key request from the encryption communication apparatus 200, but instead of notifying the encryption communication apparatus 200. In addition to the temporary key request, an initialization command request for requesting an initialization command may be received, and the initialization command may be notified as a response thereto.

図31は、この実施の形態における暗号通信処理S604の流れの一例を示すフロー図である。   FIG. 31 is a flowchart showing an example of the flow of the cryptographic communication processing S604 in this embodiment.

暗号通信装置200は、暗号通信処理S604において、実施の形態1で説明した工程に加えて、更に、拒絶取得工程S626と、初期化コマンド通知工程S629とを実行する。
暗号通信装置300は、暗号通信処理S604において、実施の形態1で説明した工程に加えて、更に、拒絶通知工程S647と、初期化コマンド取得工程S648と、初期化コマンド検証工程S649とを実行する。
In addition to the steps described in the first embodiment, the cryptographic communication device 200 further executes a rejection acquisition step S626 and an initialization command notification step S629 in the cryptographic communication process S604.
In addition to the steps described in the first embodiment, the cryptographic communication device 300 further executes a rejection notification step S647, an initialization command acquisition step S648, and an initialization command verification step S649 in the cryptographic communication processing S604. .

一時鍵生成用データ取得工程S635で暗号通信装置300の一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効でないと、一時鍵生成用データ検証工程S636で暗号通信装置300の一時鍵生成用データ検証部350が判定した場合、一時鍵生成用データ検証部350は、拒絶通知工程S647へ処理を進める。   If the temporary key generation data acquired by the temporary key generation data acquisition unit 320 of the encryption communication device 300 in the temporary key generation data acquisition step S635 is not valid, the temporary communication of the encryption communication device 300 is temporarily performed in the temporary key generation data verification step S636. When the key generation data verification unit 350 determines, the temporary key generation data verification unit 350 proceeds to the rejection notification step S647.

拒絶通知工程S647において、暗号通信装置300の一時鍵生成用データ検証部350は、通知された一時鍵生成用データを使って生成した一時鍵による暗号通信を拒否する旨を暗号通信装置200に対して通知する。例えば、一時鍵生成用データ検証部350は、通信装置915を用いて、その旨を表わす拒絶メッセージを暗号通信装置200に対して送信する。
拒絶取得工程S626において、暗号通信装置200の一時鍵生成用データ通知部250は、拒絶通知工程S647における通知を取得する。例えば、一時鍵生成用データ通知部250は、通信装置915を用いて、暗号通信装置300の一時鍵生成用データ検証部350が送信した拒絶メッセージを受信する。
In the rejection notification step S647, the temporary key generation data verification unit 350 of the cryptographic communication device 300 informs the cryptographic communication device 200 that the cryptographic communication with the temporary key generated using the notified temporary key generation data is rejected. To notify. For example, the temporary key generation data verification unit 350 uses the communication device 915 to transmit a rejection message indicating that to the encryption communication device 200.
In the rejection acquisition step S626, the temporary key generation data notification unit 250 of the cryptographic communication device 200 acquires the notification in the rejection notification step S647. For example, the temporary key generation data notification unit 250 uses the communication device 915 to receive the rejection message transmitted by the temporary key generation data verification unit 350 of the encryption communication device 300.

初期化コマンド通知工程S629において、暗号通信装置200の初期化コマンド通知部285は、初期化コマンド記憶部275が記憶した初期化コマンドを暗号通信装置300に対して通知する。
初期化コマンド取得工程S648において、暗号通信装置300の初期化コマンド取得部365は、初期化コマンド通知工程S629で暗号通信装置200の初期化コマンド通知部285が通知した初期化コマンドを取得する。
In the initialization command notification step S629, the initialization command notification unit 285 of the encryption communication device 200 notifies the encryption communication device 300 of the initialization command stored in the initialization command storage unit 275.
In the initialization command acquisition step S648, the initialization command acquisition unit 365 of the encryption communication device 300 acquires the initialization command notified by the initialization command notification unit 285 of the encryption communication device 200 in the initialization command notification step S629.

初期化コマンド検証工程S649において、暗号通信装置300の初期化コマンド検証部375は、初期化コマンド取得工程S648で初期化コマンド取得部365が取得した初期化コマンドが有効であるか否かを判定する。
例えば、初期化コマンド検証部375は、初期化コマンドが正当であるか否かを判定する。
初期化コマンドが正当でないと判定した場合、初期化コマンド検証部375は、初期化コマンドが有効でないと判定し、暗号通信処理S604を終了する。
初期化コマンドが正当であると判定した場合、初期化コマンド検証部375は、初期化コマンドの有効期限が切れているか否かを判定する。
初期化コマンドの有効期限が切れていると判定した場合、初期化コマンド検証部375は、初期化コマンドが有効でないと判定し、暗号通信処理S604を終了する。
初期化コマンドの有効期限が切れていないと判定した場合、初期化コマンド検証部375は、初期化コマンドから検証用データの初期値を取得する。初期化コマンド検証部375は、取得した検証用データの初期値で、検証用データ記憶部330が記憶した検証用データを初期化した場合に、一時鍵生成用データ取得工程S635で一時鍵生成用データ取得部320が取得した一時鍵生成用データが有効であると一時鍵生成用データ検証部350が判定するか否かを判定する。
検証用データを初期化しても一時鍵生成用データが有効にならない場合、初期化コマンド検証部375は、初期化コマンドが有効でないと判定し、暗号通信処理S604を終了する。
検証用データを初期化すれば一時鍵生成用データが有効になる場合、初期化コマンド検証部375は、初期化コマンドが有効であると判定する。検証用データ記憶部330は、記憶装置914を用いて、初期化コマンドに含まれる初期値を、検証用データとして記憶する。初期化コマンド検証部375は、一時鍵生成工程S637へ処理を進める。
In the initialization command verification step S649, the initialization command verification unit 375 of the cryptographic communication device 300 determines whether the initialization command acquired by the initialization command acquisition unit 365 in the initialization command acquisition step S648 is valid. .
For example, the initialization command verification unit 375 determines whether or not the initialization command is valid.
If it is determined that the initialization command is not valid, the initialization command verification unit 375 determines that the initialization command is not valid, and ends the encryption communication process S604.
If it is determined that the initialization command is valid, the initialization command verification unit 375 determines whether the validity period of the initialization command has expired.
When it is determined that the validity period of the initialization command has expired, the initialization command verification unit 375 determines that the initialization command is not valid, and ends the encryption communication process S604.
When it is determined that the validity period of the initialization command has not expired, the initialization command verification unit 375 acquires the initial value of the verification data from the initialization command. When the initialization command verification unit 375 initializes the verification data stored in the verification data storage unit 330 with the initial value of the acquired verification data, the initialization command verification unit 375 generates the temporary key in the temporary key generation data acquisition step S635. The temporary key generation data verification unit 350 determines whether or not the temporary key generation data acquired by the data acquisition unit 320 is valid.
If the temporary key generation data is not valid even after the verification data is initialized, the initialization command verification unit 375 determines that the initialization command is not valid, and ends the cryptographic communication process S604.
If the temporary key generation data becomes valid if the verification data is initialized, the initialization command verification unit 375 determines that the initialization command is valid. The verification data storage unit 330 uses the storage device 914 to store the initial value included in the initialization command as verification data. The initialization command verification unit 375 advances the processing to the temporary key generation step S637.

なお、初期化コマンド検証部375は、検証用データを初期化すれば一時鍵生成用データが有効になるか否かに関わらず、初期化コマンドが正当であり、かつ、有効期限が切れていない場合に、初期化コマンドが有効であると判定する構成であってもよい。その場合、検証用データ記憶部330が記憶した検証用データを初期化したのち、一時鍵生成用データ取得部320が取得した一時鍵生成用データの有効性を、一時鍵生成用データ検証部350が再び判定する。あるいは、暗号通信処理S604をいったん終了し、暗号通信装置200が一時鍵生成用データを暗号通信装置300に対して再送する構成であってもよい。   Note that the initialization command verification unit 375 has a valid initialization command and the expiration date has not expired regardless of whether or not the temporary key generation data becomes valid if the verification data is initialized. In such a case, it may be configured to determine that the initialization command is valid. In this case, after the verification data stored in the verification data storage unit 330 is initialized, the validity of the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is expressed as the temporary key generation data verification unit 350. Determine again. Alternatively, the encryption communication processing S604 may be once terminated, and the encryption communication apparatus 200 may retransmit the temporary key generation data to the encryption communication apparatus 300.

管理装置100は、初期化コマンドを暗号通信装置200に対して通知することにより、暗号通信装置300が記憶している検証用データを初期化する権限を暗号通信装置200に与える。これにより、暗号通信装置300が記憶している検証用データを暗号通信装置200が初期化できるので、なんらかの原因により検証用データが異常値になった場合でも、検証用データを正常値に戻し、暗号通信装置200と暗号通信装置300との間で暗号通信をすることができる。   The management apparatus 100 gives the authority to initialize the verification data stored in the encryption communication apparatus 300 to the encryption communication apparatus 200 by notifying the encryption communication apparatus 200 of an initialization command. Thereby, the verification data stored in the cryptographic communication device 300 can be initialized by the cryptographic communication device 200. Therefore, even if the verification data becomes an abnormal value for some reason, the verification data is returned to the normal value, Cryptographic communication can be performed between the cryptographic communication device 200 and the cryptographic communication device 300.

初期化コマンドには有効期限があるので、有効期限が過ぎた場合、初期化コマンドで、暗号通信装置300が記憶している検証用データを初期化することができなくなる。これにより、例えば、暗号通信装置200を紛失して、第三者が拾得した場合など、初期化コマンドが漏洩した場合でも、第三者が初期化コマンドを悪用して、暗号通信装置300が記憶している検証用データを初期化し、暗号通信装置300から情報が漏洩するのを防ぐことができる。   Since the initialization command has an expiration date, when the expiration date has passed, the verification data stored in the encryption communication device 300 cannot be initialized by the initialization command. Thereby, for example, even when the initialization command is leaked, such as when the encryption communication device 200 is lost and the third party picks up, the third party abuses the initialization command and the encryption communication device 300 stores the initialization command. It is possible to initialize the verification data being used and prevent information from leaking from the encryption communication device 300.

実施の形態7.
実施の形態7について、図32〜図33を用いて説明する。
なお、実施の形態1〜実施の形態6と共通する部分については、同一の符号を付し、説明を省略する。
Embodiment 7 FIG.
The seventh embodiment will be described with reference to FIGS.
In addition, about the part which is common in Embodiment 1- Embodiment 6, the same code | symbol is attached | subjected and description is abbreviate | omitted.

この実施の形態における暗号通信システム800の全体構成、管理装置100や暗号通信装置200,300のハードウェア構成は、実施の形態6と同様である。   The overall configuration of the cryptographic communication system 800 and the hardware configuration of the management device 100 and the cryptographic communication devices 200 and 300 in this embodiment are the same as those in the sixth embodiment.

図32は、この実施の形態における暗号通信装置200の機能ブロックの一例を示すブロック構成図である。   FIG. 32 is a block configuration diagram illustrating an example of functional blocks of the cryptographic communication device 200 according to this embodiment.

暗号通信装置200は、実施の形態6で説明した機能ブロックのうち、初期化コマンド記憶部275を有さない。すなわち、暗号通信装置200は、初期化コマンドを記憶しない。
初期化コマンド通知部285が暗号通信装置300に対して初期化コマンドを通知する必要が生じた場合、初期化コマンド取得部265が、管理装置100と通信して、初期化コマンドを取得する。初期化コマンド通知部285は、初期化コマンド取得部265が取得した初期化コマンドを暗号通信装置300に対して通知する。
The cryptographic communication apparatus 200 does not have the initialization command storage unit 275 among the functional blocks described in the sixth embodiment. That is, the encryption communication device 200 does not store the initialization command.
When the initialization command notification unit 285 needs to notify the encryption communication device 300 of an initialization command, the initialization command acquisition unit 265 communicates with the management device 100 to acquire the initialization command. The initialization command notification unit 285 notifies the encryption communication device 300 of the initialization command acquired by the initialization command acquisition unit 265.

管理装置100及び暗号通信装置300のブロック構成は、実施の形態6と同様なので、異なる部分のみ説明する。   Since the block configurations of the management device 100 and the cryptographic communication device 300 are the same as those in the sixth embodiment, only different parts will be described.

暗号通信装置300において、一時鍵生成用データ検証部350は、一時鍵生成用データ取得部320が取得した一時鍵生成用データが表わす数値が、検証用データ記憶部330が記憶した検証用データが表わす数値以上である場合に、一時鍵生成用データが有効であると判定する。
ただし、初期化コマンド取得部365が取得した初期化コマンドが有効であると初期化コマンド検証部375が判定し、検証用データ記憶部330が記憶した検証用データが初期化された場合、一時鍵生成用データ検証部350は、検証用データが初期化されてから所定の期間(例えば1日)が経過するまでの間、一時鍵生成用データが表わす数値と、検証用データが表わす数値とが等しい場合のみ、一時鍵生成用データが有効であると判定する。一時鍵生成用データが表わす数値が、検証用データが表わす数値よりも大きい場合、一時鍵生成用データ検証部350は、一時鍵生成用データが有効でないと判定する。
In the cryptographic communication apparatus 300, the temporary key generation data verification unit 350 indicates that the numerical value represented by the temporary key generation data acquired by the temporary key generation data acquisition unit 320 is the verification data stored in the verification data storage unit 330. If it is greater than or equal to the numerical value to be represented, it is determined that the temporary key generation data is valid.
However, when the initialization command verification unit 375 determines that the initialization command acquired by the initialization command acquisition unit 365 is valid, and the verification data stored in the verification data storage unit 330 is initialized, the temporary key The data verification unit 350 for generation includes a numerical value represented by the temporary key generation data and a numerical value represented by the verification data until a predetermined period (for example, one day) elapses after the verification data is initialized. Only when they are equal, it is determined that the temporary key generation data is valid. When the numerical value represented by the temporary key generation data is larger than the numerical value represented by the verification data, the temporary key generation data verification unit 350 determines that the temporary key generation data is not valid.

次に、動作について説明する。   Next, the operation will be described.

一時鍵通知処理S603における工程は、実施の形態1と同様である。すなわち、一時鍵通知処理S603において、管理装置100は、初期化コマンドを生成せず、暗号通信装置200に対して初期化コマンドを通知しない。   The steps in temporary key notification processing S603 are the same as those in the first embodiment. That is, in the temporary key notification process S603, the management apparatus 100 does not generate an initialization command and does not notify the encryption communication apparatus 200 of the initialization command.

図33は、この実施の形態における暗号通信処理S604の流れの一例を示すフロー図である。   FIG. 33 is a flowchart showing an example of the flow of the cryptographic communication processing S604 in this embodiment.

暗号通信装置200は、暗号通信処理S604において、実施の形態6で説明した工程に加えて、更に、初期化コマンド要求工程S627と、初期化コマンド取得工程S628とを実行する。
なお、管理装置100が実行する工程は、図示を省略している。管理装置100は、暗号通信処理S604において、初期化コマンド要求受付工程と、初期化コマンド生成工程S617と、初期化コマンド通知工程S620とを実行する。
In the cryptographic communication process S604, the cryptographic communication apparatus 200 further executes an initialization command request step S627 and an initialization command acquisition step S628 in addition to the steps described in the sixth embodiment.
Note that the steps executed by the management apparatus 100 are not shown. In the encryption communication process S604, the management apparatus 100 executes an initialization command request reception step, an initialization command generation step S617, and an initialization command notification step S620.

初期化コマンド要求工程S627において、暗号通信装置200の初期化コマンド取得部265は、管理装置100に対して、初期化コマンドを要求する。例えば、初期化コマンド取得部265は、通信装置915を用いて、初期化コマンドを要求する初期化コマンド要求メッセージを管理装置100に対して送信する。初期化コマンド要求メッセージは、例えば、暗号通信装置200の利用者が入力したパスワードや、暗号通信装置200の利用者の指紋その他生体情報など、暗号通信装置200の利用者を認証する認証情報を含む。
初期化コマンド要求受付工程において、管理装置100の初期化コマンド通知部175は、暗号通信装置200からの要求を受け付ける。例えば、初期化コマンド通知部175は、通信装置915を用いて、暗号通信装置200の初期化コマンド取得部265が送信した初期化コマンド要求メッセージを受信する。初期化コマンド通知部175は、初期化コマンド要求メッセージに含まれる認証情報を検証して、暗号通信装置200の利用者を認証する。認証に失敗した場合、管理装置100は、以後の工程を実行しない。
In the initialization command request step S627, the initialization command acquisition unit 265 of the cryptographic communication device 200 requests the management device 100 for an initialization command. For example, the initialization command acquisition unit 265 uses the communication device 915 to transmit an initialization command request message for requesting an initialization command to the management device 100. The initialization command request message includes authentication information for authenticating the user of the encryption communication device 200, such as a password input by the user of the encryption communication device 200, a fingerprint of the user of the encryption communication device 200, and other biometric information. .
In the initialization command request reception step, the initialization command notification unit 175 of the management device 100 receives a request from the encryption communication device 200. For example, the initialization command notification unit 175 receives the initialization command request message transmitted from the initialization command acquisition unit 265 of the cryptographic communication device 200 using the communication device 915. The initialization command notification unit 175 verifies the authentication information included in the initialization command request message and authenticates the user of the encryption communication device 200. When the authentication fails, the management apparatus 100 does not execute the subsequent steps.

初期化コマンド生成工程S617において、管理装置100の初期化コマンド生成部165は、一時鍵生成用データ記憶部130が記憶した一時鍵生成用データを、認証用データの初期値として含む初期化コマンドを生成する。   In the initialization command generation step S617, the initialization command generation unit 165 of the management apparatus 100 includes an initialization command that includes the temporary key generation data stored in the temporary key generation data storage unit 130 as the initial value of the authentication data. Generate.

初期化コマンド通知工程S620において、管理装置100の初期化コマンド通知部175は、初期化コマンド生成工程S617で初期化コマンド生成部165が生成した初期化コマンドを暗号通信装置200に対して通知する。
初期化コマンド取得工程S628において、暗号通信装置200の初期化コマンド取得部265は、一時鍵通知工程S618で管理装置100の初期化コマンド通知部175が通知した初期化コマンドを取得する。
In the initialization command notification step S620, the initialization command notification unit 175 of the management device 100 notifies the encryption communication device 200 of the initialization command generated by the initialization command generation unit 165 in the initialization command generation step S617.
In the initialization command acquisition step S628, the initialization command acquisition unit 265 of the encryption communication device 200 acquires the initialization command notified by the initialization command notification unit 175 of the management device 100 in the temporary key notification step S618.

初期化コマンド通知工程S629において、暗号通信装置200の初期化コマンド通知部285は、初期化コマンド取得工程S628で初期化コマンド取得部265が取得した初期化コマンドを暗号通信装置300に対して通知する。   In the initialization command notification step S629, the initialization command notification unit 285 of the encryption communication device 200 notifies the encryption communication device 300 of the initialization command acquired by the initialization command acquisition unit 265 in the initialization command acquisition step S628. .

初期化コマンド検証工程S649において、暗号通信装置300の初期化コマンド検証部375は、初期化コマンド取得工程S648で初期化コマンド取得部365が取得した初期化コマンドが正当であり、かつ、有効期限が切れていないと判定した場合、初期化コマンドに含まれる検証用データの初期値を取得する。初期化コマンド検証部375は、一時鍵生成用データ取得工程S635で一時鍵生成用データ取得部320が取得した一時鍵生成用データと、取得した検証用データの初期値とを比較する。
一時鍵生成用データと、検証用データの初期値とが一致しない場合、初期化コマンド検証部375は、初期化コマンドが有効でないと判定し、暗号通信処理S604を終了する。
一時鍵生成用データと、検証用データの初期値とが一致している場合、初期化コマンド検証部375は、初期化コマンドが有効であると判定する。
In the initialization command verification step S649, the initialization command verification unit 375 of the cryptographic communication apparatus 300 has a valid initialization command acquired by the initialization command acquisition unit 365 in the initialization command acquisition step S648 and has an expiration date. If it is determined that it has not expired, the initial value of the verification data included in the initialization command is acquired. The initialization command verification unit 375 compares the temporary key generation data acquired by the temporary key generation data acquisition unit 320 in the temporary key generation data acquisition step S635 with the initial value of the acquired verification data.
If the temporary key generation data does not match the initial value of the verification data, the initialization command verification unit 375 determines that the initialization command is not valid, and ends the cryptographic communication process S604.
If the temporary key generation data matches the initial value of the verification data, the initialization command verification unit 375 determines that the initialization command is valid.

例えば、暗号通信装置200が小型で携帯可能である場合、暗号通信装置200の正当な利用者が暗号通信装置200を紛失して、第三者がそれを拾得して悪用する可能性がある。しかし、検証用データの更新により、第三者が拾得した暗号通信装置200に保存されている一時鍵が古いものになれば、その暗号通信装置200は、暗号通信装置300との間で暗号通信をすることができない。
また、初期化コマンドは、暗号通信装置200に保存されていないので、第三者は、暗号通信装置300が記憶している検証用データを初期化することができない。
仮に、なんらかの手段により、第三者が、初期化コマンドを別途入手したとする。第三者は、初期化コマンドを暗号通信装置300に通知して、暗号通信装置300が記憶している検証用データを初期化しようとする。しかし、第三者が拾得した暗号通信装置200に保存されている一時鍵及びそれの生成に使われた一時鍵生成用データと、第三者がそれとは別に入手した初期化コマンドに含まれる検証用データの初期値とが一致しなければ、その暗号通信装置200は、暗号通信装置300との間で暗号通信をすることができない。
このため、暗号通信装置300から情報が漏洩するのを防ぐことができる。
For example, when the cryptographic communication device 200 is small and portable, there is a possibility that a legitimate user of the cryptographic communication device 200 loses the cryptographic communication device 200 and a third party can pick it up and misuse it. However, if the temporary key stored in the cryptographic communication device 200 picked up by a third party becomes old due to the update of the verification data, the cryptographic communication device 200 performs cryptographic communication with the cryptographic communication device 300. I can't.
Further, since the initialization command is not stored in the cryptographic communication device 200, a third party cannot initialize the verification data stored in the cryptographic communication device 300.
Suppose that a third party separately obtains an initialization command by some means. The third party notifies the encryption communication device 300 of an initialization command, and tries to initialize the verification data stored in the encryption communication device 300. However, the temporary key stored in the encryption communication device 200 acquired by the third party and the temporary key generation data used for generating the temporary key and the verification command included in the initialization command obtained separately from the third party If the initial value of the business data does not match, the encrypted communication device 200 cannot perform encrypted communication with the encrypted communication device 300.
For this reason, it is possible to prevent information from leaking from the encryption communication device 300.

実施の形態8.
実施の形態8について、図34〜図41を用いて説明する。
なお、実施の形態1〜実施の形態7と共通する部分については、同一の符号を付し、説明を省略する。
Embodiment 8 FIG.
An eighth embodiment will be described with reference to FIGS.
In addition, about the part which is common in Embodiment 1- Embodiment 7, the same code | symbol is attached | subjected and description is abbreviate | omitted.

この実施の形態における自動検針システム801(暗号通信システム)の全体構成や、管理サーバ101、携帯端末201及び検針メータ301のハードウェア構成は、実施の形態3と同様である。   The overall configuration of the automatic meter reading system 801 (encryption communication system) in this embodiment and the hardware configurations of the management server 101, the portable terminal 201, and the meter-reading meter 301 are the same as those in the third embodiment.

図34は、この実施の形態における管理サーバ101の機能ブロックの一例を示す図である。   FIG. 34 is a diagram showing an example of functional blocks of the management server 101 in this embodiment.

管理サーバ101(管理装置)は、実施の形態3で説明した構成に加えて、更に、時計156と、リセットパケット生成部166とを有する。なお、鍵情報管理部161は、図示を省略している。   The management server 101 (management apparatus) further includes a clock 156 and a reset packet generation unit 166 in addition to the configuration described in the third embodiment. The key information management unit 161 is not shown.

時計156は、現在時刻418を計測する。例えば、時計156は、通信装置915を用いて、時刻サーバと通信し、NTP(Network Time Protocol)などの仕組みで時刻サーバと同期を取ることにより、正確な現在時刻418を計測する。時計は、計測した現在時刻418を出力する。   The clock 156 measures the current time 418. For example, the clock 156 uses the communication device 915 to communicate with the time server, and measures the accurate current time 418 by synchronizing with the time server using a mechanism such as NTP (Network Time Protocol). The clock outputs the measured current time 418.

リセットパケット生成部166(初期化コマンド生成部)は、携帯端末201からリセットパケット発行要求428を受け取る。リセットパケット生成部166は、世代番号カウンタ131から世代番号412を取得する。リセットパケット生成部166は、時計156から現在時刻418を取得する。リセットパケット生成部166は、検針メータ301の世代番号432を、世代番号412にリセットするためのリセットパケット419(初期化コマンド)を生成する。リセットパケット生成部166は、リセットパケット419を携帯端末201に対して送付する。   The reset packet generation unit 166 (initialization command generation unit) receives the reset packet issue request 428 from the portable terminal 201. The reset packet generation unit 166 acquires the generation number 412 from the generation number counter 131. The reset packet generation unit 166 acquires the current time 418 from the clock 156. The reset packet generation unit 166 generates a reset packet 419 (initialization command) for resetting the generation number 432 of the meter-reading meter 301 to the generation number 412. The reset packet generation unit 166 sends the reset packet 419 to the mobile terminal 201.

図35は、この実施の形態における携帯端末201の機能ブロックの一例を示す図である。   FIG. 35 is a diagram showing an example of functional blocks of the mobile terminal 201 in this embodiment.

携帯端末201のブロック構成は、実施の形態3で説明したものと同様なので、異なる点のみを説明する。なお、メッセージ生成部281は、図示を省略している。   Since the block configuration of the portable terminal 201 is the same as that described in the third embodiment, only different points will be described. Note that the message generation unit 281 is not shown.

対管理サーバ通信部221は、リセットパケット発行要求428を生成する。対管理サーバ通信部221は、リセットパケット発行要求428を管理サーバ101(リセットパケット生成部166)に対して送付する。
対管理サーバ通信部221は、管理サーバ101(リセットパケット生成部166)からリセットパケット419を受け取る。
The management server communication unit 221 generates a reset packet issue request 428. The management server communication unit 221 sends a reset packet issue request 428 to the management server 101 (reset packet generation unit 166).
The management server communication unit 221 receives the reset packet 419 from the management server 101 (reset packet generation unit 166).

対検針メータ通信部291は、対管理サーバ通信部221からリセットパケット419を受け取る。対検針メータ通信部291(初期化コマンド通知部)は、リセットパケット419を検針メータ301に対して送付する。   The meter reading meter communication unit 291 receives the reset packet 419 from the pair management server communication unit 221. The meter reading meter communication unit 291 (initialization command notification unit) sends a reset packet 419 to the meter reading meter 301.

図36は、この実施の形態における検針メータ301の機能ブロックの一例を示す図である。   FIG. 36 is a diagram showing an example of functional blocks of the meter-reading meter 301 in this embodiment.

検針メータ301は、実施の形態3で説明した機能ブロックに加えて、更に、時計356を有する。   The meter-reading meter 301 has a clock 356 in addition to the functional blocks described in the third embodiment.

時計356は、現在時刻438を計測する。例えば、時計356は、通信装置915を用いて、時刻サーバと通信し、NTPなどの仕組みで時刻サーバと同期を取ることにより、正確な現在時刻438を計測する。時計は、計測した現在時刻438を出力する。   The clock 356 measures the current time 438. For example, the clock 356 uses the communication device 915 to communicate with the time server, and synchronizes with the time server using a mechanism such as NTP, thereby measuring the accurate current time 438. The clock outputs the measured current time 438.

対携帯端末通信部391(初期化コマンド検証部)は、携帯端末201からリセットパケット419を受け取る。対携帯端末通信部391は、時計356から現在時刻438を取得する。対携帯端末通信部391は、時計356と、マスター鍵記憶部311が記憶したマスター鍵431とを用いて、リセットパケット419を検証する。検証に成功した場合、対携帯端末通信部391は、リセットパケット419から世代番号412を取得する。対携帯端末通信部391は、世代番号412をメッセージ処理部381に対して送付する。
対携帯端末通信部391は、世代番号412から応答433を受け取る。対携帯端末通信部391は、応答433を暗号化してリセット応答439(暗号化応答)を生成する。対携帯端末通信部391は、リセット応答439を携帯端末201に対して送付する。
The mobile terminal communication unit 391 (initialization command verification unit) receives the reset packet 419 from the mobile terminal 201. The mobile terminal communication unit 391 acquires the current time 438 from the clock 356. The mobile terminal communication unit 391 verifies the reset packet 419 using the clock 356 and the master key 431 stored in the master key storage unit 311. When the verification is successful, the mobile terminal communication unit 391 acquires the generation number 412 from the reset packet 419. The mobile terminal communication unit 391 sends the generation number 412 to the message processing unit 381.
The mobile terminal communication unit 391 receives the response 433 from the generation number 412. The mobile terminal communication unit 391 encrypts the response 433 and generates a reset response 439 (encrypted response). The mobile terminal communication unit 391 sends a reset response 439 to the mobile terminal 201.

メッセージ処理部381は、対携帯端末通信部391から世代番号412を受け取る。メッセージ処理部381は、世代番号カウンタ331の値を世代番号412に書き換える。メッセージ処理部381は、検証結果を表わす応答433を生成する。メッセージ処理部381は、応答433を対携帯端末通信部391(対検針メータ通信部291)に対して送付する。   The message processing unit 381 receives the generation number 412 from the mobile terminal communication unit 391. The message processing unit 381 rewrites the value of the generation number counter 331 to the generation number 412. The message processing unit 381 generates a response 433 representing the verification result. The message processing unit 381 sends the response 433 to the portable terminal communication unit 391 (vs. meter reading communication unit 291).

図37は、この実施の形態の管理サーバ101におけるリセットパケット生成部166の詳細な機能ブロックの一例を示す図である。   FIG. 37 is a diagram illustrating an example of detailed functional blocks of the reset packet generation unit 166 in the management server 101 of this embodiment.

リセットパケット生成部166は、例えば、認証部172と、マスター鍵選択部173と、一時鍵生成部174と、パケット生成部176と、出力判定部177とを有する。なお、認証部172、マスター鍵選択部173、一時鍵生成部174及び出力判定部177は、鍵情報管理部161の認証部162、マスター鍵選択部163、一時鍵生成部164及び出力判定部171を、鍵情報管理部161と共用する構成であってもよい。   The reset packet generation unit 166 includes, for example, an authentication unit 172, a master key selection unit 173, a temporary key generation unit 174, a packet generation unit 176, and an output determination unit 177. The authentication unit 172, the master key selection unit 173, the temporary key generation unit 174, and the output determination unit 177 are the authentication unit 162, the master key selection unit 163, the temporary key generation unit 164, and the output determination unit 171 of the key information management unit 161. May be shared with the key information management unit 161.

認証部172は、携帯端末201(対管理サーバ通信部221)からリセットパケット発行要求428を受信する。認証部172は、リセットパケット発行要求428に含まれる認証情報に基づいて、リセットパケット発行要求428を処理するか否かを決定する。例えば、認証部172は、認証情報に基づいて送信者を認証する。なお、認証をしない場合、認証部172は、なくてもよい。
リセットパケット発行要求428を処理しないと決定した場合、認証部172は、リセットパケット419を出力しない旨を表わす出力判定信号414を出力判定部177に対して出力する。
The authentication unit 172 receives the reset packet issue request 428 from the mobile terminal 201 (to the management server communication unit 221). The authentication unit 172 determines whether or not to process the reset packet issue request 428 based on the authentication information included in the reset packet issue request 428. For example, the authentication unit 172 authenticates the sender based on the authentication information. In addition, when not authenticating, the authentication part 172 does not need to be.
When it is determined not to process the reset packet issue request 428, the authentication unit 172 outputs an output determination signal 414 indicating that the reset packet 419 is not output to the output determination unit 177.

マスター鍵選択部173は、マスター鍵記憶部111が記憶した複数のマスター鍵411のなかから、マスター鍵411を任意に選択する。例えば、マスター鍵選択部173は、マスター鍵411をランダムに選択する。
マスター鍵選択部173は、選択したマスター鍵411に対応する鍵種別情報422を生成する。
The master key selection unit 173 arbitrarily selects the master key 411 from among the plurality of master keys 411 stored in the master key storage unit 111. For example, the master key selection unit 173 selects the master key 411 at random.
The master key selection unit 173 generates key type information 422 corresponding to the selected master key 411.

一時鍵生成部174は、マスター鍵選択部173が選択したマスター鍵411と、所定の定数とに基づいて、一時鍵413を生成する。一時鍵生成部174は、世代番号412の代わりに定数を使って一時鍵413を生成する。例えば、一時鍵生成部174は、一時鍵413として、所定の暗号化方式によって定数をマスター鍵411で暗号したデータを生成する。あるいは、一時鍵生成部174は、一時鍵413として、定数とマスター鍵411とを入力した鍵付きハッシュ関数を使ってハッシュ値を生成する。なお、一時鍵生成部174が一時鍵413の生成に使う鍵生成方式は、定数とマスター鍵411とから一時鍵413が一意に生成されること、及び、一時鍵413と定数とからマスター鍵411が推定されないことが必要である。   The temporary key generation unit 174 generates a temporary key 413 based on the master key 411 selected by the master key selection unit 173 and a predetermined constant. The temporary key generation unit 174 generates a temporary key 413 using a constant instead of the generation number 412. For example, the temporary key generation unit 174 generates, as the temporary key 413, data obtained by encrypting constants with the master key 411 by a predetermined encryption method. Alternatively, the temporary key generation unit 174 generates a hash value by using a hash function with a key in which a constant and a master key 411 are input as the temporary key 413. Note that the key generation method used by the temporary key generation unit 174 to generate the temporary key 413 is that the temporary key 413 is uniquely generated from the constant and the master key 411, and the master key 411 is generated from the temporary key 413 and the constant. Must not be estimated.

一時鍵生成部174が一時鍵413の生成に使う定数には、例えば、世代番号412として入力可能な数の最大値を設定する。例えば、世代番号412が16ビットの2進数で表現される場合、一時鍵生成部174は、16進表現で「FFFF」を定数として使って一時鍵413を生成する。なお、世代番号412の最大値が別途定められている場合は、その値を使う構成であってもよい。   For the constant used by the temporary key generation unit 174 to generate the temporary key 413, for example, the maximum value that can be input as the generation number 412 is set. For example, when the generation number 412 is expressed in a 16-bit binary number, the temporary key generation unit 174 generates a temporary key 413 using “FFFF” as a constant in hexadecimal expression. In addition, when the maximum value of the generation number 412 is determined separately, the structure using that value may be sufficient.

パケット生成部176は、世代番号カウンタ131から世代番号412を取得する。パケット生成部176は、リセットパケット419の生成時刻として、時計156から現在時刻418を取得する。パケット生成部176は、世代番号412と、生成時刻と、鍵種別情報422と、マスター鍵選択部173が一時鍵413の生成に使った定数とに対して、メッセージ検証子を生成する。パケット生成部176は、世代番号412と、生成時刻と、鍵種別情報422と、定数と、メッセージ検証子とを含むリセットパケット419を生成する。   The packet generation unit 176 acquires the generation number 412 from the generation number counter 131. The packet generation unit 176 acquires the current time 418 from the clock 156 as the generation time of the reset packet 419. The packet generation unit 176 generates a message verifier for the generation number 412, generation time, key type information 422, and the constant used by the master key selection unit 173 to generate the temporary key 413. The packet generation unit 176 generates a reset packet 419 including a generation number 412, a generation time, key type information 422, a constant, and a message verifier.

出力判定部177は、パケット生成部176が生成したリセットパケット419を出力するか否かを判定する。
リセットパケット419を出力しない旨を表わす出力判定信号414を認証部172から受信した場合、出力判定部177は、リセットパケット419を出力しないと判定する。その場合、出力判定部177は、リセットパケット419の代わりとして、所定のエラーコードを出力する構成であってもよい。
リセットパケット419を出力しない旨を表わす出力判定信号414を認証部172から受信しない場合、出力判定部177は、リセットパケット419を出力すると判定する。出力判定部177は、リセットパケット419を携帯端末201に対して出力する。
The output determination unit 177 determines whether or not to output the reset packet 419 generated by the packet generation unit 176.
When the output determination signal 414 indicating that the reset packet 419 is not output is received from the authentication unit 172, the output determination unit 177 determines that the reset packet 419 is not output. In that case, the output determination unit 177 may be configured to output a predetermined error code instead of the reset packet 419.
When the output determination signal 414 indicating that the reset packet 419 is not output is not received from the authentication unit 172, the output determination unit 177 determines to output the reset packet 419. The output determination unit 177 outputs the reset packet 419 to the mobile terminal 201.

図38は、この実施の形態の携帯端末201における対管理サーバ通信部221及び対検針メータ通信部291の詳細な機能ブロックの一例を示す図である。   FIG. 38 is a diagram illustrating an example of detailed functional blocks of the management server communication unit 221 and the meter reading meter communication unit 291 in the portable terminal 201 of this embodiment.

対管理サーバ通信部221は、実施の形態3で説明した機能ブロックに加えて、更に、リセットパケット発行要求生成部224と、リセットパケット取得部225とを有する。なお、一時鍵発行要求生成部222及び一時鍵情報取得部223は、図示を省略している。   The management server communication unit 221 further includes a reset packet issue request generation unit 224 and a reset packet acquisition unit 225 in addition to the functional blocks described in the third embodiment. The temporary key issue request generation unit 222 and the temporary key information acquisition unit 223 are not shown.

リセットパケット発行要求生成部224は、入力装置912から認証情報425を受け取る。入力装置912は、例えば、キーボードのような文字列入力装置である。あるいは、入力装置912は、指紋読取装置のようなバイオメトリック情報を取得する装置である。
リセットパケット発行要求生成部224は、取得した認証情報425に基づいてリセットパケット発行要求428を生成する。リセットパケット発行要求生成部224が生成するリセットパケット発行要求428は、認証情報425を含む。
リセットパケット発行要求生成部224は、リセットパケット発行要求428を管理サーバ101(リセットパケット生成部166)に対して送付する。
なお、管理サーバ101が利用者認証を行わない場合、リセットパケット発行要求生成部224は、認証情報425を取得しない構成であってもよい。その場合、リセットパケット発行要求428は、認証情報425を含まない構成であってもよい。
The reset packet issue request generation unit 224 receives the authentication information 425 from the input device 912. The input device 912 is a character string input device such as a keyboard, for example. Alternatively, the input device 912 is a device that acquires biometric information such as a fingerprint reader.
The reset packet issue request generator 224 generates a reset packet issue request 428 based on the acquired authentication information 425. The reset packet issue request 428 generated by the reset packet issue request generation unit 224 includes authentication information 425.
The reset packet issue request generation unit 224 sends a reset packet issue request 428 to the management server 101 (reset packet generation unit 166).
When the management server 101 does not perform user authentication, the reset packet issue request generation unit 224 may be configured not to acquire the authentication information 425. In that case, the reset packet issue request 428 may be configured not to include the authentication information 425.

リセットパケット取得部225は、管理サーバ101からリセットパケット419を受信する。リセットパケット取得部225は、リセットパケット419を対検針メータ通信部291に対して送付する。   The reset packet acquisition unit 225 receives the reset packet 419 from the management server 101. The reset packet acquisition unit 225 sends the reset packet 419 to the counter meter reading unit 291.

対検針メータ通信部291は、実施の形態3で説明した機能ブロックに加えて、更に、リセットパケット出力部297を有する。なお、暗号化部292、多重化部293、分離部294、復号部295及び受信判定部296は、図示を省略している。   The meter-reading meter communication unit 291 further includes a reset packet output unit 297 in addition to the functional blocks described in the third embodiment. Note that the encryption unit 292, the multiplexing unit 293, the separation unit 294, the decryption unit 295, and the reception determination unit 296 are not shown.

リセットパケット出力部297は、対管理サーバ通信部221からリセットパケット419を受信する。リセットパケット出力部297は、受信したリセットパケット419をそのまま検針メータ301(対携帯端末通信部391)に対して送付する。   The reset packet output unit 297 receives the reset packet 419 from the management server communication unit 221. The reset packet output unit 297 sends the received reset packet 419 as it is to the meter-reading meter 301 (for the portable terminal communication unit 391).

図39は、この実施の形態の検針メータ301における対携帯端末通信部391の詳細な機能ブロックの一例を示す図である。   FIG. 39 is a diagram showing an example of detailed functional blocks of the portable terminal communication unit 391 in the meter-reading meter 301 of this embodiment.

対携帯端末通信部391は、実施の形態3で説明した構成に加えて、更に、応答メッセージ生成部397と、メッセージ検証部398とを有する。なお、暗号化部392及び復号部395は、図示を省略している。   The mobile terminal communication unit 391 further includes a response message generation unit 397 and a message verification unit 398 in addition to the configuration described in the third embodiment. Note that the encryption unit 392 and the decryption unit 395 are not shown.

分離部394は、携帯端末201(対検針メータ通信部291)からリセットパケット419を受信する。分離部394は、リセットパケット419から鍵種別情報422と定数417とを分離する。   The separation unit 394 receives the reset packet 419 from the mobile terminal 201 (the meter reading meter communication unit 291). The separation unit 394 separates the key type information 422 and the constant 417 from the reset packet 419.

マスター鍵選択部363は、鍵種別情報422に基づいて、マスター鍵記憶部311が記憶した複数のマスター鍵431のなかから、マスター鍵431を選択する。   Based on the key type information 422, the master key selection unit 363 selects the master key 431 from among the plurality of master keys 431 stored in the master key storage unit 311.

一時鍵生成部364は、マスター鍵選択部363が選択したマスター鍵431と、定数417とにから、一時鍵435を生成する。一時鍵生成部364は、管理サーバ101における鍵情報管理部161の一時鍵生成部174と同じ一時鍵生成方式により、一時鍵435を生成する。   The temporary key generation unit 364 generates a temporary key 435 from the master key 431 selected by the master key selection unit 363 and the constant 417. The temporary key generation unit 364 generates a temporary key 435 by the same temporary key generation method as the temporary key generation unit 174 of the key information management unit 161 in the management server 101.

メッセージ検証部398は、一時鍵435を用いて、リセットパケット419のメッセージ検証をして、検証結果437を生成する。メッセージ検証部398は、リセットパケット419から、世代番号412と生成時刻416とを分離する。メッセージ検証部398は、管理サーバ101におけるパケット生成部176が使用したメッセージ認証子生成方式に対応する検証方式を使って、リセットパケット419を検証する。   The message verifying unit 398 verifies the message of the reset packet 419 using the temporary key 435 and generates a verification result 437. The message verification unit 398 separates the generation number 412 and the generation time 416 from the reset packet 419. The message verification unit 398 verifies the reset packet 419 using a verification method corresponding to the message authenticator generation method used by the packet generation unit 176 in the management server 101.

受信判定部396は、時計356から現在時刻438を取得する。受信判定部396は、現在時刻438と生成時刻416と検証結果437とに基づいて、出力判定をする。判定基準は、以下のとおりである。
・メッセージ検証部398がメッセージ検証に失敗した場合、世代番号412を出力しない。
・生成時刻416が現在時刻438に対して一定以上(例えば1日以上)古い場合、世代番号412を出力しない。
・メッセージ検証部398がメッセージ検証に成功し、かつ、生成時刻416が現在時刻438より新しく又は生成時刻416と現在時刻438との差が一定以下(例えば1日以下)である場合、世代番号412を出力する。
世代番号412を出力すると判定した場合、受信判定部396は、世代番号412をメッセージ処理部381に対して出力する。
The reception determination unit 396 acquires the current time 438 from the clock 356. The reception determination unit 396 performs output determination based on the current time 438, the generation time 416, and the verification result 437. Judgment criteria are as follows.
When the message verification unit 398 fails in the message verification, the generation number 412 is not output.
When the generation time 416 is older than the current time 438 by a certain amount (for example, one day or more), the generation number 412 is not output.
Generation number 412 when message verification unit 398 succeeds in message verification and generation time 416 is newer than current time 438 or the difference between generation time 416 and current time 438 is less than or equal to a certain value (for example, one day or less). Is output.
When it is determined that the generation number 412 is output, the reception determination unit 396 outputs the generation number 412 to the message processing unit 381.

メッセージ処理部381は、受信判定部396から世代番号412を受け取る。メッセージ処理部381は、世代番号カウンタ331の値を、世代番号412に書き換える。
メッセージ処理部381は、応答433を生成する。なお、メッセージ処理部381が応答433を生成するのではなく、受信判定部396が応答433を生成する構成であってもよい。
The message processing unit 381 receives the generation number 412 from the reception determination unit 396. The message processing unit 381 rewrites the value of the generation number counter 331 to the generation number 412.
The message processing unit 381 generates a response 433. Note that the message determination unit 396 may generate the response 433 instead of the message processing unit 381 generating the response 433.

なお、リセットパケット419を受理してメッセージ処理部381が世代番号カウンタ331の値を書き換えた場合、受信判定部396は、世代番号カウンタ331の値を書き換えてから一定期間(例えば1日)の間は、世代番号412と世代番号432とが一致したときのみ、暗号化メッセージ424を受理してメッセージ423を出力する構成であってもよい。   When the message processing unit 381 accepts the reset packet 419 and rewrites the value of the generation number counter 331, the reception determination unit 396 rewrites the value of the generation number counter 331 for a certain period (for example, one day). May be configured to accept the encrypted message 424 and output the message 423 only when the generation number 412 and the generation number 432 match.

応答メッセージ生成部397は、メッセージ処理部381から応答433を受信する。応答メッセージ生成部397は、一時鍵435を用いて、応答433からメッセージ認証子440を生成する。応答メッセージ生成部397は、例えば、管理サーバ101におけるリセットパケット生成部166のパケット生成部176と同じメッセージ認証子生成方式を使って、メッセージ認証子440を生成する。   The response message generation unit 397 receives the response 433 from the message processing unit 381. The response message generation unit 397 generates a message authenticator 440 from the response 433 using the temporary key 435. The response message generator 397 generates the message authenticator 440 using the same message authenticator generation method as the packet generator 176 of the reset packet generator 166 in the management server 101, for example.

多重化部393は、鍵種別情報422と、世代番号432と、応答433と、メッセージ認証子440とを多重化して、リセット応答439を生成する。多重化部393は、リセット応答439を携帯端末201(対検針メータ通信部291)に対して送付する。   The multiplexing unit 393 generates the reset response 439 by multiplexing the key type information 422, the generation number 432, the response 433, and the message authenticator 440. The multiplexing unit 393 sends a reset response 439 to the mobile terminal 201 (antimeter reading unit 291).

次に、動作について説明する。   Next, the operation will be described.

図40は、この実施の形態におけるリセットパケット通知処理S605の流れの一例を示すフロー図である。   FIG. 40 is a flowchart showing an exemplary flow of the reset packet notification processing S605 in this embodiment.

リセットパケット通知処理S605は、例えば、リセットパケット発行要求生成工程S681と、認証工程S682と、マスター鍵選択工程S683と、一時鍵生成工程S684と、パケット生成工程S685と、出力工程S686と、リセットパケット取得工程S687とを有する。   The reset packet notification processing S605 includes, for example, a reset packet issue request generation step S681, an authentication step S682, a master key selection step S683, a temporary key generation step S684, a packet generation step S685, an output step S686, and a reset packet. Acquisition step S687.

リセットパケット発行要求生成工程S681において、携帯端末201のリセットパケット発行要求生成部224は、リセットパケット発行要求428を生成する。リセットパケット発行要求生成部224は、リセットパケット発行要求428を管理サーバ101(リセットパケット生成部166)に対して送信する。
認証工程S682において、管理サーバ101の認証部172は、リセットパケット発行要求428を受信する。認証部172は、リセットパケット発行要求428を検証する。検証に失敗した場合、認証部172は、リセットパケット通知処理S605を終了する。検証に成功した場合、認証部172は、マスター鍵選択工程S683へ処理を進める。
マスター鍵選択工程S683において、管理サーバ101のマスター鍵選択部173は、マスター鍵411を任意に選択する。マスター鍵選択部173は、選択したマスター鍵411に対応する鍵種別情報422を生成する。
一時鍵生成工程S684において、管理サーバ101の一時鍵生成部174は、マスター鍵411と定数417とに基づいて、一時鍵413を生成する。
パケット生成工程S685において、管理サーバ101のパケット生成部176は、一時鍵413を使って、鍵種別情報422と、定数417と、世代番号412と、現在時刻418とから、リセットパケット419を生成する。
出力工程S686において、管理サーバ101の出力判定部177は、リセットパケット419を携帯端末201(対管理サーバ通信部221)に対して送信する。
リセットパケット取得工程S687において、携帯端末201のリセットパケット取得部225は、リセットパケット419を受信する。リセットパケット取得部225は、リセットパケット419を対検針メータ通信部291に対して出力する。
In the reset packet issue request generation step S681, the reset packet issue request generation unit 224 of the mobile terminal 201 generates a reset packet issue request 428. The reset packet issue request generation unit 224 transmits a reset packet issue request 428 to the management server 101 (reset packet generation unit 166).
In the authentication step S682, the authentication unit 172 of the management server 101 receives the reset packet issue request 428. The authentication unit 172 verifies the reset packet issue request 428. If the verification fails, the authentication unit 172 ends the reset packet notification process S605. If the verification is successful, the authentication unit 172 advances the process to the master key selection step S683.
In the master key selection step S683, the master key selection unit 173 of the management server 101 arbitrarily selects the master key 411. The master key selection unit 173 generates key type information 422 corresponding to the selected master key 411.
In the temporary key generation step S684, the temporary key generation unit 174 of the management server 101 generates a temporary key 413 based on the master key 411 and the constant 417.
In the packet generation step S685, the packet generation unit 176 of the management server 101 generates the reset packet 419 from the key type information 422, the constant 417, the generation number 412 and the current time 418 using the temporary key 413. .
In the output step S686, the output determination unit 177 of the management server 101 transmits a reset packet 419 to the mobile terminal 201 (to the management server communication unit 221).
In the reset packet acquisition step S687, the reset packet acquisition unit 225 of the mobile terminal 201 receives the reset packet 419. The reset packet acquisition unit 225 outputs the reset packet 419 to the counter meter communication unit 291.

図41は、この実施の形態における世代番号リセット処理S606の流れの一例を示すフロー図である。   FIG. 41 is a flowchart showing an exemplary flow of the generation number reset process S606 in this embodiment.

世代番号リセット処理S606は、例えば、リセットパケット出力工程S691と、分離工程S692と、マスター鍵選択工程S693と、一時鍵生成工程S694と、メッセージ検証工程S695と、受信判定工程S696と、世代番号リセット工程S697と、マスター鍵選択工程S701と、一時鍵生成工程S702と、応答メッセージ生成工程S703と、多重化工程S704と、リセット応答取得工程S705とを有する。   The generation number reset processing S606 includes, for example, a reset packet output step S691, a separation step S692, a master key selection step S693, a temporary key generation step S694, a message verification step S695, a reception determination step S696, and a generation number reset. The process includes a step S697, a master key selection step S701, a temporary key generation step S702, a response message generation step S703, a multiplexing step S704, and a reset response acquisition step S705.

リセットパケット出力工程S691において、携帯端末201のリセットパケット出力部297は、リセットパケット419を検針メータ301(対携帯端末通信部391)に対して送信する。
分離工程S692において、検針メータ301の分離部394は、リセットパケット419を受信する。分離部394は、リセットパケット419から、鍵種別情報422と定数417とを分離する。
マスター鍵選択工程S693において、検針メータ301のマスター鍵選択部363は、鍵種別情報422に基づいて、マスター鍵431を選択する。マスター鍵選択部363は、鍵種別情報422を記憶する。
一時鍵生成工程S694において、検針メータ301の一時鍵生成部364は、マスター鍵431と定数417とに基づいて、一時鍵435を生成する。
メッセージ検証工程S695において、検針メータ301の応答メッセージ生成部397は、一時鍵435を使って、リセットパケット419を検証し、世代番号412と生成時刻416と検証結果437とを生成する。
受信判定工程S696において、検針メータ301の受信判定部396は、生成時刻416と現在時刻438とと検証結果437とに基づいて、世代番号412を出力するか否かを判定する。世代番号412を出力しないと判定した場合、受信判定部396は、世代番号リセット処理S606を終了する。世代番号412を出力すると判定した場合、受信判定部396は、世代番号412を出力する。
世代番号リセット工程S697において、検針メータ301のメッセージ処理部381は、世代番号カウンタ331が記憶した世代番号432を、世代番号412で書き換える。世代番号カウンタ331は、世代番号412を記憶する。メッセージ処理部381は、応答433を生成する。
マスター鍵選択工程S701において、検針メータ301のマスター鍵選択部363は、記憶していた鍵種別情報422に基づいて、マスター鍵431を選択する。マスター鍵選択部363は、選択したマスター鍵431と鍵種別情報422とを出力する。
一時鍵生成工程S702において、検針メータ301の一時鍵生成部364は、マスター鍵431と世代番号432とに基づいて、一時鍵435を生成する。一時鍵生成工程S702で一時鍵生成部364が生成する一時鍵435は、一時鍵生成工程S694で一時鍵生成部364が生成した一時鍵435と同一である。
応答メッセージ生成工程S703において、検針メータ301の応答メッセージ生成部397は、一時鍵生成工程S672で一時鍵生成部364が生成した一時鍵435を使って、メッセージ認証子440を生成する。なお、応答メッセージ生成部397は、一時鍵生成工程S655で一時鍵生成部364が生成した一時鍵435を使ってメッセージ認証子440を生成する構成であってもよい。その場合、マスター鍵選択工程S671及び一時鍵生成工程S672は、なくてもよい。
多重化工程S704において、検針メータ301の多重化部393は、応答433とメッセージ認証子440と世代番号432と鍵種別情報422とを多重化して、リセット応答439を生成する。多重化部393は、リセット応答439を携帯端末201(対検針メータ通信部291)に対して送信する。
リセット応答取得工程S705において、携帯端末201の対検針メータ通信部291は、リセット応答439を受信する。
In the reset packet output step S691, the reset packet output unit 297 of the mobile terminal 201 transmits a reset packet 419 to the meter-reading meter 301 (for the mobile terminal communication unit 391).
In the separation step S692, the separation unit 394 of the meter-reading meter 301 receives the reset packet 419. The separation unit 394 separates the key type information 422 and the constant 417 from the reset packet 419.
In the master key selection step S693, the master key selection unit 363 of the meter-reading meter 301 selects the master key 431 based on the key type information 422. The master key selection unit 363 stores key type information 422.
In the temporary key generation step S694, the temporary key generation unit 364 of the meter-reading meter 301 generates a temporary key 435 based on the master key 431 and the constant 417.
In the message verification step S695, the response message generation unit 397 of the meter-reading meter 301 verifies the reset packet 419 using the temporary key 435, and generates a generation number 412, a generation time 416, and a verification result 437.
In the reception determination step S696, the reception determination unit 396 of the meter-reading meter 301 determines whether to output the generation number 412 based on the generation time 416, the current time 438, and the verification result 437. If it is determined that the generation number 412 is not output, the reception determination unit 396 ends the generation number reset process S606. When it is determined that the generation number 412 is output, the reception determination unit 396 outputs the generation number 412.
In the generation number reset step S697, the message processing unit 381 of the meter-reading meter 301 rewrites the generation number 432 stored in the generation number counter 331 with the generation number 412. The generation number counter 331 stores the generation number 412. The message processing unit 381 generates a response 433.
In the master key selection step S701, the master key selection unit 363 of the meter-reading meter 301 selects the master key 431 based on the stored key type information 422. The master key selection unit 363 outputs the selected master key 431 and key type information 422.
In the temporary key generation step S702, the temporary key generation unit 364 of the meter-reading meter 301 generates a temporary key 435 based on the master key 431 and the generation number 432. The temporary key 435 generated by the temporary key generation unit 364 in the temporary key generation step S702 is the same as the temporary key 435 generated by the temporary key generation unit 364 in the temporary key generation step S694.
In response message generation step S703, the response message generation unit 397 of the meter-reading meter 301 generates a message authenticator 440 using the temporary key 435 generated by the temporary key generation unit 364 in the temporary key generation step S672. Note that the response message generation unit 397 may be configured to generate the message authenticator 440 using the temporary key 435 generated by the temporary key generation unit 364 in the temporary key generation step S655. In that case, the master key selection step S671 and the temporary key generation step S672 may be omitted.
In the multiplexing step S704, the multiplexing unit 393 of the meter-reading meter 301 multiplexes the response 433, the message authenticator 440, the generation number 432, and the key type information 422 to generate a reset response 439. The multiplexing unit 393 transmits a reset response 439 to the portable terminal 201 (counter meter communication unit 291).
In the reset response acquisition step S705, the meter reading meter communication unit 291 of the mobile terminal 201 receives the reset response 439.

なお、管理サーバ101と検針メータ301とが直接通信して、管理サーバ101がリセットパケット419を検針メータ301に対して直接送信する構成であってもよい。   Note that the management server 101 and the meter-reading meter 301 may directly communicate with each other, and the management server 101 may directly transmit the reset packet 419 to the meter-reading meter 301.

この実施の形態における通信装置(検針メータ301)は、管理サーバ(101)にて生成したカウンタ値をリセットする信号を受け、前記前期カウンタの値を前記リセット信号に含まれるカウンタ値に更新する。   The communication device (meter reading meter 301) in this embodiment receives a signal for resetting the counter value generated by the management server (101), and updates the value of the previous period counter to the counter value included in the reset signal.

管理サーバ(101)は、カウンタ値をリセットする信号を生成する。
管理サーバは、予め共有しているマスター鍵と、所定の定数から一時鍵を生成し、少なくとも修正後のカウンタ値、信号の生成日時に対してメッセージ検証子を生成し、前記定数、前記修正後のカウンタ値、前記信号の生成日時、前記メッセージ検証子をリセット信号として送信する。
The management server (101) generates a signal for resetting the counter value.
The management server generates a temporary key from a master key shared in advance and a predetermined constant, generates a message verifier for at least the counter value after correction and the generation date and time of the signal, The counter value, the signal generation date and time, and the message verifier are transmitted as a reset signal.

通信装置(検針メータ301)は、管理サーバ(101)から発信されたリセット信号を受信する。
通信装置は、少なくとも修正後のカウンタ値、信号の生成日時に対するメッセージ認証を行なった後、自身の持つ時計の現在時刻と、リセット信号に含まれる生成日時を比較し、前記生成日時が前記現在時刻より新しいか、その差が一定以下の場合に自身の持つカウンタの値を前記修正後のカウンタ値に更新する。
The communication device (meter meter 301) receives a reset signal transmitted from the management server (101).
After performing message authentication for at least the corrected counter value and signal generation date and time, the communication device compares the current time of its own clock with the generation date and time included in the reset signal, and the generation date and time is the current time. If it is newer or the difference is less than a certain value, the counter value of its own is updated to the corrected counter value.

この実施の形態における自動検針システム801(暗号通信システム)は、検針メータ(301)の世代番号が管理サーバ(101)より進んでいたとしても、管理サーバの世代番号にあわせることができる。また、リセットパケットには日付を入れているため、メータに時計を持たせることで、古いリセットパケットや不正に取得したリセットパケットを無効化することができる。さらに、リセットパケット受信後、一定期間(たとえば1日)は、メッセージの受理条件にリセットパケットで更新した世代番号と同じ番号しか受け付けないようにすることで、世代番号の更新過程においても、上書きされること無く、確実に同期を取ることができる。   The automatic meter reading system 801 (encryption communication system) in this embodiment can match the generation number of the management server even if the generation number of the meter reading meter (301) is advanced from the management server (101). Further, since the date is put in the reset packet, it is possible to invalidate the old reset packet or the illegally acquired reset packet by providing the meter with a clock. Furthermore, by receiving only the same number as the generation number updated with the reset packet as a message acceptance condition for a certain period (for example, 1 day) after receiving the reset packet, it is overwritten even in the generation number updating process. Without fail, and can be synchronized reliably.

まとめ.
以上、各実施の形態で説明した構成は、一例であり、他の構成であってもよい。例えば、異なる実施の形態で説明した構成を組み合わせた構成であってもよいし、本質的でない部分の構成を、他の構成で置き換えた構成であってもよい。
Summary.
As described above, the configuration described in each embodiment is an example, and another configuration may be used. For example, the structure which combined the structure demonstrated in different embodiment may be sufficient, and the structure which replaced the structure of the non-essential part with the other structure may be sufficient.

以上説明した暗号通信システム(暗号通信システム800、自動検針システム801)は、管理装置(100、暗号通信装置500、管理サーバ101)と、第一暗号通信装置(暗号通信装置200,500、携帯端末201)と、第二暗号通信装置(暗号通信装置300,500、検針メータ301)とを備える。
上記管理装置は、マスター鍵記憶部(110、111)と、一時鍵生成部(160、164)とを有する。
上記管理装置の上記マスター鍵記憶部は、第一マスター鍵(マスター鍵411)を記憶する。
上記管理装置の上記一時鍵生成部は、上記管理装置の上記マスター鍵記憶部が記憶した上記第一マスター鍵と、一時鍵生成用データ(世代番号412)とを使って、第一一時鍵(一時鍵413)を生成する。
上記第一暗号通信装置は、一時鍵生成用データ通知部(250、対検針メータ通信部291)と、暗号通信部(290、対検針メータ通信部291)とを有する。
上記第一暗号通信装置の上記一時鍵生成用データ通知部は、上記管理装置の上記一時鍵生成部が上記第一一時鍵の生成に使った上記一時鍵生成用データを、上記第二暗号通信装置に対して通知する。
上記第一暗号通信装置の上記暗号通信部は、上記管理装置の上記一時鍵生成部が生成した上記第一一時鍵を使って、上記第二暗号通信装置との間で暗号通信をする。
上記第二暗号通信装置は、マスター鍵記憶部(310、311)と、一時鍵生成用データ検証部(350、受信判定部396)と、一時鍵生成部(360、364)と、暗号通信部(390、対携帯端末通信部391)とを有する。
上記第二暗号通信装置の上記マスター鍵記憶部は、上記管理装置の上記マスター鍵記憶部が記憶した上記第一マスター鍵と同一の、又は、上記第一マスター鍵に対応する、第二マスター鍵(マスター鍵431)を記憶する。
上記第二暗号通信装置の上記一時鍵生成用データ検証部は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であるか否かを判定する。
上記第二暗号通信装置の上記一時鍵生成部は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であると上記第二暗号通信装置の上記一時鍵生成用データ検証部が判定した場合に、上記第二暗号通信装置の上記マスター鍵記憶部が記憶した上記第二マスター鍵と、上記第二暗号通信装置の上記一時鍵生成用データ検証部が有効であると判定した上記一時鍵生成用データとを使って、上記管理装置の上記一時鍵生成部が生成した上記第一一時鍵と同一の、又は、上記第一一時鍵に対応する第二一時鍵(一時鍵435)を生成する。
上記第二暗号通信装置の上記暗号通信部は、上記第二暗号通信装置の上記一時鍵生成部が生成した上記第二一時鍵を使って、上記第一暗号通信装置との間で暗号通信をする。
The encryption communication system (encryption communication system 800, automatic meter reading system 801) described above includes a management device (100, encryption communication device 500, management server 101) and a first encryption communication device (encryption communication devices 200 and 500, portable terminal). 201) and a second encryption communication device (encryption communication devices 300 and 500, meter-reading meter 301).
The management apparatus includes a master key storage unit (110, 111) and a temporary key generation unit (160, 164).
The master key storage unit of the management device stores a first master key (master key 411).
The temporary key generation unit of the management device uses the first master key stored in the master key storage unit of the management device and the temporary key generation data (generation number 412) to generate a first temporary key. (Temporary key 413) is generated.
The first cipher communication device includes a temporary key generation data notifying unit (250, meter reading meter communication unit 291) and a cipher communication unit (290, meter reading meter communication unit 291).
The temporary key generation data notifying unit of the first encryption communication device is configured to transfer the temporary key generation data used by the temporary key generation unit of the management device to generate the first temporary key to the second encryption Notify the communication device.
The cryptographic communication unit of the first cryptographic communication device performs cryptographic communication with the second cryptographic communication device using the first temporary key generated by the temporary key generation unit of the management device.
The second encryption communication device includes a master key storage unit (310, 311), a temporary key generation data verification unit (350, reception determination unit 396), a temporary key generation unit (360, 364), and an encryption communication unit. (390, portable terminal communication unit 391).
The master key storage unit of the second encryption communication device is the same as the first master key stored in the master key storage unit of the management device or corresponds to the first master key. (Master key 431) is stored.
The temporary key generation data verification unit of the second encryption communication device determines whether the temporary key generation data notified from the temporary key generation data notification unit of the first encryption communication device is valid. judge.
When the temporary key generation data notified from the temporary key generation data notifying unit of the first cryptographic communication device is valid, the temporary key generation unit of the second cryptographic communication device is valid. When the temporary key generation data verification unit determines, the second master key stored in the master key storage unit of the second encryption communication device and the temporary key generation data of the second encryption communication device The first temporary key that is the same as the first temporary key generated by the temporary key generation unit of the management device using the temporary key generation data determined to be valid by the verification unit or the first temporary key A second temporary key (temporary key 435) corresponding to is generated.
The cryptographic communication unit of the second cryptographic communication device uses the second temporary key generated by the temporary key generation unit of the second cryptographic communication device to perform cryptographic communication with the first cryptographic communication device. do.

第二暗号通信装置が第一暗号通信装置から通知された一時鍵生成用データを使って一時鍵を生成するので、第一暗号通信装置と第二暗号通信装置とが、同一の、又は対応する一時鍵を使って、暗号通信をすることができる。   Since the second cryptographic communication apparatus generates a temporary key using the temporary key generation data notified from the first cryptographic communication apparatus, the first cryptographic communication apparatus and the second cryptographic communication apparatus are the same or correspond to each other. You can use the temporary key for encrypted communication.

上記管理装置(100、暗号通信装置500、管理サーバ101)は、更に、一時鍵生成用データ記憶部(130、世代番号カウンタ131)と、一時鍵生成用データ更新部(140、世代番号カウンタ131)とを有する。
上記管理装置の上記一時鍵生成用データ記憶部は、上記管理装置の上記一時鍵生成部(160、164)が上記第一一時鍵(一時鍵413)の生成に使う一時鍵生成用データ(世代番号412)を記憶する。
上記管理装置の上記一時鍵生成用データ更新部は、所定の周期が経過するごとに、上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、繰り返し更新する。
上記第二暗号通信装置(暗号通信装置300,500、検針メータ301)は、更に、検証用データ記憶部(330、一時鍵生成用データ記憶部130、世代番号カウンタ331)と、検証用データ更新部(340、一時鍵生成用データ更新部140、世代番号カウンタ331)とを有する。
上記第二暗号通信装置の上記検証用データ記憶部は、検証用データ(一時鍵生成用データ、世代番号432)を記憶する。
上記第二暗号通信装置の上記検証用データ更新部は、所定の周期が経過するごとに、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データを、繰り返し更新する。
上記第二暗号通信装置の上記一時鍵生成用データ検証部は、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データを使って、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であるか否かを判定する。
The management device (100, encryption communication device 500, management server 101) further includes a temporary key generation data storage unit (130, generation number counter 131) and a temporary key generation data update unit (140, generation number counter 131). ).
The temporary key generation data storage unit of the management device includes temporary key generation data (temporary key generation data (160, 164) used by the management device for generating the first temporary key (temporary key 413)). The generation number 412) is stored.
The temporary key generation data update unit of the management device repeatedly updates the temporary key generation data stored in the temporary key generation data storage unit of the management device every time a predetermined period elapses.
The second encryption communication device (encryption communication devices 300 and 500, meter-reading meter 301) further includes a verification data storage unit (330, temporary key generation data storage unit 130, generation number counter 331), and verification data update. (340, temporary key generation data update unit 140, generation number counter 331).
The verification data storage unit of the second encryption communication device stores verification data (temporary key generation data, generation number 432).
The verification data update unit of the second cryptographic communication device repeatedly updates the verification data stored in the verification data storage unit of the second cryptographic communication device every time a predetermined period elapses.
The temporary key generation data verification unit of the second cryptographic communication device uses the verification data stored in the verification data storage unit of the second cryptographic communication device to use the temporary data of the first cryptographic communication device. It is determined whether or not the temporary key generation data notified from the key generation data notification unit is valid.

管理装置が一時鍵生成用データを繰り返し更新し、それに合わせて、第二暗号通信装置が検証用データを繰り返し更新するので、古い一時鍵生成用データから生成された一時鍵を無効にすることができる。これにより、第一暗号通信装置から第一一時鍵が漏洩しても、第三者が、第二暗号通信装置との間で暗号通信をするのを防ぐことができる。また、第一暗号通信装置は第一マスター鍵を知らないので、第一暗号通信装置から第一マスター鍵が漏洩することはない。このため、第一暗号通信装置から情報が漏洩しても、第三者が、第二暗号通信装置と暗号通信できる第一一時鍵を生成することはできない。   Since the management device repeatedly updates the temporary key generation data and the second encryption communication device repeatedly updates the verification data accordingly, the temporary key generated from the old temporary key generation data may be invalidated. it can. Thereby, even if the first temporary key is leaked from the first cryptographic communication device, it is possible to prevent a third party from performing cryptographic communication with the second cryptographic communication device. Further, since the first cryptographic communication device does not know the first master key, the first master key is not leaked from the first cryptographic communication device. For this reason, even if information leaks from the first encryption communication device, a third party cannot generate a first temporary key that can be encrypted with the second encryption communication device.

上記管理装置(100、暗号通信装置500、管理サーバ101)の上記一時鍵生成用データ記憶部(130、世代番号カウンタ131)が記憶した上記一時鍵生成用データ(世代番号412)、及び、上記第二暗号通信装置(暗号通信装置300,500、検針メータ301)の上記検証用データ記憶部(330、一時鍵生成用データ記憶部130、世代番号カウンタ331)が記憶した上記検証用データ(一時鍵生成用データ、世代番号432)は、数値を表わすデータである。
上記管理装置の上記一時鍵生成用データ更新部(140、世代番号カウンタ131)は、上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データが表わす上記数値に、所定の増分値を加算した和を算出し、上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、算出した上記和を表わすデータで更新する。
上記第二暗号通信装置の上記検証用データ更新部(340、一時鍵生成用データ更新部140、世代番号カウンタ331)は、上記管理装置の上記一時鍵生成用データ更新部が上記一時鍵生成用データを更新する上記所定の周期の略n倍(nは、正の実数。)の周期が経過するごとに、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データが表わす上記数値に、上記管理装置の上記一時鍵生成用データ更新部が上記一時鍵生成用データの更新に使う上記所定の増分値のn倍の増分値を加算した和を算出し、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データを、算出した上記和を表わすデータで更新する。
上記第二暗号通信装置の上記一時鍵生成用データ検証部(350、受信判定部396)は、上記第一暗号通信装置(暗号通信装置200,500、携帯端末201)の上記一時鍵生成用データ通知部(250、対検針メータ通信部291)から通知された上記一時鍵生成用データが表わす上記数値が、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データが表わす上記数値以上である場合に、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であると判定する。
The temporary key generation data (generation number 412) stored in the temporary key generation data storage unit (130, generation number counter 131) of the management device (100, encryption communication device 500, management server 101); The verification data (temporary) stored in the verification data storage unit (330, temporary key generation data storage unit 130, generation number counter 331) of the second encryption communication device (encryption communication device 300, 500, meter-reading meter 301). The key generation data (generation number 432) is data representing a numerical value.
The temporary key generation data update unit (140, generation number counter 131) of the management device sets a predetermined value to the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit of the management device. Is added, and the temporary key generation data stored in the temporary key generation data storage unit of the management device is updated with data representing the calculated sum.
The verification data update unit (340, temporary key generation data update unit 140, generation number counter 331) of the second cryptographic communication device is used by the temporary key generation data update unit of the management device for the temporary key generation. The verification data stored in the verification data storage unit of the second encryption communication device is stored every time a cycle approximately n times (n is a positive real number) of the predetermined cycle for updating data elapses. A sum obtained by adding an increment value n times the predetermined increment value used by the temporary key generation data updating unit of the management device to update the temporary key generation data to the numerical value to be expressed; The verification data stored in the verification data storage unit of the encryption communication device is updated with data representing the calculated sum.
The temporary key generation data verification unit (350, reception determination unit 396) of the second encryption communication device is the temporary key generation data of the first encryption communication device (encryption communication devices 200, 500, portable terminal 201). The numerical value represented by the temporary key generation data notified from the notification unit (250, counter meter communication unit 291) is represented by the verification data stored in the verification data storage unit of the second encryption communication device. If it is greater than or equal to the numerical value, it is determined that the temporary key generation data notified from the temporary key generation data notification unit of the first encryption communication device is valid.

これにより、一時鍵生成用データが有効であるか否かを容易に判定することができる。   Thereby, it is possible to easily determine whether or not the temporary key generation data is valid.

上記第二暗号通信装置(暗号通信装置300,500、検針メータ301)の上記検証用データ記憶部(330、一時鍵生成用データ記憶部130、世代番号カウンタ331)は、上記第一暗号通信装置(暗号通信装置200,500、携帯端末201)の上記一時鍵生成用データ通知部(250、対検針メータ通信部291)から通知された上記一時鍵生成用データ(世代番号412)が有効であると上記第二暗号通信装置の上記一時鍵生成用データ検証部(350、受信判定部396)が判定した場合に、上記第二暗号通信装置の上記一時鍵生成用データ検証部が有効であると判定した上記一時鍵生成用データを、上記検証用データ(一時鍵生成用データ、世代番号432)として記憶する。   The verification data storage unit (330, temporary key generation data storage unit 130, generation number counter 331) of the second encryption communication device (encryption communication device 300, 500, meter-reading meter 301) is the first encryption communication device. The temporary key generation data (generation number 412) notified from the temporary key generation data notification unit (250, counter meter communication unit 291) of (encryption communication devices 200, 500, portable terminal 201) is valid. And the temporary key generation data verification unit (350, reception determination unit 396) of the second encryption communication device determines that the temporary key generation data verification unit of the second encryption communication device is valid. The determined temporary key generation data is stored as the verification data (temporary key generation data, generation number 432).

これにより、管理装置の一時鍵生成用データと、第二暗号通信装置の検証用データとを、容易に同期させることができる。   Thereby, the temporary key generation data of the management device and the verification data of the second encryption communication device can be easily synchronized.

上記管理装置(100、管理サーバ101)は、更に、初期化コマンド生成部(165、リセットパケット生成部166)を有する。
上記管理装置の上記初期化コマンド生成部は、上記第二暗号通信装置(暗号通信装置300、検針メータ301)の上記検証用データ記憶部(330、世代番号カウンタ331)が記憶した検証用データ(世代番号432)を初期化する初期化コマンド(リセットパケット419)を生成する。
上記第一暗号通信装置(暗号通信装置200、携帯端末201)は、更に、初期化コマンド通知部(285、リセットパケット出力部297)を有する。
上記第一暗号通信装置の上記初期化コマンド通知部は、上記管理装置の上記初期化コマンド生成部が生成した上記初期化コマンドを上記第二暗号通信装置に対して通知する。
上記第二暗号通信装置は、更に、初期化コマンド検証部(375、受信判定部396)を有する。
上記第二暗号通信装置の上記初期化コマンド検証部は、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドが有効であるか否かを判定する。
上記第二暗号通信装置の上記検証用データ記憶部は、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドが有効であると上記第二暗号通信装置の上記初期化コマンド検証部が判定した場合に、記憶した上記検証用データを初期化する。
The management apparatus (100, management server 101) further includes an initialization command generation unit (165, reset packet generation unit 166).
The initialization command generation unit of the management device includes verification data (330, generation number counter 331) stored in the verification data storage unit (330, generation number counter 331) of the second encryption communication device (encryption communication device 300, meter-reading meter 301). An initialization command (reset packet 419) for initializing the generation number 432) is generated.
The first encryption communication device (encryption communication device 200, portable terminal 201) further includes an initialization command notification unit (285, reset packet output unit 297).
The initialization command notification unit of the first encryption communication device notifies the second encryption communication device of the initialization command generated by the initialization command generation unit of the management device.
The second cryptographic communication apparatus further includes an initialization command verification unit (375, reception determination unit 396).
The initialization command verification unit of the second encryption communication device determines whether the initialization command notified from the initialization command notification unit of the first encryption communication device is valid.
The verification data storage unit of the second cryptographic communication device may be configured such that the initialization command of the second cryptographic communication device is valid when the initialization command notified from the initialization command notification unit of the first cryptographic communication device is valid. If the verification command verification unit determines, the stored verification data is initialized.

これにより、なんらかの原因により、検証用データが異常値になった場合でも、検証用データを初期化して、正常値に戻すことができる。   As a result, even if the verification data becomes an abnormal value due to some cause, the verification data can be initialized and returned to the normal value.

上記第二暗号通信装置(暗号通信装置300、検針メータ301)の上記初期化コマンド検証部(375、受信判定部396)は、上記第一暗号通信装置(暗号通信装置200、携帯端末201)の上記初期化コマンド通知部(285、リセットパケット出力部297)から通知された上記初期化コマンド(リセットパケット419)が生成されてから所定の期間が経過していない場合に、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドが有効であると判定する。   The initialization command verification unit (375, reception determination unit 396) of the second encryption communication device (encryption communication device 300, meter-reading meter 301) is the same as the first encryption communication device (encryption communication device 200, portable terminal 201). The first encryption communication device when the predetermined period has not elapsed since the initialization command (reset packet 419) notified from the initialization command notification unit (285, reset packet output unit 297) has been generated It is determined that the initialization command notified from the initialization command notification unit is valid.

これにより、古い初期化コマンドを無効にすることができるので、初期化コマンドが漏洩した場合でも、第三者が初期化コマンドを悪用して第二暗号通信装置との間で暗号通信をするのを防ぐことができる。   This makes it possible to invalidate the old initialization command, so that even if the initialization command is leaked, a third party can misuse the initialization command to perform encrypted communication with the second encryption communication device. Can be prevented.

上記管理装置(100、管理サーバ101)の上記初期化コマンド生成部(165、リセットパケット生成部166)が生成した上記初期化コマンド(リセットパケット419)は、上記初期化コマンドが生成された日付を表わす情報を含む。
上記第二暗号通信装置(暗号通信装置300、検針メータ301)の上記初期化コマンド検証部(375、受信判定部396)は、上記第一暗号通信装置(暗号通信装置200、携帯端末201)の上記初期化コマンド通知部(285、リセットパケット出力部297)から通知された上記初期化コマンドに含まれる上記情報が表わす上記日付が、現在の日付から所定の日数前より以後である場合に、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドが有効であると判定する。
The initialization command (reset packet 419) generated by the initialization command generation unit (165, reset packet generation unit 166) of the management apparatus (100, management server 101) indicates the date when the initialization command was generated. Contains information to represent.
The initialization command verification unit (375, reception determination unit 396) of the second encryption communication device (encryption communication device 300, meter-reading meter 301) is the same as the first encryption communication device (encryption communication device 200, portable terminal 201). When the date represented by the information included in the initialization command notified from the initialization command notification unit (285, reset packet output unit 297) is after a predetermined number of days before the current date, It determines with the said initialization command notified from the said initialization command notification part of a 1st encryption communication apparatus being effective.

これにより、生成されてから所定の日数以上が経過した初期化コマンドを無効にすることができる。   This makes it possible to invalidate an initialization command that has passed a predetermined number of days since it was generated.

上記管理装置(100、管理サーバ101)の上記初期化コマンド生成部(165、リセットパケット生成部166)が生成した上記初期化コマンド(リセットパケット419)は、上記管理装置の上記一時鍵生成用データ記憶部(130、世代番号カウンタ131)が記憶した上記一時鍵生成用データ(世代番号412)を表わす情報を含む。
上記第二暗号通信装置(暗号通信装置300、検針メータ301)の上記検証用データ記憶部(330、世代番号カウンタ331)は、有効であると上記第二暗号通信装置の上記初期化コマンド検証部(375、受信判定部396)が判定した上記初期化コマンドに含まれる上記情報が表わす上記一時鍵生成用データを、上記検証用データ(世代番号432)として記憶することにより、上記検証用データを初期化する。
The initialization command (reset packet 419) generated by the initialization command generation unit (165, reset packet generation unit 166) of the management device (100, management server 101) is the temporary key generation data of the management device. It includes information representing the temporary key generation data (generation number 412) stored in the storage unit (130, generation number counter 131).
If the verification data storage unit (330, generation number counter 331) of the second encryption communication device (encryption communication device 300, meter-reading meter 301) is valid, the initialization command verification unit of the second encryption communication device. By storing the temporary key generation data represented by the information included in the initialization command determined by (375, reception determination unit 396) as the verification data (generation number 432), the verification data is stored. initialize.

これにより、管理装置の一時鍵生成用データと、第二暗号通信装置の検証用データとを、同期させることができる。   As a result, the temporary key generation data of the management device and the verification data of the second encryption communication device can be synchronized.

上記第二暗号通信装置(暗号通信装置300、検針メータ301)の上記一時鍵生成用データ検証部(350、受信判定部396)は、上記第二暗号通信装置の上記検証用データ記憶部(330、世代番号カウンタ331)が上記検証用データ(世代番号432)を初期化してから所定の期間が経過するまでの間は、上記第一暗号通信装置(暗号通信装置200、携帯端末201)の上記一時鍵生成用データ通知部(250、対検針メータ通信部291)から通知された上記一時鍵生成用データ(世代番号412)が表わす上記数値が、上記第二暗号通信装置の上記検証用データ記憶部(330、世代番号カウンタ331)が記憶した上記検証用データ(世代番号432)が表わす上記数値と等しい場合に、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であると判定し、上記第二暗号通信装置の上記検証用データ記憶部が上記検証用データを初期化する前、及び、上記第二暗号通信装置の上記検証用データ記憶部が上記検証用データを初期化してから所定の期間が経過した後は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが表わす上記数値が、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データが表わす上記数値以上である場合に、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であると判定する。   The temporary key generation data verification unit (350, reception determination unit 396) of the second encryption communication device (encryption communication device 300, meter-reading meter 301) is the verification data storage unit (330) of the second encryption communication device. , The generation number counter 331) initializes the verification data (generation number 432) until a predetermined period elapses, the first encryption communication device (encryption communication device 200, portable terminal 201) described above. The numerical value represented by the temporary key generation data (generation number 412) notified from the temporary key generation data notification unit (250, counter meter communication unit 291) is the verification data storage of the second encryption communication device. When the first encryption communication device is equal to the numerical value represented by the verification data (generation number 432) stored in the unit (330, generation number counter 331) It is determined that the temporary key generation data notified from the generation data notification unit is valid, and the verification data storage unit of the second cryptographic communication device initializes the verification data, and After a predetermined period has elapsed since the verification data storage unit of the second cryptographic communication device has initialized the verification data, the temporary key generation data notification unit of the first cryptographic communication device is notified. When the numerical value represented by the temporary key generation data is equal to or greater than the numerical value represented by the verification data stored in the verification data storage unit of the second cryptographic communication device, the first cryptographic communication device It is determined that the temporary key generation data notified from the temporary key generation data notification unit is valid.

これにより、検証用データが初期化されてから所定の期間が経過するまでの間は、初期化された検証用データと等しい一時鍵生成用データしか受け付けないので、初期化コマンドや一時鍵が漏洩した場合でも、第三者が第二暗号通信装置と暗号通信をするのを防ぐことができる。   As a result, only the temporary key generation data equal to the initialized verification data is accepted until the predetermined period elapses after the verification data is initialized, so that the initialization command and the temporary key are leaked. Even in this case, it is possible to prevent a third party from performing cryptographic communication with the second cryptographic communication device.

上記管理装置(100、管理サーバ101)の上記初期化コマンド生成部(165、リセットパケット生成部166)が生成した上記初期化コマンド(リセットパケット419)は、上記管理装置の上記マスター鍵記憶部(110、111)が記憶した第一マスター鍵(マスター鍵411)を使って暗号化した情報を含む。
上記第二暗号通信装置(暗号通信装置300、検針メータ301)の上記初期化コマンド検証部(375、メッセージ検証部398)は、上記第一暗号通信装置(暗号通信装置200、携帯端末201)の上記初期化コマンド通知部(285、リセットパケット出力部297)から通知された上記初期化コマンドに含まれる情報を、上記第二暗号通信装置の上記マスター鍵記憶部(310、311)が記憶した第二マスター鍵(マスター鍵431)を使って復号する。
The initialization command (reset packet 419) generated by the initialization command generation unit (165, reset packet generation unit 166) of the management device (100, management server 101) is the master key storage unit ( 110, 111) includes information encrypted using the first master key (master key 411) stored.
The initialization command verification unit (375, message verification unit 398) of the second cryptographic communication device (cryptographic communication device 300, meter-reading meter 301) is the same as the first cryptographic communication device (cryptographic communication device 200, portable terminal 201). Information included in the initialization command notified from the initialization command notification unit (285, reset packet output unit 297) is stored in the master key storage unit (310, 311) of the second encryption communication device. Decrypt using the second master key (master key 431).

これにより、第一マスター鍵を知っているものが初期化コマンドを生成したことを検証することができる。   Thereby, it can be verified that the person who knows the first master key has generated the initialization command.

上記第一暗号通信装置(暗号通信装置200、携帯端末201)は、上記管理装置から物理的に離れて構成された装置である。
上記管理装置(100、管理サーバ101)は、更に、一時鍵通知部(170、出力判定部171)と、一時鍵生成用データ通知部(150、出力判定部171)とを有する。
上記管理装置の上記一時鍵通知部は、上記管理装置の上記一時鍵生成部(160、一時鍵生成部164)が生成した上記第一一時鍵(一時鍵413)を、上記第一暗号通信装置に対して通知する。
上記管理装置の上記一時鍵生成用データ通知部は、上記管理装置の上記一時鍵生成部が上記第一一時鍵の生成に使った上記一時鍵生成用データ(世代番号412)を、上記第一暗号通信装置に対して通知する。
上記第一暗号通信装置は、更に、一時鍵記憶部(270)と、一時鍵生成用データ記憶部(230)とを有する。
上記第一暗号通信装置の上記一時鍵記憶部は、上記管理装置の上記一時鍵通知部から通知された上記第一一時鍵を記憶する。
上記第一暗号通信装置の上記一時鍵生成用データ記憶部は、上記管理装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データを記憶する。
上記第一暗号通信装置の上記一時鍵生成用データ通知部(250、対検針メータ通信部291)は、上記第一暗号通信装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、上記第二暗号通信装置(300、検針メータ301)に対して通知する。
The first encryption communication device (encryption communication device 200, portable terminal 201) is a device that is physically separated from the management device.
The management apparatus (100, management server 101) further includes a temporary key notification unit (170, output determination unit 171) and a temporary key generation data notification unit (150, output determination unit 171).
The temporary key notification unit of the management device uses the first temporary key (temporary key 413) generated by the temporary key generation unit (160, temporary key generation unit 164) of the management device as the first cryptographic communication. Notify the device.
The temporary key generation data notifying unit of the management device uses the temporary key generation data (generation number 412) used by the temporary key generation unit of the management device to generate the first temporary key. One encryption communication apparatus is notified.
The first cryptographic communication apparatus further includes a temporary key storage unit (270) and a temporary key generation data storage unit (230).
The temporary key storage unit of the first encryption communication device stores the first temporary key notified from the temporary key notification unit of the management device.
The temporary key generation data storage unit of the first encryption communication device stores the temporary key generation data notified from the temporary key generation data notification unit of the management device.
The temporary key generation data notifying unit (250, meter reading meter communication unit 291) of the first cryptographic communication device is configured to generate the temporary key stored in the temporary key generation data storage unit of the first cryptographic communication device. The data is notified to the second encryption communication device (300, meter-reading meter 301).

第一暗号通信装置があらかじめ一時鍵と一時鍵生成用データとを取得して記憶しておくことにより、管理装置と通信する回数を減らすことができる。また、第一暗号通信装置は、第一マスター鍵を知らないので、第一暗号通信装置から情報が漏洩した場合でも、第三者が、第二暗号通信装置と暗号通信できる一時鍵を生成するのを防ぐことができる。   Since the first encryption communication device acquires and stores the temporary key and temporary key generation data in advance, the number of times of communication with the management device can be reduced. In addition, since the first cryptographic communication device does not know the first master key, even if information leaks from the first cryptographic communication device, a third party generates a temporary key that can be encrypted with the second cryptographic communication device. Can be prevented.

上記第一暗号通信装置(暗号通信装置200、携帯端末201)は、携帯可能である。   The first encryption communication device (encryption communication device 200, portable terminal 201) is portable.

第一暗号通信装置が携帯可能なので、第一暗号通信装置の利用者が第一暗号通信装置を紛失し、第三者が拾得することにより、第一暗号通信装置が記憶した情報が漏洩する可能性がある。しかし、第一暗号通信装置は、第一マスター鍵を知らないので、第三者が、第二暗号通信装置と暗号通信できる一時鍵を生成するのを防ぐことができる。   Since the first cryptographic communication device is portable, the user of the first cryptographic communication device loses the first cryptographic communication device and the information stored by the first cryptographic communication device can be leaked by a third party. There is sex. However, since the first cryptographic communication device does not know the first master key, it is possible to prevent a third party from generating a temporary key that can be cryptographically communicated with the second cryptographic communication device.

以上説明した暗号処理装置(管理装置100、暗号通信装置200,300,500、管理サーバ101、携帯端末201、検針メータ301)は、マスター鍵記憶部(110、310、111、311)と、一時鍵生成部(160、360、164、364)とを有する。
上記マスター鍵記憶部は、マスター鍵(411、431)を記憶する。
上記一時鍵生成部は、上記マスター鍵記憶部が記憶した上記マスター鍵と、一時鍵生成用データ(世代番号412,432)とを使って、一時鍵(413,435)を生成する。
The cryptographic processing apparatus (the management apparatus 100, the cryptographic communication apparatuses 200, 300, 500, the management server 101, the portable terminal 201, and the meter-reading meter 301) described above includes a master key storage unit (110, 310, 111, 311) and a temporary And a key generation unit (160, 360, 164, 364).
The master key storage unit stores master keys (411, 431).
The temporary key generation unit generates a temporary key (413, 435) using the master key stored in the master key storage unit and the temporary key generation data (generation numbers 412 and 432).

マスター鍵と一時鍵生成用データとから一時鍵を生成するので、暗号通信に使う一時鍵を容易に変えることができる。   Since the temporary key is generated from the master key and the temporary key generation data, the temporary key used for encryption communication can be easily changed.

上記暗号処理装置(暗号通信装置300,500、検針メータ301)は、更に、一時鍵生成用データ検証部(350、受信判定部396)と、暗号通信部(390、対携帯端末通信部391)とを有する。
上記一時鍵生成用データ検証部は、他の暗号処理装置(暗号通信装置200,500、携帯端末201、検針メータ301)から通知された一時鍵生成用データ(世代番号412,432)が有効であるか否かを判定する。
上記一時鍵生成部は、上記他の暗号処理装置から通知された上記一時鍵生成用データが有効であると上記一時鍵生成用データ検証部が判定した場合に、上記マスター鍵記憶部(110、310、111、311)が記憶した上記マスター鍵(411、431)と、有効であると上記一時鍵生成用データ検証部が判定した上記一時鍵生成用データとを使って、一時鍵(435)を生成する。
上記暗号通信部(390、対携帯端末通信部391)は、上記一時鍵生成部が生成した上記一時鍵を使って、上記他の暗号処理装置との間で暗号通信をする。
The cryptographic processing devices (cryptographic communication devices 300 and 500, meter-reading meter 301) further include a temporary key generation data verification unit (350, reception determination unit 396) and a cryptographic communication unit (390, portable terminal communication unit 391). And have.
In the temporary key generation data verification unit, temporary key generation data (generation numbers 412 and 432) notified from other cryptographic processing devices (encryption communication devices 200 and 500, portable terminal 201, meter-reading meter 301) are valid. It is determined whether or not there is.
When the temporary key generation data verification unit determines that the temporary key generation data notified from the other cryptographic processing device is valid, the temporary key generation unit (110, 110, 310, 111, 311) stored in the master key (411, 431) and the temporary key generation data determined by the temporary key generation data verification unit as valid, the temporary key (435) Is generated.
The cryptographic communication unit (390, mobile terminal communication unit 391) performs cryptographic communication with the other cryptographic processing device using the temporary key generated by the temporary key generation unit.

他の暗号処理装置から通知された一時鍵生成用データの有効性を判定し、有効であると判定した一時鍵生成用データを使って生成した一時鍵を使って暗号通信をするので、容易に、暗号通信に使う一時鍵を合意することができる。   Since the validity of the temporary key generation data notified from other cryptographic processing devices is determined and encrypted communication is performed using the temporary key generated using the temporary key generation data determined to be valid, it is easy. A temporary key used for cryptographic communication can be agreed.

上記暗号処理装置(暗号通信装置300,500、検針メータ301)は、更に、一時鍵生成用データ記憶部(130、検証用データ記憶部330、世代番号カウンタ331)と、一時鍵生成用データ更新部(140、検証用データ更新部340、世代番号カウンタ331)とを有する。
上記一時鍵生成用データ記憶部は、上記一時鍵生成部(160、360、364)が上記一時鍵(413、435)の生成に使う一時鍵生成用データ(世代番号432)を記憶する。
上記一時鍵生成用データ更新部は、所定の周期が経過するごとに、上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、繰り返し更新する。
上記一時鍵生成用データ検証部(350、受信判定部396)は、上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを使って、上記他の暗号処理装置(暗号通信装置200,500、携帯端末201、検針メータ301)から通知された上記一時鍵生成用データ(世代番号412,432)が有効であるか否かを判定する。
The cryptographic processing devices (cryptographic communication devices 300 and 500, meter-reading meter 301) further include a temporary key generation data storage unit (130, verification data storage unit 330, generation number counter 331), and temporary key generation data update. (140, verification data update unit 340, generation number counter 331).
The temporary key generation data storage unit stores temporary key generation data (generation number 432) used by the temporary key generation unit (160, 360, 364) to generate the temporary key (413, 435).
The temporary key generation data update unit repeatedly updates the temporary key generation data stored in the temporary key generation data storage unit every time a predetermined period elapses.
The temporary key generation data verification unit (350, reception determination unit 396) uses the temporary key generation data stored in the temporary key generation data storage unit to use the other encryption processing device (encryption communication device 200). , 500, portable terminal 201, meter-reading meter 301), it is determined whether or not the temporary key generation data (generation numbers 412 and 432) is valid.

古い一時鍵生成用データを無効にすることができるので、一時鍵が漏洩した場合でも、第三者が暗号処理装置と暗号通信をするのを防ぐことができる。   Since the old temporary key generation data can be invalidated, even if the temporary key is leaked, it is possible to prevent a third party from performing cryptographic communication with the cryptographic processing device.

上記一時鍵生成用データ記憶部(130、検証用データ記憶部330、世代番号カウンタ331)が記憶した上記一時鍵生成用データ(世代番号432)は、数値を表わすデータである。
上記一時鍵生成用データ更新部(140、検証用データ更新部340、世代番号カウンタ331)は、上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データが表わす上記数値に、所定の増分値を加算した和を算出し、上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、算出した上記和を表わすデータで更新する。
上記一時鍵生成用データ検証部(350、受信判定部396)は、上記他の暗号処理装置(暗号通信装置200,500、携帯端末201、検針メータ301)から通知された上記一時鍵生成用データ(世代番号412)が表わす上記数値が、上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データが表わす上記数値以上である場合に、上記他の暗号処理装置から通知された上記一時鍵生成用データが有効であると判定する。
The temporary key generation data (generation number 432) stored in the temporary key generation data storage unit (130, verification data storage unit 330, generation number counter 331) is data representing a numerical value.
The temporary key generation data update unit (140, verification data update unit 340, generation number counter 331) sets a predetermined value to the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit. A sum obtained by adding the increment values is calculated, and the temporary key generation data stored in the temporary key generation data storage unit is updated with data representing the calculated sum.
The temporary key generation data verification unit (350, reception determination unit 396) receives the temporary key generation data notified from the other cryptographic processing devices (encryption communication devices 200 and 500, portable terminal 201, meter-reading meter 301). When the numerical value represented by (generation number 412) is greater than or equal to the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit, the temporary information notified from the other cryptographic processing device. It is determined that the key generation data is valid.

これにより、一時鍵生成用データの有効性を、容易に判定することができる。   Thereby, the validity of the temporary key generation data can be easily determined.

上記一時鍵生成用データ記憶部(130、検証用データ記憶部330、世代番号カウンタ331)は、上記他の暗号処理装置(暗号通信装置200,500、携帯端末201、検針メータ301)から通知された上記一時鍵生成用データ(世代番号412,432)が有効であると上記一時鍵生成用データ検証部(350、受信判定部396)が判定した場合に、有効であると上記一時鍵生成用データ検証部が判定した上記一時鍵生成用データを記憶する。   The temporary key generation data storage unit (130, verification data storage unit 330, generation number counter 331) is notified from the other encryption processing devices (encryption communication devices 200 and 500, portable terminal 201, meter-reading meter 301). If the temporary key generation data verification unit (350, reception determination unit 396) determines that the temporary key generation data (generation numbers 412 and 432) is valid, the temporary key generation data is valid. The temporary key generation data determined by the data verification unit is stored.

これにより、暗号処理装置間で、一時鍵生成用データを容易に同期することができる。   Thereby, the temporary key generation data can be easily synchronized between the cryptographic processing devices.

上記暗号処理装置(暗号通信装置300、検針メータ301)は、更に、初期化コマンド検証部(初期化コマンド検証部375、受信判定部396)を有する。
上記初期化コマンド検証部は、上記他の暗号処理装置(暗号通信装置200、携帯端末201、管理サーバ101)から通知された初期化コマンド(リセットパケット419)が有効であるか否かを判定する。
上記一時鍵生成用データ記憶部(検証用データ記憶部330、世代番号カウンタ331)は、上記他の暗号処理装置から通知された上記初期化コマンドが有効であると上記初期化コマンド検証部が判定した場合に、記憶した上記一時鍵生成用データ(世代番号432)を初期化する。
The cryptographic processing device (cryptographic communication device 300, meter-reading meter 301) further includes an initialization command verification unit (initialization command verification unit 375, reception determination unit 396).
The initialization command verification unit determines whether the initialization command (reset packet 419) notified from the other cryptographic processing device (encrypted communication device 200, portable terminal 201, management server 101) is valid. .
In the temporary key generation data storage unit (verification data storage unit 330, generation number counter 331), the initialization command verification unit determines that the initialization command notified from the other cryptographic processing device is valid. In this case, the stored temporary key generation data (generation number 432) is initialized.

これにより、なんらかの原因で一時鍵生成用データが異常値になった場合でも、一時鍵生成用データを正常値に戻すことができる。   Thereby, even if the temporary key generation data becomes an abnormal value for some reason, the temporary key generation data can be returned to the normal value.

上記暗号処理装置(暗号通信装置200,500、携帯端末201、検針メータ301)は、更に、一時鍵生成用データ通知部(250、対検針メータ通信部291)と、暗号通信部(290、対検針メータ通信部291,371)とを有する。
上記一時鍵生成用データ通知部は、上記一時鍵生成部(160、164、364)が上記一時鍵(一時鍵413,435)の生成に使った上記一時鍵生成用データ(世代番号412,432)を、他の暗号処理装置(暗号通信装置300,500、検針メータ301)に対して通知する。
上記暗号通信部は、上記一時鍵生成部が生成した上記一時鍵を使って、上記他の暗号通信装置との間で暗号通信をする。
The cryptographic processing devices (the cryptographic communication devices 200 and 500, the portable terminal 201, and the meter-reading meter 301) further include a temporary key generation data notification unit (250, the counter-metering meter communication unit 291) and a cryptographic communication unit (290, paired meter). Meter reading meter communication units 291 and 371).
The temporary key generation data notifying unit includes the temporary key generation data (generation numbers 412 and 432) used by the temporary key generation unit (160, 164, 364) to generate the temporary key (temporary keys 413, 435). ) To other cryptographic processing devices (cryptographic communication devices 300 and 500, meter-reading meter 301).
The encryption communication unit performs encryption communication with the other encryption communication device using the temporary key generated by the temporary key generation unit.

他の暗号処理装置に対して通知した一時鍵生成用データを使って生成した一時鍵を使って暗号通信をするので、容易に、暗号通信に使う一時鍵を合意することができる。   Since the cryptographic communication is performed using the temporary key generated using the temporary key generation data notified to the other cryptographic processing device, it is possible to easily agree the temporary key used for the cryptographic communication.

以上説明した管理装置(100、暗号通信装置500、管理サーバ101)、第一暗号通信装置(暗号通信装置200,500、携帯端末201)、第二暗号通信装置(暗号通信装置300,500、検針メータ301)及び暗号処理装置(管理装置100、暗号通信装置200,300,500、管理サーバ101、携帯端末201、検針メータ301)は、コンピュータプログラムをコンピュータが実行することにより実現することができる。
管理装置、第一暗号通信装置、第二暗号通信装置または暗号処理装置としてコンピュータを機能させるコンピュータプログラムによれば、以上説明した効果を奏する暗号通信システムや暗号処理装置を、容易に実現することができる。
Management device (100, encryption communication device 500, management server 101), first encryption communication device (encryption communication devices 200, 500, portable terminal 201), second encryption communication device (encryption communication devices 300, 500, meter reading) described above Meter 301) and cryptographic processing device (management device 100, cryptographic communication devices 200, 300, 500, management server 101, portable terminal 201, meter-reading meter 301) can be realized by a computer executing a computer program.
According to a computer program that causes a computer to function as a management device, a first cryptographic communication device, a second cryptographic communication device, or a cryptographic processing device, it is possible to easily realize a cryptographic communication system or a cryptographic processing device that exhibits the effects described above. it can.

例えば、自動検針システム(801)では、検針メータ(301)と外部装置(携帯端末201)とが通信を行い、電力情報や制御情報を通信する。この際、無線区間を通信することがあり、盗聴等の不正行為からこれらを保護する必要がある。情報を盗聴や改ざん等の不正行為から保護するために、情報に対して暗号化を施して送信し、受信側で復号して利用する暗号通信システムが利用される。   For example, in the automatic meter reading system (801), the meter reading meter (301) communicates with an external device (mobile terminal 201) to communicate power information and control information. At this time, the wireless section may be communicated, and it is necessary to protect these from illegal acts such as eavesdropping. In order to protect information from fraudulent acts such as eavesdropping and tampering, an encryption communication system is used in which information is encrypted and transmitted, and decrypted and used on the receiving side.

暗号通信システムにおいては、送受信者間で暗号化に使用する鍵の共有を図る必要がある。特に、共通鍵暗号と呼ばれる暗号を用いる場合は、共有した鍵が外部に漏洩しないようにする必要がある。   In an encryption communication system, it is necessary to share a key used for encryption between a sender and a receiver. In particular, when using a cipher called a common key cipher, it is necessary to prevent the shared key from leaking to the outside.

以上説明した暗号通信システムによれば、暗号化に使用する鍵を容易に変えることができる。また、携帯端末を紛失し、万一、不正者が当該端末を取得した場合でも、全ての検針メータの検針情報を取得することはできない。   According to the cryptographic communication system described above, the key used for encryption can be easily changed. Moreover, even if a portable terminal is lost and an unauthorized person acquires the terminal, meter reading information for all meter meters cannot be acquired.

また、クライアント―サーバ間でカウンタを容易に同期させることができる。カウンタがずれた場合でも、ずれを修正することができるので、ずれが一定範囲を超えた場合でも通信が可能である。   In addition, the counter can be easily synchronized between the client and the server. Even when the counter deviates, the deviation can be corrected, so that communication is possible even when the deviation exceeds a certain range.

また、一時鍵が漏洩しても、一定期間の経過により一時鍵を自動的に無効化することができる。   Even if the temporary key is leaked, the temporary key can be automatically invalidated after a certain period of time.

また、検針メータの時計と、携帯端末の時計とを、完全に同期させる必要はない。このため、時刻同期情報の精度や真正性を別に担保する必要がない。   Further, it is not necessary to completely synchronize the clock of the meter reading meter and the clock of the portable terminal. For this reason, it is not necessary to ensure the accuracy and authenticity of the time synchronization information.

以上説明した暗号通信システムによれば、一時鍵を用いながらも、鍵の無効化と鍵の同期を実現する通信装置を提供できる。
なお、以上説明した暗号通信システムは、自動検針システムにおける検針メータと携帯端末との間の通信に限らず、任意の装置の暗号通信に適用することができる。
According to the cryptographic communication system described above, it is possible to provide a communication device that realizes key invalidation and key synchronization while using a temporary key.
In addition, the encryption communication system demonstrated above is applicable not only to communication between the meter-reading meter and portable terminal in an automatic meter-reading system but to encryption communication of arbitrary apparatuses.

100 管理装置、101 管理サーバ、102 管理部、110,111,310,311 マスター鍵記憶部、130,230 一時鍵生成用データ記憶部、131,331 世代番号カウンタ、140 一時鍵生成用データ更新部、150,250 一時鍵生成用データ通知部、156,356 時計、160,164,174,360,364 一時鍵生成部、161 鍵情報管理部、162,172 認証部、163,173,363 マスター鍵選択部、165 初期化コマンド生成部、166 リセットパケット生成部、170 一時鍵通知部、171,177 出力判定部、175,285 初期化コマンド通知部、176 パケット生成部、200,300,500 暗号通信装置、201 携帯端末、202 通信部、220,320 一時鍵生成用データ取得部、221 対管理サーバ通信部、222 一時鍵発行要求生成部、223 一時鍵情報取得部、224 リセットパケット発行要求生成部、225 リセットパケット取得部、260 一時鍵取得部、265,365 初期化コマンド取得部、270 一時鍵記憶部、275 初期化コマンド記憶部、281 メッセージ生成部、290,390 暗号通信部、291,371 対検針メータ通信部、292,392 暗号化部、293,393 多重化部、294,394 分離部、295,395 復号部、296,396 受信判定部、297 リセットパケット出力部、301 検針メータ、302 検証部、330 検証用データ記憶部、340 検証用データ更新部、350 一時鍵生成用データ検証部、375 初期化コマンド検証部、381 メッセージ処理部、391 対携帯端末通信部、397 応答メッセージ生成部、398 メッセージ検証部、411,431 マスター鍵、412,432 世代番号、413,435 一時鍵、414 出力判定信号、416 生成時刻、417 定数、418,438 現在時刻、419 リセットパケット、421 一時鍵発行要求、422 鍵種別情報、423 メッセージ、424 暗号化メッセージ、425 認証情報、426,436 暗号文、427,437 検証結果、428 リセットパケット発行要求、433 応答、434 暗号化応答、439 リセット応答、440 メッセージ認証子、800 暗号通信システム、801 自動検針システム、802 無線網、803 公衆網、911 処理装置、912 入力装置、913 出力装置、914 記憶装置、915 通信装置、S601 初期化処理、S602 更新処理、S603 一時鍵通知処理、S604 暗号通信処理、S605 リセットパケット通知処理、S606 世代番号リセット処理、S611,S631 マスター鍵記憶工程、S612 一時鍵生成用データ初期化工程、S613,S633 周期経過判定工程、S614 一時鍵生成用データ更新工程、S615 一時鍵要求受付工程、S616,S637,S644,S655,S672,S684,S694,S702 一時鍵生成工程、S617 初期化コマンド生成工程、S618 一時鍵通知工程、S619,S624 一時鍵生成用データ通知工程、S620,S629 初期化コマンド通知工程、S621 一時鍵要求工程、S622 一時鍵取得工程、S623,S635 一時鍵生成用データ取得工程、S625,S638 暗号通信工程、S626 拒絶取得工程、S627 初期化コマンド要求工程、S628,S648 初期化コマンド取得工程、S632 検証用データ初期化工程、S634 検証用データ更新工程、S636 一時鍵生成用データ検証工程、S641 一時鍵発行要求生成工程、S642,S682 認証工程、S643,S654,S671,S683,S693,S701 マスター鍵選択工程、S645,S686 出力工程、S646 一時鍵情報取得工程、S647 拒絶通知工程、S649 初期化コマンド検証工程、S651,S673 暗号化工程、S652,S674,S704 多重化工程、S653,S675,S692 分離工程、S656,S676 復号工程、S657,S677,S696 受信判定工程、S660 メッセージ処理工程、S681 リセットパケット発行要求生成工程、S685 パケット生成工程、S687 リセットパケット取得工程、S691 リセットパケット出力工程、S695 メッセージ検証工程、S697 世代番号リセット工程、S703 応答メッセージ生成工程、S705 リセット応答取得工程。   100 management device, 101 management server, 102 management unit, 110, 111, 310, 311 master key storage unit, 130, 230 temporary key generation data storage unit, 131, 331 generation number counter, 140 temporary key generation data update unit 150, 250 Temporary key generation data notification unit, 156, 356 Clock, 160, 164, 174, 360, 364 Temporary key generation unit, 161 Key information management unit, 162, 172 Authentication unit, 163, 173, 363 Master key Selection unit, 165 Initialization command generation unit, 166 Reset packet generation unit, 170 Temporary key notification unit, 171, 177 Output determination unit, 175, 285 Initialization command notification unit, 176 packet generation unit, 200, 300, 500 Cryptographic communication Apparatus, 201 portable terminal, 202 communication unit, 220, 320 Temporary key generation data acquisition unit, 221 to management server communication unit, 222 Temporary key issue request generation unit, 223 Temporary key information acquisition unit, 224 Reset packet issue request generation unit, 225 Reset packet acquisition unit, 260 Temporary key acquisition unit, 265, 365 Initialization command acquisition unit, 270 Temporary key storage unit, 275 Initialization command storage unit, 281 Message generation unit, 290, 390 Encryption communication unit, 291, 371 Counter meter communication unit, 292, 392 Encryption unit, 293, 393 Multiplexing unit, 294, 394 Separation unit, 295, 395 Decoding unit, 296, 396 Reception determination unit, 297 Reset packet output unit, 301 Meter reading meter, 302 verification unit, 330 Verification data storage unit, 340 For verification Data update unit, 350 Temporary key generation data verification unit, 375 Initial Command verification unit, 381 message processing unit, 391 to mobile terminal communication unit, 397 response message generation unit, 398 message verification unit, 411, 431 master key, 412, 432 generation number, 413, 435 temporary key, 414 output determination signal, 416 generation time, 417 constant, 418, 438 current time, 419 reset packet, 421 temporary key issue request, 422 key type information, 423 message, 424 encrypted message, 425 authentication information, 426, 436 ciphertext, 427, 437 verification Result 428 Reset packet issue request, 433 response, 434 encryption response, 439 reset response, 440 message authenticator, 800 cryptographic communication system, 801 automatic meter reading system, 802 wireless network, 803 public network, 911 processing device, 12 input device, 913 output device, 914 storage device, 915 communication device, S601 initialization processing, S602 update processing, S603 temporary key notification processing, S604 encryption communication processing, S605 reset packet notification processing, S606 generation number reset processing, S611 S631 Master key storage step, S612 Temporary key generation data initialization step, S613, S633 Period elapsed determination step, S614 Temporary key generation data update step, S615 Temporary key request reception step, S616, S637, S644, S655, S672 S684, S694, S702 Temporary key generation step, S617 Initialization command generation step, S618 Temporary key notification step, S619, S624 Temporary key generation data notification step, S620, S629 Initialization command notification step, S621 Temporary Request Step, S622 Temporary Key Acquisition Step, S623, S635 Temporary Key Generation Data Acquisition Step, S625, S638 Encryption Communication Step, S626 Rejection Acquisition Step, S627 Initialization Command Request Step, S628, S648 Initialization Command Acquisition Step, S632 Verification Data initialization process, S634 verification data update process, S636 temporary key generation data verification process, S641 temporary key issue request generation process, S642, S682 authentication process, S643, S654, S671, S683, S693, S701 Master key selection Step, S645, S686 Output step, S646 Temporary key information acquisition step, S647 Rejection notification step, S649 Initialization command verification step, S651, S673 Encryption step, S652, S674, S704 Multiplex step, S653, S675 , S692 separation step, S656, S676 decoding step, S657, S677, S696 reception determination step, S660 message processing step, S681 reset packet issue request generation step, S685 packet generation step, S687 reset packet acquisition step, S691 reset packet output step, S695 message verification step, S697 generation number reset step, S703 response message generation step, S705 reset response acquisition step.

Claims (19)

管理装置と、第一暗号通信装置と、第二暗号通信装置とを備える暗号通信システムにおいて、
上記管理装置は、マスター鍵記憶部と、一時鍵生成部とを有し、
上記管理装置の上記マスター鍵記憶部は、第一マスター鍵を記憶し、
上記管理装置の上記一時鍵生成部は、上記管理装置の上記マスター鍵記憶部が記憶した上記第一マスター鍵と、一時鍵生成用データとを使って、第一一時鍵を生成し、
上記第一暗号通信装置は、一時鍵生成用データ通知部と、暗号通信部とを有し、
上記第一暗号通信装置の上記一時鍵生成用データ通知部は、上記管理装置の上記一時鍵生成部が上記第一一時鍵の生成に使った上記一時鍵生成用データを、上記第二暗号通信装置に対して通知し、
上記第一暗号通信装置の上記暗号通信部は、上記管理装置の上記一時鍵生成部が生成した上記第一一時鍵を使って、上記第二暗号通信装置との間で暗号通信をし、
上記第二暗号通信装置は、マスター鍵記憶部と、一時鍵生成用データ検証部と、一時鍵生成部と、暗号通信部とを有し、
上記第二暗号通信装置の上記マスター鍵記憶部は、上記管理装置の上記マスター鍵記憶部が記憶した上記第一マスター鍵と同一の、又は、上記第一マスター鍵に対応する、第二マスター鍵を記憶し、
上記第二暗号通信装置の上記一時鍵生成用データ検証部は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であるか否かを判定し、
上記第二暗号通信装置の上記一時鍵生成部は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であると上記第二暗号通信装置の上記一時鍵生成用データ検証部が判定した場合に、上記第二暗号通信装置の上記マスター鍵記憶部が記憶した上記第二マスター鍵と、上記第二暗号通信装置の上記一時鍵生成用データ検証部が有効であると判定した上記一時鍵生成用データとを使って、上記管理装置の上記一時鍵生成部が生成した上記第一一時鍵と同一の、又は、上記第一一時鍵に対応する第二一時鍵を生成し、
上記第二暗号通信装置の上記暗号通信部は、上記第二暗号通信装置の上記一時鍵生成部が生成した上記第二一時鍵を使って、上記第一暗号通信装置との間で暗号通信をする
ことを特徴とする暗号通信システム。
In a cryptographic communication system comprising a management device, a first cryptographic communication device, and a second cryptographic communication device,
The management device includes a master key storage unit and a temporary key generation unit,
The master key storage unit of the management device stores a first master key,
The temporary key generation unit of the management device generates a first temporary key using the first master key stored in the master key storage unit of the management device and the temporary key generation data,
The first encryption communication device includes a temporary key generation data notification unit and an encryption communication unit,
The temporary key generation data notifying unit of the first encryption communication device is configured to transfer the temporary key generation data used by the temporary key generation unit of the management device to generate the first temporary key to the second encryption Notify the communication device,
The cryptographic communication unit of the first cryptographic communication device performs cryptographic communication with the second cryptographic communication device using the first temporary key generated by the temporary key generation unit of the management device,
The second cryptographic communication device includes a master key storage unit, a temporary key generation data verification unit, a temporary key generation unit, and an encryption communication unit,
The master key storage unit of the second encryption communication device is the same as the first master key stored in the master key storage unit of the management device or corresponds to the first master key. Remember
The temporary key generation data verification unit of the second encryption communication device determines whether the temporary key generation data notified from the temporary key generation data notification unit of the first encryption communication device is valid. Judgment,
When the temporary key generation data notified from the temporary key generation data notifying unit of the first cryptographic communication device is valid, the temporary key generation unit of the second cryptographic communication device is valid. When the temporary key generation data verification unit determines, the second master key stored in the master key storage unit of the second encryption communication device and the temporary key generation data of the second encryption communication device The first temporary key that is the same as the first temporary key generated by the temporary key generation unit of the management device using the temporary key generation data determined to be valid by the verification unit or the first temporary key Generate a second temporary key corresponding to
The cryptographic communication unit of the second cryptographic communication device uses the second temporary key generated by the temporary key generation unit of the second cryptographic communication device to perform cryptographic communication with the first cryptographic communication device. A cryptographic communication system characterized by:
上記管理装置は、更に、一時鍵生成用データ記憶部と、一時鍵生成用データ更新部とを有し、
上記管理装置の上記一時鍵生成用データ記憶部は、上記管理装置の上記一時鍵生成部が上記第一一時鍵の生成に使う一時鍵生成用データを記憶し、
上記管理装置の上記一時鍵生成用データ更新部は、第一の周期が経過するごとに、上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、繰り返し更新し、
上記第二暗号通信装置は、更に、検証用データ記憶部と、検証用データ更新部とを有し、
上記第二暗号通信装置の上記検証用データ記憶部は、検証用データを記憶し、
上記第二暗号通信装置の上記検証用データ更新部は、第二の周期が経過するごとに、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データを、繰り返し更新し、
上記第二暗号通信装置の上記一時鍵生成用データ検証部は、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データを使って、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であるか否かを判定する
ことを特徴とする請求項1に記載の暗号通信システム。
The management device further includes a temporary key generation data storage unit and a temporary key generation data update unit,
The temporary key generation data storage unit of the management device stores temporary key generation data used by the temporary key generation unit of the management device to generate the first temporary key,
The temporary key generation data updating unit of the management device repeatedly updates the temporary key generation data stored in the temporary key generation data storage unit of the management device every time the first period elapses. ,
The second encryption communication device further includes a verification data storage unit and a verification data update unit,
The verification data storage unit of the second encryption communication device stores verification data,
The verification data update unit of the second cryptographic communication device repeatedly updates the verification data stored in the verification data storage unit of the second cryptographic communication device every time the second period elapses. ,
The temporary key generation data verification unit of the second cryptographic communication device uses the verification data stored in the verification data storage unit of the second cryptographic communication device to use the temporary data of the first cryptographic communication device. 2. The cryptographic communication system according to claim 1, wherein it is determined whether or not the temporary key generation data notified from the key generation data notification unit is valid.
上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データ、及び、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データは、数値を表わすデータであり、
上記管理装置の上記一時鍵生成用データ更新部は、上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データが表わす上記数値に、増分値を加算した和を算出し、上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、算出した上記和を表わすデータで更新し、
上記第二暗号通信装置の上記検証用データ更新部は、上記管理装置の上記一時鍵生成用データ更新部が上記一時鍵生成用データを更新する上記第二の周期のn倍の周期が経過するごとに、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データが表わす上記数値に、上記管理装置の上記一時鍵生成用データ更新部が上記一時鍵生成用データの更新に使う上記増分値のn倍の増分値を加算した和を算出し、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データを、算出した上記和を表わすデータで更新し、
上記第二暗号通信装置の上記一時鍵生成用データ検証部は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが表わす上記数値が、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データが表わす上記数値以上である場合に、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であると判定する
ことを特徴とする請求項2に記載の暗号通信システム。
The temporary key generation data stored in the temporary key generation data storage unit of the management device and the verification data stored in the verification data storage unit of the second encryption communication device are data representing numerical values. And
The temporary key generation data update unit of the management device calculates a sum obtained by adding an increment value to the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit of the management device. , Updating the temporary key generation data stored in the temporary key generation data storage unit of the management device with data representing the calculated sum,
The verification data update unit of the second cryptographic communication device has a period n times longer than the second cycle in which the temporary key generation data update unit of the management device updates the temporary key generation data. For each time, the temporary key generation data update unit of the management device updates the temporary key generation data to the numerical value represented by the verification data stored in the verification data storage unit of the second encryption communication device. The sum obtained by adding the increment value n times the increment value used in the above is calculated, and the verification data stored in the verification data storage unit of the second encryption communication device is updated with data representing the calculated sum And
The temporary key generation data verification unit of the second cryptographic communication device is configured such that the numerical value represented by the temporary key generation data notified from the temporary key generation data notification unit of the first cryptographic communication device is the first key. The temporary key notified from the temporary key generation data notifying unit of the first cryptographic communication device when the verification data stored in the verification data storage unit of the second cryptographic communication device is greater than or equal to the numerical value represented by the verification data The cryptographic communication system according to claim 2, wherein the generation data is determined to be valid.
上記第二暗号通信装置の上記検証用データ記憶部は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であると上記第二暗号通信装置の上記一時鍵生成用データ検証部が判定した場合に、上記第二暗号通信装置の上記一時鍵生成用データ検証部が有効であると判定した上記一時鍵生成用データを、上記検証用データとして記憶することを特徴とする請求項2に記載の暗号通信システム。   The verification data storage unit of the second cryptographic communication device is configured to receive the second cryptographic communication when the temporary key generation data notified from the temporary key generation data notification unit of the first cryptographic communication device is valid. When the temporary key generation data verification unit of the apparatus determines, the temporary key generation data determined to be valid by the temporary key generation data verification unit of the second encryption communication device is used as the verification data. The cryptographic communication system according to claim 2, wherein the cryptographic communication system is stored as 上記第二暗号通信装置は、更に、検証用データ記憶部を有し、
上記第二暗号通信装置の上記検証用データ記憶部は、検証用データを記憶し、
上記第二暗号通信装置の上記一時鍵生成用データ検証部は、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データを使って、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であるか否かを判定し、
上記管理装置は、更に、初期化コマンド生成部を有し、
上記管理装置の上記初期化コマンド生成部は、上記第二暗号通信装置の上記検証用データ記憶部が記憶した検証用データを初期化する初期化コマンドを生成し、
上記第一暗号通信装置は、更に、初期化コマンド通知部を有し、
上記第一暗号通信装置の上記初期化コマンド通知部は、上記管理装置の上記初期化コマンド生成部が生成した上記初期化コマンドを上記第二暗号通信装置に対して通知し、
上記第二暗号通信装置は、更に、初期化コマンド検証部を有し、
上記第二暗号通信装置の上記初期化コマンド検証部は、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドが有効であるか否かを判定し、
上記第二暗号通信装置の上記検証用データ記憶部は、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドが有効であると上記第二暗号通信装置の上記初期化コマンド検証部が判定した場合に、記憶した上記検証用データを初期化する
ことを特徴とする請求項1から請求項4のいずれかに記載の暗号通信システム。
The second encryption communication device further includes a verification data storage unit,
The verification data storage unit of the second encryption communication device stores verification data,
The temporary key generation data verification unit of the second cryptographic communication device uses the verification data stored in the verification data storage unit of the second cryptographic communication device to use the temporary data of the first cryptographic communication device. Determine whether the temporary key generation data notified from the key generation data notification unit is valid,
The management apparatus further includes an initialization command generation unit,
The initialization command generation unit of the management device generates an initialization command for initializing the verification data stored in the verification data storage unit of the second encryption communication device,
The first encryption communication device further includes an initialization command notification unit,
The initialization command notification unit of the first encryption communication device notifies the initialization command generated by the initialization command generation unit of the management device to the second encryption communication device,
The second cryptographic communication device further includes an initialization command verification unit,
The initialization command verification unit of the second encryption communication device determines whether the initialization command notified from the initialization command notification unit of the first encryption communication device is valid,
The verification data storage unit of the second cryptographic communication device may be configured such that the initialization command of the second cryptographic communication device is valid when the initialization command notified from the initialization command notification unit of the first cryptographic communication device is valid. 5. The cryptographic communication system according to claim 1, wherein the verification data stored is initialized when the verification command verification unit makes a determination.
上記第二暗号通信装置の上記初期化コマンド検証部は、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドが生成されてから第一の期間が経過していない場合に、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドが有効であると判定する
ことを特徴とする請求項5に記載の暗号通信システム。
The initialization command verification unit of the second encryption communication device has not passed the first period since the initialization command notified from the initialization command notification unit of the first encryption communication device is generated. In this case, it is determined that the initialization command notified from the initialization command notification unit of the first encryption communication device is valid.
上記管理装置の上記初期化コマンド生成部が生成した上記初期化コマンドは、上記初期化コマンドが生成された日付を表わす情報を含み、
上記第二暗号通信装置の上記初期化コマンド検証部は、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドに含まれる上記情報が表わす上記日付が、現在の日付から第一の日数前より以後である場合に、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドが有効であると判定する
ことを特徴とする請求項6に記載の暗号通信システム。
The initialization command generated by the initialization command generation unit of the management device includes information representing a date on which the initialization command is generated,
The initialization command verification unit of the second encryption communication device is configured such that the date represented by the information included in the initialization command notified from the initialization command notification unit of the first encryption communication device is a current date. And determining that the initialization command notified from the initialization command notifying unit of the first encryption communication device is valid when the time is after the first number of days before. The cryptographic communication system described.
上記管理装置は、更に、一時鍵生成用データ記憶部と、一時鍵生成用データ更新部とを有し、
上記管理装置の上記一時鍵生成用データ記憶部は、上記管理装置の上記一時鍵生成部が上記第一一時鍵の生成に使う一時鍵生成用データを記憶し、
上記管理装置の上記一時鍵生成用データ更新部は、第一の周期が経過するごとに、上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、繰り返し更新し、
上記第二暗号通信装置は、更に、検証用データ更新部を有し、
上記第二暗号通信装置の上記検証用データ更新部は、第二の周期が経過するごとに、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データを、繰り返し更新し、
上記管理装置の上記初期化コマンド生成部が生成した上記初期化コマンドは、上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを表わす情報を含み、
上記第二暗号通信装置の上記検証用データ記憶部は、有効であると上記第二暗号通信装置の上記初期化コマンド検証部が判定した上記初期化コマンドに含まれる上記情報が表わす上記一時鍵生成用データを、上記検証用データとして記憶することにより、上記検証用データを初期化する
ことを特徴とする請求項5に記載の暗号通信システム。
The management device further includes a temporary key generation data storage unit and a temporary key generation data update unit,
The temporary key generation data storage unit of the management device stores temporary key generation data used by the temporary key generation unit of the management device to generate the first temporary key,
The temporary key generation data updating unit of the management device repeatedly updates the temporary key generation data stored in the temporary key generation data storage unit of the management device every time the first period elapses. ,
The second encryption communication device further includes a verification data update unit,
The verification data update unit of the second cryptographic communication device repeatedly updates the verification data stored in the verification data storage unit of the second cryptographic communication device every time the second period elapses. ,
The initialization command generated by the initialization command generation unit of the management device includes information representing the temporary key generation data stored in the temporary key generation data storage unit of the management device,
The temporary key generation represented by the information included in the initialization command determined by the initialization command verification unit of the second cryptographic communication apparatus is valid for the verification data storage unit of the second cryptographic communication apparatus 6. The cryptographic communication system according to claim 5, wherein the verification data is initialized by storing the verification data as the verification data.
上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データ、及び、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データは、数値を表わすデータであり、
上記管理装置の上記一時鍵生成用データ更新部は、上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データが表わす上記数値に、増分値を加算した和を算出し、上記管理装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、算出した上記和を表わすデータで更新し、
上記第二暗号通信装置の上記検証用データ更新部は、上記管理装置の上記一時鍵生成用データ更新部が上記一時鍵生成用データを更新する上記第一の周期のn倍の周期が経過するごとに、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データが表わす上記数値に、上記管理装置の上記一時鍵生成用データ更新部が上記一時鍵生成用データの更新に使う上記増分値のn倍の増分値を加算した和を算出し、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データを、算出した上記和を表わすデータで更新し、
上記第二暗号通信装置の上記一時鍵生成用データ検証部は、上記第二暗号通信装置の上記検証用データ記憶部が上記検証用データを初期化してから第二の期間が経過するまでの間は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが表わす上記数値が、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データが表わす上記数値と等しい場合に、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であると判定し、上記第二暗号通信装置の上記検証用データ記憶部が上記検証用データを初期化する前、及び、上記第二暗号通信装置の上記検証用データ記憶部が上記検証用データを初期化してから上記第二の期間が経過した後は、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが表わす上記数値が、上記第二暗号通信装置の上記検証用データ記憶部が記憶した上記検証用データが表わす上記数値以上である場合に、上記第一暗号通信装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データが有効であると判定する
ことを特徴とする請求項8に記載の暗号通信システム。
The temporary key generation data stored in the temporary key generation data storage unit of the management device and the verification data stored in the verification data storage unit of the second encryption communication device are data representing numerical values. And
The temporary key generation data update unit of the management device calculates a sum obtained by adding an increment value to the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit of the management device. , Updating the temporary key generation data stored in the temporary key generation data storage unit of the management device with data representing the calculated sum,
The verification data update unit of the second cryptographic communication device has a period n times longer than the first cycle in which the temporary key generation data update unit of the management device updates the temporary key generation data. For each time, the temporary key generation data update unit of the management device updates the temporary key generation data to the numerical value represented by the verification data stored in the verification data storage unit of the second encryption communication device. The sum obtained by adding the increment value n times the increment value used in the above is calculated, and the verification data stored in the verification data storage unit of the second encryption communication device is updated with data representing the calculated sum And
The temporary key generation data verification unit of the second cryptographic communication device is a period from when the verification data storage unit of the second cryptographic communication device initializes the verification data until a second period elapses. Is the numerical value represented by the temporary key generation data notified from the temporary key generation data notification unit of the first encryption communication device stored in the verification data storage unit of the second encryption communication device If the verification data is equal to the numerical value represented by the verification data, it is determined that the temporary key generation data notified from the temporary key generation data notification unit of the first cryptographic communication device is valid, and the second cryptographic communication Before the verification data storage unit of the device initializes the verification data, and after the verification data storage unit of the second encryption communication device initializes the verification data, the second period Passed Is the numerical value represented by the temporary key generation data notified from the temporary key generation data notification unit of the first encryption communication device stored in the verification data storage unit of the second encryption communication device And determining that the temporary key generation data notified from the temporary key generation data notifying unit of the first encryption communication device is valid when the verification data is equal to or greater than the numerical value represented by the verification data. The cryptographic communication system according to claim 8.
上記管理装置の上記初期化コマンド生成部が生成した上記初期化コマンドは、上記管理装置の上記マスター鍵記憶部が記憶した上記第一マスター鍵を使って暗号化した情報を含み、
上記第二暗号通信装置の上記初期化コマンド検証部は、上記第一暗号通信装置の上記初期化コマンド通知部から通知された上記初期化コマンドに含まれる情報を、上記第二暗号通信装置の上記マスター鍵記憶部が記憶した上記第二マスター鍵を使って復号する
ことを特徴とする請求項5に記載の暗号通信システム。
The initialization command generated by the initialization command generation unit of the management device includes information encrypted using the first master key stored by the master key storage unit of the management device,
The initialization command verification unit of the second cryptographic communication device is configured to change the information included in the initialization command notified from the initialization command notification unit of the first cryptographic communication device to the information of the second cryptographic communication device. 6. The encryption communication system according to claim 5, wherein decryption is performed using the second master key stored in the master key storage unit.
上記第一暗号通信装置は、上記管理装置から物理的に離れて構成された装置であり、
上記管理装置は、更に、一時鍵通知部と、一時鍵生成用データ通知部とを有し、
上記管理装置の上記一時鍵通知部は、上記管理装置の上記一時鍵生成部が生成した上記第一一時鍵を、上記第一暗号通信装置に対して通知し、
上記管理装置の上記一時鍵生成用データ通知部は、上記管理装置の上記一時鍵生成部が上記第一一時鍵の生成に使った上記一時鍵生成用データを、上記第一暗号通信装置に対して通知し、
上記第一暗号通信装置は、更に、一時鍵記憶部と、一時鍵生成用データ記憶部とを有し、
上記第一暗号通信装置の上記一時鍵記憶部は、上記管理装置の上記一時鍵通知部から通知された上記第一一時鍵を記憶し、
上記第一暗号通信装置の上記一時鍵生成用データ記憶部は、上記管理装置の上記一時鍵生成用データ通知部から通知された上記一時鍵生成用データを記憶し、
上記第一暗号通信装置の上記一時鍵生成用データ通知部は、上記第一暗号通信装置の上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、上記第二暗号通信装置に対して通知する
ことを特徴とする請求項1から請求項4のいずれかに記載の暗号通信システム。
The first encryption communication device is a device that is physically separated from the management device,
The management device further includes a temporary key notification unit and a temporary key generation data notification unit,
The temporary key notification unit of the management device notifies the first encryption communication device of the first temporary key generated by the temporary key generation unit of the management device,
The temporary key generation data notifying unit of the management device sends the temporary key generation data used by the temporary key generation unit of the management device to generate the first temporary key to the first encryption communication device. Notification to
The first encryption communication device further includes a temporary key storage unit and a temporary key generation data storage unit,
The temporary key storage unit of the first cryptographic communication device stores the first temporary key notified from the temporary key notification unit of the management device,
The temporary key generation data storage unit of the first encryption communication device stores the temporary key generation data notified from the temporary key generation data notification unit of the management device,
The temporary key generation data notifying unit of the first encryption communication device sends the temporary key generation data stored in the temporary key generation data storage unit of the first encryption communication device to the second encryption communication device. The encryption communication system according to any one of claims 1 to 4, characterized in that notification is made.
上記第一暗号通信装置は、携帯端末であることを特徴とする請求項11に記載の暗号通信システム。   The cryptographic communication system according to claim 11, wherein the first cryptographic communication device is a mobile terminal. マスター鍵を記憶するマスター鍵記憶部と、
他の暗号処理装置から通知された一時鍵生成用データが有効であるか否かを判定する一時鍵生成用データ検証部と、
上記他の暗号処理装置から通知された上記一時鍵生成用データが有効であると上記一時鍵生成用データ検証部が判定した場合に、上記マスター鍵記憶部が記憶した上記マスター鍵と、上記他の暗号処理装置から通知された上記一時鍵生成用データとを使って、一時鍵を生成する一時鍵生成部と、
上記一時鍵生成部が生成した上記一時鍵を使って、上記他の暗号処理装置と暗号通信する暗号通信部と
を備えることを特徴とする暗号処理装置。
A master key storage unit for storing the master key;
A temporary key generation data verification unit that determines whether or not the temporary key generation data notified from another cryptographic processing device is valid;
When it is determined the other the temporary key generation data verification unit and the temporary key generation data notified from the encryption processing apparatus is valid, and the master key in which the master key storage unit stores, the other use of the notified the temporary key generation data from the encryption processing apparatus, the temporary key generation unit for generating a temporary key,
An encryption processing device comprising: an encryption communication unit that performs encryption communication with the other encryption processing device using the temporary key generated by the temporary key generation unit.
上記暗号処理装置は、更に、一時鍵生成用データ記憶部と、一時鍵生成用データ更新部とを有し、
上記一時鍵生成用データ記憶部は、上記一時鍵生成部が上記一時鍵の生成に使う一時鍵生成用データを記憶し、
上記一時鍵生成用データ更新部は、第一の周期が経過するごとに、上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、繰り返し更新し、
上記一時鍵生成用データ検証部は、上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを使って、上記他の暗号処理装置から通知された上記一時鍵生成用データが有効であるか否かを判定する
ことを特徴とする請求項13に記載の暗号処理装置。
The cryptographic processing apparatus further includes a temporary key generation data storage unit and a temporary key generation data update unit,
The temporary key generation data storage unit stores temporary key generation data used by the temporary key generation unit to generate the temporary key;
The temporary key generation data update unit repeatedly updates the temporary key generation data stored in the temporary key generation data storage unit every time the first period elapses,
The temporary key generation data verification unit uses the temporary key generation data stored in the temporary key generation data storage unit and the temporary key generation data notified from the other cryptographic processing device is valid. 14. The cryptographic processing apparatus according to claim 13 , wherein it is determined whether or not there is any.
上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データは、数値を表わすデータであり、
上記一時鍵生成用データ更新部は、上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データが表わす上記数値に、増分値を加算した和を算出し、上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データを、算出した上記和を表わすデータで更新し、
上記一時鍵生成用データ検証部は、上記他の暗号処理装置から通知された上記一時鍵生成用データが表わす上記数値が、上記一時鍵生成用データ記憶部が記憶した上記一時鍵生成用データが表わす上記数値以上である場合に、上記他の暗号処理装置から通知された上記一時鍵生成用データが有効であると判定する
ことを特徴とする請求項14に記載の暗号処理装置。
The temporary key generation data stored in the temporary key generation data storage unit is data representing a numerical value,
The temporary key generation data update unit calculates a sum obtained by adding an increment value to the numerical value represented by the temporary key generation data stored in the temporary key generation data storage unit, and stores the temporary key generation data storage Update the temporary key generation data stored by the unit with data representing the calculated sum,
The temporary key generation data verification unit is configured such that the numerical value represented by the temporary key generation data notified from the other cryptographic processing device is the temporary key generation data stored in the temporary key generation data storage unit. 15. The cryptographic processing apparatus according to claim 14 , wherein, when the numeric value is greater than or equal to the numerical value to be expressed, it is determined that the temporary key generation data notified from the other cryptographic processing apparatus is valid.
上記一時鍵生成用データ記憶部は、上記他の暗号処理装置から通知された上記一時鍵生成用データが有効であると上記一時鍵生成用データ検証部が判定した場合に、有効であると上記一時鍵生成用データ検証部が判定した上記一時鍵生成用データを記憶することを特徴とする請求項15に記載の暗号処理装置。 The temporary key generation data storage unit is valid when the temporary key generation data verification unit determines that the temporary key generation data notified from the other cryptographic processing device is valid. The cryptographic processing apparatus according to claim 15 , wherein the temporary key generation data determined by the temporary key generation data verification unit is stored. 上記暗号処理装置は、更に、初期化コマンド検証部を有し、
上記初期化コマンド検証部は、上記他の暗号処理装置から通知された初期化コマンドが有効であるか否かを判定し、
上記一時鍵生成用データ記憶部は、上記他の暗号処理装置から通知された上記初期化コマンドが有効であると上記初期化コマンド検証部が判定した場合に、記憶した上記一時鍵生成用データを初期化する
ことを特徴とする請求項14から請求項16のいずれかに記載の暗号処理装置。
The cryptographic processing apparatus further includes an initialization command verification unit,
The initialization command verification unit determines whether the initialization command notified from the other cryptographic processing device is valid,
The temporary key generation data storage unit stores the stored temporary key generation data when the initialization command verification unit determines that the initialization command notified from the other cryptographic processing device is valid. cryptographic processing apparatus according to claims 14, wherein the initializing to claim 16.
他の暗号処理装置から通知された一時鍵生成用データが有効であるか否かを判定する一時鍵生成用データ検証処理をする一時鍵生成用データ検証部と、A temporary key generation data verification unit for performing temporary key generation data verification processing for determining whether or not the temporary key generation data notified from another cryptographic processing device is valid;
上記他の暗号処理装置から通知された上記一時鍵生成用データが有効であると上記一時鍵生成用データ検証部が判定した場合に、マスター鍵と、上記一時鍵生成用データとを使って、一時鍵を生成する一時鍵生成処理をする一時鍵生成部と、When the temporary key generation data verification unit determined that the temporary key generation data notified from the other cryptographic processing device is valid, using the master key and the temporary key generation data, A temporary key generation unit for performing a temporary key generation process for generating a temporary key;
上記一時鍵生成処理で生成された上記一時鍵を使って、上記他の暗号処理装置と暗号通信する暗号通信処理をする暗号通信部A cryptographic communication unit that performs cryptographic communication processing for cryptographic communication with the other cryptographic processing device using the temporary key generated by the temporary key generation processing
としてコンピュータを機能させるコンピュータプログラム。A computer program that causes a computer to function as.
管理装置と、第一暗号通信装置と、第二暗号通信装置とを備える暗号通信システムにおける暗号通信方法において、
上記管理装置は、第一マスター鍵を記憶し、
上記第二暗号通信装置は、上記管理装置が記憶した上記第一マスター鍵と同一の、又は、上記第一マスター鍵に対応する、第二マスター鍵を記憶し、
上記管理装置は、上記管理装置が記憶した上記第一マスター鍵と、一時鍵生成用データとを使って、第一一時鍵を生成し、
上記第二暗号通信装置は、上記第一暗号通信装置から通知された上記一時鍵生成用データが有効であるか否かを判定し、
上記第二暗号通信装置は、上記第一暗号通信装置から通知された上記一時鍵生成用データが有効であると上記第二暗号通信装置が判定した場合に、上記第二暗号通信装置が記憶した上記第二マスター鍵と、上記第二暗号通信装置が有効であると判定した上記一時鍵生成用データとを使って、上記管理装置が生成した上記第一一時鍵と同一の、又は、上記第一一時鍵に対応する第二一時鍵を生成し、
上記第一暗号通信装置は、上記管理装置が上記第一一時鍵の生成に使った上記一時鍵生成用データを、上記第二暗号通信装置に対して通知し、
上記第一暗号通信装置は、上記管理装置が生成した上記第一一時鍵を使って、上記第二暗号通信装置との間で暗号通信をし、
上記第二暗号通信装置は、上記第二暗号通信装置が生成した上記第二一時鍵を使って、上記第一暗号通信装置との間で暗号通信をする
ことを特徴とする暗号通信方法。
In a cryptographic communication method in a cryptographic communication system comprising a management device, a first cryptographic communication device, and a second cryptographic communication device,
The management device stores a first master key,
The second encryption communication device stores a second master key that is the same as or corresponds to the first master key stored by the management device,
The management device generates the first temporary key using the first master key stored by the management device and the temporary key generation data,
The second encryption communication device determines whether the temporary key generation data notified from the first encryption communication device is valid,
The second encryption communication device stores the second encryption communication device when the second encryption communication device determines that the temporary key generation data notified from the first encryption communication device is valid. The same as the first temporary key generated by the management device using the second master key and the temporary key generation data determined that the second encryption communication device is valid, or Generate a second temporary key corresponding to the first temporary key,
The first encryption communication device notifies the second encryption communication device of the temporary key generation data used by the management device to generate the first temporary key,
The first cryptographic communication device performs cryptographic communication with the second cryptographic communication device using the first temporary key generated by the management device,
The cryptographic communication method, wherein the second cryptographic communication device performs cryptographic communication with the first cryptographic communication device using the second temporary key generated by the second cryptographic communication device.
JP2013545721A 2011-11-24 2011-11-24 Cryptographic communication system, cryptographic processing apparatus, computer program, and cryptographic communication method Active JP5623657B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013545721A JP5623657B2 (en) 2011-11-24 2011-11-24 Cryptographic communication system, cryptographic processing apparatus, computer program, and cryptographic communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013545721A JP5623657B2 (en) 2011-11-24 2011-11-24 Cryptographic communication system, cryptographic processing apparatus, computer program, and cryptographic communication method

Publications (2)

Publication Number Publication Date
JP5623657B2 true JP5623657B2 (en) 2014-11-12
JPWO2013076848A1 JPWO2013076848A1 (en) 2015-04-27

Family

ID=51942746

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013545721A Active JP5623657B2 (en) 2011-11-24 2011-11-24 Cryptographic communication system, cryptographic processing apparatus, computer program, and cryptographic communication method

Country Status (1)

Country Link
JP (1) JP5623657B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737705A (en) * 2019-03-25 2020-10-02 意法半导体(鲁塞)公司 Encryption and/or decryption key device, system and method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0759154A (en) * 1993-08-13 1995-03-03 N T T Idou Tsuushinmou Kk Inter-network authentication key generating method
JP2010068396A (en) * 2008-09-12 2010-03-25 Toshiba Corp Cryptographic device, terminal device, cryptographic program and method and program and method for processing information
JP2011146898A (en) * 2010-01-14 2011-07-28 Mitsubishi Electric Corp Key generator, first communication equipment, second communication equipment and information processing system
JP2011160098A (en) * 2010-01-29 2011-08-18 Oki Electric Industry Co Ltd Communication system and communication device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0759154A (en) * 1993-08-13 1995-03-03 N T T Idou Tsuushinmou Kk Inter-network authentication key generating method
JP2010068396A (en) * 2008-09-12 2010-03-25 Toshiba Corp Cryptographic device, terminal device, cryptographic program and method and program and method for processing information
JP2011146898A (en) * 2010-01-14 2011-07-28 Mitsubishi Electric Corp Key generator, first communication equipment, second communication equipment and information processing system
JP2011160098A (en) * 2010-01-29 2011-08-18 Oki Electric Industry Co Ltd Communication system and communication device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111737705A (en) * 2019-03-25 2020-10-02 意法半导体(鲁塞)公司 Encryption and/or decryption key device, system and method

Also Published As

Publication number Publication date
JPWO2013076848A1 (en) 2015-04-27

Similar Documents

Publication Publication Date Title
KR101501418B1 (en) Secure time functionality for a wireless device
RU2538283C2 (en) Device and user authentication
US5751809A (en) Apparatus and method for securing captured data transmitted between two sources
US6950523B1 (en) Secure storage of private keys
US20070257813A1 (en) Secure network bootstrap of devices in an automatic meter reading network
KR101686167B1 (en) Apparatus and Method for Certificate Distribution of the Internet of Things Equipment
FR2926938A1 (en) METHOD OF AUTHENTICATING AND SIGNING A USER TO AN APPLICATION SERVICE USING A MOBILE PHONE AS A SECOND FACTOR IN COMPLEMENT AND INDEPENDENTLY OF A FIRST FACTOR
JP2000222360A (en) Method and system for authentication and authentication processing program recording medium
KR102578428B1 (en) Update biometric template protection key
EP1698096A2 (en) Mobile device and method for providing certificate based cryptography
CN112187466B (en) Identity management method, device, equipment and storage medium
KR20190122655A (en) Update of Biometric Data Template
CN113691502A (en) Communication method, communication device, gateway server, client and storage medium
CN111259419A (en) Random number encryption method and device based on multiple sensors
WO2013076848A1 (en) Encrypted communication system, encrypted communication device, computer program, and encrypted communication method
KR20070105826A (en) System providing public key authentication and the same method
KR102169695B1 (en) A self-verifiable blockchain electronic voting management method
CN107548542B (en) User authentication method with enhanced integrity and security
JP5223860B2 (en) Time information distribution system, time distribution station, terminal, time information distribution method and program
JP5623657B2 (en) Cryptographic communication system, cryptographic processing apparatus, computer program, and cryptographic communication method
JP2007020065A (en) Decryption backup method, decryption restoration method, attestation device, individual key setting machine, user terminal, backup equipment, encryption backup program, decryption restoration program
KR20140033824A (en) Encryption systems and methods using hash value as symmetric key in the smart device
JP3646055B2 (en) Time signature apparatus, signing method thereof, and time signature system
CN110287733A (en) A kind of file tamper resistant method and device
CN116055172A (en) Equipment authentication method, system, electronic equipment and storage medium

Legal Events

Date Code Title Description
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: 20140826

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140924

R150 Certificate of patent or registration of utility model

Ref document number: 5623657

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250