JP2006227411A - Communications system, encryption device, key generator, key generating method, restoration device, communication method, encryption method, and cryptography restoration method - Google Patents
Communications system, encryption device, key generator, key generating method, restoration device, communication method, encryption method, and cryptography restoration method Download PDFInfo
- Publication number
- JP2006227411A JP2006227411A JP2005042646A JP2005042646A JP2006227411A JP 2006227411 A JP2006227411 A JP 2006227411A JP 2005042646 A JP2005042646 A JP 2005042646A JP 2005042646 A JP2005042646 A JP 2005042646A JP 2006227411 A JP2006227411 A JP 2006227411A
- Authority
- JP
- Japan
- Prior art keywords
- ciphertext
- random number
- key
- encryption
- plaintext
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
本発明は通信システム、暗号化装置、鍵生成装置、鍵生成方法、復元装置、通信方法、暗号化方法、暗号復元方法に関し、特に公開鍵暗号方式やしきい値暗号方式を採用した通信システム、暗号化装置、鍵生成装置、鍵生成方法、復元装置、通信方法、暗号化方法、暗号復元方法に関する。 The present invention relates to a communication system, an encryption device, a key generation device, a key generation method, a restoration device, a communication method, an encryption method, and an encryption restoration method, and more particularly, a communication system adopting a public key encryption method and a threshold encryption method, The present invention relates to an encryption device, a key generation device, a key generation method, a restoration device, a communication method, an encryption method, and an encryption restoration method.
従来、安全な通信を行うために、公開鍵暗号方式が用いられている。公開鍵暗号方式では、公開鍵に対する復号鍵を安全に保管しておくことが大きな課題の一つになっている。この課題に対する解決方法の一つとして、種々のしきい値暗号方式が開発されている。しきい値暗号方式とは、公開鍵暗号方式における復号鍵を複数の分散鍵に分散し、分散鍵を持つ複数の装置が協力しなければ、平文を復元できないようにした方式である。 Conventionally, public key cryptosystems are used to perform secure communication. In the public key cryptosystem, storing a decryption key for a public key safely is one of the major issues. As one of solutions to this problem, various threshold encryption methods have been developed. The threshold encryption method is a method in which a decryption key in a public key encryption method is distributed to a plurality of distributed keys, and plain text cannot be restored unless a plurality of devices having the distributed keys cooperate.
公開鍵暗号を用いるにあたって復号鍵を如何に安全に保管しておくかということは大きな課題の一つであり、その解決方法の一つとして種々のしきい値暗号の方式が開発されてきた。ここで、しきい値暗号とは公開鍵暗号における復号のための復号鍵をいくつかの分散鍵と呼ばれるものに分散し、分散鍵をもつ複数のセンタが協力しなければ復号ができない方式である。このようなしきい値暗号の方式としては、例えば、素因数分解型の暗号方式を用いる方法(例えば、非特許文献1、非特許文献2、非特許文献3)や、離散対数型の暗号方式を用いる方法(例えば、非特許文献4)などが知られている。 How to securely store a decryption key when using public key cryptography is one of the major issues, and various threshold cryptosystems have been developed as one of the solutions. Here, threshold encryption is a method in which a decryption key for decryption in public key cryptography is distributed into several so-called distributed keys, and decryption is not possible unless a plurality of centers having the distributed keys cooperate. . As such a threshold encryption method, for example, a method using a prime factorization type encryption method (for example, Non-Patent Document 1, Non-Patent Document 2, Non-Patent Document 3) or a discrete logarithmic encryption method is used. A method (for example, Non-Patent Document 4) is known.
しかし、上記非特許文献1に記載の技術は選択暗号文攻撃に対して安全性が示せるものの、暗号化の際にべき乗演算を数多く行う必要があり、暗号化の前に事前計算できないべき乗演算が存在していた(問題点1)。
また上記非特許文献2に記載の技術は暗号化のための計算量は少ないものの、安全性が選択平文攻撃のもとでのみ示され、選択暗号文攻撃のもとでの安全性が示されないという問題があった(問題点2)。また安全性の根拠をe乗根判定問題という、強い仮定の元ではじめて安全性が示せていた(問題点2’)。
However, although the technique described in Non-Patent Document 1 shows safety against a selected ciphertext attack, it is necessary to perform many exponentiation operations at the time of encryption, and there are exponentiation operations that cannot be pre-computed before encryption. It existed (Problem 1).
Further, although the technique described in Non-Patent Document 2 has a small amount of calculation for encryption, security is shown only under a selected plaintext attack, and security under a selected ciphertext attack is not shown. (Problem 2). In addition, the safety was demonstrated based on the strong assumption of the e-root determination problem as the basis of safety (Problem 2 ′).
また上記非特許文献3に記載の技術は素因数分解に基づく方式に比べて大きな素数を準備する必要がある。素数定理より大きい素数は数が少ないために、大きい素数を準備するということは目的の素数が見つけにくく、使える素数も少ないという問題がある(問題点3)。
さらに、非特許文献4に示される素因数分解型のしきい値暗号方式では、法Nのもとでの計算により暗号化及び復号を行い、選択平文攻撃に対する安全性を確保できるものの、1ビットしか暗号化できなかった。そのため、暗号化及び復号の効率が非常に悪く、実用的ではなかった(問題点4)。
Further, the technique described in Non-Patent Document 3 needs to prepare a large prime number as compared with a method based on prime factorization. Since prime numbers larger than the prime number theorem have few numbers, preparing a large prime number has a problem that it is difficult to find the target prime number and there are few prime numbers that can be used (Problem 3).
Further, in the prime factorization type threshold encryption method shown in Non-Patent Document 4, although encryption and decryption can be performed by calculation under the modulus N to ensure safety against a selected plaintext attack, only 1 bit is available. Could not encrypt. For this reason, the efficiency of encryption and decryption is very poor and not practical (Problem 4).
特に、問題点1及び問題点4については、携帯性を重視する移動通信端末は高速のCPUを搭載することが困難なため上記従来技術のしきい値暗号方式は、その暗号化の際の計算が非効率なため実用向きではない。
本発明の第1の目的は、上述した問題点1,2’,3,4を解決するため、複数ビットの平文を暗号化でき、決定問題に仮定を置く、素因数分解型で、かつ、事前計算により計算能力の低い移動通信端末などにおいても実用可能な、しきい値暗号化方式又は公開鍵暗号方式を採用した、通信システム、暗号化装置、鍵生成装置、鍵生成方法、復元装置、通信方法、暗号化方法、暗号復元方法を提供することである。
In particular, with regard to Problem 1 and Problem 4, since the mobile communication terminal that places importance on portability is difficult to mount a high-speed CPU, the above-described threshold encryption method of the above-described prior art is calculated at the time of encryption. Is inefficient because of inefficiency.
The first object of the present invention is to solve the above-mentioned problems 1, 2 ', 3, and 4, and to encrypt a plaintext of a plurality of bits, to make a decision problem, and to be a prime factorization type and advance Communication system, encryption device, key generation device, key generation method, restoration device, communication adopting threshold encryption method or public key encryption method, which can be practically used in mobile communication terminals with low calculation capability by calculation It is to provide a method, an encryption method, and an encryption restoration method.
本発明の第2の目的は、上述した問題点1,2,3,4を解決するため、複数ビットの平文を暗号化でき、素因数分解型で、かつ、事前計算により計算能力の低い移動通信端末などにおいても実用可能な、しきい値暗号化方式又は公開鍵暗号方式を採用した、通信システム、暗号化装置、鍵生成装置、鍵生成方法、復元装置、通信方法、暗号化方法、暗号復元方法を提供することである。 The second object of the present invention is to solve the above-mentioned problems 1, 2, 3 and 4, and can encrypt a multi-bit plaintext, is a prime factorization type, and has a low computing power by pre-computation. A communication system, encryption device, key generation device, key generation method, restoration device, communication method, encryption method, encryption restoration that employs a threshold encryption method or a public key encryption method that can also be used in terminals and the like. Is to provide a method.
本発明の請求項1による通信システムは、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する場合に、合成数を法とするもとで、暗号化のために部分的な事前計算を行う暗号化装置と、
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成する鍵生成装置と、
暗号文と分散鍵とを用いて部分復号情報を生成する部分復号装置(例えば、図1〜図3中の復号サーバ501〜50nに対応)と、
復号の際に乱数rの少なくとも一部を前記部分復号情報を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元装置と、
を含むことを特徴とする。このように構成すれば、安全かつ効率的なしきい値暗号方式を採用した通信システムを実現できる。
The communication system according to claim 1 of the present invention conceals the random number r as g r with respect to g which is not a composite number based on the composite number, and uses at least a part of the random number r to express the plaintext m. When encrypting, an encryption device that performs partial pre-calculation for encryption based on the composite number, and
A key generating unit for generating a distributed key based on the key that is secret information required when taking out at least part of the u from the random number r defined by g r which can calculate the composite number as a modulo,
A partial decryption device (for example, corresponding to
A restoration device that restores at least a part of the random number r using the partial decryption information at the time of decryption, and obtains the plaintext m using at least a part of the restored random number r;
It is characterized by including. If comprised in this way, the communication system which employ | adopted the safe and efficient threshold value encryption system is realizable.
本発明の請求項2による暗号化装置は、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する場合に、合成数を法とするもとで、暗号化のために部分的な事前計算を行う暗号文生成手段と、前記暗号文生成手段によって生成した暗号文を暗号文管理サーバに送信する暗号文送信手段とを含むことを特徴とする。このように構成すれば、安全かつ効率的なしきい値暗号方式を採用した通信システムにおける暗号化装置を実現できる。 The encryption apparatus according to claim 2 of the present invention conceals the random number r as g r with respect to g which is not the combined number and modulo the combined number, and uses at least a part of the random number r as plaintext m. The ciphertext generating means for performing partial pre-calculation for encryption based on the composite number, and the ciphertext generated by the ciphertext generating means And ciphertext transmission means for transmitting to the network. If comprised in this way, the encryption apparatus in the communication system which employ | adopted the safe and efficient threshold value encryption system is realizable.
本発明の請求項3による鍵生成装置は、合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成する分散鍵生成手段と、前記分散鍵生成手段によって生成された分散鍵を部分復号装置に送信する分散鍵送信手段とを含むことを特徴とする。このように構成すれば、安全かつ効率的なしきい値暗号方式を採用した通信システムにおける鍵生成装置を実現できる。 The key generation device according to claim 3 of the present invention is a distributed key based on a key that is secret information necessary for extracting at least a part of a random number r from u defined by g r that can be calculated by using a composite number as a modulus. And a distributed key transmitting means for transmitting the distributed key generated by the distributed key generating means to the partial decryption device. If comprised in this way, the key generation apparatus in the communication system which employ | adopted the safe and efficient threshold value encryption system is realizable.
本発明の請求項4による鍵生成装置は、請求項3において、grで定義されるuと暗号文との関係を検証するための暗号文検証用データを、作成するために必要な公開情報を作成する公開情報作成手段を更に含むことを特徴とする。このように構成すれば、安全性をより高めたしきい値暗号方式を採用した通信システムにおける鍵生成装置を実現できる。
本発明の請求項5による鍵生成方法は、合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成する分散鍵生成ステップを含むことを特徴とする。このように構成すれば、安全かつ効率的なしきい値暗号方式を採用した鍵生成方法を実現できる。
The key generation apparatus according to claim 4 of the present invention, in claim 3, public information necessary ciphertext verification data for verifying the relationship between u and the ciphertext is defined by g r, in order to create It further comprises public information creating means for creating If comprised in this way, the key generation apparatus in the communication system which employ | adopted the threshold-value encryption method which raised safety | security more is realizable.
The key generation method according to claim 5 of the present invention, distributed key based on the key that is secret information required when taking out at least part of the u random number r defined by g r which can calculate the composite number as a modulo Including a distributed key generation step of generating. If comprised in this way, the key generation method which employ | adopted the safe and efficient threshold value encryption system is realizable.
本発明の請求項6による鍵生成方法は、合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成する分散鍵生成ステップと、grで定義されるuと暗号文との関係を検証するための暗号文検証用データを、作成するために必要な公開情報を作成する公開情報作成ステップとを含むことを特徴とする。このように構成すれば、安全性をより高めたしきい値暗号方式を採用した鍵生成方法を実現できる。 The key generation method according to claim 6 of the present invention, distributed key based on the key that is secret information required when taking out at least part of the u random number r defined by g r which can calculate the composite number as a modulo a distributed key generation step of generating a ciphertext verification data for verifying the relationship between u and the ciphertext is defined by g r, and public information generating step of generating public information needed to create It is characterized by including. If comprised in this way, the key generation method which employ | adopted the threshold-value encryption method which raised safety | security more is realizable.
本発明の請求項7による復元装置は、復号の際に乱数rの少なくとも一部を部分復号情報を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求めることを特徴とする。このように構成すれば、安全かつ効率的なしきい値暗号方式を採用した通信システムにおける復元装置を実現できる。 The restoration device according to claim 7 of the present invention is characterized in that at the time of decryption, at least a part of the random number r is restored using the partial decryption information, and the plaintext m is obtained using at least a part of the restored random number r. To do. If comprised in this way, the decompression | restoration apparatus in the communication system which employ | adopted the safe and efficient threshold value encryption system is realizable.
本発明の請求項8による通信方法は、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する場合に、合成数を法とするもとで、暗号化のために部分的な事前計算を行うステップと、
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成するステップと、
暗号文と前記分散鍵記憶手段に記憶されている分散鍵とを用いて部分復号情報を生成するステップと、
復号の際に乱数rの少なくとも一部を前記部分復号情報を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求めることを特徴とするステップと、
を含むことを特徴とする。このように構成すれば、安全かつ効率的なしきい値暗号方式を採用した通信方法を実現できる。
The communication method according to claim 8 of the present invention conceals a random number r as g r with respect to g that is not a composite number and modulo the composite number, and uses at least a part of the random number r to express the plaintext m. A step of performing a partial pre-calculation for encryption based on a composite number when encrypting; and
Generating a distributed key based on a key, which is secret information necessary for extracting at least a part of the random number r from u defined by g r that can be calculated modulo the composite number;
Generating partial decryption information using ciphertext and a distributed key stored in the distributed key storage means;
Reconstructing at least a part of the random number r using the partial decryption information at the time of decryption, and obtaining a plaintext m using at least a part of the restored random number r;
It is characterized by including. If comprised in this way, the communication method which employ | adopted the safe and efficient threshold value encryption system is realizable.
本発明の請求項9による通信システムは、合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密鍵を生成する秘密鍵生成装置と、
合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する場合に、合成数を法とするもとで、暗号化のために部分的な事前計算を行う暗号化装置と、
復号の際に乱数rの少なくとも一部を、前記秘密鍵生成装置によって生成された秘密鍵を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元装置と、
を含むことを特徴とする。このように構成すれば、安全かつ効率的な公開鍵暗号方式を採用した通信システムを実現できる。
A communication system according to claim 9 of the present invention includes a secret key generation device that generates a secret key necessary for extracting at least a part of a random number r from u defined by g r that can be calculated modulo a composite number;
When the composite number is modulo, the random number r is concealed as g r with respect to the prime g and the plaintext m is encrypted using at least a part of the random number r. An encryption device that performs partial pre-computation for encryption,
A restoration device for restoring at least a part of the random number r at the time of decryption using the secret key generated by the secret key generation apparatus and obtaining the plaintext m using at least a part of the restored random number r;
It is characterized by including. If comprised in this way, the communication system which employ | adopted the safe and efficient public key encryption system is realizable.
本発明の請求項10による鍵生成装置は、合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密鍵を生成する秘密鍵生成手段と、前記秘密鍵生成手段によって生成された秘密鍵を復元装置に送信する秘密鍵送信手段とを含むことを特徴とする。このように構成すれば、安全かつ効率的な公開鍵暗号方式を採用した通信システムにおける鍵生成装置を実現できる。 According to a tenth aspect of the present invention, there is provided a secret key generating means for generating a secret key necessary for extracting at least a part of the random number r from u defined by g r that can be calculated by using a composite number as a modulus. And a secret key transmitting means for transmitting the secret key generated by the secret key generating means to the restoration device. If comprised in this way, the key generation apparatus in the communication system which employ | adopted the safe and efficient public key cryptosystem is realizable.
本発明の請求項11による鍵生成装置は、請求項10において、grで定義されるuと暗号文との関係を検証するための暗号文検証用データを、作成するために必要な公開情報を作成する公開情報作成手段を更に含むことを特徴とする。このように構成すれば、安全性をより高めた公開鍵暗号方式を採用した通信システムにおける鍵生成装置を実現できる。
The key generation apparatus according to
本発明の請求項12による鍵生成方法は、合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密鍵を生成する秘密鍵生成ステップを含むことを特徴とする。このように構成すれば、安全かつ効率的な公開鍵暗号方式を採用した鍵生成方法を実現できる。
本発明の請求項13による鍵生成方法は、合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密鍵を生成する秘密鍵生成ステップと、grで定義されるuと暗号文との関係を検証するための暗号文検証用データを、作成するために必要な公開情報を作成する公開情報作成ステップとを含むことを特徴とする。このように構成すれば、安全性をより高めた公開鍵値暗号方式を採用した鍵生成方法を実現できる。
The key generation method according to claim 12 of the present invention includes a secret key generation step for generating a secret key required for extracting at least a part of the random number r from u defined by g r that can be calculated by using a composite number as a modulus. It is characterized by including. If comprised in this way, the key generation method which employ | adopted the safe and efficient public key cryptosystem is realizable.
A key generation method according to a thirteenth aspect of the present invention includes a secret key generation step for generating a secret key necessary for extracting at least part of the random number r from u defined by g r that can be calculated by using a composite number as a modulus. , the ciphertext verification data for verifying the relationship between u and ciphertext is defined by g r, characterized in that it comprises a public information creation step of creating a public information needed to create. If comprised in this way, the key generation method which employ | adopted the public key value encryption system which raised safety | security more is realizable.
本発明の請求項14による通信方法は、合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密鍵を生成する鍵生成ステップと、
合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する場合に、合成数を法とするもとで、暗号化のために部分的な事前計算を行うステップと、
復号の際に乱数rの少なくとも一部を、前記秘密鍵生成手段によって生成された秘密鍵を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元ステップと、
を含むことを特徴とする。このように構成すれば、安全かつ効率的な公開鍵暗号方式を採用した通信方法を実現できる。
A communication method according to claim 14 of the present invention includes a key generation step of generating a secret key necessary for extracting at least a part of the random number r from u defined by g r that can be calculated modulo the composite number;
When the composite number is modulo, the random number r is concealed as g r with respect to the prime g and the plaintext m is encrypted using at least a part of the random number r. A partial precomputation for encryption, and
A restoration step of restoring at least part of the random number r at the time of decryption using the secret key generated by the secret key generation means, and obtaining the plaintext m using at least part of the restored random number r;
It is characterized by including. If comprised in this way, the communication method which employ | adopted the safe and efficient public key cryptosystem is realizable.
本発明の請求項15による暗号化装置は、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを一度だけ暗号化し(従来特にしきい値暗号では検証データだけではなく一つの平文に対して二度暗号化してはじめて選択暗号文攻撃に対して安全であった)、更に暗号文検証用データを付加して、合成数を法とするもとで、暗号化のために部分的な事前計算を行う暗号文生成手段と、前記暗号文生成手段によって生成した暗号文を暗号文管理サーバに送信する暗号文送信手段とを含むことを特徴とする。このように構成すれば、安全かつ効率的な公開鍵暗号方式を採用した通信システムにおける暗号化装置を実現できる。 The encryption device according to claim 15 of the present invention conceals a random number r as g r with respect to g which is not a composite number based on the composite number, and uses at least a part of the random number r as plaintext m. Is encrypted only once (especially in the case of threshold encryption, not only the verification data but also a single plaintext was encrypted twice before it was safe against selective ciphertext attacks), and the ciphertext verification data was In addition, ciphertext generation means for performing partial pre-computation for encryption based on the composite number and ciphertext generated by the ciphertext generation means is transmitted to the ciphertext management server. And ciphertext transmission means. If comprised in this way, the encryption apparatus in the communication system which employ | adopted the safe and efficient public key encryption system is realizable.
本発明の請求項16による通信システムは、
合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを一度だけ暗号化し(従来特にしきい値暗号では検証データだけではなく一つの平文に対して二度暗号化してはじめて選択暗号文攻撃に対して安全であった)、更に暗号文検証用データを付加して、合成数を法とするもとで、暗号化のために部分的な事前計算を行う暗号文生成手段と、
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成する鍵生成手段と、
暗号文と分散鍵とを用いて部分復号情報を生成する部分復号手段(例えば、図1〜図3中の復号サーバ501〜50nに対応)と、
前記検証用データを用いて暗号文について検証を行う検証手段と、
復号の際に乱数rの少なくとも一部を前記部分復号情報を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求めることを特徴とする復元手段と、
を含むことを特徴とする。このように構成すれば、安全かつ効率的なしきい値暗号方式を採用した通信システムを実現できる。
A communication system according to claim 16 of the present invention comprises:
Random number r is concealed as g r with respect to g that is not a composite number, and plain text m is encrypted only once using at least a part of random number r. In this case, it was only safe to encrypt not only the verification data but also the single plaintext twice, and it was safe against the selected ciphertext attack). And ciphertext generation means for performing partial pre-computation for encryption,
Key generation means for generating a distributed key based on a key, which is secret information necessary for extracting at least a part of the random number r from u defined by g r that can be calculated modulo the composite number;
Partial decryption means (for example, corresponding to the
Verification means for verifying the ciphertext using the verification data;
Restoring means characterized in that at least a part of the random number r is restored using the partial decryption information at the time of decryption, and a plaintext m is obtained using at least a part of the restored random number r;
It is characterized by including. If comprised in this way, the communication system which employ | adopted the safe and efficient threshold value encryption system is realizable.
本発明の請求項17による通信方法は、
合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを一度だけ暗号化し(従来特にしきい値暗号では検証データだけではなく一つの平文に対して二度暗号化してはじめて選択暗号文攻撃に対して安全であった)、更に暗号文検証用データを付加して、合成数を法とするもとで、暗号化のために部分的な事前計算を行う暗号文生成ステップと、
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成する鍵生成ステップと、
暗号文と分散鍵とを用いて部分復号情報を生成する部分復号ステップと、
前記検証用データを用いて暗号文について検証を行う検証ステップと、
復号の際に乱数rの少なくとも一部を前記部分復号情報を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元ステップと、
を含むことを特徴とする。このように構成すれば、安全かつ効率的なしきい値暗号方式を採用した通信方法を実現できる。
A communication method according to claim 17 of the present invention comprises:
Random number r is concealed as g r with respect to g that is not a composite number, and plain text m is encrypted only once using at least a part of random number r. In this case, it was only safe to encrypt not only the verification data but also the single plaintext twice, and it was safe against the selected ciphertext attack). And a ciphertext generation step for performing partial precalculation for encryption, and
A key generating step of generating a distributed key based on the key that is secret information required when taking out at least part of the u from the random number r defined by g r which can calculate the composite number as a modulo,
A partial decryption step of generating partial decryption information using the ciphertext and the distributed key;
A verification step of verifying the ciphertext using the verification data;
A restoration step of restoring at least a part of the random number r using the partial decryption information at the time of decoding, and obtaining a plaintext m using at least a part of the restored random number r;
It is characterized by including. If comprised in this way, the communication method which employ | adopted the safe and efficient threshold value encryption system is realizable.
本発明の請求項18による通信システムは、
合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを一度だけ暗号化し(従来特にしきい値暗号では検証データだけではなく一つの平文に対して二度暗号化してはじめて選択暗号文攻撃に対して安全であった)、更に暗号文検証用データを付加して、合成数を法とするもとで、暗号化のために部分的な事前計算を行う暗号化手段と、
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密鍵を生成する秘密鍵生成手段と、
前記検証用データを用いて暗号文について検証を行う検証手段と、
復号の際に乱数rの少なくとも一部を、前記秘密鍵生成手段によって生成された秘密鍵を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元手段と、
を含むことを特徴とする。このように構成すれば、安全かつ効率的な公開鍵暗号方式を採用した通信システムを実現できる。
A communication system according to claim 18 of the present invention comprises:
Random number r is concealed as g r with respect to g that is not a composite number, and plain text m is encrypted only once using at least a part of random number r. In this case, it was only safe to encrypt not only the verification data but also the single plaintext twice, and it was safe against the selected ciphertext attack). And encryption means for performing partial pre-computation for encryption,
A secret key generation means for generating a secret key that is required when taking out at least part of the u from the random number r defined by g r which can calculate the composite number as a modulo,
Verification means for verifying the ciphertext using the verification data;
Restoring means for restoring at least a part of the random number r at the time of decryption using the secret key generated by the secret key generating means and obtaining the plaintext m using at least a part of the restored random number r;
It is characterized by including. If comprised in this way, the communication system which employ | adopted the safe and efficient public key encryption system is realizable.
本発明の請求項19による通信方法は、
合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを一度だけ暗号化し(従来特にしきい値暗号では検証データだけではなく一つの平文に対して二度暗号化してはじめて選択暗号文攻撃に対して安全であった)、更に暗号文検証用データを付加して、合成数を法とするもとで、暗号化のために部分的な事前計算を行う暗号化ステップと、
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密鍵を生成する秘密鍵生成ステップと、
前記検証用データを用いて暗号文について検証を行う検証ステップと、
復号の際に乱数rの少なくとも一部を、前記秘密鍵生成手段によって生成された秘密鍵を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元ステップと、
を含むことを特徴とする。このように構成すれば、安全かつ効率的な公開鍵暗号方式を採用した通信方法を実現できる。
A communication method according to claim 19 of the present invention comprises:
Random number r is concealed as g r with respect to g that is not a composite number, and plain text m is encrypted only once using at least a part of random number r. In this case, it was only safe to encrypt not only the verification data but also the single plaintext twice, and it was safe against the selected ciphertext attack). And an encryption step that performs a partial precomputation for encryption, and
A private key generation step of generating a secret key that is required when taking out at least part of the u from the random number r defined by g r which can calculate the composite number as a modulo,
A verification step of verifying the ciphertext using the verification data;
A restoration step of restoring at least part of the random number r at the time of decryption using the secret key generated by the secret key generation means, and obtaining the plaintext m using at least part of the restored random number r;
It is characterized by including. If comprised in this way, the communication method which employ | adopted the safe and efficient public key cryptosystem is realizable.
本発明の請求項20による暗号化方法は、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化することを特徴とする。このように構成すれば、平文mとは無関係に決められる乱数rをあらかじめ決めてgrをあらかじめ計算しておくことが可能となり、効率的なしきい値暗号方式を採用した通信システムにおける暗号化方式を実現でき、また乱数rの少なくとも一部の情報を正確に求める必要性から安全性の根拠を決定問題に置くことが可能となり安全なしきい値暗号方式を採用した通信システムにおける暗号化方法を実現できる。 The encryption method according to claim 20 of the present invention conceals a random number r as g r with respect to g which is not a composite number based on the composite number, and uses at least a part of the random number r as plaintext m. Is encrypted. With this configuration, it is possible to predetermine a random number r determined independently of the plaintext m and calculate g r in advance, and an encryption method in a communication system employing an efficient threshold encryption method In addition, it is possible to place the grounds for security in the decision problem from the necessity of accurately obtaining at least part of the information of the random number r. it can.
本発明の請求項21による暗号化方法は、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを一度だけ暗号化し、更に暗号文検証用データを付加することを特徴とする。このように構成すれば、平文mとは無関係に決められる乱数rをあらかじめ決めてgrをあらかじめ計算しておくことが可能となり、さらに検証用データも大部分を事前に計算することにより効率的なしきい値暗号方式を採用した通信システムにおける暗号化方式を実現でき、また暗号文の検証用データによって選択暗号文攻撃に対する耐性が付加され、安全なしきい値暗号方式を採用した通信システムにおける暗号化方法を実現できる。 The encryption method according to claim 21 of the present invention conceals a random number r as g r with respect to g which is not a composite number based on the composite number, and uses at least a part of the random number r as plaintext m. Is encrypted once, and ciphertext verification data is added. By configuring in this way, it becomes possible to predetermine a random number r determined independently of the plaintext m and calculate g r in advance, and to further efficiently calculate most of the verification data in advance. Encryption in a communication system that employs a secure threshold cryptosystem, and that is resistant to selected ciphertext attacks by ciphertext verification data, and is encrypted in a communication system that employs a secure threshold cryptosystem The method can be realized.
本発明の請求項22による暗号復元方法は、復号の際に乱数rの少なくとも一部を、しきい値暗号化方式において使用する部分復号情報を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求めることを特徴とする。このように構成すれば、乱数rの少なくとも一部の情報を正確に求める必要性から安全性の根拠を決定問題に置くことが可能となり安全なしきい値暗号方式を採用した通信システムにおける暗号復元方法を実現できる。 In the encryption restoration method according to claim 22 of the present invention, at least a part of the random number r is restored using the partial decryption information used in the threshold encryption method at the time of decryption, and at least a part of the restored random number r The plaintext m is obtained using. With this configuration, it is possible to place the grounds for safety in the decision problem from the necessity of accurately obtaining at least part of the information of the random number r, and the encryption restoration method in the communication system adopting the secure threshold encryption method Can be realized.
本発明の請求項23による暗号復元方法は、復号の前に暗号文検証用データをもとに暗号文が正しく作られたものであるか確認し、その後確認が取れた場合には復号の際に乱数rの少なくとも一部を、公開鍵暗号化方式において使用する秘密鍵を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求めることを特徴とする。このように構成すれば、暗号文の検証用データによって選択暗号文攻撃に対する耐性が付加され、安全なしきい値暗号方式を採用した通信システムにおける暗号復元方法を実現できる。 In the cipher restoration method according to claim 23 of the present invention, it is confirmed whether the ciphertext is correctly created based on the ciphertext verification data before decryption, and when the ciphertext is confirmed thereafter, the decryption is performed. And at least part of the random number r is restored using a secret key used in the public key cryptosystem, and plaintext m is obtained using at least part of the restored random number r. According to this configuration, the ciphertext verification data is added with resistance against a selected ciphertext attack, and a cipher restoration method in a communication system employing a safe threshold cryptosystem can be realized.
本発明の請求項24による復元装置は、復号の際に乱数rの少なくとも一部を、公開鍵暗号化方式において使用する秘密鍵を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求めることを特徴とする。このように構成すれば、乱数rの少なくとも一部の情報を正確に求める必要性から安全性の根拠を決定問題に置くことが可能となり安全な公開鍵暗号方式を採用した通信システムにおける復元装置を実現できる。 The restoration apparatus according to claim 24 of the present invention restores at least a part of the random number r at the time of decryption using a secret key used in the public key encryption method, and uses at least a part of the restored random number r. It is characterized in that plaintext m is obtained. If constituted in this way, it becomes possible to place the basis of security in the decision problem from the necessity of accurately obtaining at least part of the information of the random number r, and a restoration device in a communication system adopting a secure public key cryptosystem is provided. realizable.
本発明によれば、計算能力が低い端末においても事前計算を行うことにより暗号化できるので、効率的なしきい値暗号方式又は公開鍵暗号方式を採用した通信システムを実現できるという効果がある。
また、本発明によれば、選択暗号文攻撃に対する耐性を付加するか、又は決定問題が難しいという妥当な仮定に基づくようにしたため、安全なしきい値暗号方式又は公開鍵暗号方式を採用した通信システムを実現できるという効果がある。
According to the present invention, even a terminal with low calculation capability can be encrypted by performing pre-calculation, so that it is possible to realize a communication system employing an efficient threshold encryption method or public key encryption method.
In addition, according to the present invention, a communication system adopting a safe threshold encryption method or a public key encryption method because it is based on a reasonable assumption that resistance against a selected ciphertext attack is added or a decision problem is difficult. There is an effect that can be realized.
以下、本発明の実施の形態を、図面を参照して説明する。なお、以下の説明において参照する各図では、他の図と同等部分は同一符号によって示されている。また、以下の説明において用いられている英文字やギリシャ文字は、各実施形態において同一に意義を有している。
本発明では、合成数NをN=pqと定義し、p,qを相異なる奇素数とし、共にΛ/2ビットとする。また、ZN 2は、0以上N2未満の整数の集合、Z* N 2は、ZN 2の要素のうちN2と互いに素な整数の集合、QN 2は法N2のもとで平方余剰である整数でありかつN2と互いに素な値の集合、とする。
Hereinafter, embodiments of the present invention will be described with reference to the drawings. In the drawings referred to in the following description, the same parts as those in the other drawings are denoted by the same reference numerals. In addition, English letters and Greek letters used in the following description have the same significance in each embodiment.
In the present invention, the composite number N is defined as N = pq, p and q are different odd prime numbers, and both are Λ / 2 bits. Z N 2 is a set of integers greater than or equal to 0 and less than N 2 , Z * N 2 is a set of integers that are relatively prime to N 2 among the elements of Z N 2 , and Q N 2 is a source of modulus N 2 A set of values that are integers that are square surplus and disjoint from N 2 .
さらに、本発明では、以下の仮定1及び仮定2を前提とする。
(仮定1)
(Partial Discrete Logarithm Assumption)
N(=pq),g∈Z* N2,gr(gのr乗)(r∈ZN2)(N2はN2を意味する)
が与えられた際に、rと法をNとして合同なr’(当然rと完全に等しくてもよい)を求めることはほとんどできない。なお、「ほとんどできない」とは、この問題が何題か出題された場合、正解率が0に限りなく近いいう意味である。
ここで、gの位数を0でないNの倍数とする。
Furthermore, the present invention assumes the following assumption 1 and assumption 2.
(Assumption 1)
(Partial Discrete Logarithm Assumption)
N (= pq), gεZ * N2 , g r (g to the power of r) (rεZ N2 ) (N2 means N 2 )
When r is given, it is almost impossible to find congruent r ′ (which may of course be completely equal to r) with r and modulus N. Note that “almost impossible” means that the correct answer rate is close to zero when several questions are given.
Here, the order of g is a non-zero multiple of N.
(仮定2)
(Decisional Small Diffie−Hellman Assumption)
N(=pq),M(=p2q2),g∈Z* N2,g2∈Z* M2,gr(gのr乗)(r∈ZN2)(N2はN2を意味し、M2はM2を意味する)
が与えられた際に、さらに以下に定義するZ0もしくはZ1を与えた際に、その予想が当たる確率は1/2とほとんど同じである(1/2との差が限りなく0に近い)。
Z0=g2 rmodM2,Z1=R(∈Z* M2)(M2はM2を意味する)
ここで、gの位数を0でないNの倍数、g2の位数を0でないN2の倍数とする。ただし、N>N2とするが、その差は無視できるほどしか差が無いとする。
(Assumption 2)
(Decisional Small Diffie-Hellman Assumption)
N (= pq), M ( = p 2 q 2), g∈Z * N2, g 2 ∈Z * M2, g r (g of r-th power) (r∈Z N2) (N2 means the N 2 , M2 means M 2 )
When Z 0 or Z 1 defined below is further given, the probability that the prediction is true is almost the same as 1/2 (the difference from 1/2 is almost as close to 0 as possible) ).
Z 0 = g 2 r mod M 2 , Z 1 = R (∈Z * M 2 ) (M 2 means M 2 )
Here, the order of g is a multiple of N that is not 0, and the order of g 2 is a multiple of N 2 that is not 0. However, it is assumed that N> N 2 but the difference is negligible.
(第1実施形態)
〔通信システム〕
図1に示すように、通信システム100は、暗号化端末10と、復元端末20と、鍵生成サーバ30と、暗号文管理サーバ40と、複数の復号サーバ501〜50nと、ネットワーク60とを備える。暗号化端末10と、復元端末20と、鍵生成サーバ30と、暗号文管理サーバ40と、複数の復号サーバ501〜50nは、ネットワーク60を介して、情報を送受信する。
(First embodiment)
〔Communications system〕
As illustrated in FIG. 1, the
鍵生成サーバ30は、μビットの平文mの暗号化に用いる公開情報(g,N,θ,H1)と、暗号文Cの復号に用いる秘密情報Lβとその分散鍵sを生成する鍵生成装置である。鍵生成サーバ30は、鍵生成部31と、鍵データベース32と、送信部33とを備える。鍵生成部31は、公開情報(g,N,θ,H1)と、それに対する秘密情報Lβと、秘密情報Lβを複数に分散した分散鍵sとを生成する。鍵生成部31は、n個の分散鍵sを生成する。さらに部分復号情報が正しいことを検証するためのn個の検証鍵vkとその生成元vを生成する。各検証鍵を区別するときには、i番目の検証鍵を「vki」と表す。よって、各分散鍵を区別するときには、i番目の分散鍵を「si」と表す。このように検証鍵vkと分散鍵sには、1〜nまでの番号が付与される。なお、復号サーバの数である「n」と、(t,n)しきい値暗号方式において復号のために必要な部分復号情報の数を表す「t」は、公開されている情報である。これら「n」及び「t」は、復元端末20に送信される。
The
鍵データベース32は、公開情報(g,N,θ,H1)を記憶する。送信部33は、鍵生成部31が生成した公開情報(g,N,θ,H1)を暗号化端末10、復元端末20、暗号文管理サーバ40に送信する。また、検証鍵vk1〜vknを少なくとも復元端末20に送信する。また、送信部33は、分散鍵s1〜snを、復号サーバ501〜50nに送信する。このような鍵生成サーバ30は、コンピュータを、鍵生成部31と、鍵データベース32と、送信部33として機能させるためのプログラムを、コンピュータが実行することにより実現できる。
The
暗号化端末10は、平文mを暗号化して暗号文Cを生成する暗号化装置である。暗号化端末10は、受信部11と、暗号文生成部12と、送信部13と、入力部14と、記憶部15とを備えている。
受信部11は、鍵生成サーバ30から公開情報(g,N,θ,H1)を受信する。記憶部15は、暗号文生成部12が事前に計算するH1(rmodN)とu=grmodN2とを記憶する。受信部11は、平文mを受信し、暗号文生成部12に入力してもよい。
The
The receiving
入力部14は、外部から入力される平文mを取得し、暗号文生成部12に入力する。暗号文生成部12は、事前計算され記憶部15に記憶されているH1(rmodN)及びu=grmodN2を用いて平文mを暗号化する。暗号文生成部12は、暗号文Cを生成する際に、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する。暗号文生成部12は、入力部14や受信部11から平文mを取得する。なお、r∈UZN2(N2はN2を意味する)である。ここで、「X∈UG」は、集合Gから一様な確率で要素Xを選択することを表す。
The
暗号文生成部12は、以下に示す式(1)及び式(2)を計算することにより、平文mを暗号化して暗号文C(c,u)を生成することが好ましい。
c=H1(rmodN)*m …(1)
u=grmodN2 …(2)
ハッシュ関数H1は、ZN→{0,1}μである。なお、上記の「*」は排他的論理和を示している。以後の説明においても同様である。
The
c = H1 (rmodN) * m (1)
u = g r modN 2 (2)
The hash function H1 is Z N → {0, 1} μ. The above “*” indicates an exclusive OR. The same applies to the following description.
送信部13は、暗号文生成部12が生成した暗号文Cを、暗号文管理サーバ40に送信する。記憶部15は、後述するように暗号化する際に部分的に事前計算した結果を、一旦記憶する。このような暗号化端末10は、コンピュータを、受信部11と、暗号文生成部12と、送信部13と、入力部14と、記憶部15として機能させるためのプログラムを、コンピュータが実行することにより実現できる。
The
暗号文管理サーバ40は、暗号文Cを暗号化端末10から受信し、暗号文Cを各装置に提供する暗号文管理装置である。暗号文管理サーバ40は、受信部41と、暗号文管理部42と、暗号文データベース43と、送信部44とを備える。受信部41は、暗号化端末10から暗号文Cを受信する。又、受信部41は、復元端末20や復号サーバ501〜50nから、暗号文Cの要求を受信する。更に、受信部41は、鍵生成サーバ30から公開情報(g,N,θ,H1)を受信する。
The
暗号文データベース43は、暗号文Cを記憶する。送信部44は、暗号文Cを復元端末20、復号サーバ501〜50nに送信する。このような暗号文管理サーバ40は、コンピュータを、受信部41と、暗号文管理部42と、暗号文データベース43と、送信部44として機能させるためのプログラムを、コンピュータが実行することにより実現できる。
The
復号サーバ501〜50nは、部分復号情報σを生成する。部分復号情報σは、暗号文Cから平文mを復元する際に用いる情報であり、復元端末20が平文mの復元をするために必要な情報である。部分復号情報σは、暗号文Cと分散鍵sとを用いた計算を行うことにより、即ち、暗号文Cを分散鍵sを用いて部分的に復号することにより得られる情報である。複数の復号サーバ501〜50nがそれぞれ異なる分散鍵sを用いて部分復号情報σを生成することにより、複数の部分復号情報σが生成される。分散鍵siを用いて生成された部分復号情報は、「σi」と表す。よって、複数の部分復号情報σとして、分散鍵s1〜snを用いて部分復号情報σ1〜σnが生成される。このように部分復号情報σには、1〜nまでの番号が付与される。又、復号サーバ501〜50nにも、1〜nまでの番号が付与される。なお、Δ=n!=n・(n−1)・(n−2)…2・1と定義する。
The
復号サーバ501〜50nはそれぞれ、受信部511〜51nと、部分復号情報生成部521〜52nと、送信部531〜53nとを備える。受信部511〜51nは、鍵生成サーバ30から公開情報(g,N,θ,H1)と分散鍵sとを受信する。又、受信部511〜51nは、復元端末20から部分復号情報σの要求(以下「復号要求」という)を受信する。更に、受信部511〜51nは、暗号文管理サーバ40から暗号文Cを受信する。
Each of the
部分復号情報生成部521〜52nのうち、暗号文Cを復号することに同意した部分復号情報生成部は、σi≡u2ΔSimodN2を復元端末20に送信する。σi≡u2ΔSimodN2を受信した復元端末20は、上記に同意した部分復号情報生成部から送られてきた情報が正しいものかどうか確認する。この確認においては、σi 2とvkiがそれぞれu4Δ、vΔを底として同じ対数を持つかどうかを確認する。復元端末20は、σiが正しいシェアであることを確認できなかった場合はinvalid symbolを出して処理を終了し、確認できた場合は以下の計算を行う。
Among the partial decoding information generation unit 52 1 to 52 n, partial decryption information generation unit who agree to decrypt the ciphertext C sends σ i ≡u 2 Δ Si modN 2 to restore the terminal 20. σ i ≡u 2 Δ Si modN 2 restore terminal 20 which has received the information sent from the partial decoding information generation unit which agree to the above is whether to verify correct. In this confirmation, it is confirmed whether σ i 2 and vk i have the same logarithm with u 4 Δ and vΔ as the bases, respectively. If the
上記のような復号サーバ501〜50nは、コンピュータを、受信部511〜51nと、部分復号情報生成部521〜52nと、送信部531〜53nとして機能させるためのプログラムを、コンピュータが実行することにより実現できる。
復元端末20は、暗号文Cから平文mを復元する復元装置である。復元端末20は、受信部21と、平文復元部22と、送信部23と、出力部24とを備える。
受信部21は、複数の部分復号情報σを、複数の復号サーバ501〜50nから受信する。又、受信部21は、暗号文Cを暗号文管理サーバ40から受信する。更に、受信部21は、鍵生成サーバ30から公開情報(g,N,θ,H1)と検証鍵vk1〜vknを受信する。
The
The
The receiving
平文復元部22は、複数の部分復号情報σを用いて暗号文Cから平文mを復元する。平文復元部22は、復元した平文mを出力部24に出力する。送信部23は、暗号文Cの要求や、復号要求を送信する。このような復元端末20は、コンピュータを、受信部21と、平文復元部22と、送信部23と、出力部24として機能させるためのプログラムを、コンピュータが実行することにより実現できる。
The
次に、図1、図2を用いて、平文mの暗号化から復元において通信システム100が行う処理を詳細に説明する。通信システム100では、(t,n)しきい値暗号方式により復号を行う。(t,n)しきい値暗号方式とは、n個の分散鍵s1〜snを用いて生成されるn個の部分復号情報σ1〜σnのうち、t個の部分復号情報を用いれば、平文mが復元できるしきい値暗号方式である。よって、「t」は、(t,n)しきい値暗号方式において必要な部分復号情報σの数を表す。
Next, the processing performed by the
通信システム100が、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する暗号方式を用いる場合を説明する。鍵生成サーバ30の鍵生成部31は、まず、2つの大きなΛ/2ビットの強い素数p,qを選択し、その積を計算して、合成数N=pqを生成する。強い素数p,qとは、p=2p’+1においてp’が素数であり、q=2q’+1においてq’が素数であることをいう。
An encryption method in which the
ここで、L=p’q’を計算して秘密にしておく。また、a∈ZN,b∈Z* Nをもとにg=(1+aN)bNmodN2を定め、gを公開する。さらに、値β∈Z* Nをランダムに選択し、θ=aLβmodNを計算する。θを公開し、暗号化の際用いるハッシュ関数H1:ZN→{0,1}μも公開する。
次に、鍵生成部31は、公開情報(g,N,θ,H1)に対応する秘密情報Lβを生成する。秘密情報Lβは、
Here, L = p′q ′ is calculated and kept secret. Also, g = (1 + aN) b N modN 2 is determined based on a∈Z N and b∈Z * N , and g is disclosed. Further, the value β∈Z * N is selected at random, and θ = aLβmodN is calculated. θ is disclosed, and the hash function H1: Z N → {0, 1} μ used for encryption is also disclosed.
Next, the
本実施形態では、分散鍵s1〜snの個数nは、復号サーバ501〜50nの数と等しい。しかし、一つの復号サーバが複数の分散鍵を用いてもよい。よって、分散鍵sの個数と復号サーバの数は、必ずしも一致するとは限らない。分散鍵s1〜snの個数と復号サーバ501〜50nの数が一致する本実施形態では、復号サーバ50iが、分散鍵siを用いる。例えば、鍵生成部31は、Shamirにより提案された方法等を用いて、秘密情報Lβを複数に分散できる。
In the present embodiment, the number n of distributed keys s 1 to sn is equal to the number of
具体的には、鍵生成部31は、ai∈U{0,1,・・・,LN−1}、(i=1,2,・・・,t−1)を乱数として選択し、さらに、a0=Lβとして定義して分散鍵siを生成する。又、「ZX」とは、0以上X未満の整数の集合(ZX=Z/XZ)を表す。この場合、鍵生成部31は、以下に示す式(6)を計算することにより、複数の分散鍵s1〜snを生成する。鍵生成部31は、式(6)を用いて、si=f(i)modLNを計算することにより分散鍵siを生成する。
Specifically, the
鍵生成部31は、生成した複数の分散鍵s1〜snを、送信部33に入力する。
更に、鍵生成部31は、部分復号情報σが正しく暗号文Cを部分的に復号したものか否かを判定する際に用いる複数の検証鍵vkを生成する。鍵生成部31は、分散鍵s1〜snと同数のn個の検証鍵vk1〜vknを生成する。鍵生成部31は、以下に示す式(7)を計算することにより検証鍵vk1〜vknを生成する。
Furthermore, the
式(7)において、νはQN2(N2はN2を意味する)の部分群の生成元である。「QX」は、法Xのもとで平方余剰かつXと互いに素な整数の集合を表す。そのため、「QX」は、Z* Xから要素を一つ取得し、2乗した値の集合となる。鍵生成部31は、生成した複数の検証鍵vk1〜vknと、QN2(N2はN2を意味する)の部分群の生成元νの合計n+1個の値を、送信部33に入力する。
In Expression (7), ν is a generator of a subgroup of Q N2 (N2 means N 2 ). “Q X ” represents a set of integers that are square surplus under the modulus X and relatively prime to X. Therefore, “Q X ” is a set of values obtained by obtaining one element from Z * X and squaring it.
送信部33は、図2に示すように、素数p,qを秘密にしたまま復元端末20に対応する公開情報(g,N,θ,H1)だけを、暗号化端末10、暗号文管理サーバ40、復元端末20に送信する。暗号化端末10の受信部11は、鍵生成サーバ30から公開情報(g,N,θ,H1)を受信し、暗号文生成部12に入力する。暗号文管理サーバ40の受信部41は、鍵生成サーバ30から公開情報(g,N,θ,H1)を受信し、暗号文管理部42に入力する。
As shown in FIG. 2, the
更に、送信部33は、公開情報(g,N,θ,H1)と複数の分散鍵s1〜snとを対応付けて、複数の復号サーバ501〜50nに送信する。このとき、送信部33は、複数の分散鍵s1,・・・,si,・・・,snをそれぞれ、復号サーバ501,・・・,50i,・・・,50nに送信する。復号サーバ501〜50nの受信部511〜51nは、鍵生成サーバ30から、公開情報(g,N,θ,H1)と分散鍵s1〜snを受信し、部分復号情報生成部521〜52nに入力する。送信部33は、このようにして、複数の分散鍵sを復号装置に送信する鍵送信部として機能する。
Furthermore,
このように、送信部33が、uからrの少なくとも一部を取出す際必要となる秘密情報Lβを分散した分散鍵s1〜snを、複数の復号サーバ501〜50nに分散して提供する。更に、鍵生成サーバ30自身も秘密情報Lβは、鍵データベース32に格納しない。これにより、秘密情報Lβは一箇所に管理されず、複数の復号サーバ501〜50nによって分散管理される。
Thus, the
又、送信部33は、公開情報(g,N,θ,H1)と検証鍵vk1〜vknと、QN2(N2はN2を意味する)の部分群の生成元νとを対応付けて、復元端末20に送信する。復元端末20の受信部21は、鍵生成サーバ30から、公開情報(g,N,θ,H1)、検証鍵vk1〜vkn、QN2(N2はN2を意味する)の部分群の生成元νを受信し、平文復元部22に入力する。
Also,
暗号化端末10の暗号文生成部12は、鍵生成サーバ30から受信した公開情報(g,N,θ,H1)を用いて暗号化する。具体的には、暗号文生成部12は、値gに対して乱数rをgrmodN2として隠し、rの少なくとも一部の情報を用いて平文mをもとに暗号文Cを生成する。例えば、暗号文生成部12は、上記式(1)及び上記式(2)を計算することにより、平文mを暗号化し、暗号文Cを生成する。平文mは、暗号化端末10が暗号化して秘密にしたい情報である。本実施形態における平文mは、複数の分散鍵s1〜snを用いない限り、暗号文Cから平文mを復号できないようにすることにより、暗号化端末10が分散管理したい情報である。
The
暗号文生成部12は、乱数rを、ZN2から選択する。暗号文生成部12は、生成した暗号文Cを送信部13に入力する。送信部13は、図2に示すように、暗号文Cと暗号化に用いた公開鍵を暗号文管理サーバ40に送信する。
暗号文管理サーバ40の受信部41は、図2に示すように、暗号化端末10から暗号文Cを受信する。受信部41は、受信した暗号文Cを暗号文管理部42に入力する。暗号文管理部42は、暗号文Cを、鍵生成サーバ30から受信した公開情報(g,N,θ,H1)に対応付けて、暗号文データベース43に格納する。
The
The receiving
その後、復元端末20の平文復元部22が、公開情報(g,N,θ,H1)をもとに作成した暗号文Cの要求と、公開情報(g,N,θ,H1)と秘密情報をもとに作成した部分復号情報σを要求する復号要求を生成し、送信部23に入力する。送信部23は、暗号文Cの要求を暗号文管理サーバ40に送信する。暗号文管理サーバ40の受信部41は、復元端末20から暗号文Cの要求を受信し、暗号文管理部42に入力する。暗号文管理部42は、暗号文Cの要求において指定されている公開情報(g,N,θ,H1)に対応する暗号文Cを、暗号文データベース43から取得し、公開情報(g,N,θ,H1)と対応付けて送信部44に入力する。送信部44は、図2に示すように公開情報(g,N,θ,H1)と対応付けられた暗号文Cを復元端末20に送信する。このように公開情報(g,N,θ,H1)は、暗号文Cを識別するための識別データとして用いることができる。
After that, the
又、送信部23は、復号要求を複数の復号サーバ501〜50nに送信する。このとき、送信部23は、復号要求を全ての復号サーバ501〜50nにブロードキャストにより送信してもよく、(t,n)しきい値暗号方式において必要な部分復号情報の数tだけ復号サーバを選択し、送信してもよい。
復号サーバ501〜50nの受信部511〜51nは、復号要求を受信し、部分復号情報生成部521〜52nに入力する。部分復号情報生成部521〜52nは、復号要求を受け入れた場合、復号要求において指定されている公開情報(g,N,θ,H1)を指定した暗号文Cの要求を生成し、送信部531〜53nに入力する。送信部531〜53nは、暗号文Cの要求を暗号文管理サーバ40に送信する。尚、部分復号情報生成部521〜52nは、復号要求を拒否してもよい。
The
The receiving units 51 1 to 51 n of the
暗号文管理サーバ40の受信部41は、復号サーバ501〜50nから暗号文Cの要求を受信し、暗号文管理部42に入力する。暗号文管理部42は、指定された公開情報(g,N,θ,H1)に対応する暗号文Cを暗号文データベース43から取得し、公開情報(g,N,θ,H1)と対応付けて送信部44に入力する。送信部44は、図2に示すように公開情報(g,N,θ,H1)と対応付けられた暗号文Cを復号サーバ501〜50nに送信する。
The
復号サーバ501〜50nの受信部511〜51nは、暗号文Cを受信し、部分復号情報生成部521〜52nに入力する。部分復号情報生成部521〜52nはそれぞれ、受信した暗号文Cと分散鍵s1〜snを用いて、σi≡u2ΔSimodN2を計算することにより、暗号文Cを部分的に復号して部分復号情報σ1〜σnを生成する。部分復号情報生成部521〜52nは、復号要求において指定されている公開情報(g,N,θ,H1)に対応する分散鍵s1〜snを用いる。
The receiving units 51 1 to 51 n of the
例えば、復号サーバ50iの場合、暗号文Cと分散鍵siを用いて、
σi=u2ΔSimodN2
を計算することにより、部分復号情報σiを生成する。
部分復号情報生成部52は、生成した部分復号情報σ1〜σnを送信部531〜53nに入力する。送信部531〜53nはそれぞれ、図2に示すように、部分復号情報σ1〜σnを復元端末20に送信する。尚、全ての復号サーバ501〜50nが、部分復号情報σ1〜σnの生成、送信を行う必要はなく、少なくとも(t,n)しきい値暗号方式において必要なt個の部分復号情報σを生成し、復元端末20に送信すればよい。
For example, in the case of the decryption server 50i, using the ciphertext C and the distributed key s i ,
σ i = u 2 Δ Si mod N 2
To generate partial decoding information σ i .
The partial decoding information generation unit 52 inputs the generated partial decoding information σ 1 to σ n to the transmission units 53 1 to 53 n . Each of the transmission units 53 1 to 53 n transmits partial decoding information σ 1 to σ n to the
復元端末20の受信部21は、複数の復号サーバ501〜50nから複数の部分復号情報σ1〜σnを受信する。受信部21は、受信した複数の部分復号情報σ1〜σnを平文復元部22に入力する。このようにして、受信部21は、複数の復号装置から複数の部分復号情報σを受信する復号情報受信部として機能する。尚、受信部21は、全ての復号サーバ501〜50nから全ての部分復号情報σ1〜σnを受信する必要はなく、少なくとも(t,n)しきい値暗号方式において必要なt個の部分復号情報σを受信する。
Receiving
平文復元部22は、複数の部分復号情報σ1〜σnを用いて、暗号文Cの一部であるuから平文mを復元する。平文復元部22は、まず、部分復号情報σが正しく復号されたものか否かを判定する。平文復元部22は、暗号文Cの一部であるuの4Δ乗「u4Δ」を底とした部分復号情報の2乗「σ2」の対数と、QN2(N2はN2を意味する)の部分群の生成元のΔ乗「νΔ」を底とした検証鍵vkの対数が等しいか否かを判定する。平文復元部22は、対数が等しい場合には、部分復号情報σが正しく復号されたものであると判定し、対数が異なる場合には、部分復号情報σは正しく復号されていないと判定する。
The
平文復元部22は、複数の部分復号情報σ1〜σnについて、それぞれ検証鍵vk1〜vknを用いて判定を行う。対数が等しいか否かの判定には、一般的な方法、例えば、文献「FPS00:P.−A. Fouque,G.Poupard and J.Stern,“Sharing Decryption in the Context of Voting or Lotteries”, Financial Cryptography 2000 Lecture Notes in Computer Science,pp.90−104,2000」に記載されている方法を用いることができる。
平文復元部22は、正しく復号されていると判定した部分復号情報σ1〜σnを用いて、まず、平文mの暗号化に用いた乱数rの情報の一部を計算する。尚、平文復元部22は、全ての復号サーバ501〜50nからの全ての部分復号情報σ1〜σnを用いる必要はなく、(t,n)しきい値暗号方式において必要なt個の部分復号情報σを選択し、用いる。
平文復元部22は、まず、上述した式(3)を計算する。平文復元部22は、文献「SHo00:victor Shoup, “Practical Threshold Signatures”,EUROCRYPT,Lecture Notes in Computer Science, pp.207-220,2000」と同様に、式(4)に示す条件で式(3)を計算する。
The
The
式(3)、式(4)において、「S」は、復元端末20からの復号要求を受け入れた復号サーバ501〜50nの番号の集合を表す。つまり、例えば、番号1、2、5が付与された復号サーバが復号要求を受け入れた場合には、S={1,2,5}と記述される。但し、集合Sに含まれる番号の数は、(t,n)しきい値暗号方式において部分復号情報σが必要な数tに限定される。又、式(3)、式(4)における「λ」は補間係数である。「λ」は、式(4)において、f(0)=a0を計算するために用いられ、式(8)に示す関係を持つ。
In Expressions (3) and (4), “S” represents a set of numbers of the
又、「Πj∈S/[i](i−j)」は、集合Sに含まれる番号のうちiを除く全ての番号に関してiから引き算した値を考え、それら全ての積を示す。同様に、「Πj∈S/[i](−j)」は、集合Sに含まれる番号のうちiを除く全ての数字に関して、符号の正負を逆にした値の積を示す。
次に、平文復元部22は、計算した乱数rの少なくとも一部を用いて、暗号文Cから平文mを復元する。具体的には、平文復元部22は、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する際に用いた式、例えば、上記式(3)に基づいてrmodを算出し、算出したrmodと受信した暗号文Cとを式(1)に代入して、平文mを復元する。以上のようにして、復元端末20は、復号サーバ501〜50nから受信した複数の部分復号情報σ1〜σnに基づいて、秘密の情報である平文mを復元できる。
“Π j ∈ S / [i] (i−j)” represents the product of all the numbers included in the set S except for i and subtracted from i. Similarly, “Π j ∈ S / [i] (−j)” indicates a product of values obtained by reversing the sign of all the numbers excluding i among the numbers included in the set S.
Next, the
尚、平文復元部22は、部分復号情報σが正しく復号されていないと判定した場合には、その部分復号情報σを送信した復号サーバに対する部分復号情報の拒否通知を生成し、送信部23に入力する。送信部23は、拒否通知を復号サーバに送信し、処理を終了する。もしくは、平文復元部22は、他の有効な部分復号情報をもとに秘密情報を復元する。
If the
〔安全性強化のための変形例〕
ところで、上記の通信システムにおいて、鍵生成部31による鍵生成、暗号化端末10による暗号化、復元端末20による復号において、上記とは異なる、以下の処理を行うことにより、選択暗号文攻撃に対する安全性を持たせることができる。
(1)鍵生成部31による鍵生成においては、以下の事項が異なる。
鍵生成部31は、公開情報(g,g2,N,M,θ,H1,H2)を生成する。まず、4つの大きなΛ/2ビットの強い素数p,p2,q,q2を用い、合成数N=pq,M=p2q2を作成し、p,p2,q,q2は秘密にしたままN,Mを公開情報として公開する。ここで、L=p’q’,L2=p2’q2’も計算して秘密にしておく。なお、N>Mとする。なお、N<Mの場合も同様に行える。
[Modifications to enhance safety]
By the way, in the communication system described above, the following processing, which is different from the above, is performed in the key generation by the
(1) In key generation by the
The
また、a∈ZN,b∈Z* Nをもとにg=(1+aN)bNmodMを、a2∈ZM,b2∈Z* Mをもとにg2=(1+a2M)b2 MmodM2を、それぞれ定め、g,g2を公開する。さらに、値β, β2∈Z* Nをランダムに選択し、θ=aLβmodN, θ2=a2L2β2modMを計算しておく。また、暗号化の際に用いるハッシュ関数H1:ZN→{0,1}μとH2:{0,1}μ×ZN 2×ZN 2×ZM 2×ZM 2→{0,1}Bも公開する。ここで復号サーバ501〜50nへ渡す分散鍵はそれぞれ一つとするほかに、それぞれ二つ渡す方法も考えられる。この場合には、鍵生成部31は、Shamirにより提案された方法等を用いて、秘密情報L2β2も複数に分散する。
Also, g = (1 + aN) b N modM based on a∈Z N and b∈Z * N , and g 2 = (1 + a 2 M) based on a 2 ∈Z M and b 2 ∈Z * M. b 2 M mod M 2 is determined, and g and g 2 are disclosed. Further, the value beta, the beta 2 ∈ Z * N randomly selected, θ = aLβmodN, advance to calculate the θ 2 = a 2 L 2 β 2 modM. Also, hash functions H1: Z N → {0,1} μ and H2: {0,1} μ × Z N 2 × Z N 2 × Z M 2 × Z M 2 → {0, 1} B is also released. Here, in addition to a single distributed key to be passed to the
具体的には、鍵生成部31は、bi∈U{0,1,・・・,L2M−1}、(i=1,2,・・・,t−1)を乱数として選択し、さらに、b0=L2β2として定義して分散鍵tiを生成する。この場合、鍵生成部31は、以下に示す式(6)’を計算することにより、複数の分散鍵t1〜tnを生成する。鍵生成部31は、式(6)’を用いて、ti=f2(i)modL2Mを計算することにより分散鍵tiを生成する。
Specifically, the
鍵生成部31は、生成した複数の分散鍵t1〜tnも、送信部33に入力する。
更に、鍵生成部31は、部分復号情報σ’≡u’2ΔtimodM2が正しく暗号文Cを部分的に復号したものか否かを判定する際に用いる複数の検証鍵wkを生成する。鍵生成部31は、分散鍵t1〜tnと同数のn個の検証鍵wk1〜wknを生成する。鍵生成部31は、以下に示す式(7)’を計算することにより検証鍵wk1〜wknを生成する。
The
Further, the
式(7)’において、ν2はQM2(M2はM2を意味する)の部分群の生成元である。
(2)暗号化端末10による暗号化においては、以下の事項が異なる。
式(1)及び式(2)の代わりに、次の式(9)を用いる。ただし、s∈ZN4(N4はN4を意味する)とする。
In Expression (7) ′, ν 2 is a generator of a subgroup of Q M2 (M2 means M 2 ).
(2) The following matters are different in the encryption by the
Instead of the formula (1) and the formula (2), the following formula (9) is used. However, sεZ N4 (N4 means N 4 ).
(3)復号においては、以下の事項が異なる。
暗号文を復号する前に、復元端末20、暗号文管理サーバ40、復号サーバ501〜50nの少なくとも1箇所において暗号文の検証を行う。この場合、少なくとも復元端末20において、暗号文の検証を行うことが望ましい。
ここで復号サーバ501〜50nへ渡す分散鍵をそれぞれ二つ渡す方法の場合にはuに関して行う部分復号と結合をu’についても同様に行い、復元結果がともにrかどうかの確認をする。もしも同じにならない場合は不正な暗号文として認識する。
ただし各復号サーバが通信して納得した上であればuかu’どちらか一方だけ復号してrを求めても構わない。
以上のように、復号を行う前に、少なくとも復元端末20が暗号文の検証を行うことにより、選択暗号文攻撃に対する安全性を持たせることができる。
(3) The following matters are different in decoding.
Before decrypting the ciphertext, the ciphertext is verified in at least one of the
Here, in the case of the method of passing two distributed keys to be passed to the
However, as long as each decryption server communicates and is convinced, either u or u ′ may be decrypted to obtain r.
As described above, before the decryption is performed, at least the
〔通信方法〕
次に、通信システム100を用いて行う通信方法の手順を説明する。まず、鍵生成サーバ30が、公開情報(g,N,θ,H1)、複数の分散鍵s1〜sn、複数の検証鍵vk1〜vknを生成する(S101)。鍵生成サーバ30は、公開情報(g,N,θ,H1)を復元端末20、復号サーバ501〜50n、暗号文管理サーバ40、暗号化端末10に送信する(S102〜S105)。鍵生成サーバ30は、複数の分散鍵s1〜snを復号サーバ501〜50nに送信する(S106)。鍵生成サーバ30は、少なくとも復元端末2,0にvk1〜vkn,vを送信する(S107)。
〔Communication method〕
Next, a procedure of a communication method performed using the
暗号化端末10は、例えば、式(2)を用い、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、式(1)を用い、乱数rの少なくとも一部を用いて平文mを暗号化し、暗号文Cを生成する(S108)。暗号化端末10は、生成した暗号文Cを暗号文管理サーバ40に送信する(S109)。暗号文管理サーバ40は、受信した暗号文Cを暗号文データベース43に格納する(S110)。
The
復元端末20は、暗号文Cを暗号文管理サーバ40に要求する(S111)。暗号文管理サーバ40は、復元端末20の要求に応じて、暗号文データベース43が記憶する暗号文Cを復元端末20に送信する(S112)。
復元端末20は、復号サーバ501〜50nに復号要求を送信する(S113)。復号サーバ501〜50nは暗号文Cを暗号文管理サーバ40に要求する(S114)。
The
The
暗号文管理サーバ40は、復号サーバ501〜50nの要求に応じて、暗号文データベース43が記憶する暗号文Cを復号サーバ501〜50nに送信する(S115)。
復号サーバ501〜50nはそれぞれ、暗号文Cと分散鍵s1〜snとを用いて、σi≡u2ΔSimodN2を計算することにより、部分復号情報σ1〜σnを生成する(S116)。 復号サーバ501〜50nはそれぞれ、生成した部分復号情報σ1〜σnを復元端末20に送信する(S117)。
The
Decoding
復元端末20は、受信した部分復号情報σ1〜σnが正しく復号されたものか否かを、検証鍵vk1〜vknを用いて判定する(S118)。復元端末20は、部分復号情報σ1〜σnが正しく復号されたものと判定した場合には、部分復号情報σ1〜σnを用いて乱数rの少なくとも一部の情報を計算する。そして、復元端末20は、受信した暗号文Cと、計算した乱数rの少なくとも一部の情報を、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する際に用いた式に代入することにより、平文mを復元する(S119)。このようにして、暗号化端末10と、複数の復号サーバ501〜50nとの間で、秘密の情報である平文mを管理できる。尚、ステップ(S103)、(S115)に代えて、復元端末20から復号サーバ501〜50nに公開情報(g,N,θ,H1)や暗号文Cを送信するようにしてもよい。
Restoring
なお、上述した安全性強化のための変形例の場合には、上記のステップS110、ステップS116、ステップS118のうち少なくとも1つのステップにおいて、暗号文の検証を行うことになる。この場合、少なくとも、復号サーバ501〜50nが行うステップS116において、暗号文の検証を行うことが望ましい。このように、復号を行う前に、少なくとも復元端末において、暗号文の検証を行うことにより、選択暗号文攻撃に対する安全性を持たせることができる。
In the case of the above-described modified example for enhancing security, the ciphertext is verified in at least one of the steps S110, S116, and S118. In this case, it is desirable to verify the ciphertext at least in step S116 performed by the
〔効果〕
本実施形態の通信システム100、暗号化端末10、復元端末20、鍵生成サーバ30、暗号文管理サーバ40、複数の復号サーバ501〜50n及び通信方法によれば、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する方式をしきい値暗号方式に適用できる。そのため、安全性を確保するためには計算量が多くなってしまったり、1ビットしか暗号化できない従来のしきい値暗号方式に対して、通信システム100では、複数ビットの平文mを、grを計算し、H1(rmodN)によって暗号化し、安全性を確保できる。
〔effect〕
According to the
上記の暗号化処理において、u=grmodN2、H1(rmodN)の部分を事前に計算し、暗号化する際はc=H1(rmodN)*mのみ計算すれば良いので、暗号化する際の計算量を少なくできることが分かる。つまり、通信システム100によれば、部分的に事前計算するので、処理効率の良いしきい値暗号方式を実現することができる。
In the above encryption process, u = g r modN 2 and H1 (rmodN) are calculated in advance, and only c = H1 (rmodN) * m needs to be calculated when encrypting. It can be seen that the amount of calculation can be reduced. In other words, according to the
特に、暗号化端末10や復元端末20が、携帯性を重視する移動通信端末のように高速のCPUを搭載することが困難な装置の場合においても、計算量が少ない本発明のしきい値暗号方式であれば利用可能である。さらに安全性強化のための変形例においては、素因数分解型のしきい値暗号ではよくあるように分散鍵を一つの復号サーバに二つ持たせるといったことが必要なく、変形例においては分散鍵の個数が減っているため記憶容量が少ない場合においても本発明のしきい値暗号方式であれば適用可能である。このように、本発明のしきい値暗号方式は、計算能力が低い暗号化装置や復号装置、復元装置、あるいは、安全性を高めた場合であっても記憶容量が低い暗号化装置や復号装置、復元装置においても、利用可能であり、暗号化と復号を効率的に行うことができる。
In particular, even when the
なお、上述した、安全性強化のための変形例を採用した場合、暗号文の検証を行うためのデータについてもほぼ事前計算できるので、安全性を強化してもやはり処理効率の良いしきい値暗号方式を実現することができる。
また、例えば、H1(rmodN)*mとしてmを暗号化することにより、ハッシュ関数の性質からmを求めるためには、rmodNを一意に決定する必要性がある。このため、本実施形態を採用すれば、決定問題に根拠をおくかもしくは選択暗号文攻撃に対しても安全性を確保でき、安全性を付与したしきい値暗号方式を実現することができる。
In addition, when the above-described modified example for enhancing security is adopted, data for performing ciphertext verification can be almost pre-calculated. An encryption method can be realized.
Further, for example, in order to obtain m from the property of the hash function by encrypting m as H1 (rmodN) * m, it is necessary to uniquely determine rmodN. For this reason, if this embodiment is adopted, it is possible to secure a security against a decision problem or to protect against a selected ciphertext attack, and it is possible to realize a threshold encryption method with added security.
ところで、本実施形態の通信システム100は、種々の変更が可能である。例えば、暗号化端末10、復号サーバ501〜50nの一部、又は、復元端末20が、鍵生成サーバ30の機能の一部又は全部を備え、鍵生成装置として機能してもよい。この他、暗号化端末10、復元端末20、鍵生成サーバ30、暗号文管理サーバ40、復号サーバ501〜50nのそれぞれの全部又は一部の機能のうち、少なくとも2つの機能を有する装置を通信システム100に備えてもよい。なお、通信システム100は、暗号文管理サーバ40、暗号化端末10を複数備えてもよい。
By the way, the
又、上記実施の形態では、暗号文Cを識別するための識別データとして公開情報(g,N,θ,H1)を用いているが、公開情報以外のデータを識別データとして用いることができる。又、鍵生成サーバ30は、公開情報(g,N,θ,H1)の暗号文管理サーバ40への送信を省略してもよい。尚、この場合には、暗号文管理サーバ40は、暗号文Cの要求と暗号文Cとを対応付けるための識別データとして、公開情報(g,N,θ,H1)以外のものを暗号文Cに付与し、その識別データを復元端末20へ与え、その識別データに対応付けて暗号文Cを暗号文データベース43に格納する。
In the above embodiment, public information (g, N, θ, H1) is used as identification data for identifying the ciphertext C. However, data other than public information can be used as identification data. The
あるいは、鍵生成サーバ30は、公開情報(g,N,θ,H1)を、暗号化端末10、復元端末20、暗号文管理サーバ40、復号サーバ501〜50nに送信せずに、これらの装置が自由に閲覧して取得できるようにしてもよい。又、暗号化端末10、復元端末20、暗号文管理サーバ40、復号サーバ501〜50n等が、予め公開情報(g,N,θ,H1)や分散鍵s1〜sn、検証鍵vk1〜vkn等を保持することにより、鍵生成サーバ30を省略してもよい。
又、復号サーバ501〜50nが完全に信用できる場合には検証鍵を用いなくてもよい。その場合には、復元端末20は、部分復号情報σが正しいか否かの判定を行わないため、より高速に処理を行え、効率を向上できる。
Alternatively, the
Further, when the
(第2実施形態)
〔通信システム〕
図4に示すように、公開鍵通信システム200は、暗号化端末10と、復元端末20と、鍵生成サーバ30と、暗号文管理サーバ40と、ネットワーク60とを備える。暗号化端末10と、復元端末20と、鍵生成サーバ30と、暗号文管理サーバ40は、ネットワーク60を介して、情報を送受信する。
鍵生成サーバ30は、μビットの平文mの暗号化に用いる公開情報(g,N,H1)と、暗号文Cの復号に用いる秘密鍵を生成する鍵生成装置である。鍵生成サーバ30は、鍵生成部31と、鍵データベース32と、送信部33とを備える。鍵生成部31は、公開情報(g,N,H1)と、それに対する秘密鍵とを生成する。
(Second Embodiment)
〔Communications system〕
As shown in FIG. 4, the public
The
鍵データベース32は、公開情報(g,N,H1)を記憶する。送信部33は、鍵生成部31が生成した公開情報(g,N,H1)を暗号化端末10、復元端末20、暗号文管理サーバ40に送信する。また、送信部33は、秘密鍵2Lを復元端末20に送信する。このような鍵生成サーバ30は、コンピュータを、鍵生成部31と、鍵データベース32と、送信部33として機能させるためのプログラムを、コンピュータが実行することにより実現できる。
The
暗号化端末10は、平文mを暗号化して暗号文Cを生成する暗号化装置である。暗号化端末10は、受信部11と、暗号文生成部12と、送信部13と、入力部14と、記憶部15とを備えている。
受信部11は、鍵生成サーバ30から公開情報(g,N,H1)を受信する。記憶部15は、暗号文生成部12が事前に計算するH1(rmodN)とu=grmodN2とを記憶する。受信部11は、平文mを受信し、暗号文生成部12に入力してもよい。
The
The receiving
入力部14は、外部から入力される平文mを取得し、暗号文生成部12に入力する。暗号文生成部12は、事前計算され記憶部15に記憶されているH1(rmodN)及びu=grmodN2を用いて平文mを暗号化する。暗号文生成部12は、暗号文Cを生成する際に、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する。暗号文生成部12は、入力部14や受信部11から平文mを取得する。暗号文生成部12は、上述した式(1)及び式(2)を計算することにより、平文mを暗号化して暗号文C(c,u)を生成することが好ましい。
c=H1(rmodN)*m …(1)
u=grmodN2 …(2)
ハッシュ関数H1は、ZN→{0,1}μである。なお、上記の「*」は排他的論理和を示している。
The
c = H1 (rmodN) * m (1)
u = g r modN 2 (2)
The hash function H1 is Z N → {0, 1} μ. The above “*” indicates an exclusive OR.
送信部13は、暗号文生成部12が生成した暗号文Cを、暗号文管理サーバ40に送信する。記憶部15は、後述するように暗号化する際に部分的に事前計算した結果を、一旦記憶する。このような暗号化端末10は、コンピュータを、受信部11と、暗号文生成部12と、送信部13と、入力部14と、記憶部15として機能させるためのプログラムを、コンピュータが実行することにより実現できる。
The
暗号文管理サーバ40は、暗号文Cを暗号化端末10から受信し、暗号文Cを各装置に提供する暗号文管理装置である。暗号文管理サーバ40は、受信部41と、暗号文管理部42と、暗号文データベース43と、送信部44とを備える。受信部41は、暗号化端末10から暗号文Cを受信する。又、受信部41は、復元端末20から、暗号文Cの要求を受信する。更に、受信部41は、鍵生成サーバ30から公開情報(g,N,H1)を受信する。
The
暗号文データベース43は、暗号文Cを記憶する。送信部44は、暗号文Cを復元端末20に送信する。このような暗号文管理サーバ40は、コンピュータを、受信部41と、暗号文管理部42と、暗号文データベース43と、送信部44として機能させるためのプログラムを、コンピュータが実行することにより実現できる。
復元端末20では以下の式を用いて復号化処理を行う。
u2LmodN2=(1+2raLN)
である。そして、rmodN並びに式(1)及び式(2)により、平文mが得られる。
The
The
u 2L modN 2 = (1 + 2raLN)
It is. Then, plaintext m is obtained by rmodN and equations (1) and (2).
復元端末20は、暗号文Cから平文mを復元する復元装置である。復元端末20は、受信部21と、平文復元部22と、送信部23と、出力部24とを備える。
受信部21は、秘密鍵2Lを、鍵生成サーバ30から受信する。又、受信部21は、暗号文Cを暗号文管理サーバ40から受信する。更に、受信部21は、鍵生成サーバ30から公開情報(g,N,H1)を受信する。
The
The receiving
平文復元部22は、秘密鍵2Lを用いて暗号文Cから平文mを復元する。平文復元部22は、復元した平文mを出力部24に出力する。送信部23は、暗号文Cの要求や、復号要求を送信する。このような復元端末20は、コンピュータを、受信部21と、平文復元部22と、送信部23と、出力部24として機能させるためのプログラムを、コンピュータが実行することにより実現できる。
The
次に、図4、図5を用いて、平文mの暗号化から復元において公開鍵通信システム200が行う処理を詳細に説明する。公開鍵通信システム200では、公開鍵暗号方式により復号を行う。
公開鍵通信システム200が、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する暗号方式を用いる場合を説明する。本例においては、鍵生成サーバ30の鍵生成部31は、まず、2つの大きなΛ/2ビットの強い素数p,qを選択し、公開情報(g,N,H1)を作成する。また、素数p及び素数qを記憶しておき、秘密鍵2Lを生成する。また、鍵生成サーバ30の鍵生成部31は、合成数N=pqを生成する。強い素数p,qとは、p=2p’+1においてp’が素数であり、q=2q’+1においてq’が素数であることをいう。
Next, a process performed by the public
A cipher in which the public
鍵生成部31は、素数p’、素数q’よりL=p’q’を構成し、公開情報(g,N,H1)に対応する秘密鍵2Lを生成する。
鍵生成部31は、生成した複数の秘密鍵2Lを、送信部33に入力する。
送信部33は、図5に示すように、素数p,qを秘密にしたまま復元端末20に対応する公開情報(g,N,H1)だけを、暗号化端末10、暗号文管理サーバ40、復元端末20に送信する。暗号化端末10の受信部11は、鍵生成サーバ30から公開情報(g,N,H1)を受信し、暗号文生成部12に入力する。暗号文管理サーバ40の受信部41は、鍵生成サーバ30から公開情報(g,N,H1)を受信し、暗号文管理部42に入力する。
The
The
As illustrated in FIG. 5, the
更に、送信部33は、秘密鍵2Lを復元端末20に送信する。
暗号化端末10の暗号文生成部12は、鍵生成サーバ30から受信した公開情報(g,N,H1)を用いて暗号化する。具体的には、暗号文生成部12は、値gに対して乱数rをgrmodN2として隠し、rの少なくとも一部の情報を用いて平文mをもとに暗号文Cを生成する。例えば、暗号文生成部12は、上記式(1)及び上記式(2)を計算することにより、平文mを暗号化し、暗号文Cを生成する。平文mは、暗号化端末10が暗号化して秘密にしたい情報である。本実施形態における平文mは、秘密鍵2Lを用いない限り、暗号文Cから平文mを復号できないようにすることにより、暗号化端末10が暗号化したい情報である。
Further, the
The
暗号文生成部12は、乱数rを、ZN2から選択する。暗号文生成部12は、生成した暗号文Cを送信部13に入力する。送信部13は、図5に示すように、暗号文Cを暗号文管理サーバ40に送信する。
暗号文管理サーバ40の受信部41は、図5に示すように、暗号化端末10から暗号文Cを受信する。受信部41は、受信した暗号文Cを暗号文管理部42に入力する。暗号文管理部42は、暗号文Cを、鍵生成サーバ30から受信した公開情報(g,N,H1)に対応付けて、暗号文データベース43に格納する。
The
The receiving
その後、復元端末20の平文復元部22が、公開情報(g,N,H1)をもとに作成した暗号文Cの要求を生成し、送信部23に入力する。送信部23は、暗号文Cの要求を暗号文管理サーバ40に送信する。暗号文管理サーバ40の受信部41は復元端末20から暗号文Cの要求を受信部41において受信し、暗号文管理部42は、暗号文Cの要求において指定されている公開情報(g,N,H1)に対応する暗号文Cを、暗号文データベース43から取得し、公開情報(g,N,H1)と対応付けて送信部44に入力する。送信部44は、図2に示すように公開情報(g,N,H1)と対応付けられた暗号文Cを復元端末20に送信する。このように公開情報(g,N,H1)は、暗号文Cを識別するための識別データとして用いることができる。
Thereafter, the
送信部33は、秘密鍵2Lを送信する。鍵生成サーバ30の送信部33から送信された秘密鍵2Lは、復元端末20の受信部21が受信する。
復元端末20の受信部21は、受信した秘密鍵2Lを平文復元部22に入力する。このようにして、受信部21は、鍵生成サーバ30から秘密鍵2Lを受信する復号情報受信部として機能する。
平文復元部22は、秘密鍵2Lを用いて、暗号文Cの一部であるuから平文mを復元する。この場合、平文復元部22は、
u2L=(1+2raLN)modN2
からrmodNを求め、
c=H1(rmodN)*m
より、平文mを得る。
The
The receiving
The
u 2L = (1 + 2raLN) modN 2
RmodN is calculated from
c = H1 (rmodN) * m
Thus, plaintext m is obtained.
〔安全性強化のための変形例〕
ところで、上記の通信システムにおいて、鍵生成部31による鍵生成、暗号化端末10による暗号化、復元端末20による復号において、上記とは異なる、以下の処理を行うことにより、選択暗号文攻撃に対する安全性を持たせることができる。
(1)鍵生成部31による鍵生成においては、以下の事項が異なる。
鍵生成部31は、公開情報(g,g2,N,M,H1,H2)を生成する。まず、4つの大きなΛ/2ビットの強い素数p,p2,q,q2を用い、合成数N=pq,M=p2q2を作成し、p,p2,q,q2は秘密にしたままN,Mを公開情報として公開する。ここで、L=p’q’,L2=p2’q2’も計算して秘密にしておく。なお、N>Mとする。
[Modifications to enhance safety]
By the way, in the communication system described above, the following processing, which is different from the above, is performed in the key generation by the
(1) In key generation by the
The
また、a∈ZN,b∈Z* Nをもとにg=(1+aN)bNmodMを、a2∈ZM,b2∈Z* Mをもとにg2=(1+a2M)b2 MmodM2を、それぞれ定め、g,g2を公開する。また、暗号化の際に用いるハッシュ関数H1:ZN→{0,1}μとH2:{0,1}μ×ZN 2×ZN 2×ZM 2×ZM 2→{0,1}Bも公開する。ここで復元端末20の持つ秘密鍵は一つとするほかに、二つにする方法も考えられる。この場合には、復元端末20では以下の式も用いて復号化処理を行う。
u’2L2modM2=(1+2ra2L2M)
(2)暗号化端末10による暗号化においては、以下の事項が異なる。
式(1)及び式(2)の代わりに、上述した式(9)を用いる。
Also, g = (1 + aN) b N modM based on a∈Z N and b∈Z * N , and g 2 = (1 + a 2 M) based on a 2 ∈Z M and b 2 ∈Z * M. b 2 M mod M 2 is determined, and g and g 2 are disclosed. Also, hash functions H1: Z N → {0,1} μ and H2: {0,1} μ × Z N 2 × Z N 2 × Z M 2 × Z M 2 → {0, 1} B is also released. Here, in addition to using one secret key for the
u '2L2 modM 2 = (1 + 2ra 2 L 2 M)
(2) The following matters are different in the encryption by the
Instead of the formulas (1) and (2), the above formula (9) is used.
(3)復号においては、以下の事項が異なる。
暗号文を復号する前に、復元端末20、暗号文管理サーバ40の少なくとも1箇所において暗号文の検証を行う。この場合、少なくとも復元端末20において、暗号文の検証を行うことが望ましい。
ここで復元端末20のもつ秘密鍵を二つ持つ方法の場合にはuに関して行う部分復号をu’についても同様に行い、復元結果がともにrかどうかの確認をする。もしも同じにならない場合は不正な暗号文として認識する。鍵が二つある場合でも計算時間の短縮のため、uもしくはu’一方に対してのみ復元しても構わない。
以上のように、復号を行う前に、少なくとも復元端末20が暗号文の検証を行うことにより、選択暗号文攻撃に対する安全性を持たせることができる。
(3) The following matters are different in decoding.
Before decrypting the ciphertext, the ciphertext is verified at at least one location of the
Here, in the case of the method having two secret keys possessed by the
As described above, before the decryption is performed, at least the
〔通信方法〕
次に、公開鍵通信システム200を用いて行う通信方法の手順を説明する。まず、鍵生成サーバ30が、公開情報(g,N,H1)、秘密鍵2Lを生成する(S201)。鍵生成サーバ30は、公開情報(g,N,H1)を復元端末20、暗号文管理サーバ40、暗号化端末10に送信する(S202、S204、S205)。鍵生成サーバ30は、復元端末20に秘密鍵を送信する(S207)。
〔Communication method〕
Next, a procedure of a communication method performed using the public
暗号化端末10は、例えば、式(1)及び式(2)を用い、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化し、暗号文Cを生成する(S208)。暗号化端末10は、生成した暗号文Cを暗号文管理サーバ40に送信する(S209)。暗号文管理サーバ40は、受信した暗号文Cを暗号文データベース43に格納する(S210)。
The
復元端末20は、暗号文Cを暗号文管理サーバ40に要求する(S211)。暗号文管理サーバ40は、復元端末20の要求に応じて、暗号文データベース43が記憶する暗号文Cを復元端末20に送信する(S212)。
復元端末20は、秘密鍵2Lを用いて乱数r mod Nを計算する。そして、復元端末20は、受信した暗号文Cと、計算した乱数rmod Nを、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する際に用いた式に代入することにより、平文mを復元する(S219)。
The
The
なお、上述した安全性強化のための変形例の場合には、上記のステップS210において、又は、ステップS219の処理前において、暗号文の検証を行うことになる。この場合、少なくとも、復元端末20が行うステップS219の処理前において、暗号文の検証を行うことが望ましい。このように、復号を行う前に、少なくとも復元端末において、暗号文の検証を行うことにより、選択暗号文攻撃に対する安全性を持たせることができる。
In the case of the above-described modified example for enhancing security, the ciphertext is verified in step S210 described above or before the processing in step S219. In this case, it is desirable to verify the ciphertext at least before the process of step S219 performed by the
〔効果〕
本実施形態の公開鍵通信システム200、暗号化端末10、復元端末20、鍵生成サーバ30、暗号文管理サーバ40及び通信方法によれば、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する方式をしきい値暗号方式に適用できる。そのため、安全性を確保するためには計算量が多くなってしまったり、1ビットしか暗号化できない従来のしきい値暗号方式に対して、公開鍵通信システム200では、合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて複数ビットの平文mを暗号化しているので安全性を確保できる。
〔effect〕
According to the public
上記の暗号化処理において、u=grmodN2、H1(rmodN)の部分を事前に計算し、暗号化する際はc=H1(rmodN)*mのみ計算すれば良いので、暗号化する際の計算量を少なくできることが分かる。つまり、公開鍵通信システム200によれば、部分的に事前計算するので、処理効率の良い公開鍵暗号方式を実現することができる。なお、上述した、安全性強化のための変形例を採用した場合、暗号文の検証を行うためのデータについてもほぼ事前計算できるので、安全性を強化してもやはり処理効率の良い公開鍵暗号方式を実現することができる。
In the above encryption process, u = g r modN 2 and H1 (rmodN) are calculated in advance, and only c = H1 (rmodN) * m needs to be calculated when encrypting. It can be seen that the amount of calculation can be reduced. In other words, according to the public
また、例えば、H1(rmodN)*mとしてmを暗号化することにより、ハッシュ関数の性質からmを求めるためには、rmodNを一意に決定する必要性がある。このため、本実施形態を採用すれば、決定問題に根拠をおくかもしくは選択暗号文攻撃に対しても安全性を確保でき、安全性を付与した公開鍵値暗号方式を実現することができる。
特に、暗号化端末10が、携帯性を重視する移動通信端末のように高速のCPUを搭載することが困難な装置の場合においても、計算量が少ない本発明のしきい値暗号方式であれば利用可能である。このように、本発明の公開鍵暗号方式は、計算能力が低い暗号化装置においても、利用可能であり、暗号化を効率的に行うことができる。
Further, for example, in order to obtain m from the property of the hash function by encrypting m as H1 (rmodN) * m, it is necessary to uniquely determine rmodN. For this reason, if this embodiment is adopted, security can be secured against a decision problem or against a selected ciphertext attack, and a public key value encryption scheme with security can be realized.
In particular, even in the case where the
ところで、本実施形態の公開鍵通信システム200は、種々の変更が可能である。例えば、復元端末20又は暗号文管理サーバ40が、鍵生成サーバ30の機能の一部又は全部を備え、鍵生成装置として機能してもよい。この場合、復元端末20が鍵生成サーバ30の機能の全部を備えていることが望ましい。この他、暗号化端末10、復元端末20、鍵生成サーバ30、暗号文管理サーバ40のそれぞれの全部又は一部の機能のうち、少なくとも2つの機能を有する装置を公開鍵通信システム200に備えてもよい。なお、公開鍵通信システム200は、暗号化端末10、暗号文管理サーバ40を複数備えてもよい。
By the way, the public
又、上記実施の形態では、暗号文Cを識別するための識別データとして公開情報(g,N,H1)を用いているが、公開情報以外のデータを識別データとして用いることができる。又、鍵生成サーバ30は、公開情報(g,N,H1)の暗号文管理サーバ40への送信を省略してもよい。尚、この場合には、暗号文管理サーバ40は、暗号文Cの要求と暗号文Cとを対応付けるための識別データとして、公開情報(g,N,H1)以外のものを暗号文Cに付与し、その識別データを復元端末20へ与え、その識別データに対応付けて暗号文Cを暗号文データベース43に格納する。
あるいは、鍵生成サーバ30は、公開情報(g,N,H1)を、暗号化端末10、復元端末20、暗号文管理サーバ40に送信せずに、これらの装置が自由に閲覧して取得できるようにしてもよい。
In the above embodiment, public information (g, N, H1) is used as identification data for identifying the ciphertext C, but data other than public information can be used as identification data. The
Alternatively, the
(まとめ)
上述した第1実施形態及び第2実施形態は、ともに事前計算を行うことにより暗号化を高速に行えるという特徴を持ち、素因数分解型の方式のため素数生成時の問題も少ない。
さらに、第1実施形態では安全性が選択平文攻撃のもとでのみ示されるが決定問題という比較的弱い仮定の下で安全性を示せる利点もある。第2実施形態では選択暗号文攻撃のもとでの安全性が示されるという利点がある。
(Summary)
The first embodiment and the second embodiment described above both have a feature that encryption can be performed at high speed by performing pre-calculation, and there are few problems when generating prime numbers because of the prime factorization type.
Further, in the first embodiment, the safety is shown only under the selected plaintext attack, but there is an advantage that the safety can be shown under a relatively weak assumption that is a decision problem. The second embodiment has an advantage that security under a selected ciphertext attack is shown.
本発明は、安全かつ効率的なしきい値暗号方式及び公開鍵暗号方式を採用した通信システムの構築に利用できる。 The present invention can be used to construct a communication system that employs a safe and efficient threshold encryption method and public key encryption method.
10 暗号化端末
11 受信部
12 暗号文生成部
13 送信部
14 入力部
15 記憶部
20 復元端末
21 受信部
22 平文復元部
23 送信部
24 出力部
30 鍵生成サーバ
31 鍵生成部
32 鍵データベース
33 送信部
40 暗号文管理サーバ
41 受信部
42 暗号文管理部
43 暗号文データベース
44 送信部
50i 復号サーバ
60 ネットワーク
100 通信システム
200 公開鍵通信システム
51i 受信部
52i 部分復号情報生成部
53i 送信部
DESCRIPTION OF
Claims (24)
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成する鍵生成装置と、
暗号文と分散鍵とを用いて部分復号情報を生成する部分復号装置と、
復号の際に乱数rの少なくとも一部を前記部分復号情報を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元装置と、
を含むことを特徴とする通信システム。 When the composite number is modulo, the random number r is concealed as g r with respect to the prime g and the plaintext m is encrypted using at least a part of the random number r. An encryption device that performs partial pre-computation for encryption,
A key generating unit for generating a distributed key based on the key that is secret information required when taking out at least part of the u from the random number r defined by g r which can calculate the composite number as a modulo,
A partial decryption device that generates partial decryption information using a ciphertext and a distributed key;
A restoration device that restores at least a part of the random number r using the partial decryption information at the time of decryption, and obtains the plaintext m using at least a part of the restored random number r;
A communication system comprising:
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成するステップと、
暗号文と前記分散鍵記憶手段に記憶されている分散鍵とを用いて部分復号情報を生成するステップと、
復号の際に乱数rの少なくとも一部を前記部分復号情報を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求めることを特徴とするステップと、
を含むことを特徴とする通信方法。 When the composite number is modulo, the random number r is concealed as g r with respect to the prime g and the plaintext m is encrypted using at least a part of the random number r. A partial precomputation for encryption, and
Generating a distributed key based on a key, which is secret information necessary for extracting at least a part of the random number r from u defined by g r that can be calculated modulo the composite number;
Generating partial decryption information using ciphertext and a distributed key stored in the distributed key storage means;
Reconstructing at least a part of the random number r using the partial decryption information at the time of decryption, and obtaining a plaintext m using at least a part of the restored random number r;
A communication method comprising:
合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する場合に、合成数を法とするもとで、暗号化のために部分的な事前計算を行う暗号化装置と、
復号の際に乱数rの少なくとも一部を、前記秘密鍵生成装置によって生成された秘密鍵を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元装置と、
を含むことを特徴とする通信システム。 A secret key generation device that generates a secret key necessary for extracting at least a part of the random number r from u defined by g r that can be calculated modulo the composite number;
When the composite number is modulo, the random number r is concealed as g r with respect to the prime g and the plaintext m is encrypted using at least a part of the random number r. An encryption device that performs partial pre-computation for encryption,
A restoration device for restoring at least a part of the random number r at the time of decryption using the secret key generated by the secret key generation apparatus and obtaining the plaintext m using at least a part of the restored random number r;
A communication system comprising:
合成数を法とするもとで合成数とは素なgに対して乱数rをgrとして隠し、乱数rの少なくとも一部を用いて平文mを暗号化する場合に、合成数を法とするもとで、暗号化のために部分的な事前計算を行うステップと、
復号の際に乱数rの少なくとも一部を、前記秘密鍵生成手段によって生成された秘密鍵を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元ステップと、
を含むことを特徴とする通信方法。 A key generating step of generating a secret key that is required when taking out at least part of the u from the random number r defined by g r which can calculate the composite number as a modulo,
When the composite number is modulo, the random number r is concealed as g r with respect to the prime g and the plaintext m is encrypted using at least a part of the random number r. A partial precomputation for encryption, and
A restoration step of restoring at least part of the random number r at the time of decryption using the secret key generated by the secret key generation means, and obtaining the plaintext m using at least part of the restored random number r;
A communication method comprising:
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成する鍵生成手段と、
暗号文と分散鍵とを用いて部分復号情報を生成する部分復号手段と、
前記検証用データを用いて暗号文について検証を行う検証手段と、
復号の際に乱数rの少なくとも一部を前記部分復号情報を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求めることを特徴とする復元手段と、
を含むことを特徴とする通信システム。 A random number r with respect to disjoint g The composite number composite numbers in Moto modulo hidden as g r, at least a part is encrypted once plaintext m using a further ciphertext verification data of the random number r And ciphertext generating means for performing partial pre-computation for encryption under the modulo of the composite number, and
Key generation means for generating a distributed key based on a key, which is secret information necessary for extracting at least a part of the random number r from u defined by g r that can be calculated modulo the composite number;
Partial decryption means for generating partial decryption information using a ciphertext and a distributed key;
Verification means for verifying the ciphertext using the verification data;
Restoring means characterized in that at least a part of the random number r is restored using the partial decryption information at the time of decryption, and a plaintext m is obtained using at least a part of the restored random number r;
A communication system comprising:
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密情報である鍵を元に分散鍵を生成する鍵生成ステップと、
暗号文と分散鍵とを用いて部分復号情報を生成する部分復号ステップと、
前記検証用データを用いて暗号文について検証を行う検証ステップと、
復号の際に乱数rの少なくとも一部を前記部分復号情報を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元ステップと、
を含むことを特徴とする通信方法。 A random number r with respect to disjoint g The composite number composite numbers in Moto modulo hidden as g r, at least a part is encrypted once plaintext m using a further ciphertext verification data of the random number r And a ciphertext generation step for performing partial pre-computation for encryption based on the composite number modulo,
A key generating step of generating a distributed key based on the key that is secret information required when taking out at least part of the u from the random number r defined by g r which can calculate the composite number as a modulo,
A partial decryption step of generating partial decryption information using the ciphertext and the distributed key;
A verification step of verifying the ciphertext using the verification data;
A restoration step of restoring at least a part of the random number r using the partial decryption information at the time of decoding, and obtaining a plaintext m using at least a part of the restored random number r;
A communication method comprising:
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密鍵を生成する秘密鍵生成手段と、
前記検証用データを用いて暗号文について検証を行う検証手段と、
復号の際に乱数rの少なくとも一部を、前記秘密鍵生成手段によって生成された秘密鍵を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元手段と、
を含むことを特徴とする通信システム。 A random number r with respect to disjoint g The composite number composite numbers in Moto modulo hidden as g r, at least a part is encrypted once plaintext m using a further ciphertext verification data of the random number r And an encryption means for performing partial pre-computation for encryption based on the composite number modulo,
A secret key generation means for generating a secret key that is required when taking out at least part of the u from the random number r defined by g r which can calculate the composite number as a modulo,
Verification means for verifying the ciphertext using the verification data;
Restoring means for restoring at least a part of the random number r at the time of decryption using the secret key generated by the secret key generating means and obtaining the plaintext m using at least a part of the restored random number r;
A communication system comprising:
合成数を法として計算できるgrで定義されるuから乱数rの少なくとも一部を取出す際に必要となる秘密鍵を生成する秘密鍵生成ステップと、
前記検証用データを用いて暗号文について検証を行う検証ステップと、
復号の際に乱数rの少なくとも一部を、前記秘密鍵生成手段によって生成された秘密鍵を用いて復元し、復元した乱数rの少なくとも一部を用いて平文mを求める復元ステップと、
を含むことを特徴とする通信方法。 A random number r with respect to disjoint g The composite number composite numbers in Moto modulo hidden as g r, at least a part is encrypted once plaintext m using a further ciphertext verification data of the random number r And an encryption step for performing partial pre-computation for encryption based on the composite number modulo,
A private key generation step of generating a secret key that is required when taking out at least part of the u from the random number r defined by g r which can calculate the composite number as a modulo,
A verification step of verifying the ciphertext using the verification data;
A restoration step of restoring at least part of the random number r at the time of decryption using the secret key generated by the secret key generation means, and obtaining the plaintext m using at least part of the restored random number r;
A communication method comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005042646A JP4758110B2 (en) | 2005-02-18 | 2005-02-18 | Communication system, encryption apparatus, key generation apparatus, key generation method, restoration apparatus, communication method, encryption method, encryption restoration method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005042646A JP4758110B2 (en) | 2005-02-18 | 2005-02-18 | Communication system, encryption apparatus, key generation apparatus, key generation method, restoration apparatus, communication method, encryption method, encryption restoration method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2006227411A true JP2006227411A (en) | 2006-08-31 |
JP4758110B2 JP4758110B2 (en) | 2011-08-24 |
Family
ID=36988822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005042646A Expired - Fee Related JP4758110B2 (en) | 2005-02-18 | 2005-02-18 | Communication system, encryption apparatus, key generation apparatus, key generation method, restoration apparatus, communication method, encryption method, encryption restoration method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4758110B2 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008135869A (en) * | 2006-11-27 | 2008-06-12 | Ntt Docomo Inc | Signature verifying device, encrypting device, signature verifying method and encrypting method |
JP2009033608A (en) * | 2007-07-30 | 2009-02-12 | Ntt Docomo Inc | Validity verification apparatus and method |
JP2011250335A (en) * | 2010-05-31 | 2011-12-08 | Hitachi Ltd | Efficient mutual authentication method, program, and device |
CN114978503A (en) * | 2022-05-23 | 2022-08-30 | 国汽智控(北京)科技有限公司 | Vehicle-mounted data storage method, vehicle-mounted data acquisition equipment and storage medium |
JP7318490B2 (en) | 2019-11-01 | 2023-08-01 | 富士通株式会社 | Cryptographic processing system and cryptographic processing method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002535878A (en) * | 1999-01-14 | 2002-10-22 | ジェムプリュス | Public and private key encryption method |
WO2005015462A1 (en) * | 2003-08-08 | 2005-02-17 | Koninklijke Philips Electronics N.V. | System for processing data and method thereof |
-
2005
- 2005-02-18 JP JP2005042646A patent/JP4758110B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002535878A (en) * | 1999-01-14 | 2002-10-22 | ジェムプリュス | Public and private key encryption method |
WO2005015462A1 (en) * | 2003-08-08 | 2005-02-17 | Koninklijke Philips Electronics N.V. | System for processing data and method thereof |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008135869A (en) * | 2006-11-27 | 2008-06-12 | Ntt Docomo Inc | Signature verifying device, encrypting device, signature verifying method and encrypting method |
JP2009033608A (en) * | 2007-07-30 | 2009-02-12 | Ntt Docomo Inc | Validity verification apparatus and method |
JP2011250335A (en) * | 2010-05-31 | 2011-12-08 | Hitachi Ltd | Efficient mutual authentication method, program, and device |
JP7318490B2 (en) | 2019-11-01 | 2023-08-01 | 富士通株式会社 | Cryptographic processing system and cryptographic processing method |
CN114978503A (en) * | 2022-05-23 | 2022-08-30 | 国汽智控(北京)科技有限公司 | Vehicle-mounted data storage method, vehicle-mounted data acquisition equipment and storage medium |
CN114978503B (en) * | 2022-05-23 | 2024-02-23 | 国汽智控(北京)科技有限公司 | Vehicle-mounted data storage method, vehicle-mounted data acquisition method, device and storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP4758110B2 (en) | 2011-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11552792B2 (en) | Systems and methods for generating signatures | |
CN108352015B (en) | Secure multi-party loss-resistant storage and encryption key transfer for blockchain based systems in conjunction with wallet management systems | |
JP4774492B2 (en) | Authentication system and remote distributed storage system | |
US7634085B1 (en) | Identity-based-encryption system with partial attribute matching | |
US9426131B2 (en) | Server apparatus and program to re-encrypt ciphertext data | |
US20110145576A1 (en) | Secure method of data transmission and encryption and decryption system allowing such transmission | |
JP5047638B2 (en) | Ciphertext decryption right delegation system | |
Khan et al. | Analysis of asymmetric cryptography in information security based on computational study to ensure confidentiality during information exchange | |
JP2016158189A (en) | Change direction with key control system and change direction with key control method | |
US20240097894A1 (en) | Threshold key exchange | |
CN111953479A (en) | Data processing method and device | |
CN110519226B (en) | Quantum communication server secret communication method and system based on asymmetric key pool and implicit certificate | |
JP4758110B2 (en) | Communication system, encryption apparatus, key generation apparatus, key generation method, restoration apparatus, communication method, encryption method, encryption restoration method | |
CN108599941A (en) | Random asymmetries expand byte encryption of communicated data method | |
Harn et al. | A novel threshold cryptography with membership authentication and key establishment | |
JP4563037B2 (en) | ENCRYPTION APPARATUS, DECRYPTION APPARATUS, ENCRYPTION SYSTEM HAVING THEM, ENCRYPTION METHOD, AND DECRYPTION METHOD | |
JP2006319485A (en) | Signature device, signature encryption device, verification device, decoding device, restoration device, information providing device, communication system, signature method, signature encryption method, and verification method | |
JP2005321719A (en) | Communication system, decrypting device, restoration device, key generation device, and communication method | |
JP3862397B2 (en) | Information communication system | |
Sahana Raj et al. | Identity based cryptography using matrices | |
JP3953235B2 (en) | Cryptographic communication method and cryptographic communication system | |
US20040111602A1 (en) | Public key cryptograph communication method | |
Singh et al. | Encryption algorithms with emphasis on probabilistic Encryption & time stamp in network security | |
JP3870753B2 (en) | Public Key Cryptography Considering Third Oracle | |
CN116599702A (en) | Data encryption hosting system and method based on blockchain |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20071121 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101102 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20101213 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101229 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110208 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110408 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110510 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110602 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4758110 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140610 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |