WO2021079515A1 - Method, program, digital signature device, user device, verification device, and system - Google Patents

Method, program, digital signature device, user device, verification device, and system Download PDF

Info

Publication number
WO2021079515A1
WO2021079515A1 PCT/JP2019/042020 JP2019042020W WO2021079515A1 WO 2021079515 A1 WO2021079515 A1 WO 2021079515A1 JP 2019042020 W JP2019042020 W JP 2019042020W WO 2021079515 A1 WO2021079515 A1 WO 2021079515A1
Authority
WO
WIPO (PCT)
Prior art keywords
digital signature
key
signature
user
public key
Prior art date
Application number
PCT/JP2019/042020
Other languages
French (fr)
Japanese (ja)
Inventor
弘久 飯嶋
Original Assignee
Quadrac株式会社
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 Quadrac株式会社 filed Critical Quadrac株式会社
Priority to PCT/JP2019/042020 priority Critical patent/WO2021079515A1/en
Publication of WO2021079515A1 publication Critical patent/WO2021079515A1/en

Links

Images

Classifications

    • 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
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials

Abstract

[Problem] To reduce the risk of a signature key being leaked. [Solution] A method to be executed by a digital signature device, said method having a step of generating one or more pairs of a signature key and public key and a step of storing the generated signature keys in a storage area in the digital signature device, but not having a step of outputting the signature keys to the outside of the digital signature device.

Description

方法、プログラム、デジタル署名装置、ユーザ装置、検証装置、及びシステムMethods, programs, digital signature devices, user devices, verification devices, and systems
 本発明は、方法、プログラム、デジタル署名装置、ユーザ装置、検証装置、及びシステムに関する。 The present invention relates to methods, programs, digital signature devices, user devices, verification devices, and systems.
 公開鍵暗号方式が知られている(非特許文献1)。 Public key cryptography is known (Non-Patent Document 1).
 署名鍵が、認証局などのデジタル署名装置(デジタル署名を行う装置)の外部で生成されるシステムや、デジタル署名装置の内部で生成された署名鍵がデジタル署名装置の外部に出力可能であるシステムでは、署名鍵が流出する虞がある。 A system in which the signature key is generated outside a digital signature device (device that performs digital signature) such as a certificate authority, or a system in which a signature key generated inside the digital signature device can be output to the outside of the digital signature device. Then, there is a risk that the signature key will be leaked.
 上記の課題は、例えば、次の手段により解決することができる。 The above problem can be solved by, for example, the following means.
 デジタル署名装置が実行する方法であって、
 一対または複数対の署名鍵と公開鍵を生成する工程と、
 前記生成した署名鍵をデジタル署名装置内の記憶領域に記憶する工程と、を有し、
 前記署名鍵を前記デジタル署名装置の外部に出力する工程を有さない方法。
The way digital signature devices perform
The process of generating one or more pairs of signing and public keys,
It has a step of storing the generated signature key in a storage area in the digital signature device.
A method that does not include a step of outputting the signature key to the outside of the digital signature device.
 上記の方法を前記デジタル署名装置に実行させるプログラム。 A program that causes the digital signature device to execute the above method.
 上記の方法を実行するデジタル署名装置。 A digital signature device that executes the above method.
 上記のデジタル署名装置を備えたユーザ装置。 A user device equipped with the above digital signature device.
 上記のデジタル署名装置により生成された公開鍵を用いて、前記デジタル署名を検証する検証装置。 A verification device that verifies the digital signature using the public key generated by the digital signature device.
 上記のユーザ装置と、上記の検証装置と、を備えたシステム。 A system equipped with the above user device and the above verification device.
 上記のプログラムがネットワークを介して前記デジタル署名装置に送信されるシステム。 A system in which the above program is transmitted to the digital signature device via a network.
 本発明の一実施形態によれば、デジタル署名装置が、自装置の内部で署名鍵を生成し、かつ、自装置の外部に署名鍵を出力しないため、署名鍵が流出する虞を低減することができる。 According to one embodiment of the present invention, since the digital signature device generates the signature key inside the own device and does not output the signature key to the outside of the own device, the risk of the signature key being leaked is reduced. Can be done.
実施形態1に係る方法を説明するフローチャートである。It is a flowchart explaining the method which concerns on Embodiment 1. FIG. デジタル署名装置に、カウンタを用いて生成条件及び記憶条件の成否を判断させ、生成や記憶を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a generation condition and a storage condition using a counter, and perform generation and storage. デジタル署名装置に、カウンタを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a generation condition using a counter, and is made to generate. デジタル署名装置に、タイマを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a storage condition using a timer, and perform storage. デジタル署名装置に、カウンタを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a generation condition using a counter, and is made to generate. デジタル署名装置に、カウンタ及びタイマを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a storage condition using a counter and a timer, and perform storage. デジタル署名装置に、タイマを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a generation condition using a timer, and is made to generate. デジタル署名装置に、カウンタを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a storage condition using a counter, and perform storage. デジタル署名装置に、タイマを用いて生成条件及び記憶条件の成否を判断させ、生成や記憶を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge the success or failure of a generation condition and a storage condition by using a timer, and perform generation and storage. デジタル署名装置に、タイマを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a generation condition using a timer, and is made to generate. カウンタ及びタイマを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which makes it judge whether the storage condition is success or failure by using a counter and a timer, and is made to perform a memory. デジタル署名装置に、カウンタ及びタイマを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a generation condition using a counter and a timer, and is made to generate. カウンタを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which makes a judgment of the success or failure of a storage condition using a counter, and makes a memory perform. デジタル署名装置に、カウンタ及びタイマを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a generation condition using a counter and a timer, and is made to generate. タイマを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which makes a judgment of success or failure of a storage condition using a timer, and makes a memory perform. デジタル署名装置に、カウンタ及びタイマを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which causes a digital signature apparatus to judge success or failure of a generation condition using a counter and a timer, and is made to generate. カウンタ及びタイマを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。It is a flowchart explaining an example which makes it judge whether the storage condition is success or failure by using a counter and a timer, and is made to perform a memory. 実施例1に係るシステムの構成例を示す模式図である。It is a schematic diagram which shows the structural example of the system which concerns on Example 1. FIG. 実施例1に係るシステムの動作例を説明するシーケンス図である。It is a sequence diagram explaining the operation example of the system which concerns on Example 1. FIG. 実施例2に係るシステムの構成例を示す模式図である。It is a schematic diagram which shows the structural example of the system which concerns on Example 2. 実施例2に係るシステムの動作例を説明するシーケンス図である。It is a sequence diagram explaining the operation example of the system which concerns on Example 2. FIG. 実施例3に係るシステムの構成例を示す模式図である。It is a schematic diagram which shows the structural example of the system which concerns on Example 3. FIG. 実施例3に係るシステムの動作例を説明するシーケンス図である。It is a sequence diagram explaining the operation example of the system which concerns on Example 3. FIG. 実施例4に係るシステムの構成例を示す模式図である。It is a schematic diagram which shows the structural example of the system which concerns on Example 4. FIG. 実施例4に係るシステムの動作例を説明するシーケンス図である。It is a sequence diagram explaining the operation example of the system which concerns on Example 4. FIG. 実施例5に係るシステムの構成例を示す模式図である。It is a schematic diagram which shows the structural example of the system which concerns on Example 5. FIG. 実施例5に係るシステムの動作例を説明するシーケンス図である。It is a sequence diagram explaining the operation example of the system which concerns on Example 5. FIG. 実施例6に係るシステムを示す模式図である。It is a schematic diagram which shows the system which concerns on Example 6. 実施例6に係るシステムの動作例を説明するシーケンス図である。It is a sequence diagram explaining the operation example of the system which concerns on Example 6. ハードウェアウォレットの構成の例を示す模式図である。It is a schematic diagram which shows the example of the configuration of the hardware wallet. ハードウェアウォレットの機能の例を示す模式図である。It is a schematic diagram which shows the example of the function of the hardware wallet. 署名鍵更新の効果を説明する図(その1)である。It is a figure (the 1) explaining the effect of the signature key update. 署名鍵更新の効果を説明する図(その2)である。It is a figure (the 2) explaining the effect of the signature key update. 実施形態1に係る方法をデジタル署名装置に実行させるプログラムを、他の装置からネットワークを介してデジタル署名装置に送信するシステムの構成例を示す図である。It is a figure which shows the configuration example of the system which transmits the program which causes the digital signature apparatus to execute the method which concerns on Embodiment 1 from another apparatus to the digital signature apparatus via a network. 公開鍵とユーザ情報を対応付けて記憶する例を示す図である。It is a figure which shows the example which stores the public key and the user information in association with each other. 公開鍵の比較によりユーザ情報を特定する例を示すフローチャートである。It is a flowchart which shows the example which specifies the user information by the comparison of a public key.
[実施形態1に係る方法]
 図1は、実施形態1に係る方法を説明するフローチャートである。実施形態1に係る方法は、デジタル署名装置が実行する方法であって、図1に示すように、一対または複数対の署名鍵と公開鍵を生成する工程(S10)と、生成した署名鍵をデジタル署名装置内の記憶領域に記憶する工程(S20)と、を有し、署名鍵をデジタル署名装置の外部に出力する工程を有さない。以下、詳細に説明する。
[Method according to Embodiment 1]
FIG. 1 is a flowchart illustrating the method according to the first embodiment. The method according to the first embodiment is a method executed by a digital signature device, and as shown in FIG. 1, a step (S10) of generating a pair or a plurality of pairs of signature keys and public keys, and a generated signature key are generated. It has a step (S20) of storing in a storage area in the digital signature device, and does not have a step of outputting the signature key to the outside of the digital signature device. Hereinafter, a detailed description will be given.
 本明細書では、一対または複数対の署名鍵と公開鍵を生成する工程(S10)を単に「生成する工程」ということがあり、生成した署名鍵をデジタル署名装置内の記憶領域に記憶する工程(S20)を単に「記憶する工程」ということがある。本実施形態では、生成する工程の後に記憶する工程が行われるものとするが、両工程が実行される順序は問わない。例えば、デジタル署名装置は、記憶する工程の後に生成する工程を実行してもよいし、生成する工程と記憶する工程とを並行して実行(つまり並列処理)してもよい。 In the present specification, the step (S10) of generating a pair or a plurality of pairs of signature keys and public keys may be simply referred to as a "generation step", and the generated signature key is stored in a storage area in the digital signature device. (S20) may be simply referred to as a "memorizing step". In the present embodiment, it is assumed that the step of storing is performed after the step of generating, but the order in which both steps are executed does not matter. For example, the digital signature device may execute the step of generating after the step of storing, or may execute the step of generating and the step of storing in parallel (that is, parallel processing).
(デジタル署名装置)
 実施形態1に係る方法は、デジタル署名装置が実行する方法である。デジタル署名装置は、公開鍵暗号方式(Public-key cryptography)に基づいて、データにデジタル署名を行う装置である。
(Digital signature device)
The method according to the first embodiment is a method executed by a digital signature device. The digital signature device is a device that digitally signs data based on a public key cryptography (Public-key cryptography).
 公開鍵暗号方式では、デジタル署名済みのデータを送受信する。デジタル署名済みのデータとは、署名鍵を用いて、送受信の対象となるデータを暗号化することにより生成されるデータである。署名鍵は秘密鍵(Private key)とも呼ばれる。デジタル署名済みのデータは、署名鍵と対になる公開鍵(Public key)を用いて検証される。具体的には、署名鍵と対になる公開鍵を用いて、デジタル署名済みのデータの復号を試み、正しくデータを復号できれば、なりすましやデータの改ざんなどの不正がないと判断し、正しく復号できなければ、なりすましあるいはデータの改ざんなどの何らかの不正があると判断する。公開鍵暗号方式では、デジタル署名済みのデータが、その署名鍵と対になる公開鍵でなければ正しく復号することができないことを利用して、なりすましやデータの改ざんなどの不正の有無の検証を行う。署名鍵は特定のユーザのみが知り得るように管理され、公開鍵は不特定のユーザが知り得るように管理される。 Public key cryptography sends and receives digitally signed data. Digitally signed data is data generated by encrypting data to be transmitted / received using a signature key. The signing key is also called a private key. The digitally signed data is verified using a public key (Public key) that is paired with the signature key. Specifically, if you try to decrypt digitally signed data using a public key that is paired with the signature key and you can decrypt the data correctly, you can judge that there is no fraud such as spoofing or tampering with the data, and you can decrypt it correctly. If not, it is determined that there is some kind of fraud such as spoofing or data falsification. In public key cryptography, digitally signed data can only be correctly decrypted by the public key that is paired with the signature key, and verification of fraud such as spoofing or data tampering is performed. Do. The signing key is managed so that only a specific user can know it, and the public key is managed so that an unspecified user can know it.
 実施形態1に係る方法は、特定の署名アルゴリズムに限定せず用いることができる。また、生成される各署名鍵、および記憶される各署名鍵を自由に設定できるため、例えば使用する署名鍵の履歴から今後使用される署名鍵を推定しようとする脅威等を想定した上で、運用者が積極的に署名鍵を設定することが可能となる。 The method according to the first embodiment can be used without being limited to a specific signature algorithm. In addition, since each generated signature key and each stored signature key can be freely set, for example, assuming a threat to estimate a signature key to be used in the future from the history of the signature key to be used, etc. The operator can positively set the signature key.
 デジタル署名を行うとは、デジタル署名装置内の記憶領域に記憶されている署名鍵を用いて、対象となるデータを暗号化することをいう。暗号化は、RSA(Rivest Shamir Adleman)、DSA(Digital Signature Algorithm)や、ECDSA(Elliptic Curve Digital Signature Algorithm)などの、公開鍵暗号方式で規定される各種のアルゴリズムに従って行うことができる。 Digital signature means encrypting the target data using the signature key stored in the storage area in the digital signature device. Encryption is defined by various public key encryption methods such as RSA (Rivest Shamir Adult), DSA (Digital Signature Algorithm), and ECDSA (Elliptic Curve Digital Signature Algorithm).
 デジタル署名装置内の記憶領域に複数の署名鍵が記憶されている場合には、デジタル署名装置に、複数の署名鍵のなかから1つの署名鍵を選択させ、選択させた1つの署名鍵を用いてデジタル署名を行わせることができる。 When a plurality of signature keys are stored in the storage area in the digital signature device, the digital signature device is made to select one signature key from the plurality of signature keys, and the selected signature key is used. Can be digitally signed.
 署名鍵は当該のユーザのみが秘密裏に保管することから、署名鍵で暗号化された暗号文が復号できなくなる事態を回避する目的で、署名鍵のバックアップをデジタル署名装置内で行っておくことが好ましい。例えば、デジタル署名装置の内部に複数個分のセキュアな保管領域を確保した上で、例えば署名鍵(正)と署名鍵(副)というように(署名鍵(副)は署名鍵(正)の複製であり、署名鍵(正)と同じデータである。)、異なる不揮発性物理メモリのアドレス空間に複数の同じ内容の署名鍵を保管することが好ましい。これにより、不揮発性物理メモリ内に二重化して保管されるため、部分的に破壊された場合に陥ってもどちらかの領域から読みだすことができ、復号できない事態を回避できる可能性がある。署名鍵(正)のデジタル署名装置内の記憶領域と署名鍵(副)のデジタル署名装置内の記憶領域とは、異なる不揮発性物理メモリのアドレス空間にそれぞれ記憶しておくことができる。 Since the signature key is kept secretly only by the user concerned, the signature key should be backed up in the digital signature device in order to avoid the situation where the ciphertext encrypted with the signature key cannot be decrypted. Is preferable. For example, after securing multiple secure storage areas inside the digital signature device, for example, the signature key (primary) and the signature key (secondary) (the signature key (secondary) is the signature key (positive)). It is a duplicate and has the same data as the signature key (positive).) It is preferable to store a plurality of signature keys having the same contents in different non-volatile physical memory address spaces. As a result, since it is duplicated and stored in the non-volatile physical memory, it can be read from either area even if it is partially destroyed, and there is a possibility that the situation where decoding cannot be performed can be avoided. The storage area of the signature key (positive) in the digital signature device and the storage area of the signature key (secondary) in the digital signature device can be stored in different non-volatile physical memory address spaces.
 実施形態1に係る方法のデジタル署名装置内における実行は、ハードウェアにより実現してもよいし、ソフトウェアにより実現してもよい。あるいは、これらの組み合わせにより実現してもよい。ソフトウェアにより実現する場合、デジタル署名装置は、プログラムを実行することにより、実施形態1に係る方法を実行する。このプログラムは、実施形態1に係る方法をデジタル署名装置に実行させるプログラムであり、例えば、実施形態1に係る方法が有する各工程をデジタル署名装置に実行させる。プログラムは、デジタル署名装置内にあらかじめ記憶されているものであってもよいし、他の装置からネットワークを介してデジタル署名装置に送信されたものであってもよい。 The execution of the method according to the first embodiment in the digital signature device may be realized by hardware or software. Alternatively, it may be realized by a combination of these. When realized by software, the digital signature device executes the method according to the first embodiment by executing a program. This program is a program for causing the digital signature device to execute the method according to the first embodiment, and for example, causes the digital signature device to execute each step of the method according to the first embodiment. The program may be stored in advance in the digital signature device, or may be transmitted from another device to the digital signature device via a network.
 図18は、実施形態1に係る方法をデジタル署名装置に実行させるプログラムを、他の装置からネットワークを介してデジタル署名装置に送信するシステムの構成例を示す図である。図18に示すように、このシステムは、デジタル署名装置を備えるユーザ装置と、実施形態1に係る方法をデジタル署名装置に実行させるプログラムを送信する送信装置とが、インターネットや専用回線などのネットワークを介して接続されるシステムである。送信装置は、ユーザ装置からの要求に応じて、ユーザ装置に対して上記のプログラムを送信してもよいし、所定の条件や外部からの送信命令に応じて、ユーザ装置に対して上記のプログラムを送信してもよい。 FIG. 18 is a diagram showing a configuration example of a system in which a program for causing a digital signature device to execute the method according to the first embodiment is transmitted from another device to the digital signature device via a network. As shown in FIG. 18, in this system, a user device provided with a digital signature device and a transmission device for transmitting a program for causing the digital signature device to execute the method according to the first embodiment form a network such as the Internet or a dedicated line. It is a system connected via. The transmitting device may transmit the above program to the user device in response to a request from the user device, or may transmit the above program to the user device in response to a predetermined condition or a transmission command from the outside. May be sent.
 デジタル署名装置の内部あるいはデジタル署名装置内にあるデータが有るとは、例えば、当該データが、デジタル署名装置の演算装置(実施形態1に係る方法を実行する演算部)が処理できる状態(あるいは範囲内)であって且つその他の装置が処理できない状態(あるいは範囲内)にあること(つまり、当該データが、デジタル署名装置の演算装置が排他的に処理できる状態(あるいは範囲内)にあること)をいい、より好ましくはデジタル処理装置の演算装置が収納されている筐体内にデータがあることをいう。デジタル署名装置の外部あるいはデジタル署名装置外にあるデータが無いとは、当該データが、デジタル署名装置の内部あるいはデジタル署名装置内に無いこという。 The existence of data inside the digital signature device or in the digital signature device means that, for example, the data can be processed by the calculation device of the digital signature device (the calculation unit that executes the method according to the first embodiment) (or the range). (Inside) and in a state (or within range) that other devices cannot process (that is, the data is in a state (or within range) that can be exclusively processed by the arithmetic unit of the digital signature device). This means that the data is stored in the housing in which the arithmetic device of the digital processing device is housed. The absence of data outside the digital signature device or outside the digital signature device means that the data is not inside the digital signature device or inside the digital signature device.
(生成する工程S10)
 実施形態1に係る方法は、一対または複数対の署名鍵と公開鍵を生成する工程を有する。本工程は、デジタル署名装置により複数回実行することが可能である。本明細書では、本工程の2回目以降の実行により署名鍵及び公開鍵を生成し、この生成された署名鍵及び公開鍵を後述する記憶する工程S20の2回目以降の実行により記憶する処理を、署名鍵及び/又は公開鍵の「更新」ということがある。なお、生成する工程S10が実行されても、記憶する工程S20が実行されない場合や、その逆の場合もあるため、ある時点における、生成する工程S10の実行回数と記憶する工程の実行回数は必ずしも一致しない。
(Generation step S10)
The method according to the first embodiment includes a step of generating a pair or a plurality of pairs of signature keys and public keys. This step can be executed a plurality of times by the digital signature device. In the present specification, the process of generating the signature key and the public key by the second and subsequent executions of this step, and storing the generated signature key and the public key by the second and subsequent executions of the step S20, which will be described later, is performed. , Signing key and / or public key "update". Even if the generation process S10 is executed, the storage process S20 may not be executed, or vice versa. Therefore, the number of times the generation process S10 is executed and the number of times the storage process is executed at a certain point in time are not necessarily the same. It does not match.
 署名鍵と公開鍵を生成するアルゴリズムは限定されない。署名鍵と公開鍵は、例えば、RSA(Rivest Shamir Adleman)、DSA(Digital Signature Algorithm)、ECDSA(Elliptic Curve Digital Signature Algorithm)などの、公開鍵暗号方式で規定される各種のアルゴリズムに基づいて生成することができる。 The algorithm for generating the signature key and public key is not limited. The signing key and public key are, for example, a public key based on an algorithm defined by RSA (Rivest Shamir Adult), DSA (Digital Signature Algorithm), ECDSA (Elliptic Curve Digital Signature Algorithm), or the like. be able to.
 署名鍵や公開鍵のビット長は限定されない。例えば、署名鍵や公開鍵のビット長は100ビット以上20000ビット以下の範囲になり、好ましくは2048ビット以上15360ビット以下の範囲にある。 The bit length of the signature key and public key is not limited. For example, the bit length of the signature key or public key is in the range of 100 bits or more and 20000 bits or less, preferably in the range of 2048 bits or more and 15360 bits or less.
 本工程により生成された公開鍵は、デジタル署名装置の外部に出力される。 The public key generated in this process is output to the outside of the digital signature device.
(記憶する工程S20)
 実施形態1に係る方法は、生成した署名鍵をデジタル署名装置内の記憶領域に記憶する工程を有する。本工程は、デジタル署名装置により複数回実行することが可能である。上記のとおり、本明細書では、上記した生成する工程S10の2回目以降の実行により署名鍵及び公開鍵を生成し、この生成された署名鍵及び公開鍵を本工程の2回目以降の実行により記憶する処理を、署名鍵及び/又は公開鍵の「更新」ということがある。また、生成する工程S10が実行されても、記憶する工程S20が実行されない場合や、その逆の場合もあるため、ある時点における、生成する工程S10の実行回数と記憶する工程の実行回数は必ずしも一致しない。
(Memory step S20)
The method according to the first embodiment includes a step of storing the generated signature key in a storage area in the digital signature device. This step can be executed a plurality of times by the digital signature device. As described above, in the present specification, the signature key and the public key are generated by the second and subsequent executions of the generation step S10 described above, and the generated signature key and the public key are executed by the second and subsequent executions of the present step. The process of storing may be referred to as "update" of the signing key and / or the public key. Further, even if the generation process S10 is executed, the storage process S20 may not be executed, or vice versa. Therefore, the number of times the generation process S10 is executed and the number of times the storage process is executed at a certain point in time are not necessarily the same. It does not match.
 一対の署名鍵と公開鍵が生成された場合は、一つの署名鍵がデジタル署名装置内の記憶領域に記憶される。複数対の署名鍵と公開鍵が生成された場合は、複数の署名鍵がデジタル署名装置内の記憶領域に記憶される。 When a pair of signature key and public key are generated, one signature key is stored in the storage area in the digital signature device. When multiple pairs of signature keys and public keys are generated, the plurality of signature keys are stored in the storage area in the digital signature device.
 署名鍵をデジタル署名装置内の記憶領域に記憶する際には、デジタル署名装置内の記憶領域に記憶されている他の署名鍵(つまり、以前に生成し記憶された署名鍵)をデジタル署名装置内の記憶領域から削除してもよい。署名鍵及び公開鍵を更新する場合であって、以前に生成し記憶された署名鍵を記憶領域から削除しない場合は、更新後も、以前に生成し記憶された署名鍵を用いて、デジタル署名を行うことが可能であり、当該デジタル署名済みのデータを、更新後も、以前に生成された公開鍵を用いて検証することが可能である。他方、署名鍵及び公開鍵を更新する場合であって、以前に生成し記憶された署名鍵を記憶領域から削除する場合、更新後は、新たに生成し記憶された署名鍵を用いてのみ、デジタル署名を行うことが可能であり、当該デジタル署名済みのデータを、更新後は、新たに生成された公開鍵を用いてのみ検証することが可能となる。 When storing the signature key in the storage area in the digital signature device, the other signature key stored in the storage area in the digital signature device (that is, the previously generated and stored signature key) is stored in the digital signature device. It may be deleted from the storage area in. When updating the signature key and public key, if the previously generated and stored signature key is not deleted from the storage area, the digital signature is digitally signed using the previously generated and stored signature key even after the update. It is possible to verify the digitally signed data using the previously generated public key even after the update. On the other hand, when updating the signature key and public key and deleting the previously generated and stored signature key from the storage area, after the update, only using the newly generated and stored signature key. It is possible to digitally sign, and after updating, the digitally signed data can be verified only using the newly generated public key.
(署名鍵を出力する工程を有さない)
 実施形態1に係る方法は、デジタル署名装置の外部に署名鍵を出力する工程を有さない。したがって、実施形態1に係る方法を実行するデジタル署名装置が、自発的に、署名鍵を自装置の外部に出力することはない。換言すると、実施形態1に係る方法を実行するデジタル署名装置に、その内部で生成された署名鍵をデジタル署名装置の外部に出力させることはできない。「自装置の外部に出力する工程を有さない」には、自装置の外部に出力する工程を有してはいるが、その工程が実行されないことにより結果として外部に出力しない場合は含まれない。
(There is no process to output the signature key)
The method according to the first embodiment does not include a step of outputting a signature key to the outside of the digital signature device. Therefore, the digital signature device that executes the method according to the first embodiment does not voluntarily output the signature key to the outside of the own device. In other words, the digital signature device that executes the method according to the first embodiment cannot output the signature key generated inside the digital signature device to the outside of the digital signature device. "There is no process to output to the outside of the own device" includes the case where the process to output to the outside of the own device is included, but the process is not executed and the output is not to the outside as a result. Absent.
 実施形態1に係る方法は、署名鍵そのものに加えて、署名鍵に関する情報(例:署名鍵の一部及び/又は署名鍵のハッシュ値)を出力させる工程も有さないことが好ましい。このようにすれば、署名鍵そのものはデジタル署名装置の外部に出力されないものの、署名鍵に関する情報(例:署名鍵の一部及び/又は署名鍵のハッシュ値)がデジタル署名装置の外部に出力されることにより、署名鍵が推定されてしまうことを抑制することができる。 It is preferable that the method according to the first embodiment does not include a step of outputting information about the signature key (eg, a part of the signature key and / or a hash value of the signature key) in addition to the signature key itself. In this way, the signature key itself is not output to the outside of the digital signature device, but information about the signature key (eg, a part of the signature key and / or the hash value of the signature key) is output to the outside of the digital signature device. By doing so, it is possible to prevent the signature key from being presumed.
(実施形態1のまとめ)
 以上説明したように、実施形態1に係る方法は、デジタル署名を行うデジタル署名装置自らに、署名鍵と公開鍵の対を生成させる。加えて、実施形態1に係る方法は、自装置の外部に署名鍵を出力する工程を有さず、実施形態1に係る方法を実行するデジタル署名装置が、自発的に、署名鍵を自装置の外部に出力することはない。換言すると、実施形態1に係る方法をデジタル署名装置に実行させることにより、デジタル署名装置に、その内部で生成された署名鍵をデジタル署名装置の外部に出力させることはできない。したがって、実施形態1に係る方法によれば、デジタル署名装置内で生成された署名鍵をデジタル署名装置内に閉じ込めることが可能となる。このように、実施形態1に係る方法によれば、デジタル署名装置が、自装置の内部で署名鍵を生成し、かつ、自装置の外部に署名鍵を出力しないため、署名鍵が流出する虞を低減することができる。よって、例えば、不正にデジタル署名がなされたり、正規署名者によるデジタル署名に対し否認がなされたりする虞を抑制して、デジタル署名そのものへの信憑性が低下することを抑制することができる。
(Summary of Embodiment 1)
As described above, in the method according to the first embodiment, the digital signature device itself that performs digital signature is made to generate a pair of a signature key and a public key. In addition, the method according to the first embodiment does not have a step of outputting the signature key to the outside of the own device, and the digital signature device that executes the method according to the first embodiment voluntarily outputs the signature key to the own device. It does not output to the outside of. In other words, by causing the digital signature device to execute the method according to the first embodiment, it is not possible for the digital signature device to output the signature key generated inside the digital signature device to the outside of the digital signature device. Therefore, according to the method according to the first embodiment, the signature key generated in the digital signature device can be confined in the digital signature device. As described above, according to the method according to the first embodiment, since the digital signature device generates the signature key inside the own device and does not output the signature key to the outside of the own device, the signature key may be leaked. Can be reduced. Therefore, for example, it is possible to suppress the possibility that the digital signature is illegally made or the digital signature by the legitimate signer is denied, and it is possible to prevent the credibility of the digital signature itself from being lowered.
(耐タンパー性)
 デジタル署名装置は、耐タンパー性を有していることが好ましい。このようにすれば、上記したデジタル署名装置が自発的に署名鍵を自装置の外部に出力しないことに加えて、デジタル署名装置から強制的に署名鍵を読み出すことも抑制される。したがって、署名鍵の流出をさらに抑制することができる。
(Tamper resistance)
The digital signature device preferably has tamper resistance. By doing so, in addition to the above-mentioned digital signature device not voluntarily outputting the signature key to the outside of the own device, it is also possible to suppress forcibly reading the signature key from the digital signature device. Therefore, the leakage of the signature key can be further suppressed.
 耐タンパー性を有する装置には、例えば、次に(1)から(5)のいずれか1つ以上の装置を含むことができる。
(1)自装置にかかる電圧、電流、電力、または周波数の変化を検知した場合に、直ちに動作を停止する装置。
(2)自装置の電気特性、温度特性、または光学的特性に関する変化を検知した場合に、直ちに動作を停止する装置。
(3)電圧、電流、電力、周波数、電磁波などの物理量が自装置から漏洩しないようにシールド(遮蔽)が施された装置。
(4)自装置に対する信号の入力回数等に制限を設けられた装置
(5)自装置外部の温度、湿度、電磁波を変化させることで自装置に誤動作や故障を引き起こさせ、それに誘発されて得られる情報から、自装置内部の署名鍵を不正に入手する手段を与えない実装がなされた装置。
The device having tamper resistance can include, for example, any one or more of the devices (1) to (5).
(1) A device that immediately stops operation when it detects a change in voltage, current, power, or frequency applied to its own device.
(2) A device that immediately stops operation when it detects a change in the electrical characteristics, temperature characteristics, or optical characteristics of its own device.
(3) A device that is shielded so that physical quantities such as voltage, current, power, frequency, and electromagnetic waves do not leak from its own device.
(4) A device in which the number of times a signal is input to the own device is limited. (5) By changing the temperature, humidity, and electromagnetic waves outside the own device, the own device may malfunction or malfunction, and the result may be induced. A device that is implemented so as not to give a means to illegally obtain the signature key inside the own device from the information obtained.
[実施形態2に係る方法]
 続けて、実施形態2に係る方法を説明する。実施形態2に係る方法では、上記した生成する工程(S10)や記憶する工程(S20)を実行する好ましい条件について説明する。
[Method according to Embodiment 2]
Subsequently, the method according to the second embodiment will be described. In the method according to the second embodiment, preferable conditions for executing the above-mentioned generation step (S10) and storage step (S20) will be described.
(外部からの命令)
 生成する工程(S10)は、デジタル署名装置の外部から命令が入力された場合に実行させることが好ましい。同様に、記憶する工程(S20)は、デジタル署名装置の外部から命令が入力された場合に実行させることが好ましい。外部からの命令は、例えば、署名鍵と公開鍵をデジタル署名装置内において最初に生成する場合のほか、システムへの侵入や情報流出などの緊急事態が生じた場合、検証者やユーザあるいはこれらの者の関係者から署名鍵の更新要請を受けた場合などにおいて、デジタル署名装置に入力することができる。
(External command)
The generation step (S10) is preferably executed when a command is input from the outside of the digital signature device. Similarly, the storage step (S20) is preferably executed when a command is input from the outside of the digital signature device. External commands are, for example, when the signature key and public key are first generated in the digital signature device, or when an emergency such as system intrusion or information leakage occurs, the verifier, the user, or these. It can be input to the digital signature device when a request for renewal of the signature key is received from a person concerned.
(生成条件、記憶条件)
 さらに、生成する工程(S10)は、生成条件が成立する場合に実行させることが好ましい。同様に、記憶する工程(S20)は、記憶条件が成立する場合に実行させることが好ましい。生成条件とは、デジタル署名装置が自装置の内部において成否が判断される条件である。同様に、記憶条件とは、デジタル署名装置が自装置の内部において成否が判断される条件である。外部から命令を入力された場合だけではなく、生成条件や記憶条件が成立する場合においても生成や記憶を可能とすることにより、デジタル署名装置が、デジタル署名装置の内部において、自発的に生成や記憶を行うことが可能となる。
(Generation condition, storage condition)
Further, it is preferable that the generation step (S10) is executed when the generation conditions are satisfied. Similarly, the storage step (S20) is preferably executed when the storage conditions are satisfied. The generation condition is a condition in which the success or failure of the digital signature device is judged inside the own device. Similarly, the storage condition is a condition in which the success or failure of the digital signature device is judged inside the own device. By enabling generation and storage not only when an instruction is input from the outside but also when the generation condition and the storage condition are satisfied, the digital signature device can spontaneously generate and store the inside of the digital signature device. It becomes possible to perform memory.
 デジタル署名装置は、公開鍵を生成した場合、例えば検証装置などの、公開鍵を用いてデジタル署名を検証する者の装置に対し、公開鍵を送信する。公開鍵証明書がCA局(CA:Certificate Authority)によって管理運用され、署名鍵及び公開鍵の更新が公開鍵証明書における有効期間に従い実施される場合には、公開鍵証明書内部の有効期間のチェックと公開鍵更新に渡る一連の鍵更新の処理が、CA局、署名鍵を用いてデジタル署名を行う者、及び公開鍵を用いてデジタル署名を検証する者の三者間で取り交わされていた。しかし、実施形態1に係る方法により、デジタル署名装置自らが署名鍵及び公開鍵の更新を行う場合には、CA局を介在させる必要がなく、署名鍵を用いてデジタル署名を行う者と公開鍵を用いてデジタル署名を検証する者との通信により、署名鍵及び公開鍵の更新に関する手続きを完結させることが可能となる。したがって、例えば、更新時における通信のオーバーヘッドを軽減することができる。 When the public key is generated, the digital signature device transmits the public key to a device of a person who verifies the digital signature using the public key, such as a verification device. If the public key certificate is managed and operated by a CA (Certificate Authority) and the signature key and public key are updated according to the validity period of the public key certificate, the validity period inside the public key certificate A series of key renewal processes, including checking and public key renewal, are exchanged between the CA, the person who digitally signs using the signing key, and the person who verifies the digital signature using the public key. It was. However, when the digital signature device itself updates the signature key and the public key by the method according to the first embodiment, it is not necessary to intervene the CA station, and the person who performs the digital signature using the signature key and the public key By communicating with a person who verifies the digital signature using the above, it is possible to complete the procedure for updating the signature key and the public key. Therefore, for example, the communication overhead at the time of updating can be reduced.
(カウンタ、タイマ)
 生成条件や記憶条件の成否は、カウンタやタイマを用いてデジタル署名装置に判断させることができる。例えば、カウンタを用いる場合には、デジタル署名の実行回数(データにデジタル署名を行う回数)が所定の回数に達することを生成条件や記憶条件として設定することができる。タイマを用いる場合には、最後に行われたデジタル署名から所定の時間が経過したことを生成条件や記憶条件として設定することができる。
(Counter, timer)
The success or failure of the generation condition and the storage condition can be determined by the digital signature device using a counter or a timer. For example, when a counter is used, it is possible to set as a generation condition or a storage condition that the number of times the digital signature is executed (the number of times the data is digitally signed) reaches a predetermined number of times. When a timer is used, it is possible to set as a generation condition or a storage condition that a predetermined time has elapsed since the last digital signature.
 カウンタやタイマは、デジタル署名装置の外部に設けることも可能であるが、カウンタやタイマの情報がデジタル署名装置の外部に流出しないよう、デジタル署名装置の内部に設けることが好ましい。カウンタやタイマを外部に設けるとは、これらを実現するハードウェアをデジタル署名装置の外部に設けることのほか、これらを実現するプログラムをデジタル署名装置の外部の装置が実行することをいう。カウンタやタイマを内部に設けるとは、これらを実現するハードウェアをデジタル署名装置の内部に設けることのほか、これらを実現するプログラムをデジタル署名装置にその内部において実行させることをいう。 Although the counter and timer can be provided outside the digital signature device, it is preferable to provide the counter and timer inside the digital signature device so that the information of the counter and timer does not leak to the outside of the digital signature device. Providing a counter or timer externally means that the hardware for realizing these is provided outside the digital signature device, and the program for realizing these is executed by the device outside the digital signature device. Providing a counter or timer inside means that the hardware for realizing these is provided inside the digital signature device, and the program for realizing these is executed inside the digital signature device.
 生成条件や記憶条件を設定するにあたり、カウンタやタイマを様々に組み合わせることができる。例えば、次の表は、カウンタやタイマの組み合わせ方と、生成条件や記憶条件の関係を示すものである。
Figure JPOXMLDOC01-appb-T000001
この表に示すとおり、生成条件と記憶条件は、ともにカウンタを用いて判断することができる。また、生成条件と記憶条件は、ともにタイマを用いて判断することもできる。また、生成条件はカウンタ及びタイマの一方を用いて判断し、記憶条件は、他方を用いて判断することもできる。また、生成条件と記憶条件をともにカウンタ及びタイマを用いて判断することもできる。
Counters and timers can be combined in various ways when setting generation conditions and storage conditions. For example, the following table shows the relationship between how to combine counters and timers and the generation and storage conditions.
Figure JPOXMLDOC01-appb-T000001
As shown in this table, both the generation condition and the storage condition can be determined by using the counter. Further, both the generation condition and the storage condition can be determined by using a timer. Further, the generation condition can be determined by using one of the counter and the timer, and the storage condition can be determined by using the other. Further, both the generation condition and the storage condition can be determined by using the counter and the timer.
 以下、デジタル署名装置に、カウンタやタイマを用いて生成条件や記憶条件の成否を判断させ、生成や記憶を行わせる例について詳細に説明する。なお、以下において、Ncはデジタル署名の実行回数を示し、デジタル署名が実行される度に1つインクリメントされる。Ncの初期値は特に限定されないが、例えば0である。また、Tcは最後にデジタル署名を実行した日時を示す。Tcの初期値は特に限定されないが、初期値は例えば所定の日時である。また、Duは現在時刻とTcの差を示す。つまり、Du=現在時刻-Tcである。また、NcGen、NcMax、DuGen、及びDuMaxはいずれも定数であり、カウンタやタイマに予め設定することができる。NcGen≦NcMaxであり、DuGen≦DuMaxであるものとする。 Hereinafter, an example in which a digital signature device is made to judge the success or failure of a generation condition or a storage condition by using a counter or a timer to generate and store the data will be described in detail. In the following, Nc indicates the number of times the digital signature is executed, and is incremented by 1 each time the digital signature is executed. The initial value of Nc is not particularly limited, but is, for example, 0. In addition, Tc indicates the date and time when the last digital signature was executed. The initial value of Tc is not particularly limited, but the initial value is, for example, a predetermined date and time. Du indicates the difference between the current time and Tc. That is, Du = current time-Tc. Further, NcGen, NcMax, DuGen, and DuMax are all constants and can be set in advance in the counter or timer. It is assumed that NcGen ≦ NcMax and DuGen ≦ DuMax.
(表1のケース1)
 まず、表1のケース1の一例を説明する。図2は、デジタル署名装置に、カウンタを用いて生成条件及び記憶条件の成否を判断させ、生成や記憶を行わせる例を説明するフローチャートである。図2に示すように、本例では、デジタル署名装置に、Ncの値をチェックさせる(A11)。そして、生成条件(Nc=NcGen)が成立する場合は、デジタル署名装置に、生成する工程を実行させる(A12)。他方、記憶条件(Nc>NcMax)が成立する場合は、デジタル署名装置に、デジタル署名が実行中であるかどうか判断させ(A13)、実行中でなければ記憶する工程を実行させ(A14)、Ncを初期値に戻させる(A15)。NcGen=NcMaxとすれば、生成する工程と記憶する工程とが実質的に同じタイミングで実行することができる。図2に示すフローチャートは、例えば、デジタル署名を行う度に開始することができる。
(Case 1 in Table 1)
First, an example of Case 1 in Table 1 will be described. FIG. 2 is a flowchart illustrating an example in which a digital signature device is made to use a counter to determine the success or failure of a generation condition and a storage condition, and to perform generation and storage. As shown in FIG. 2, in this example, the digital signature device is made to check the value of Nc (A11). Then, when the generation condition (Nc = NcGen) is satisfied, the digital signature device is made to execute the generation step (A12). On the other hand, when the storage condition (Nc> NcMax) is satisfied, the digital signature device is made to determine whether or not the digital signature is being executed (A13), and if it is not being executed, the process of storing is executed (A14). Nc is returned to the initial value (A15). If NcGen = NcMax, the process of generating and the process of storing can be executed at substantially the same timing. The flowchart shown in FIG. 2 can be started every time a digital signature is performed, for example.
(表1のケース2)
 次に、表1のケース2の一例を説明する。図3Aは、デジタル署名装置に、カウンタを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートであり、図3Bは、デジタル署名装置に、タイマを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。図3Aに示すように、本例では、デジタル署名装置に、生成条件(Nc=NcGen)が成立するかどうかを判断させ(B11)、成立する場合は、デジタル署名装置に、生成する工程を実行させ(B12)、Ncを初期値に戻す(B13)。また、図3Bに示すように、デジタル署名装置に、記憶条件(Du>DuMax)が成立するかどうかを判断させ(B21)、成立する場合は、デジタル署名装置に、デジタル署名が実行中であるかどうか判断させ(B22)、実行中でなければ記憶する工程を実行させ(B23)、Tcを現時刻に設定させる(B24)。図3Aに示すフローチャートは、例えば、デジタル署名を行う度に開始することができる。図3Bに示すフローチャートは、例えば、定期的に開始することができる。
(Case 2 in Table 1)
Next, an example of Case 2 in Table 1 will be described. FIG. 3A is a flowchart illustrating an example in which a digital signature device is made to judge the success or failure of a generation condition by using a counter and generate, and FIG. 3B is a flowchart in which the digital signature device is made to use a timer to determine the success or failure of a storage condition. It is a flowchart explaining an example which makes it judge and make a memory. As shown in FIG. 3A, in this example, the digital signature device is made to determine whether or not the generation condition (Nc = NcGen) is satisfied (B11), and if it is satisfied, the digital signature device executes the generation step. (B12) and return Nc to the initial value (B13). Further, as shown in FIG. 3B, the digital signature device is made to determine whether or not the storage condition (Du> DuMax) is satisfied (B21), and if so, the digital signature device is executing the digital signature. Whether or not it is determined (B22), the step of storing if it is not being executed is executed (B23), and Tc is set to the current time (B24). The flowchart shown in FIG. 3A can be started every time a digital signature is performed, for example. The flowchart shown in FIG. 3B can be started periodically, for example.
(表1のケース3)
 次に、表1のケース3の一例を説明する。図4Aは、デジタル署名装置に、カウンタを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートであり、図4Bは、デジタル署名装置に、カウンタ及びタイマを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。図4Aに示すように、本例では、デジタル署名装置に、生成条件(Nc=NcGen)が成立するかどうかを判断させ(C11)、成立する場合は、デジタル署名装置に、生成する工程を実行させる(C12)。また、図4Bに示すように、デジタル署名装置に、記憶条件(Du>DuMax、かつ、Nc>NcMax)が成立するかどうかを判断させ(C21)、成立する場合は、デジタル署名装置に、デジタル署名が実行中であるかどうか判断させ(C22)、実行中でなければ記憶する工程を実行させ(C23)、Tcを現時刻に設定するとともにNcを初期値に戻させる(C24)。図4Aに示すフローチャートは、例えば、デジタル署名を行う度に開始することができる。図4Bに示すフローチャートは、例えば、定期的に開始することができる。
(Case 3 in Table 1)
Next, an example of Case 3 in Table 1 will be described. FIG. 4A is a flowchart illustrating an example in which a digital signature device is made to determine the success or failure of a generation condition using a counter and generation is performed. FIG. 4B is a flowchart in which the digital signature device is made to use a counter and a timer to store conditions. It is a flowchart explaining an example which makes it judge whether or not it succeeds, and makes it memorize. As shown in FIG. 4A, in this example, the digital signature device is made to determine whether or not the generation condition (Nc = NcGen) is satisfied (C11), and if it is satisfied, the digital signature device executes the generation step. (C12). Further, as shown in FIG. 4B, the digital signature device is made to determine whether or not the storage conditions (Du> DuMax and Nc> NcMax) are satisfied (C21), and if so, the digital signature device is digitally used. It is made to judge whether the signature is being executed (C22), to execute the step of storing if it is not being executed (C23), to set Tc to the current time and to return Nc to the initial value (C24). The flowchart shown in FIG. 4A can be started every time a digital signature is performed, for example. The flowchart shown in FIG. 4B can be started periodically, for example.
(表1のケース4)
 次に、表1のケース4の一例を説明する。図5Aは、デジタル署名装置に、タイマを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートであり、図5Bは、デジタル署名装置に、カウンタを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。図5Aに示すように、本例では、デジタル署名装置に、生成条件(Du=DuGen)が成立するかどうかを判断させ(E11)、成立する場合は、デジタル署名装置に、生成する工程を実行させ(E12)、Tcを現時刻に設定させる(E13)。また、図5Bに示すように、デジタル署名装置に、記憶条件(Nc>NcMax)が成立するかどうかを判断させ(E21)、成立する場合は、デジタル署名装置に、デジタル署名が実行中であるかどうか判断させ(E22)、実行中でなければ記憶する工程を実行させ(E23)、Ncを初期値に戻させる(E24)。図5Aに示すフローチャートは、例えば、定期的に開始することができる。図5Bに示すフローチャートは、例えば、デジタル署名を行う度に開始することができる。
(Case 4 in Table 1)
Next, an example of Case 4 in Table 1 will be described. FIG. 5A is a flowchart illustrating an example in which a digital signature device is made to determine the success or failure of a generation condition using a timer and generation is performed. FIG. 5B is a flowchart in which the digital signature device is made to use a counter to determine the success or failure of a storage condition. It is a flowchart explaining an example which makes it judge and make a memory. As shown in FIG. 5A, in this example, the digital signature device is made to determine whether or not the generation condition (Du = DuGen) is satisfied (E11), and if it is satisfied, the digital signature device executes the generation step. (E12) and set Tc to the current time (E13). Further, as shown in FIG. 5B, the digital signature device is made to determine whether or not the storage condition (Nc> NcMax) is satisfied (E21), and if so, the digital signature device is executing the digital signature. Whether or not it is determined (E22), the step of storing if it is not being executed is executed (E23), and Nc is returned to the initial value (E24). The flowchart shown in FIG. 5A can be started periodically, for example. The flowchart shown in FIG. 5B can be started every time a digital signature is performed, for example.
(表1のケース5)
 次に、表1のケース5の一例を説明する。図6は、デジタル署名装置に、タイマを用いて生成条件及び記憶条件の成否を判断させ、生成や記憶を行わせる例を説明するフローチャートである。図6に示すように、本例では、デジタル署名装置に、Du=DuGenが成立するかどうかを判断させる(F11)。そして、生成条件(Nc=NcGen)が成立する場合は、デジタル署名装置に、生成する工程を実行させる(F12)。次に、デジタル署名装置に、記憶条件(Du>DuMax)が成立するかどうかを判断させる(F13)。そして、記憶条件(Du>DuMax)が成立する場合は、デジタル署名装置に、デジタル署名が実行中であるかどうか判断させ(F14)、実行中でなければ記憶する工程を実行させ(F15)、Tcを現時刻に設定させる(F16)。図6に示すフローチャートは、例えば、定期的に開始することができる。
(Case 5 in Table 1)
Next, an example of Case 5 in Table 1 will be described. FIG. 6 is a flowchart illustrating an example in which a digital signature device is made to use a timer to determine the success or failure of a generation condition and a storage condition, and to perform generation and storage. As shown in FIG. 6, in this example, the digital signature device is made to determine whether or not Du = DuGen is satisfied (F11). Then, when the generation condition (Nc = NcGen) is satisfied, the digital signature device is made to execute the generation step (F12). Next, the digital signature device is made to determine whether or not the storage condition (Du> DuMax) is satisfied (F13). Then, when the storage condition (Du> DuMax) is satisfied, the digital signature device is made to determine whether or not the digital signature is being executed (F14), and if not, the step of storing the digital signature is executed (F15). Tc is set to the current time (F16). The flowchart shown in FIG. 6 can be started periodically, for example.
(表1のケース6)
 次に、表1のケース6の一例を説明する。図7Aは、デジタル署名装置に、タイマを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートであり、図7Bは、カウンタ及びタイマを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。図7Aに示すように、本例では、デジタル署名装置に、生成条件(Du=DuGen)が成立するかどうかを判断させ(G11)、成立する場合は、デジタル署名装置に、生成する工程を実行させる(G12)。また、図7Bに示すように、デジタル署名装置に、記憶条件(Du>DuMax、かつ、Nc>NcMax)が成立するかどうかを判断させ(G21)、成立する場合は、デジタル署名装置に、デジタル署名が実行中であるかどうか判断させ(G22)、実行中でなければ記憶する工程を実行させ(G23)、Tcを現時刻に設定するとともにNcを初期値に戻させる(G24)。図7A及び図7Bに示すフローチャートは、例えば、定期的に開始することができる。
(Case 6 in Table 1)
Next, an example of Case 6 in Table 1 will be described. FIG. 7A is a flowchart illustrating an example in which the digital signature device is made to judge the success / failure of the generation condition by using the timer and the generation is performed, and FIG. 7B is made to judge the success / failure of the storage condition by using the counter and the timer. , It is a flowchart explaining an example of making a memory. As shown in FIG. 7A, in this example, the digital signature device is made to determine whether or not the generation condition (Du = DuGen) is satisfied (G11), and if it is satisfied, the digital signature device executes the generation step. Let (G12). Further, as shown in FIG. 7B, the digital signature device is made to determine whether or not the storage conditions (Du> DuMax and Nc> NcMax) are satisfied (G21), and if so, the digital signature device is made to digitally. It is made to judge whether the signature is being executed (G22), to execute the step of storing if it is not being executed (G23), to set Tc to the current time and to return Nc to the initial value (G24). The flowcharts shown in FIGS. 7A and 7B can be started periodically, for example.
(表1のケース7)
 次に、表1のケース7の一例を説明する。図8Aは、デジタル署名装置に、カウンタ及びタイマを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートであり、図8Bは、カウンタを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。図8Aに示すように、本例では、デジタル署名装置に、生成条件(Du=DuGen、かつ、Nc=NcGen)が成立するかどうかを判断させ(H11)、成立する場合は、デジタル署名装置に、生成する工程を実行させ(H12)、Tcを現時刻に設定させる(H13)。また、図8Bに示すように、デジタル署名装置に、記憶条件(Nc>NcMax)が成立するかどうかを判断させ(H21)、成立する場合は、デジタル署名装置に、デジタル署名が実行中であるかどうか判断させ(H22)、実行中でなければ記憶する工程を実行させ(H23)、Ncを初期値に戻させる(H24)。図8Aに示すフローチャートは、例えば、定期的に開始することができる。図8Bに示すフローチャートは、例えば、デジタル署名を行う度に開始することができる。
(Case 7 in Table 1)
Next, an example of Case 7 in Table 1 will be described. FIG. 8A is a flowchart illustrating an example in which the digital signature device is made to judge the success / failure of the generation condition by using the counter and the timer, and the generation is performed. FIG. 8B is made to judge the success / failure of the storage condition by using the counter. , It is a flowchart explaining an example of making a memory. As shown in FIG. 8A, in this example, the digital signature device is made to determine whether or not the generation conditions (Du = DuGen and Nc = NcGen) are satisfied (H11), and if so, the digital signature device is used. , The process of generating is executed (H12), and Tc is set to the current time (H13). Further, as shown in FIG. 8B, the digital signature device is made to determine whether or not the storage condition (Nc> NcMax) is satisfied (H21), and if so, the digital signature device is executing the digital signature. Whether or not it is determined (H22), the step of storing if it is not being executed is executed (H23), and Nc is returned to the initial value (H24). The flowchart shown in FIG. 8A can be started periodically, for example. The flowchart shown in FIG. 8B can be started every time a digital signature is performed, for example.
(表1のケース8)
 次に、表1のケース8の一例を説明する。図9Aは、デジタル署名装置に、カウンタ及びタイマを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートであり、図9Bは、タイマを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。図9Aに示すように、本例では、デジタル署名装置に、生成条件(Du=DuGen、かつ、Nc=NcGen)が成立するかどうかを判断させ(I11)、成立する場合は、デジタル署名装置に、生成する工程を実行させ(I12)、Ncを初期値に戻させる(I13)。また、図9Bに示すように、デジタル署名装置に、記憶条件(Du>DuMax)が成立するかどうかを判断させ(I21)、成立する場合は、デジタル署名装置に、デジタル署名が実行中であるかどうか判断させ(I22)、実行中でなければ記憶する工程を実行させ(I23)、Tcを現時刻に設定させる(I24)。図9A及び図9Bに示すフローチャートは、例えば、定期的に開始することができる。
(Case 8 in Table 1)
Next, an example of Case 8 in Table 1 will be described. FIG. 9A is a flowchart illustrating an example in which the digital signature device is made to judge the success / failure of the generation condition by using the counter and the timer, and the generation is performed. FIG. 9B is a flowchart in which the success / failure of the storage condition is judged by using the timer. , It is a flowchart explaining an example of making a memory. As shown in FIG. 9A, in this example, the digital signature device is made to determine whether or not the generation conditions (Du = DuGen and Nc = NcGen) are satisfied (I11), and if so, the digital signature device is used. , The step of generating is executed (I12), and Nc is returned to the initial value (I13). Further, as shown in FIG. 9B, the digital signature device is made to determine whether or not the storage condition (Du> DuMax) is satisfied (I21), and if so, the digital signature device is executing the digital signature. Whether or not it is determined (I22), the step of storing if it is not being executed is executed (I23), and Tc is set to the current time (I24). The flowcharts shown in FIGS. 9A and 9B can be started periodically, for example.
(表1のケース9)
 次に、表1のケース9の一例を説明する。図10Aは、デジタル署名装置に、カウンタ及びタイマを用いて生成条件の成否を判断させ、生成を行わせる例を説明するフローチャートであり、図10Bは、カウンタ及びタイマを用いて記憶条件の成否を判断させ、記憶を行わせる例を説明するフローチャートである。図10Aに示すように、本例では、デジタル署名装置に、生成条件(Du=DuGen、かつ、Nc=NcGen)が成立するかどうかを判断させ(J11)、成立する場合は、デジタル署名装置に、生成する工程を実行させる(J12)。また、図10Bに示すように、デジタル署名装置に、記憶条件(Du>DuMax、かつ、Nc>NcMax)が成立するかどうかを判断させ(J21)、成立する場合は、デジタル署名装置に、デジタル署名が実行中であるかどうか判断させ(J22)、実行中でなければ記憶する工程を実行させ(J23)、Tcを現時刻に設定するとともにNcを初期値に戻させる(J24)。図10A及び図10Bに示すフローチャートは、例えば、定期的に開始することができる。
(Case 9 in Table 1)
Next, an example of Case 9 in Table 1 will be described. FIG. 10A is a flowchart illustrating an example in which a digital signature device is made to determine the success or failure of a generation condition using a counter and a timer, and generation is performed. FIG. 10B is a flowchart for determining the success or failure of a storage condition using the counter and the timer. It is a flowchart explaining an example which makes a judgment and memory. As shown in FIG. 10A, in this example, the digital signature device is made to determine whether or not the generation conditions (Du = DuGen and Nc = NcGen) are satisfied (J11), and if so, the digital signature device is used. , The step of generating is executed (J12). Further, as shown in FIG. 10B, the digital signature device is made to determine whether or not the storage condition (Du> DuMax and Nc> NcMax) is satisfied (J21), and if it is satisfied, the digital signature device is made to digitally. It is made to judge whether or not the signature is being executed (J22), and if it is not being executed, the process of storing is executed (J23), Tc is set to the current time, and Nc is returned to the initial value (J24). The flowcharts shown in FIGS. 10A and 10B can be started periodically, for example.
 以下、実施例を説明する。実施例では、上記で説明したデジタル署名装置を用いたシステムを説明する。なお、これらのシステムでは、上記で説明したデジタル署名装置を用いることが好ましいが、他のデジタル署名装置を用いることもできる。 An embodiment will be described below. In the embodiment, a system using the digital signature device described above will be described. In these systems, it is preferable to use the digital signature device described above, but other digital signature devices can also be used.
 図11Aは、実施例1に係るシステムの構成例を示す模式図である。図11Aに示すように、実施例1に係るシステムは、デジタル署名装置を備えたユーザ装置と、デジタル署名済みのデータを検証する検証装置と、がネットワークを介して接続されたシステムである。以下、詳細に説明する。 FIG. 11A is a schematic diagram showing a configuration example of the system according to the first embodiment. As shown in FIG. 11A, the system according to the first embodiment is a system in which a user device provided with a digital signature device and a verification device for verifying digitally signed data are connected via a network. Hereinafter, a detailed description will be given.
(ユーザ装置)
 ユーザ装置は、ユーザが利用する装置である。ユーザ装置は、他の装置(例:他のユーザ装置、検証装置)との間でデータの送受信を行うことができる。ユーザ装置は、デジタル署名装置と他の装置との間に位置するインタフェースとしての役割を果たし、他の装置から受信した情報をデジタル署名装置に出力し、また、デジタル署名装置から出力された情報(公開鍵等)を他の装置に送信する。ユーザ装置には、スマートフォン、スマートウォッチ、ICカードなどの様々な装置を用いることができる。デジタル署名装置をユーザ装置そのものとして用いてもよいが、この場合は、デジタル署名装置が、他の装置との間でデータの送受信を行う。
(User device)
The user device is a device used by the user. The user device can send and receive data to and from other devices (eg, other user devices, verification devices). The user device functions as an interface located between the digital signature device and the other device, outputs the information received from the other device to the digital signature device, and also outputs the information output from the digital signature device (the information output from the digital signature device). Send the public key, etc.) to another device. As the user device, various devices such as smartphones, smart watches, and IC cards can be used. The digital signature device may be used as the user device itself, but in this case, the digital signature device transmits / receives data to / from another device.
(検証装置)
 検証装置は、検証者の装置である。検証者とは、デジタル署名済みデータを検証する者をいう。デジタル署名済みデータの検証とは、公開鍵を用いて、署名鍵でデジタル署名済みデータの復号を行い、復号できれば、なりすましやデータの改ざんなどの不正がないと判断し、復号できなければ、なりすましあるいはデータの改ざんなどの何らかの不正があると判断することをいう。なりすましがあるかどうかの判断は、本人認証とも呼ばれる。
(Verification device)
The verification device is the device of the verifier. A verifier is a person who verifies digitally signed data. The verification of digitally signed data is to decrypt the digitally signed data with the signature key using the public key, and if it can be decrypted, it is judged that there is no fraud such as spoofing or data tampering, and if it cannot be decrypted, it is spoofed. Alternatively, it means determining that there is some kind of fraud such as data falsification. Determining whether or not there is spoofing is also called personal authentication.
 検証装置は、例えば、(1)ユーザ装置と他の装置とがデータを送受信する二者間通信における、当該他の装置でもよいし、(2)ユーザ装置と他の装置と第三者の装置がデータを送受信する三者間通信における、当該第三者の装置でもよい。(1)の場合は、ユーザ装置との間で通信を行う他の装置自体が、ユーザ装置から受信するデータになりすましや改ざんなどの不正がないかどうかを判断する。(2)の場合は、第三者の装置が、ユーザ装置との間でデータを送受信する他の装置に代わり、当該他の装置がユーザ装置から受信するデータになりすましや改ざんなどの不正がないかどうかを判断する。(1)の他の装置には、他のユーザ装置のほか、特定のサービスを提供する者の装置などが含まれる。サービスには、電子決済、ネットショッピング、電子メールなどが含まれる。例えば、他の装置が電子決済を提供する者の装置である場合には、ユーザ装置から受信した決済情報などに不正がないかどうかを、当該他の装置自らが検証する。(2)の第三者の装置には、認証局(CA:Certificate Authority)や公開鍵の管理サービスを行う者の装置(複数の公開鍵を管理する装置)などの、デジタル署名の検証をサービスとして行う者の装置が含まれる。例えば、他の装置がネットショッピングを提供する者の装置である場合には、他の装置がユーザ装置から受信した取引情報などに不正がないかどうかを、当該第三者の装置が検証し、検証結果を他の装置に送信する。 The verification device may be, for example, (1) the other device in bilateral communication in which the user device and the other device send and receive data, and (2) the user device, the other device, and a third party device. It may be the device of the third party in the three-party communication in which the data is transmitted and received. In the case of (1), the other device itself that communicates with the user device determines whether or not the data received from the user device is fraudulent, such as spoofing or falsification. In the case of (2), there is no fraud such as spoofing or falsification of the data received from the user device by the other device instead of the other device that sends and receives data to and from the user device. Determine if. The other device of (1) includes other user devices, devices of a person who provides a specific service, and the like. Services include electronic payments, online shopping, email and more. For example, when the other device is a device of a person who provides electronic payment, the other device itself verifies whether or not the payment information received from the user device is fraudulent. (2) The third-party device is provided with a digital signature verification service such as a certificate authority (CA) or a device of a person who provides a public key management service (a device that manages multiple public keys). The device of the person who performs as is included. For example, when another device is a device of a person who provides online shopping, the third party's device verifies whether the transaction information received from the user device by the other device is fraudulent. Send the verification result to another device.
(ネットワーク)
 ネットワークには例えばインターネットなどの公衆回線や専用回線を用いることができる。
(network)
For the network, for example, a public line such as the Internet or a dedicated line can be used.
(動作例)
 図11Bは、実施例1に係るシステムの動作例を説明するシーケンス図である。以下、図11Bを参照しつつ、実施例1に係るシステムの動作例を説明する。なお、検証装置には、ユーザの公開鍵があらかじめ記憶されているものとする。ただし、検証装置は、例えば、検証の度に、あるいは所定の時間間隔毎に、ユーザの公開鍵をネットワークを介して取得してもよい。
(Operation example)
FIG. 11B is a sequence diagram illustrating an operation example of the system according to the first embodiment. Hereinafter, an operation example of the system according to the first embodiment will be described with reference to FIG. 11B. It is assumed that the user's public key is stored in the verification device in advance. However, the verification device may acquire the user's public key via the network, for example, at each verification or at a predetermined time interval.
(S101)
 まず、検証装置が、ユーザ装置に対して、データを送信する。このデータは、乱数などの、ユーザ装置に対して自明でないデータであることが好ましい。
(S101)
First, the verification device transmits data to the user device. This data is preferably data that is not obvious to the user device, such as a random number.
(S102)
 次に、ユーザ装置のデジタル署名装置が、署名鍵を用いて、データにデジタル署名をする。具体的には、ユーザ装置のデジタル署名装置が、ユーザの署名鍵を用いて受信したデータを暗号化する。
(S102)
Next, the digital signature device of the user device digitally signs the data using the signature key. Specifically, the digital signature device of the user device encrypts the received data using the user's signature key.
(S103)
 次に、ユーザ装置が、検証装置に対して、デジタル署名済みのデータを送信する。
(S103)
The user device then sends the digitally signed data to the verification device.
(S104)
 次に、検証装置が、ユーザ装置の公開鍵を用いて、受信したデータに付けられているデジタル署名を検証する。具体的には、デジタル署名済みのデータをユーザの公開鍵で復号し、復号できれば、ユーザは復号に用いた公開鍵の所有者であると判断し(本人認証に成功し)、復号できなければユーザは当該公開鍵の所有者ではないと判断する。
(S104)
Next, the verification device verifies the digital signature attached to the received data by using the public key of the user device. Specifically, if the digitally signed data can be decrypted and decrypted with the user's public key, the user is determined to be the owner of the public key used for decryption (successful personal authentication), and if it cannot be decrypted. It is determined that the user is not the owner of the public key.
 以上説明した実施例1によれば、ユーザ装置から送信されるデジタル署名済みのデータを検証することにより、ユーザ装置のユーザが、検証に用いる公開鍵の所有者であるかどうかを確かめることができる。 According to the first embodiment described above, by verifying the digitally signed data transmitted from the user device, it is possible to confirm whether or not the user of the user device is the owner of the public key used for the verification. ..
 図12Aは、実施例2に係るシステムの構成例を示す模式図である。図12Aに示すように、実施例2に係るシステムは、ユーザ装置と、デジタル署名装置を備えた検証装置と、アイテムと、がネットワークを介して接続されたシステムである。以下、詳細に説明する。 FIG. 12A is a schematic diagram showing a configuration example of the system according to the second embodiment. As shown in FIG. 12A, the system according to the second embodiment is a system in which a user device, a verification device including a digital signature device, and an item are connected via a network. Hereinafter, a detailed description will be given.
(ユーザ装置、検証装置、デジタル署名装置、及びネットワーク)
 検証装置がデジタル署名装置を備える点を除き、ユーザ装置、検証装置、デジタル署名装置、及びネットワークの構成は、実施例1の場合と同様であるので説明を省略する。
(User device, verification device, digital signature device, and network)
The configuration of the user device, the verification device, the digital signature device, and the network is the same as that of the first embodiment except that the verification device includes the digital signature device, and thus the description thereof will be omitted.
(アイテム)
 アイテムは、ユーザや検証者などと一定の関係のある物である。例えば、検証装置として、サービス提供者(例:クレジットカード会社、自動車メーカー、住宅メーカー、カーレンタルの会社)の装置を用いる場合、アイテムには、サービス提供者の商品(例:クレジットカード、自動車、引き渡し前の住宅、レンタル中の車)を用いることができる。
(item)
An item has a certain relationship with a user, a verifier, or the like. For example, when a service provider's device (eg, credit card company, car maker, home maker, car rental company) is used as the verification device, the item is the service provider's product (eg, credit card, car, etc.). You can use the house before delivery, the car you are renting).
(動作例)
 図12Bは、実施例2に係るシステムの動作例を説明するシーケンス図である。以下、図12Bを参照しつつ、実施例2に係るシステムの動作例を説明する。なお、検証装置には、ユーザの公開鍵があらかじめ記憶されているものとする。ただし、検証装置は、例えば、検証の度に、あるいは所定の時間間隔毎に、ユーザの公開鍵をネットワークを介して取得してもよい。
(Operation example)
FIG. 12B is a sequence diagram illustrating an operation example of the system according to the second embodiment. Hereinafter, an operation example of the system according to the second embodiment will be described with reference to FIG. 12B. It is assumed that the user's public key is stored in the verification device in advance. However, the verification device may acquire the user's public key via the network, for example, at each verification or at a predetermined time interval.
(S201)
 まず、ユーザ装置が、検証装置に対して、ユーザIDを送信する。ユーザIDはユーザを特定するデータである。
(S201)
First, the user device transmits the user ID to the verification device. The user ID is data that identifies the user.
(S202)
 次に、検証装置のデジタル署名装置が、ユーザ装置から受信したユーザIDに、ユーザの署名鍵を用いてデジタル署名をする。具体的には、ユーザIDをユーザの署名鍵で暗号化する。
(S202)
Next, the digital signature device of the verification device digitally signs the user ID received from the user device using the user's signature key. Specifically, the user ID is encrypted with the user's signature key.
(S203)
 次に、検証装置が、デジタル署名済みのユーザIDをアイテムに送信する。
(S203)
The verification device then sends the digitally signed user ID to the item.
(S204)
 次に、アイテムが、デジタル署名済みのユーザIDを記憶する。
(S204)
The item then stores a digitally signed user ID.
 以上が事前記憶の手続きとなる。 The above is the procedure for pre-memory.
(S205、S206)
 事前記憶後、アイテムが、検証装置に対して、自装置内に記憶されているデジタル署名済みのユーザIDを送信すると、検証装置は、デジタル署名済みのユーザIDを検証する。具体的には、デジタル署名済みのユーザIDをユーザの公開鍵で復号し、復号できれば、アイテムと、復号により得られたユーザIDで特定されるユーザとの間に、一定の関係があると判断する。
(S205, S206)
After the pre-storage, when the item transmits the digitally signed user ID stored in the own device to the verification device, the verification device verifies the digitally signed user ID. Specifically, if the digitally signed user ID can be decrypted with the user's public key and decrypted, it is determined that there is a certain relationship between the item and the user specified by the user ID obtained by the decryption. To do.
 実施例2によれば、検証装置により、ユーザとアイテムとの関係を判断することができる。例えば、検証装置により、あるクレジットカードがあるユーザの名義であること、ある自動車があるユーザの所有であること、ある住宅があるユーザに引き渡される予定であること、ある車があるユーザに対してレンタル中であることなどを判断することができる。 According to the second embodiment, the relationship between the user and the item can be determined by the verification device. For example, by a verification device, a credit card is in the name of a user, a car is owned by a user, a house is to be handed over to a user, and a car is for a user. It is possible to judge that the rental is in progress.
 実施例2によれば、アイテムが、検証者と一定の関係にあるかどうかを判断することもできる。例えば、アイテムが鞄であり、検証者が鞄メーカーである場合には、デジタル署名済みユーザIDを検証することにより、鞄が真正のものであるか偽物であるかを判断することができる。 According to Example 2, it is also possible to determine whether the item has a certain relationship with the verifier. For example, when the item is a bag and the verifier is a bag maker, it is possible to determine whether the bag is genuine or fake by verifying the digitally signed user ID.
 実施例2によれば、検証者が提供するサービスにおいて、ユーザの所有物にICタグ等(アイテムの一例)を取り付け、当該のICタグ等にデジタル署名装置を内蔵させることにより、所有者とその所有物を、ディジタル署名検証によって検証することができる。所有物への氏名の記入や彫刻等の従来の手段を電子的手段で行えるようになる。 According to the second embodiment, in the service provided by the verifier, an IC tag or the like (an example of an item) is attached to the property of the user, and the digital signature device is built in the IC tag or the like, thereby causing the owner and its owner. Property can be verified by digital signature verification. It will be possible to perform conventional means such as writing a name on a property or engraving by electronic means.
 図13Aは、実施例3に係るシステムの構成例を示す模式図である。図13Aに示すように、実施例3に係るシステムは、デジタル署名装置及び検証装置を備えたユーザ装置と、アイテムと、がネットワークを介して接続されたシステムである。以下、詳細に説明する。 FIG. 13A is a schematic diagram showing a configuration example of the system according to the third embodiment. As shown in FIG. 13A, the system according to the third embodiment is a system in which a user device including a digital signature device and a verification device and an item are connected via a network. Hereinafter, a detailed description will be given.
(ユーザ装置、検証装置、デジタル署名装置、アイテム、及びネットワーク)
 ユーザ装置がデジタル署名装置及び検証装置を備える点を除き、ユーザ装置、検証装置、デジタル署名装置、アイテム及びネットワークの構成は、実施例2の場合と同様であるので説明を省略する。
(User equipment, verification equipment, digital signature equipment, items, and networks)
The configuration of the user device, the verification device, the digital signature device, the item, and the network is the same as that of the second embodiment except that the user device includes the digital signature device and the verification device, and thus the description thereof will be omitted.
(動作例)
 図13Bは、実施例3に係るシステムの動作例を説明するシーケンス図である。以下、図13Bを参照しつつ、実施例3に係るシステムの動作例を説明する。
(Operation example)
FIG. 13B is a sequence diagram illustrating an operation example of the system according to the third embodiment. Hereinafter, an operation example of the system according to the third embodiment will be described with reference to FIG. 13B.
(S301)
 まず、ユーザ装置が、デジタル署名装置により、ユーザの署名鍵を用いて所定のデータにデジタル署名を行う。具体的には、所定のデータをユーザの署名鍵を用いて暗号化する。所定のデータは特に限定されない。所定のデータには、例えば、アイテムを特定するアイテムID、アイテムの購入日時、すべてのアイテムに共通のアイテム情報などを用いることができる。
(S301)
First, the user device digitally signs the predetermined data using the user's signature key by the digital signature device. Specifically, the predetermined data is encrypted using the user's signature key. The predetermined data is not particularly limited. For the predetermined data, for example, an item ID that identifies the item, a purchase date and time of the item, item information common to all items, and the like can be used.
(S302)
 次に、ユーザ装置が、アイテムに対して、デジタル署名済みのアイテムIDを送信する。
(S302)
The user device then sends the digitally signed item ID to the item.
(S303)
 次に、ユーザ装置が、アイテムがデジタル署名済みのアイテムIDを記憶する。
(S303)
The user device then stores the item ID, which the item has digitally signed.
 以上が事前記憶の手続きとなる。 The above is the procedure for pre-memory.
(S304、S305)
 事前記憶後、アイテムが、ユーザ装置に対して、デジタル署名済みのアイテムIDを送信すると、ユーザ装置の検証装置が、アイテムから受信したデータに付けられているデジタル署名を検証する。具体的には、デジタル署名済みのデータをユーザの公開鍵で復号し、復号できれば、アイテムが、自らと一定の関係(例:自らの所有物)にあるアイテムであると判断する。
(S304, S305)
After pre-storage, when the item transmits a digitally signed item ID to the user device, the verification device of the user device verifies the digital signature attached to the data received from the item. Specifically, if the digitally signed data can be decrypted with the user's public key and decrypted, it is determined that the item has a certain relationship with itself (example: own property).
 実施例3によれば、実施例2と同様に、アイテムがユーザと一定の関係にあるかどうかを判断することができる。特に、実施例3は、アイテムが、ユーザの所有物(例:傘、ジャケット、靴)であるかどうかを判断するのに適している。 According to the third embodiment, it is possible to determine whether or not the item has a certain relationship with the user, as in the second embodiment. In particular, Example 3 is suitable for determining whether an item is the property of a user (eg, an umbrella, jacket, shoes).
 図14Aは、実施例4に係るシステムの構成例を示す模式図である。図14Aに示すように、実施例4に係るシステムは、検証装置を備えたユーザ装置と、デジタル署名装置を備えたアイテムと、がネットワークを介して接続されたシステムである。以下、詳細に説明する。 FIG. 14A is a schematic diagram showing a configuration example of the system according to the fourth embodiment. As shown in FIG. 14A, the system according to the fourth embodiment is a system in which a user device provided with a verification device and an item provided with a digital signature device are connected via a network. Hereinafter, a detailed description will be given.
(ユーザ装置、検証装置、デジタル署名装置、アイテム、及びネットワーク)
 ユーザ装置が検証装置を備え、アイテムがデジタル署名装置を備える点を除き、ユーザ装置、検証装置、デジタル署名装置、アイテム及びネットワークの構成は、実施例2の場合と同様であるので説明を省略する。
(User equipment, verification equipment, digital signature equipment, items, and networks)
The configuration of the user device, the verification device, the digital signature device, the item, and the network is the same as that of the second embodiment except that the user device includes the verification device and the item includes the digital signature device, and thus the description thereof will be omitted. ..
(動作例)
 図14Bは、実施例4に係るシステムの動作例を説明するシーケンス図である。以下、図14Bを参照しつつ、実施例4に係るシステムの動作例を説明する。なお、ユーザ装置には、アイテムの公開鍵があらかじめ記憶されているものとする。ただし、ユーザ装置は、例えば、検証の度に、あるいは所定の時間間隔毎に、アイテムの公開鍵をネットワークを介して取得してもよい。
(Operation example)
FIG. 14B is a sequence diagram illustrating an operation example of the system according to the fourth embodiment. Hereinafter, an operation example of the system according to the fourth embodiment will be described with reference to FIG. 14B. It is assumed that the public key of the item is stored in the user device in advance. However, the user device may acquire the public key of the item via the network, for example, at each verification or at a predetermined time interval.
(S401)
 まず、ユーザ装置が、アイテムに対して、データを送信する。このデータには、例えば乱数を用いることができる。
(S401)
First, the user device transmits data to the item. For this data, for example, a random number can be used.
(S402)
 次に、アイテムのデジタル署名装置が、アイテムの署名鍵を用いて、データにデジタル署名をする。具体的には、アイテムの署名鍵を用いてデータを暗号化する。
(S402)
The item's digital signature device then digitally signs the data using the item's signature key. Specifically, the data is encrypted using the item's signature key.
(S403)
 次に、アイテムが、ユーザ装置に対して、デジタル署名済みのデータを送信する。
(S403)
The item then sends digitally signed data to the user device.
(S404)
 次に、ユーザ装置が、アイテムの公開鍵を用いて、受信したデータに付けられているデジタル署名を検証する。具体的には、デジタル署名済みのデータをアイテムの公開鍵で復号し、復号できればアイテムは復号に用いた公開鍵を有していると判断し、復号できなければアイテムは当該公開鍵を有していないと判断する。
(S404)
The user device then uses the item's public key to verify the digital signature attached to the received data. Specifically, the digitally signed data is decrypted with the public key of the item, and if it can be decrypted, it is determined that the item has the public key used for decryption, and if it cannot be decrypted, the item has the public key. Judge that it is not.
 実施例4によれば、実施例3に加え、S401(ユーザ装置による動的なデータ(チャレンジ))にS403(レスポンス)を返すことから、万一静的な「デジタル署名済みユーザID」(S303)が盗用されているような場合より手が込んだ分アイテムへの成りすましの可能性を軽減させ、より高価なアイテムのお墨付きが可能となる。 According to the fourth embodiment, in addition to the third embodiment, S403 (response) is returned to S401 (dynamic data (challenge) by the user device), so that a static "digitally signed user ID" (S303) should be returned. ) Is stolen, which reduces the possibility of spoofing the item by the amount of elaborateness, and makes it possible to endorse more expensive items.
 図15Aは、実施例5に係るシステムの構成例を示す模式図である。図15Aに示すように、実施例5に係るシステムは、ユーザ装置と、検証装置と、デジタル署名装置を備えたデジタル署名代行装置と、がネットワークを介して接続されたシステムである。以下、詳細に説明する。 FIG. 15A is a schematic diagram showing a configuration example of the system according to the fifth embodiment. As shown in FIG. 15A, the system according to the fifth embodiment is a system in which a user device, a verification device, and a digital signature agency device provided with a digital signature device are connected via a network. Hereinafter, a detailed description will be given.
(ユーザ装置、検証装置、デジタル署名装置、及びネットワーク)
 ユーザ装置、検証装置、デジタル署名装置、アイテム及びネットワークの構成は、実施例1の場合と同様であるので説明を省略する。検証装置は、例えば商品売場やレストランに設置された決済端末である。
(User device, verification device, digital signature device, and network)
The configuration of the user device, the verification device, the digital signature device, the item, and the network is the same as in the case of the first embodiment, and thus the description thereof will be omitted. The verification device is, for example, a payment terminal installed in a product sales floor or a restaurant.
(デジタル署名代行装置)
 デジタル署名代行装置は、ユーザに代わりユーザの署名鍵でデジタル署名を行う装置である。デジタル署名代行装置は、例えば、ユーザごとにデジタル署名装置を備えている。
(Digital signature agency device)
The digital signature agency device is a device that digitally signs with a user's signature key on behalf of the user. The digital signature agency device is provided with, for example, a digital signature device for each user.
(動作例)
 図15Bは、実施例5に係るシステムの動作例を説明するシーケンス図である。以下、図15Bを参照しつつ、実施例5に係るシステムの動作例を説明する。なお、デジタル署名代行装置には、認証局の公開鍵があらかじめ記憶されているものとする。また、デジタル署名代行装置のデジタル署名装置内には、ユーザの署名鍵とデジタル署名代行装置の署名鍵が記憶されているものとする。また、検証装置には、あらかじめユーザの公開鍵とデジタル署名代行装置の公開鍵を記憶されているものとする。なお、デジタル署名代行装置や検証装置は、例えば、検証の度に、あるいは所定の時間間隔毎に、認証局の公開鍵やユーザの公開鍵やデジタル署名代行装置の公開鍵をネットワークを介して取得してもよい。
(Operation example)
FIG. 15B is a sequence diagram illustrating an operation example of the system according to the fifth embodiment. Hereinafter, an operation example of the system according to the fifth embodiment will be described with reference to FIG. 15B. It is assumed that the public key of the certificate authority is stored in advance in the digital signature agency device. Further, it is assumed that the signature key of the user and the signature key of the digital signature agency device are stored in the digital signature device of the digital signature agency device. Further, it is assumed that the user's public key and the public key of the digital signature agency device are stored in advance in the verification device. The digital signature agency device or verification device acquires the public key of the certificate authority, the user's public key, or the public key of the digital signature agency device via the network, for example, at each verification or at a predetermined time interval. You may.
(S501)
 まず、ユーザ装置が、デジタル署名代行装置に対して、デジタル署名要求を送信する。デジタル署名要求には、例えば、ユーザIDを含めることができる。このようにすれば、デジタル署名代行装置において、ユーザを容易に特定して、自装置の内部にあるどのデジタル署名装置を利用するのかを特定することができる。
(S501)
First, the user device transmits a digital signature request to the digital signature agency device. The digital signature request can include, for example, a user ID. In this way, in the digital signature agency device, the user can be easily specified, and which digital signature device inside the own device is used can be specified.
(S502)
 次に、検証装置が、デジタル署名代行装置に対して、データを送信する。このデータには、例えば乱数を用いることができる。
(S502)
Next, the verification device transmits data to the digital signature agency device. For this data, for example, a random number can be used.
(S503)
 次に、デジタル署名代行装置のデジタル署名装置が、ユーザの署名鍵を用いて、データにデジタル署名を行う。具体的には、ユーザの署名鍵を用いて、データを暗号化する。
(S503)
Next, the digital signature device of the digital signature agency device digitally signs the data using the user's signature key. Specifically, the data is encrypted using the user's signature key.
(S504)
 次に、デジタル署名代行装置が、検証装置に対して、デジタル署名済みのデータを送信する。
(S504)
Next, the digital signature agency device transmits the digitally signed data to the verification device.
(S505)
 次に、検証装置が、ユーザの公開鍵を用いて、受信したデータに付けられているデジタル署名を検証する。具体的には、デジタル署名済みのデータを、ユーザの公開鍵で復号し、復号できればユーザの署名鍵によるデジタル署名が行われたと判断する。
(S505)
Next, the verification device verifies the digital signature attached to the received data using the user's public key. Specifically, the digitally signed data is decrypted with the user's public key, and if it can be decrypted, it is determined that the digital signature has been performed with the user's signature key.
(S506)
 次に、ユーザ装置が、デジタル署名代行装置に対して、認証局の署名鍵でデジタル署名されたデジタル署名代行装置の公開鍵を送信する。
(S506)
Next, the user device transmits the public key of the digital signature agency device digitally signed with the signature key of the certificate authority to the digital signature agency device.
(S507)
 次に、デジタル署名代行装置が、認証局の公開鍵を用いて、認証局の署名鍵でデジタル署名されたデジタル署名代行装置の公開鍵を検証する。具体的には、認証局の署名鍵でデジタル署名されているデジタル署名代行装置の公開鍵を、認証局の公開鍵で復号し、復号できれば、ユーザが、認証局の署名鍵でデジタル署名されたデジタル署名代行装置の公開鍵を有していると判断する。
(S507)
Next, the digital signature agency device verifies the public key of the digital signature agency device digitally signed with the signature key of the certificate authority using the public key of the certificate authority. Specifically, if the public key of the digital signature agency device digitally signed with the signature key of the certificate authority can be decrypted with the public key of the certificate authority and decrypted, the user is digitally signed with the signature key of the certificate authority. Judge that you have the public key of the digital signature agency device.
(S508)
 次に、デジタル署名代行装置が、検証装置に対して、検証結果を送信する。
(S508)
Next, the digital signature agency device transmits the verification result to the verification device.
(S509)
 次に、ユーザ装置が、検証装置に対して、デジタル署名代行装置の署名鍵によりデジタル署名されたユーザの公開鍵を送信する。
(S509)
Next, the user device transmits the public key of the user digitally signed by the signature key of the digital signature agency device to the verification device.
(S510)
 次に、検証装置が、デジタル署名代行装置の公開鍵を用いて、デジタル署名代行装置の署名鍵によりデジタル署名されたユーザの公開鍵を検証する。具体的には、デジタル署名代行装置の署名鍵によりデジタル署名されたユーザの公開鍵をデジタル署名代行装置の公開鍵で復号し、復号できれば、ユーザが、デジタル署名代行装置の署名鍵によりデジタル署名されたユーザの公開鍵を有していると判断する。
(S510)
Next, the verification device verifies the public key of the user digitally signed by the signature key of the digital signature agency using the public key of the digital signature agency. Specifically, if the public key of the user digitally signed by the signature key of the digital signature agency device can be decrypted and decrypted by the public key of the digital signature agency device, the user is digitally signed by the signature key of the digital signature agency device. It is determined that the user has the public key.
 検証装置は、例えば商品売場やレストランに設置された決済端末であり、すべての検証結果に問題がなければ、決済を実行する。つまり、ユーザの署名鍵によるデジタル署名が行われ、ユーザが、認証局の署名鍵でデジタル署名されたデジタル署名代行装置の公開鍵を有しており、且つ、ユーザが、デジタル署名代行装置の署名鍵によりデジタル署名されたユーザの公開鍵を有している場合には、決済を実行する。 The verification device is, for example, a payment terminal installed in a product sales floor or a restaurant, and if there is no problem with all the verification results, payment is executed. That is, the digital signature is performed by the user's signature key, the user has the public key of the digital signature agency device digitally signed by the certificate authority's signature key, and the user signs the digital signature agency device. If the user has the public key digitally signed by the key, the payment is executed.
 実施例5によれば、ユーザがデジタル署名代行装置により管理される署名鍵により、クラウド環境によるディジタル署名サービスを実施することができる。 According to the fifth embodiment, the user can implement the digital signature service in the cloud environment by using the signature key managed by the digital signature agency device.
 本実施例は、ユーザの署名鍵を格納するデジタル署名装置をサーバに集約する「シンクライアント(thin-client)」型のシステム構成である。このシステム構成では、例えば、ユーザとデジタル署名代行者の装置(デジタル署名代行装置)は、予め、ユーザに代わりデジタル署名代行者がユーザの署名鍵でデジタル署名を行うことについての取り決めがなされている。これは例えば、アプリケーションがユーザ装置にインストール済みであり、ユーザが当該のアプリケーションをユーザ装置上で実行することで、ユーザとデジタル署名代行者との間で取り決めがなされることにしてもよい。アプリケーションは、例えば、二次元コードを用いた決済を実行するアプリケーション、他の電子マネー決済を実行するアプリケーション、クレジットカード決済を実行するアプリケーションである。 This embodiment is a "thin-client" type system configuration in which digital signature devices for storing a user's signature key are aggregated on a server. In this system configuration, for example, the device of the user and the digital signature agent (digital signature agent) has an agreement in advance that the digital signature agent performs digital signature with the user's signature key on behalf of the user. .. This may be, for example, that the application is already installed on the user device, and the user executes the application on the user device to make an agreement between the user and the digital signature agent. The application is, for example, an application that executes a payment using a two-dimensional code, an application that executes another electronic money payment, or an application that executes a credit card payment.
 図16Aは、実施例6に係るシステムを示す模式図である。図16Aに示すように、実施例6に係るシステムは、ICカードと、リーダライタと、コントローラと、コントローラに接続されたデータベースと、コントローラに接続された電気錠と、を備えている。ICカードはユーザ装置の一例であり、デジタル署名装置を備えている。本実施例は、例えば、住宅やビルに設けられた扉における電気錠の開閉に適用することができる。 FIG. 16A is a schematic diagram showing the system according to the sixth embodiment. As shown in FIG. 16A, the system according to the sixth embodiment includes an IC card, a reader / writer, a controller, a database connected to the controller, and an electric lock connected to the controller. The IC card is an example of a user device and includes a digital signature device. This embodiment can be applied to opening and closing an electric lock in a door provided in a house or a building, for example.
(コントローラ、リーダライタ、データベース、電気錠)
 コントローラは検証装置の一例であり、あらかじめICカードの公開鍵を備えている。リーダライタは、ICカードとコントローラの間において両者のインタフェースの役割を果たす。データベースには、ICカードの公開鍵が記憶されている。電気錠はコントローラの命令に基づき開閉する。
(Controller, reader / writer, database, electric lock)
The controller is an example of a verification device, and is provided with a public key of an IC card in advance. The reader / writer acts as an interface between the IC card and the controller. The public key of the IC card is stored in the database. The electric lock opens and closes according to the command of the controller.
(動作例)
 図16Bは、実施例6に係るシステムの動作例を説明するシーケンス図である。以下、図16Bを参照しつつ、実施例6に係るシステムの動作例を説明する。なお、図16B中においてリーダライタの図示は省略するが、ICカードとコントローラはリーダライタを介して通信を行うものとする。
(Operation example)
FIG. 16B is a sequence diagram illustrating an operation example of the system according to the sixth embodiment. Hereinafter, an operation example of the system according to the sixth embodiment will be described with reference to FIG. 16B. Although the reader / writer is not shown in FIG. 16B, the IC card and the controller communicate with each other via the reader / writer.
(S601)
 ICカードをリーダライタにかざすと、コントローラが、ICカードに対してデータを送信する。このデータは、ICカードに対して自明ではないものが好ましく、例えば乱数である。
(S601)
When the IC card is held over the reader / writer, the controller transmits data to the IC card. This data is preferably not obvious to the IC card, for example, a random number.
(S602)
 次に、ICカードが、デジタル署名装置により、受信したデータにデジタル署名をする。具体的には、デジタル署名装置により生成した署名鍵により、受信したデータを暗号化する。
(S602)
Next, the IC card digitally signs the received data by the digital signature device. Specifically, the received data is encrypted by the signature key generated by the digital signature device.
(S603)
 次に、ICカードが、コントローラに対して、デジタル署名済みのデータを送信する。
(S603)
Next, the IC card transmits the digitally signed data to the controller.
(S604、S605)
 次に、コントローラが、デジタル署名付きデータを検証する。具体的には、コントローラは、データベースから公開鍵を読み出し、これを用いてデジタル署名済みのデータを復号する。復号できれば、ICカードは電気錠を解錠する権限があるとして、電気錠を解錠する。他方、復号できない場合には、ICカードは解錠する権限がないとして電気錠を解錠しない。
(S604, S605)
The controller then validates the digitally signed data. Specifically, the controller reads the public key from the database and uses it to decrypt the digitally signed data. If it can be decrypted, the IC card is deemed to have the authority to unlock the electric lock, and the electric lock is unlocked. On the other hand, if it cannot be decrypted, the IC card does not unlock the electric lock because it does not have the authority to unlock it.
(S606)
 次に、ICカードが、デジタル署名装置により、署名鍵と公開鍵を生成し、生成した署名鍵をデジタル署名装置内の記憶領域に記憶する。
(S606)
Next, the IC card generates a signature key and a public key by the digital signature device, and stores the generated signature key in the storage area in the digital signature device.
(S607)
 次に、ICカードが、コントローラに対し、生成した公開鍵を送信する。
(S607)
Next, the IC card transmits the generated public key to the controller.
(S608)
 次に、コントローラが、受信した公開鍵をデータベースに記憶する。
(S608)
The controller then stores the received public key in the database.
 本実施例によれば、電気錠の開閉を行う度に、署名鍵と公開鍵が生成・記憶されるため、電気錠を開くための鍵(署名鍵)を、電気錠の開閉の度に更新(取り替える)ことができる。したがって、電気錠の開閉に関するセキュリティを高めることができる。つまり、本実施例において、電気錠の開閉を行う度に、署名鍵及び公開鍵を更新し、以前に生成し記憶された署名鍵を記憶領域から削除する、あるいは、記憶領域に記憶されたまま利用不可能とし、更新後は、新たに生成し記憶された署名鍵を用いてのみ、電気錠の開閉を行うことを可能とすれば、電気錠の開閉に関するセキュリティを高めることができる。このような電気錠の開閉の度に署名鍵及び公開鍵を更新(取り替える)する処理は、CA局が介在する場合には事実上不可能であるが、本実施例によれば容易に実現することができる。 According to this embodiment, since the signature key and the public key are generated and stored every time the electric lock is opened and closed, the key for opening the electric lock (signature key) is updated every time the electric lock is opened and closed. Can be (replaced). Therefore, the security for opening and closing the electric lock can be enhanced. That is, in this embodiment, each time the electric lock is opened and closed, the signature key and the public key are updated, and the previously generated and stored signature key is deleted from the storage area or remains stored in the storage area. If it is made unusable and the electric lock can be opened and closed only by using the newly generated and stored signature key after the update, the security regarding the opening and closing of the electric lock can be enhanced. Such a process of updating (replacing) the signature key and the public key each time the electric lock is opened and closed is practically impossible when the CA station intervenes, but it is easily realized according to the present embodiment. be able to.
 本実施例によれば、入退室に高度なセキュリティグレードが必要なICカードによる入退室システムを実現することができる。入退室に先立ち、操作者はICカードをリーダライタにかざし、当該のリーダライタはドアの電気錠の解錠を実行するコントローラがICカードの公開鍵を格納するDBを持ち、操作者がICカードをリーダライタにかざすと、リーダライタ側がサービス提供者(検証者)となり、ICカード側がサービス利用者 (署名者)となり、リーダライタ側によるICカード側の署名検証プロトコルを実行する。当該の高度なセキュリティグレードの入退室システムでは、ICカードをかざす度に、ICカードの署名鍵と公開鍵の鍵対の更新を実行する。これにより、ICカードをかざす度に、異なるICカードの署名鍵によって署名検証が実施される。同一の署名鍵を更新せずに使用し続けることで、ここでの署名検証プロトコルを傍受する第三者に署名鍵の数値へのヒントを与えることになるため、ここで示した鍵更新のしくみを導入することで、高度なセキュリティグレードを確保することが可能となる。すなわち、従来知られる公開鍵暗号系への攻撃は、同一の鍵対が様々な暗号文を繰り返し出力するシステムに対し、出力特性から鍵を推定する方法であることから、特定の鍵対が出力する暗号文の情報量が少ないほど、当該の既知の攻撃方法に対する強い防御となる。 According to this embodiment, it is possible to realize an entry / exit system using an IC card that requires a high security grade for entry / exit. Prior to entering and leaving the room, the operator holds the IC card over the reader / writer, and the reader / writer has a DB in which the controller that unlocks the electric lock of the door stores the public key of the IC card, and the operator has the IC card. When the reader / writer is held over the reader / writer, the reader / writer side becomes the service provider (verifier), the IC card side becomes the service user (signer), and the reader / writer side executes the signature verification protocol on the IC card side. In the high security grade entry / exit system, the key pair of the signature key and the public key of the IC card is updated every time the IC card is held up. As a result, each time the IC card is held up, signature verification is performed with the signature keys of different IC cards. By continuing to use the same signature key without updating it, a third party who intercepts the signature verification protocol here will be given a hint to the numerical value of the signature key, so the key update mechanism shown here. By introducing, it is possible to secure a high level of security. That is, a conventionally known attack on a public key cryptosystem is a method of estimating a key from output characteristics for a system in which the same key pair repeatedly outputs various ciphertexts, so that a specific key pair outputs. The smaller the amount of information in the ciphertext, the stronger the defense against the known attack method.
 図17Aは、ハードウェアウォレットの構成の例を示す模式図である。Bitcoin等の仮想通貨のウォレットごとの署名鍵、公開鍵の管理である。仮想通貨の決済は少額に分散した方が攻撃されるリスクは低くなり、多数のウォレットを持ち決済ごとに別々のウォレットを使い分けた方が望ましいと言われている。実施例7のデジタル署名装置を、例えば非接触ICカード内に実装し、M台分のデジタル署名装置と上位機器「ハードウェアウォレット」に実装したリーダライタと通信する。当該のハードウェアウォレットは、より上位の仮想通貨アプリケーションからの要求に基づき、デジタル署名の実行や公開鍵の送信を行う。またICカード1台あたりN個の署名鍵を格納でき、M台を同時に使用することで、最大M個、各N世代の署名鍵を併用して運用することができる。仮想通貨において、ブロックチェーン等の分散台帳技術(Distributed Ledger Technology)で使用する場合、過去の署名鍵が過去の台帳に反映されるため、過去に使用した署名鍵を、台帳管理の運用が続く限り、署名者の責任において保管する義務を負う可能性がある。そのような運用形態に対し、非接触ICカード1台に、更新の都度署名鍵を蓄積保管し、最大N世代まで更新可能として運用しても良い。また非接触ICカード1台に複数のデジタル署名装置を搭載しても良い。 FIG. 17A is a schematic diagram showing an example of the configuration of the hardware wallet. It is the management of the signature key and public key for each wallet of virtual currency such as Bitcoin. It is said that it is desirable to have a large number of wallets and use different wallets for each payment because the risk of being attacked is lower if the payment of virtual currency is dispersed in a small amount. The digital signature device of the seventh embodiment is mounted in, for example, a non-contact IC card, and communicates with M digital signature devices and a reader / writer mounted on a higher-level device "hardware wallet". The hardware wallet executes a digital signature and sends a public key based on a request from a higher-level virtual currency application. In addition, N signature keys can be stored in one IC card, and by using M units at the same time, a maximum of M signature keys and signature keys of each N generation can be used together for operation. In virtual currency, when used with distributed ledger technology (Distributed Ledger Technology) such as blockchain, the past signature key is reflected in the past ledger, so as long as the operation of ledger management continues, the signature key used in the past will be reflected in the past ledger. , May be obliged to keep at the signer's responsibility. For such an operation mode, the signature key may be stored and stored in one non-contact IC card each time it is updated, and it may be operated so that it can be updated up to N generations. Further, a plurality of digital signature devices may be mounted on one non-contact IC card.
 図17Bは、ハードウェアウォレットの機能の例を示す模式図である。非接触ICカードのデジタル署名装置内部で生成される署名鍵と公開鍵の鍵対の内、公開鍵を出力すると、ハードウェアウォレットに保管される。ここで、例えば1台目の非接触ICカードの1番目の公開鍵pub-11に対し、インデックスindex-key#11を付け、各公開鍵をインデックスにより管理すれば、非接触ICカードの公開鍵の実体との関連が容易となる。またより上位の仮想通貨アプリケーション上で、公開鍵のエントリを指定する場合、公開鍵自体の数値の代わりに、パスフレーズを使用し、公開鍵の取り扱いを簡易化する。そこで公開鍵とパスフレーズを対応づけハードウェアウォレット上に保管すれば良い。 FIG. 17B is a schematic diagram showing an example of the function of the hardware wallet. Of the signature key and public key pair generated inside the digital signature device of the non-contact IC card, when the public key is output, it is stored in the hardware wallet. Here, for example, if an index index-key # 11 is attached to the first public key pub-11 of the first non-contact IC card and each public key is managed by the index, the public key of the non-contact IC card can be obtained. It becomes easy to relate to the substance of. Also, when specifying a public key entry on a higher-level virtual currency application, use a passphrase instead of the numerical value of the public key itself to simplify the handling of the public key. Therefore, the public key and passphrase should be associated and stored in the hardware wallet.
 図17Cは、署名鍵更新の効果を説明する図(その1)である。ブロックチェーン等の分散台帳技術による仮想通貨においては、署名鍵は使用者の責任において使用する。一方で仮想通貨は、金本位制等の通貨の歴史に倣い、長年にわたる通貨価値の信用を、良い通貨としての指標にしているため、長い年月の運用を前提とすることから、必然的に署名鍵の紛失、盗難、漏洩は起こりうる。署名鍵を使用したデジタル署名によって仮想通貨のバリューの取引が可能であるので、万一突発的に署名鍵が使用できなくなってしまうと、その時点以降は対応するバリュー取引ができなくなる。図17Cに示す例では、署名鍵を格納するデジタル署名装置の内部で更新に関する基本的な動作をすることができるので、署名鍵の更新が実施されたら、仮想通貨側に公開鍵の更新を要求することで、仮想通貨側は署名鍵の更新を知ることができる。従って、仮想通貨側で公開鍵の生成手段を持つことで、バリューを保持したまま公開鍵を更新し、運用を続けることができる。 FIG. 17C is a diagram (No. 1) for explaining the effect of updating the signature key. In virtual currency using distributed ledger technology such as blockchain, the signature key is used at the user's responsibility. On the other hand, virtual currencies follow the history of currencies such as the gold standard, and the credit of currency value over many years is used as an index as a good currency, so it is inevitably signed because it is premised on long-term operation. Keys can be lost, stolen or leaked. Since it is possible to trade the value of virtual currency by digital signature using the signature key, if the signature key suddenly becomes unusable, the corresponding value transaction cannot be performed after that point. In the example shown in FIG. 17C, since the basic operation related to the update can be performed inside the digital signature device that stores the signature key, when the signature key is updated, the virtual currency side is requested to update the public key. By doing so, the virtual currency side can know the update of the signature key. Therefore, by having a means for generating a public key on the virtual currency side, it is possible to update the public key and continue operation while maintaining the value.
 図17Dは、署名鍵更新の効果を説明する図(その2)である。仮想通貨側で公開鍵の更新をする代わりに、バリューを振替ることとし、紛失、漏洩、盗難等で使えなくなった署名鍵は使用不能とする方法も考えられる。こうした仮想通貨側の方式は、仮想通貨をどのように取り扱うかという課題と直結し、仮想通貨そのものの基本理念に基づき、仮想通貨におけるPoW(Proof Of Work)やPoS(Proof Of Stake)による供給量、速度、その公平性等に至る課題でもあるため、本発明で提供する更新手段を、上記の課題に照らして採用すれば良い。 FIG. 17D is a diagram (No. 2) for explaining the effect of updating the signature key. Instead of updating the public key on the virtual currency side, it is possible to transfer the value and disable the signature key that can no longer be used due to loss, leakage, theft, etc. Such a method on the virtual currency side is directly linked to the issue of how to handle the virtual currency, and based on the basic idea of the virtual currency itself, the supply amount by PoW (Proof Of Work) and PoS (Proof Of Stake) in the virtual currency. , Speed, fairness, etc., so the renewal means provided in the present invention may be adopted in light of the above problems.
 以上説明した本実施形態によれば、署名鍵を生成時から、更新時を含む使用期間満了に至るまで複製の必要なくディジタル署名に使用できるため、ディジタル署名で本来求められている「署名鍵複製の非推奨」を満たすことが可能となる。また、署名鍵を複製することに伴うサービス利用上の制限的な承諾が不要となるため、これを承諾できないサービス利用者であってもサービスが利用できるようになるため、サービスの質が向上する。また、利用者が主体的に署名鍵を更新することができるようになり、従来のWebサービスにおけるサービス利用者のパスワード更新と同様に、サービス利用者が主体的に更新できるようになり、サービスの質が向上する。また、ユーザのハードウェアデバイスであるデジタル署名装置を署名鍵の格納場所とすることにより、署名鍵の数値を、陽には誰も知り得ないまま自動更新できるしくみが実現できるようになり、署名鍵の取り扱いが簡便となり、サービスの質が向上する。また、署名鍵の所在が、例えば利用者のICカード等のデジタル署名装置の1箇所に特定されており、更新も署名鍵の保管場所に、例えば同じデジタル署名装置内部にて実行され、更新後に公開鍵が保管場所から外部に出され、また秘密情報である署名鍵の生成、更新、抹消までの全ライフサイクルが1箇所にとどまることとなる。すなわち署名鍵と公開鍵の全ライフサイクルに渡る流れがシンプルであり、ディジタル署名における署名鍵の唯一性の信頼性が向上すると同時に、記憶や更新の契機に複雑な処理が数値的に隠蔽(ブラックボックス化)された状態で実行されるしくみであるため、自動的な制御に適している点で、例えば公開鍵証明書の有効期間や、署名鍵、公開鍵そのものの数値等を直接編集するようなヒューマンエラーを誘発しうる制御方法に比べ、優れた方式である。また、署名鍵が全ライフサイクルに渡り隠蔽される一方で、公開されるパラメータは公開鍵であり、その公開鍵が公開されても、公開鍵から署名鍵を推定することが困難な公開鍵暗号方式であればどのようなアルゴリズムにも適用でき、暗号エンジンのアルゴリズムと、そのアルゴリズムが推奨するビット数以上の鍵ビット数等によらない点で、優れた方式である。 According to the present embodiment described above, since the signature key can be used for a digital signature from the time of generation to the expiration of the usage period including the time of renewal without the need for duplication, the "signature key duplication" originally required for digital signatures is required. It becomes possible to satisfy "not recommended". In addition, since the restrictive consent for using the service associated with duplicating the signature key is not required, the service can be used even by the service user who cannot accept this, and the quality of the service is improved. .. In addition, the user can independently update the signature key, and the service user can independently update the password of the service user in the same way as the password update of the service user in the conventional Web service. The quality improves. In addition, by using the digital signature device, which is the user's hardware device, as the storage location for the signature key, it is possible to realize a mechanism that can automatically update the numerical value of the signature key without anyone knowing it. Key handling is easier and the quality of service is improved. Further, the location of the signature key is specified in one place of the digital signature device such as the user's IC card, and the update is also executed in the storage location of the signature key, for example, inside the same digital signature device, and after the update. The public key is taken out of the storage location, and the entire life cycle from the generation, update, and deletion of the signature key, which is confidential information, is limited to one place. In other words, the flow of the signature key and public key throughout the entire life cycle is simple, the reliability of the uniqueness of the signature key in digital signatures is improved, and at the same time, complicated processing is numerically concealed (black) at the time of storage or update. Since it is a mechanism that is executed in a boxed state, it is suitable for automatic control, for example, the validity period of the public key certificate, the signature key, the numerical value of the public key itself, etc. should be edited directly. This is an excellent method compared to the control method that can induce various human errors. Also, while the signing key is hidden throughout the entire life cycle, the public parameter is the public key, and even if the public key is made public, it is difficult to estimate the signing key from the public key cryptography. It can be applied to any algorithm as long as it is a method, and it is an excellent method in that it does not depend on the algorithm of the cryptographic engine and the number of key bits exceeding the number of bits recommended by the algorithm.
 図19Aは公開鍵とユーザ情報を対応付けて記憶する例を示す図であり、図19Bは公開鍵の比較によりユーザ情報を特定する例を示すフローチャートである。図19Aに示すように公開鍵とユーザ情報を対応付けて記憶する装置、あるいはこの装置にアクセス可能な装置において、公開鍵を入力される工程(K11)と、公開鍵に対応付けて記憶されるユーザ情報を出力する工程(K12)と、を実行すれば、公開鍵に紐付けられたユーザ情報を特定することが可能となる。したがって、ある公開鍵の利用者や、自己のものとして使用を開始しようとしている公開鍵が既に他の誰かに使用されているかどうかなどを容易に特定することができる。公開鍵に対応付けて記憶されるユーザ情報を出力する工程(K12)に代えて、あるいはこの工程とともに、工程K11で入力された公開鍵と同じ公開鍵がユーザ情報に対応付けて記憶されているかどうかの判断結果(使用されている、あるいは使用されていないを示す旨の情報の出力)を出力させることも可能である。ユーザ情報には、公開鍵に代えて、あるいは公開鍵とともに、公開鍵のハッシュ値を対応付けて記憶することができる。この場合は、本段落及び図19A及び図19Bにおいて「公開鍵」を、「公開鍵及び/又は公開鍵のハッシュ値」に読み替えて理解することができる。例えば、図19Bの工程K11では、公開鍵に代えて、あるいは公開鍵とともに、公開鍵のハッシュ値を入力されることができ、工程K12では、公開鍵のハッシュ値に対応付けて記憶されているユーザ情報を出力することができる。ユーザ情報とは、ユーザの氏名やユーザIDなどの、ユーザに関する情報をいう。 FIG. 19A is a diagram showing an example in which a public key and user information are stored in association with each other, and FIG. 19B is a flowchart showing an example in which user information is specified by comparing public keys. As shown in FIG. 19A, in a device that stores the public key in association with user information, or in a device that can access this device, the step (K11) in which the public key is input and the public key are stored in association with each other. By executing the step (K12) of outputting the user information, it is possible to specify the user information associated with the public key. Therefore, it is possible to easily identify the user of a certain public key, whether or not the public key that is about to be used as one's own is already used by someone else. Is the same public key as the public key input in step K11 stored in association with the user information instead of or together with the step (K12) of outputting the user information stored in association with the public key? It is also possible to output the judgment result (output of information indicating that it is used or not used). The hash value of the public key can be stored in the user information in place of the public key or together with the public key. In this case, in this paragraph and in FIGS. 19A and 19B, "public key" can be read and understood as "public key and / or hash value of public key". For example, in step K11 of FIG. 19B, the hash value of the public key can be input in place of the public key or together with the public key, and in step K12, it is stored in association with the hash value of the public key. User information can be output. User information refers to information about a user, such as a user's name and user ID.
 以上、実施形態について説明したが、これらの説明によって特許請求の範囲に記載された構成は何ら限定されるものではない。

 
Although the embodiments have been described above, the configurations described in the claims are not limited by these explanations.

Claims (8)

  1.  デジタル署名装置が実行する方法であって、
     一対または複数対の署名鍵と公開鍵を生成する工程と、
     前記生成した署名鍵をデジタル署名装置内の記憶領域に記憶する工程と、を有し、
     前記署名鍵を前記デジタル署名装置の外部に出力する工程を有さない方法。
    The way digital signature devices perform
    The process of generating one or more pairs of signing and public keys,
    It has a step of storing the generated signature key in a storage area in the digital signature device.
    A method that does not include a step of outputting the signature key to the outside of the digital signature device.
  2.  前記生成する工程は、前記デジタル署名装置の外部から命令を入力された場合と、前記デジタル署名装置の内部において成否を判断する生成条件が成立する場合と、のそれぞれにおいて実行され、
     前記記憶する工程は、前記デジタル署名装置の外部から命令を入力された場合と、前記デジタル署名装置の内部において成否を判断する記憶条件が成立する場合と、のそれぞれにおいて実行される請求項1に記載の方法。
    The generation step is executed in each of the case where a command is input from the outside of the digital signature device and the case where the generation condition for determining success or failure is satisfied inside the digital signature device.
    The storage step is executed in claim 1 when a command is input from the outside of the digital signature device and when a storage condition for determining success or failure is satisfied inside the digital signature device. The method described.
  3.  請求項1または2に記載の方法を前記デジタル署名装置に実行させるプログラム。 A program that causes the digital signature device to execute the method according to claim 1 or 2.
  4.  請求項1または2に記載の方法を実行するデジタル署名装置。 A digital signature device that performs the method according to claim 1 or 2.
  5.  請求項4に記載のデジタル署名装置を備えたユーザ装置。 A user device provided with the digital signature device according to claim 4.
  6.  請求項4に記載のデジタル署名装置により生成された公開鍵を用いて、前記デジタル署名を検証する検証装置。 A verification device that verifies the digital signature using the public key generated by the digital signature device according to claim 4.
  7.  請求項5に記載のユーザ装置と、請求項6に記載の検証装置と、を備えたシステム。 A system including the user device according to claim 5 and the verification device according to claim 6.
  8.  請求項3に記載のプログラムがネットワークを介して前記デジタル署名装置に送信されるシステム。

     
    A system in which the program according to claim 3 is transmitted to the digital signature device via a network.

PCT/JP2019/042020 2019-10-25 2019-10-25 Method, program, digital signature device, user device, verification device, and system WO2021079515A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/042020 WO2021079515A1 (en) 2019-10-25 2019-10-25 Method, program, digital signature device, user device, verification device, and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/042020 WO2021079515A1 (en) 2019-10-25 2019-10-25 Method, program, digital signature device, user device, verification device, and system

Publications (1)

Publication Number Publication Date
WO2021079515A1 true WO2021079515A1 (en) 2021-04-29

Family

ID=75619430

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/042020 WO2021079515A1 (en) 2019-10-25 2019-10-25 Method, program, digital signature device, user device, verification device, and system

Country Status (1)

Country Link
WO (1) WO2021079515A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09261217A (en) * 1996-03-27 1997-10-03 Nippon Telegr & Teleph Corp <Ntt> Communication equipment and its method
JP2004064181A (en) * 2002-07-25 2004-02-26 Sanyo Electric Co Ltd Home gateway apparatus and program
JP2004080174A (en) * 2002-08-13 2004-03-11 Ntt Data Corp Ic, data processing system, and computer program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09261217A (en) * 1996-03-27 1997-10-03 Nippon Telegr & Teleph Corp <Ntt> Communication equipment and its method
JP2004064181A (en) * 2002-07-25 2004-02-26 Sanyo Electric Co Ltd Home gateway apparatus and program
JP2004080174A (en) * 2002-08-13 2004-03-11 Ntt Data Corp Ic, data processing system, and computer program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SMITH, R. E.: "Authentication technology", OHMSHA, LTD, 25 April 2003 (2003-04-25), pages 382 - 385 *

Similar Documents

Publication Publication Date Title
US11877213B2 (en) Methods and systems for asset obfuscation
US11842350B2 (en) Offline authentication
CN107925572B (en) Secure binding of software applications to communication devices
CN110011956B (en) Data processing method and device
TWI497336B (en) Data security devices and computer program
CN111756533B (en) System, method and storage medium for secure password generation
KR101544722B1 (en) Method for performing non-repudiation, payment managing server and user device therefor
AU2010215040B2 (en) System and methods for online authentication
KR101863953B1 (en) System and method for providing electronic signature service
CN105684010A (en) Secure remote payment transaction processing using a secure element
CN105745678A (en) Secure remote payment transaction processing including consumer authentication
KR101644124B1 (en) Server for transaction using pre-authentication and method thereof
CN111160909B (en) Hidden static supervision system and method for blockchain supply chain transaction
US20230259899A1 (en) Method, participant unit, transaction register and payment system for managing transaction data sets
KR102056612B1 (en) Method for Generating Temporary Anonymous Certificate
JP5489913B2 (en) Portable information device and encrypted communication program
WO2021079515A1 (en) Method, program, digital signature device, user device, verification device, and system
US10248947B2 (en) Method of generating a bank transaction request for a mobile terminal having a secure module
AU2015202661B2 (en) System and methods for online authentication
US20230267426A1 (en) Payment system, coin register, participant unit, transaction register, monitoring register and method for payment with electronic coin data sets
Bursuc et al. Provably unlinkable smart card-based payments
Oliveira Dynamic QR codes for Ticketing Systems

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19949827

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19949827

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP