JP6563857B2 - Commitment system, common reference information generation device, commit generation device, commit reception device, commitment method, program - Google Patents
Commitment system, common reference information generation device, commit generation device, commit reception device, commitment method, program Download PDFInfo
- Publication number
- JP6563857B2 JP6563857B2 JP2016110377A JP2016110377A JP6563857B2 JP 6563857 B2 JP6563857 B2 JP 6563857B2 JP 2016110377 A JP2016110377 A JP 2016110377A JP 2016110377 A JP2016110377 A JP 2016110377A JP 6563857 B2 JP6563857 B2 JP 6563857B2
- Authority
- JP
- Japan
- Prior art keywords
- commit
- enc
- random number
- message
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Description
本発明は、情報セキュリティ技術に関するものであり、特に複数の暗号プロトコルの中に組み込まれ同時に動くような環境でもなお高い安全性を保つコミットメントに関する。 The present invention relates to information security technology, and more particularly to a commitment to maintain high security even in an environment in which a plurality of cryptographic protocols are incorporated and operate simultaneously.
暗号におけるコミットメントとは、電子的に行う「封じ手」のことである。コミットメント方式は、コミットする側の送信者(committer)と、コミットメントを受ける側の受信者(receiver)の間で行われるプロトコルのことである。送信者は、コミット(封じ手)フェーズで、受信者に情報を預託(コミット)する。このとき、受信者は預託された情報の中身を知ることができない(この性質を秘匿性という)。次に、送信者はデコミット(開封)フェーズで秘匿した情報を受信者に納得いく形で開示するが、コミットフェーズで預託した情報と違う情報を開示して受信者を満足させることはできない(この性質を拘束性という)。コミットメントは、基本的にこのような秘匿性と拘束性を満たさなければいけない。 A cryptographic commitment is an electronic “sealing hand”. The commitment method is a protocol performed between a committing sender (committer) and a commitment receiving receiver. The sender deposits (commits) information to the receiver in the commit (sealing) phase. At this time, the receiver cannot know the contents of the deposited information (this property is called confidentiality). Next, the sender discloses the information concealed in the decommitment (opening) phase in a form that is convincing to the receiver, but cannot disclose the information different from the information deposited in the commit phase to satisfy the receiver (this The property is called restraint). Commitment must basically satisfy such confidentiality and binding.
コミットメントのすぐ思いつく応用例は、電子的なジャンケンやコイン投げである。もちろん、将棋や碁に使う封じ手でもよい。簡単に思いつく例をいくつか挙げたが、実際に応用できる範囲はそれより遥かに広い。 An immediate application of commitment is electronic janken or coin throwing. Of course, it can also be a seal used for shogi or samurai. I've given some examples that you can easily think of, but the range of practical applications is far wider.
コミットメントは、最も基本的な暗号プロトコルであるため、上位の暗号プロトコルの中で頻繁に利用される。近年では、暗号プロトコルをより現実の環境に近づけるため、コミットメントはさらに複雑な組み合わせの中で利用される場合が増えてきた。しかし、複雑な組み合わせの中では、古典的暗号安全性モデルで作られたコミットメントは、秘匿性と拘束性を同時に満たすことができなくなってしまう。 Since commitment is the most basic cryptographic protocol, it is frequently used in higher-level cryptographic protocols. In recent years, commitments have been increasingly used in more complex combinations to bring cryptographic protocols closer to the real environment. However, in a complex combination, the commitment made with the classic cryptographic security model will not be able to satisfy both confidentiality and constraint at the same time.
汎用結合可能コミットメントとは、そのような複雑な組み合わせでコミットメントが利用された場合にも、秘匿性と拘束性を満たすよう設計されたコミットメントのことである(汎用結合可能性については非特許文献1を参照)。 A general-purpose combinable commitment is a commitment designed to satisfy confidentiality and restraint even when commitments are used in such a complex combination. See).
コミットメント方式の良し悪しは、計算量、通信量、交信回数に加え、CRS再利用型、適応的安全性、情報廃棄型・情報廃棄不要型、対話型・非対話型、離散対数(DL)型についても考慮する必要がある。以下、それぞれについて説明していく。 In addition to the amount of calculation, traffic, and number of communication, the commitment method is CRS reuse type, adaptive security, information discard type / information discard unnecessary type, interactive / non-interactive type, discrete logarithm (DL) type It is also necessary to consider. Each will be described below.
<CRS再利用型>
汎用結合可能コミットメントが構成できるためには、送信者と受信者の双方がアクセスできる(第三者の作った)共通参照情報(common reference string、以下、CRSと記す)が必要であることが知られている(非特許文献2参照)。技術的な問題により、このCRSは、コミットごとに使い捨てなければいけない場合(すなわち、コミットの回数だけ新しいCRSが必要となる場合)と、使い捨てずに同じCRSを再利用できる場合に分かれる。当然ながら、CRSをずっと使える「CRS再利用型」コミットメント方式の方が、実用性が高い。
<CRS reuse type>
It is known that in order to be able to construct a universal combinable commitment, it is necessary to have a common reference string (hereinafter referred to as CRS) that can be accessed by both the sender and receiver (made by a third party). (See Non-Patent Document 2). Due to technical problems, this CRS is divided into a case where it must be disposable for each commit (that is, a case where a new CRS is required for the number of commits) and a case where the same CRS can be reused without being disposable. Of course, the “CRS reuse type” commitment method that can use CRS all the time is more practical.
<適応的安全性・静的安全性>
汎用結合安全性を考えるとき、適応的安全性(adaptive security)を満たしているかというのは重要な目安になる。プロトコルの最中に攻撃者が自由にプロトコルの参加者の装置に侵入しデータを盗み出してしまえるような状況であったとしても(汎用結合)安全性を満たせるとき、そのプロトコルは適応的安全性を満たすという。適応的安全性は通常達成することが大変難しい。
<Adaptive safety / static safety>
When considering general joint security, whether adaptive security is satisfied is an important measure. A protocol is adaptive security if it can satisfy security (general-purpose combination) even if the attacker is free to infiltrate the protocol participants' devices and steal data during the protocol. Satisfy. Adaptive safety is usually very difficult to achieve.
一方、攻撃を受ける参加者が予め決まっている場合の安全性を、静的安全性(static security)という。静的安全性は適応的安全性より低いレベルの安全性である。
<情報廃棄型・情報廃棄不要型>
汎用結合可能コミットメントでは、送信者と受信者が、プロトコルの最中もしくは終了後、途中データを廃棄しないと安全性が担保出来ない方式と、廃棄しなくても安全性を担保できる方式が存在する。当然、後者の「情報廃棄不要型」の方が安全性が高く望ましい。
On the other hand, the security when the participant who is attacked is determined in advance is referred to as static security. Static safety is a lower level of safety than adaptive safety.
<Information disposal type / Information disposal unnecessary type>
In the universal combinable commitment, there are a method in which the sender and receiver cannot guarantee the security without discarding the data during or after the protocol, and a method in which the safety can be ensured without discarding. . Of course, the latter “information disposal-free type” is preferable because of its high safety.
<対話型・非対話型>
特に、送信者から受信者に送るだけでコミットメントが完成する方式を「非対話型」という。「非対話型」の方が実用上望ましい。
<Interactive and non-interactive>
In particular, a scheme in which a commitment is completed simply by sending from a sender to a receiver is called “non-interactive”. “Non-interactive” is more practical.
<離散対数(DL)型>
セキュリティパラメータを小さくできる、または構造が簡単などの理由で、(離散対数(DL)問題が成立すると思われるような)巡回群上でコミットメントが実装できることが望ましい。実際、現在もっとも効率の良いと思われている非特許文献3や非特許文献4に記載のコミットメントはいずれもDL型である。
<Discrete logarithm (DL) type>
It is desirable that the commitment can be implemented on a cyclic group (such that the discrete logarithm (DL) problem seems to hold) for reasons such as reducing security parameters or simplifying the structure. In fact, the commitments described in
効率のよいCRS再利用型で適応的安全な汎用結合可能コミットメントは、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8などがある。
Non-Patent
しかし、非特許文献5、非特許文献6、非特許文献8は、素因数分解型問題を安全性の基礎においているため、セキュリティパラメータが大きくなり、DL型問題に安全性の基礎をおく非特許文献3、非特許文献4より通信量と計算量で劣る。非特許文献7は、DL型問題に安全性の基礎をおくが、対称ペアリング(参考非特許文献1)上で構成されるため、セキュリティパラメータ長が素因数分解型と同じになりやはり効率で劣る。
(参考非特許文献1:David Freeman, Michael Scott and Edlyn Teske, “A taxonomy of pairing-friendly elliptic curves”, JOC, 23(2), pages 224-280, 2010.)
その他、非特許文献3、非特許文献4、非特許文献7は情報廃棄型であり、非特許文献5、非特許文献6、非特許文献8は情報廃棄不要型である。また、非特許文献4、非特許文献5、非特許文献6はコミットメントで三交信、非特許文献3は五交信が必要であり、非特許文献7、非特許文献8は非対話型である。
However, since Non-Patent
(Reference Non-Patent Document 1: David Freeman, Michael Scott and Edlyn Teske, “A taxonomy of pairing-friendly elliptic curves”, JOC, 23 (2), pages 224-280, 2010.)
In addition,
このように、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8の各方式を見てみるといずれも一長一短ある。しかし、実装面を考えると、通信量と計算量の点で非特許文献4の方式が最も効率のよい従来方式である。
As described above, each of the methods of Non-Patent
そこで本発明では、共通パラメータ長、通信量、計算量を削減することが可能となるCRS再利用型・適応的安全な汎用結合可能コミットメントシステムを提供することを目的とする。 Therefore, an object of the present invention is to provide a CRS reusable type, adaptively secure, and universally connectable commitment system that can reduce the common parameter length, communication amount, and calculation amount.
また、場合によっては、汎用結合可能コミットメントシステムに求められる安全性は、適応的安全性でなく、静的安全性で十分なときもある。 Also, in some cases, the safety required for a universal combinable commitment system is not adaptive security, but static safety is sufficient.
そこで本発明では、共通パラメータ長、通信量、計算量を削減することが可能となるCRS再利用型・静的安全な汎用結合可能コミットメントシステムを提供することを目的とする。 Therefore, an object of the present invention is to provide a CRS reusable and statically safe universally connectable commitment system that can reduce the common parameter length, communication amount, and calculation amount.
本発明の一態様は、共通参照情報生成装置と、コミット生成装置と、コミット受信装置とを含むコミットメントシステムであって、κをセキュリティパラメータ、λm(・),λc(・)をκの関数、H:{0,1}*→{0,1}λ_mを衝突困難ハッシュ関数、Kを公開鍵暗号PKEの鍵生成アルゴリズム、Eを公開鍵暗号PKEの暗号化アルゴリズム、Gentcを落し戸付きコミットメントTCOMの鍵生成アルゴリズム、Comtcを落し戸付きコミットメントTCOMの暗号化アルゴリズム、Lenc={(m,CT)|CT=Epk^enc(m,w)を満たすw∈COINpk^encが存在する}を公開鍵暗号PKEから定義される言語(ただし、COINpk^encは乱数空間)、PΣ comを言語Lenc上のシグマプロトコルΣの第一メッセージ生成アルゴリズム、PΣ ansを言語Lenc上のシグマプロトコルΣの第二メッセージ生成アルゴリズム、VΣ vrfyを言語Lenc上のシグマプロトコルΣの検証アルゴリズムとして、前記共通参照情報生成装置は、1κから、前記鍵生成アルゴリズムK、Gentcを用いて、2つの公開鍵と秘密鍵の組(pkenc,skenc)←K(1κ)、(pktc,sktc)←Gentc(1κ)を生成し、前記秘密鍵skenc、sktcを廃棄する鍵生成部と、前記公開鍵pkenc、pktc、前記ハッシュ関数Hを組にしたcrs=(pkenc,pktc,H)を共通参照情報として生成するCRS生成部とを含み、前記コミット生成装置は、乱数w←COINpk^enc(ただし、COINpk^encは乱数空間)を生成し、前記暗号化アルゴリズムEと前記公開鍵pkencを用いて、秘匿情報m∈MSPpk^enc(ただし、MSPpk^encは平文空間)から暗号化済秘匿情報CT=Epk^enc(m,w)を計算する秘匿情報暗号化部と、前記第一メッセージ生成アルゴリズムPΣ comを用いて、前記秘匿情報mと前記暗号化済秘匿情報CTの組(m,CT)と前記乱数wから第一メッセージ(α,ξ)←PΣ com((m,CT),w)を計算する第一メッセージ計算部と、前記ハッシュ関数Hと4つ組(sid,ssid,C,R)(ただし、sidはセッションID、ssidはサブセッションID、Cは前記コミット生成装置のID、Rは前記コミット受信装置のIDを示す有限のビット列)を用いて、前記秘匿情報m、前記暗号化済秘匿情報CT、前記第一メッセージの第1要素αからハッシュ値φ=H(sid,ssid,C,R,m,CT,α)を計算するハッシュ値計算部と、乱数rtc←COINpk^tc(ただし、COINpk^tcは乱数空間)を生成し、前記暗号化アルゴリズムComtcと前記公開鍵pktcを用いて、前記ハッシュ値φから暗号化済ハッシュ値Ψ=Comtc pk^tc (φ;rtc) を計算するハッシュ値暗号化部と、前記4つ組(sid,ssid,C,R)、前記暗号化済ハッシュ値Ψを前記コミット受信装置に送信する第一コミット部と、前記第二メッセージ生成アルゴリズムPΣ ansを用いて、前記秘匿情報mと前記暗号化済秘匿情報CTの組(m,CT)、前記乱数w、前記第一メッセージの第2要素ξ、前記コミット受信装置から受信した乱数εから第二メッセージγ=PΣ ans((m,CT),w,ξ,ε)を計算する第二メッセージ計算部と、前記乱数wと前記第一メッセージの第2要素ξを消去する消去部と、前記暗号化済秘匿情報CTを前記コミット受信装置に送信する第二コミット部と、前記秘匿情報mと前記第一メッセージの第1要素αと前記第二メッセージγと前記乱数rtcからなる4つ組(m,α,γ,rtc)を開示情報として前記コミット受信装置に送信する開示部とを含み、前記コミット受信装置は、前記コミット生成装置から受信した前記4つ組(sid,ssid,C,R)を検証し、問題なければ前記乱数ε←{0,1}λ_cを生成し、前記乱数εを前記コミット生成装置に送信する乱数生成部と、前記コミット生成装置から受信した前記4つ組(sid,ssid,C,R)、前記暗号化済秘匿情報CT、前記開示情報(m,α,γ,rtc)と前記ハッシュ関数Hを用いて、ハッシュ値φ’=H(sid,ssid,C,R,m,CT,α)を計算するハッシュ値計算部と、前記暗号化アルゴリズムComtcと前記検証アルゴリズムVΣ vrfyを用いて、前記ハッシュ値φ’、前記開示情報(m,α,γ,rtc)、前記暗号化済秘匿情報CT、前記乱数εからComtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))を計算し、前記暗号化済ハッシュ値Ψ=Comtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))=1が成立するか確認する開封部とを含む。 One aspect of the present invention is a commitment system including a common reference information generation device, a commit generation device, and a commit reception device, wherein κ is a security parameter, and λ m (·) and λ c (·) are κ Function, H: {0,1} * → {0,1} λ_m is a hash function that is difficult to collide, K is a key generation algorithm for public key cryptography PKE, E is an encryption algorithm for public key cryptography PKE, and Gen tc is dropped Key generation algorithm for Commitment Commit TCOM, encryption algorithm for Commitment TCOM with Com tc dropped, w ∈ COIN pk ^ enc satisfying L enc = {(m, CT) | CT = E pk ^ enc (m, w) Is a language defined from public key cryptography PKE (where COIN pk ^ enc is a random number space), and P Σ com is a language on the language L enc The first message generation algorithm bears protocol sigma, as validation algorithm Sigma protocol sigma on P sigma second message generation algorithm sigma protocol sigma of the linguistic L enc ans, V Σ vrfy language L enc, the common reference information The generation device uses the key generation algorithm K and Gen tc from 1 κ , and sets of two public keys and secret keys (pk enc , sk enc ) ← K (1 κ ), (pk tc , sk tc ) ← Gen tc (1 κ ) is generated, and the secret key sk enc and sk tc are discarded, and the public key pk enc and pk tc and the hash function H are combined into crs = (pk enc , pk tc, and a CRS generator for generating an H) as a common reference information, the commit generation device, the random number w ← COIN pk ^ e c (however, COIN pk ^ enc random number space) generate, by using the public key pk enc and the encryption algorithm E, confidential information m∈MSP pk ^ enc (However, MSP pk ^ enc is the plaintext space) The secret information encryption unit calculating the encrypted secret information CT = E pk ^ enc (m, w) and the first message generation algorithm P Σ com , and the secret information m and the encrypted secret information A first message calculation unit for calculating a first message (α, ξ) ← P Σ com ((m, CT), w) from a set (m, CT) of information CT and the random number w; Quadruple (sid, ssid, C, R) (where sid is the session ID, ssid is the sub-session ID, C is the ID of the commit generating device, and R is the ID of the commit receiving device) ) Using the secret information m, the encrypted secret information CT, and the first element α of the first message, the hash value φ = H (sid, ssid, C, R, m, CT, α) A hash value calculation unit that calculates the random number r tc ← COIN pk ^ tc (where COIN pk ^ tc is a random number space), and the hash is calculated using the encryption algorithm Com tc and the public key pk tc A hash value encryption unit for calculating an encrypted hash value Ψ = Com tc pk ^ tc (φ; r tc ) from the value φ, the four sets (sid, ssid, C, R), and the encrypted hash a first commit unit that transmits the value Ψ in the commit receiving apparatus, by using the second message generation algorithm P sigma ans, the confidential information m and the encrypted pre confidential information CT pairs (m, CT), prior to Random number w, the second element xi] of the first message, the second message from the random epsilon received from committing the receiving device γ = P Σ ans ((m , CT), w, ξ, ε) a second message to calculate the A calculation unit; an erasure unit that erases the random number w and the second element ξ of the first message; a second commit unit that transmits the encrypted confidential information CT to the commit receiver; and the confidential information m. A disclosure unit that transmits a set of four elements (m, α, γ, r tc ) including the first element α, the second message γ, and the random number r tc of the first message to the commit receiver as disclosure information. The commit reception device verifies the quadruplet (sid, ssid, C, R) received from the commit generation device, and if there is no problem, generates the random number ε ← {0, 1} λ_c , Random number ε A random number generation unit for transmitting device, the received from the commit generator quadruplet (sid, ssid, C, R ), the encrypted pre confidential information CT, the disclosure information (m, α, γ, r tc ) And the hash function H, a hash value calculator that calculates a hash value φ ′ = H (sid, ssid, C, R, m, CT, α), the encryption algorithm Com tc, and the verification algorithm Using V Σ vrfy, from the hash value φ ′, the disclosed information (m, α, γ, r tc ), the encrypted confidential information CT, and the random number ε, Com tc pk ^ tc (φ ′; r tc ) And V Σ vrfy ((m, CT), (α, ε, γ)), and the encrypted hash value Ψ = Com tc pk ^ tc (φ ′; r tc ) and V Σ vrfy (( m, CT), (α, ε, γ)) = 1 Including an opening portion.
本発明の一態様は、共通参照情報生成装置と、コミット生成装置と、コミット受信装置とを含むコミットメントシステムであって、κをセキュリティパラメータ、λm(・),λc(・)をκの関数、H:{0,1}*→{0,1}λ_mを衝突困難ハッシュ関数、Kを公開鍵暗号PKEの鍵生成アルゴリズム、Eを公開鍵暗号PKEの暗号化アルゴリズム、Gentcを落し戸付きコミットメントTCOMの鍵生成アルゴリズム、Comtcを落し戸付きコミットメントTCOMの暗号化アルゴリズム、Lenc={(m,CT)|CT=Epk^enc(m,w)を満たすw∈COINpk^encが存在する}を公開鍵暗号PKEから定義される言語(ただし、COINpk^encは乱数空間)、PΣ comを言語Lenc上のシグマプロトコルΣの第一メッセージ生成アルゴリズム、PΣ ansを言語Lenc上のシグマプロトコルΣの第二メッセージ生成アルゴリズム、VΣ vrfyを言語Lenc上のシグマプロトコルΣの検証アルゴリズムとして、前記共通参照情報生成装置は、1κから、前記鍵生成アルゴリズムK、Gentcを用いて、2つの公開鍵と秘密鍵の組(pkenc,skenc)←K(1κ)、(pktc,sktc)←Gentc(1κ)を生成し、前記秘密鍵skenc、sktcを廃棄する鍵生成部と、前記公開鍵pkenc、pktc、前記ハッシュ関数Hを組にしたcrs=(pkenc,pktc,H)を共通参照情報として生成するCRS生成部とを含み、前記コミット生成装置は、乱数w←COINpk^enc(ただし、COINpk^encは乱数空間)を生成し、前記暗号化アルゴリズムEと前記公開鍵pkencを用いて、秘匿情報m∈MSPpk^enc(ただし、MSPpk^encは平文空間)から暗号化済秘匿情報CT=Epk^enc(m,w)を計算する秘匿情報暗号化部と、4つ組(sid,ssid,C,R)(ただし、sidはセッションID、ssidはサブセッションID、Cは前記コミット生成装置のID、Rは前記コミット受信装置のIDを示す有限のビット列)、前記暗号化済秘匿情報CTを前記コミット受信装置に送信する第二コミット部と、前記第一メッセージ生成アルゴリズムPΣ comを用いて、前記秘匿情報mと前記暗号化済秘匿情報CTの組(m,CT)と前記乱数wから第一メッセージ(α,ξ)←PΣ com((m,CT),w)を計算する第一メッセージ計算部と、前記ハッシュ関数Hと前記(sid,ssid,C,R)を用いて、前記秘匿情報m、前記暗号化済秘匿情報CT、前記第一メッセージの第1要素αからハッシュ値φ=H(sid,ssid,C,R,m,CT,α)を計算するハッシュ値計算部と、乱数rtc←COINpk^tc(ただし、COINpk^tcは乱数空間)を生成し、前記暗号化アルゴリズムComtcと前記公開鍵pktcを用いて、前記ハッシュ値φから暗号化済ハッシュ値Ψ=Comtc pk^tc (φ;rtc) を計算するハッシュ値暗号化部と、前記暗号化済ハッシュ値Ψを前記コミット受信装置に送信する第一開示部と、前記第二メッセージ生成アルゴリズムPΣ ansを用いて、前記秘匿情報mと前記暗号化済秘匿情報CTの組(m,CT)、前記乱数w、前記第一メッセージの第2要素ξ、前記コミット受信装置から受信した乱数εから第二メッセージγ=PΣ ans((m,CT),w,ξ,ε)を計算する第二メッセージ計算部と、前記秘匿情報mと前記第一メッセージの第1要素αと前記第二メッセージγと前記乱数rtcからなる4つ組(m,α,γ,rtc)を第二開示情報として前記コミット受信装置に送信する第二開示部とを含み、前記コミット受信装置は、前記コミット生成装置から受信した前記4つ組(sid,ssid,C,R)を検証し、問題なければ前記乱数ε←{0,1}λ_cを生成し、前記乱数εを前記コミット生成装置に送信する乱数生成部と、前記コミット生成装置から受信した前記4つ組(sid,ssid,C,R)、前記暗号化済秘匿情報CT、前記開示情報(m,α,γ,rtc)と前記ハッシュ関数Hを用いて、ハッシュ値φ’=H(sid,ssid,C,R,m,CT,α)を計算するハッシュ値計算部と、前記暗号化アルゴリズムComtcと前記検証アルゴリズムVΣ vrfyを用いて、前記ハッシュ値φ’、前記開示情報(m,α,γ,rtc)、前記暗号化済秘匿情報CT、前記乱数εからComtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))を計算し、前記暗号化済ハッシュ値Ψ=Comtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))=1が成立するか確認する開封部とを含む。 One aspect of the present invention is a commitment system including a common reference information generation device, a commit generation device, and a commit reception device, wherein κ is a security parameter, and λ m (·) and λ c (·) are κ Function, H: {0,1} * → {0,1} λ_m is a hash function that is difficult to collide, K is a key generation algorithm for public key cryptography PKE, E is an encryption algorithm for public key cryptography PKE, and Gen tc is dropped Key generation algorithm for Commitment Commit TCOM, encryption algorithm for Commitment TCOM with Com tc dropped, w ∈ COIN pk ^ enc satisfying L enc = {(m, CT) | CT = E pk ^ enc (m, w) Is a language defined from public key cryptography PKE (where COIN pk ^ enc is a random number space), and P Σ com is a language on the language L enc The first message generation algorithm bears protocol sigma, as validation algorithm Sigma protocol sigma on P sigma second message generation algorithm sigma protocol sigma of the linguistic L enc ans, V Σ vrfy language L enc, the common reference information The generation device uses the key generation algorithm K and Gen tc from 1 κ , and sets of two public keys and secret keys (pk enc , sk enc ) ← K (1 κ ), (pk tc , sk tc ) ← Gen tc (1 κ ) is generated, and the secret key sk enc and sk tc are discarded, and the public key pk enc and pk tc and the hash function H are combined into crs = (pk enc , pk tc, and a CRS generator for generating an H) as a common reference information, the commit generation device, the random number w ← COIN pk ^ e c (however, COIN pk ^ enc random number space) generate, by using the public key pk enc and the encryption algorithm E, confidential information m∈MSP pk ^ enc (However, MSP pk ^ enc is the plaintext space) Secret information encryption unit for calculating encrypted secret information CT = E pk ^ enc (m, w) and quadruple (sid, ssid, C, R) (where sid is the session ID and ssid is the sub A session ID, C is an ID of the commit generating device, R is a finite bit string indicating the ID of the commit receiving device), a second commit unit that transmits the encrypted confidential information CT to the commit receiving device, Using a message generation algorithm P Σ com , the first message (α, ξ) from the set (m, CT) of the secret information m and the encrypted secret information CT and the random number w ) ← P Σ com ((m , CT), using a first message calculation unit for calculating a w), the said hash function H to (sid, ssid, C, R ), the confidential information m, the cryptographic Hidden secret information CT, a hash value calculator for calculating a hash value φ = H (sid, ssid, C, R, m, CT, α) from the first element α of the first message, and a random number r tc ← COIN pk ^ tc (where COIN pk ^ tc is a random number space), and using the encryption algorithm Com tc and the public key pk tc , an encrypted hash value Ψ = Com tc pk ^ using the hash value encryption section for calculating a; (r tc φ), a first disclosure unit that transmits the cryptographic haze hash value Ψ in the commit receiving device, the second message generation algorithm P sigma ans tc , A set (m, CT) of the secret information m and the encrypted secret information CT, the random number w, a second element ξ of the first message, a random number ε received from the commit receiver, and a second message γ = A second message calculation unit for calculating P Σ ans ((m, CT), w, ξ, ε), the secret information m, the first element α of the first message, the second message γ, and the random number r. a second disclosure unit that transmits a quadruple (m, α, γ, r tc ) composed of tc as second disclosure information to the commit reception device, wherein the commit reception device has received from the commit generation device A random number generation unit that verifies the quadruplet (sid, ssid, C, R), generates the random number ε ← {0, 1} λ_c if there is no problem, and transmits the random number ε to the commit generation device; Before received from the commit generator Quadruplet (sid, ssid, C, R ), the encrypted pre confidential information CT, the disclosure information (m, α, γ, r tc) using said hash function H, the hash value φ '= H ( sid, ssid, C, R, m, CT, α), the hash value φ ′ and the disclosure information (using the encryption algorithm Com tc and the verification algorithm V Σ vrfy ). m, α, γ, r tc ), the encrypted confidential information CT, and the random number ε, Com tc pk ^ tc (φ ′; r tc ) and V Σ vrfy ((m, CT), (α, ε, γ)) is calculated, and the encrypted hash value Ψ = Com tc pk ^ tc (φ ′; r tc ) and V Σ vrfy ((m, CT), (α, ε, γ)) = 1 holds. Including an unsealed portion for confirming whether or not to perform.
本発明によれば、CRS再利用型・適応的安全な汎用結合可能コミットメント及びCRS再利用型・静的安全な汎用結合可能コミットメントにおいて、共通パラメータ長、通信量、計算量を削減することが可能となる。 According to the present invention, it is possible to reduce the common parameter length, the communication amount, and the calculation amount in the CRS reuse type / adaptive safe general-purpose joinable commitment and the CRS reuse type / static secure general-purpose joinable commitment. It becomes.
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。 Hereinafter, embodiments of the present invention will be described in detail. In addition, the same number is attached | subjected to the structure part which has the same function, and duplication description is abbreviate | omitted.
<本願発明の要点>
現時点において最も効率がよいと考えられるCRS再利用型・適応的安全な汎用結合可能コミットメントである非特許文献4は、選択暗号文攻撃に強い公開鍵暗号Cramer-Shoup暗号(参考非特許文献2)とPedersenトラップドアコミットメント(参考非特許文献3)とシグマプロトコル(参考非特許文献4)を組み合わせることで構成される。
(参考非特許文献2:Ronald Cramer and Victor Shoup, “A practical public key cryptosystem provably secure against adaptive chosen ciphertext attack”, In Hugo Krawczyk, editor, CRYPTO '98, volume 1462 of Lecture Notes in Computer Science, pages 13-25, Springer, Heidelberg, 1998.)
(参考非特許文献3:Torben P. Pedersen, “Non-interactive and information-theoretic secure verifiable secret sharing”, In Joan Feigenbaum, editor, CRYPTO '91, volume 576 of Lecture Notes in Computer Science, pages 129-140, Springer, Heidelberg, 1991.)
(参考非特許文献4:R. Cramer, I. Damgard and B. Schoenmakers,“Proofs of partial knowledge and simplified design of witness hiding protocols”, In Yvo G. Desmedt, editor, CRYPTO '94, volume 839 of Lecture Notes in Computer Science, pages 174-187, Springer, Heidelberg, 1994.)
本願発明では、選択暗号文攻撃より弱い公開鍵暗号を使い、さらに2つ使われていたPedersenトラップドアコミットメントを1つにして構成することにより、コミットメントの安全性は落とさずに、共通パラメータ長、通信量、計算量を削減する。
<Key points of the present invention>
(Reference Non-Patent Document 2: Ronald Cramer and Victor Shoup, “A practical public key cryptosystem provably secure against adaptive chosen ciphertext attack”, In Hugo Krawczyk, editor, CRYPTO '98, volume 1462 of Lecture Notes in Computer Science, pages 13- 25, Springer, Heidelberg, 1998.)
(Reference Non-Patent Document 3: Torben P. Pedersen, “Non-interactive and information-theoretic secure verifiable secret sharing”, In Joan Feigenbaum, editor, CRYPTO '91, volume 576 of Lecture Notes in Computer Science, pages 129-140, (Springer, Heidelberg, 1991.)
(Reference Non-Patent Document 4: R. Cramer, I. Damgard and B. Schoenmakers, “Proofs of partial knowledge and simplified design of witness hiding protocols”, In Yvo G. Desmedt, editor, CRYPTO '94, volume 839 of Lecture Notes in Computer Science, pages 174-187, Springer, Heidelberg, 1994.)
In the present invention, by using public key cryptography weaker than the selected ciphertext attack and further comprising two Pedersen trapdoor commitments that have been used, the common parameter length is reduced without compromising the safety of the commitment. Reduce the amount of communication and calculation.
また、別の本願発明では、上記本願発明におけるコミット情報や開示情報の送信順番を換えることにより、コミットメントの安全性を静的安全にしたコミットメントを実現する。当該コミットメントも従来方法に比して共通パラメータ長、通信量、計算量を削減したものとなる。 In another invention of the present application, a commitment in which the safety of the commitment is made statically safe is realized by changing the transmission order of the commit information and the disclosed information in the invention of the present application. This commitment also has a reduced common parameter length, communication volume, and calculation volume compared to the conventional method.
<準備>
実施形態の説明に先立って、この明細書で用いる記法、用語等について説明する。
<Preparation>
Prior to the description of the embodiments, notations, terms and the like used in this specification will be described.
[記法等]
^(キャレット)は上付き添字を表す。例えば、xy^zはyzがxに対する上付き添字であり、xy^zはyzがxに対する下付き添字であることを表す。また、_(アンダースコア)は下付き添字を表す。例えば、xy_zはyzがxに対する上付き添字であり、xy_zはyzがxに対する下付き添字であることを表す。
[Notation etc.]
^ (Caret) represents a superscript. For example, x y ^ z represents that yz is a subscript to x, and x y ^ z represents yz is a subscript to x. _ (Underscore) represents a subscript. For example, xy_z represents that yz is a superscript to x, and xy_z represents that yz is a subscript to x.
アルゴリズムMが確率的(probablistic)であるとは、Mの出力yが入力xとMの内部乱数(内部コイン投げ)rによって決定されるときにいう。すなわち、Mは二入力関数としてM(x;r)=yと書ける。確定的(deterministic)なアルゴリズムは、内部コインのない確率的なアルゴリズムの特別な場合として定義できる。以下、y←M(x)と書くと、確率空間M(x)から確率変数yを選んできた試行を意味する。一方、y=M(x;r)と書くときは、Mを(確定的な)関数とみている。また、集合Xに対して、x←Xと書くと、集合Xから一様ランダムに確率変数xを選んできた試行を意味する。 The algorithm M is probabilistic when the output y of M is determined by the input x and the internal random number (internal coin throw) r of M. That is, M can be written as M (x; r) = y as a two-input function. A deterministic algorithm can be defined as a special case of a stochastic algorithm without internal coins. Hereinafter, writing y ← M (x) means a trial in which the random variable y has been selected from the probability space M (x). On the other hand, when y = M (x; r) is written, M is regarded as a (deterministic) function. If x ← X is written for the set X, it means a trial in which the random variable x is selected from the set X uniformly and randomly.
κをセキュリティパラメータ、λm(・),λc(・)をκの関数とする。しばしば、λm(κ)=κ,λc(κ)=κである。
H:{0,1}*→{0,1}λ_mを衝突困難ハッシュ関数とする。
Let κ be a security parameter, and λ m (•) and λ c (•) be a function of κ. Often λ m (κ) = κ, λ c (κ) = κ.
H: {0, 1} * → {0, 1} Let λ_m be a collision- resistant hash function.
[公開鍵暗号]
公開鍵暗号PKE=(K,E,D)は、次の3つのアルゴリズムから定義される。
[Public key encryption]
Public key encryption PKE = (K, E, D) is defined by the following three algorithms.
<K:鍵生成アルゴリズム>
入力:セキュリティパラメータ1κ
出力:公開鍵と秘密鍵の組(pkenc,skenc)←K(1κ)
<K: Key generation algorithm>
Input:
Output: Public key and private key pair (pk enc , sk enc ) ← K (1 κ )
<E:暗号化アルゴリズム>
入力:pkenc,平文m∈MSPpk^enc(ただし、MSPpk^encは平文生成のための集合(以下、平文空間という))
出力:CT=Epk^enc(m;w)(ただし、wは内部乱数)
<E: Encryption algorithm>
Input: pk enc , plaintext m∈MSP pk ^ enc (where MSP pk ^ enc is a set for generating plaintext (hereinafter referred to as plaintext space))
Output: CT = E pk ^ enc (m; w) (W is an internal random number)
<D:復号アルゴリズム>
入力:skenc,CT
出力:m=Dsk^enc(CT)
<D: Decoding algorithm>
Input: sk enc , CT
Output: m = D sk ^ enc (CT)
[落し戸付きコミットメント(トラップドアコミットメント)]
落し戸付きコミットメントTCOM=(Gentc,Comtc,TComtc,TColtc)とは、次の4つのアルゴリズムからなるコミットメントである(参考非特許文献5)。
(参考非特許文献5:Gilles Brassard, David Chaum and Claude Crepeau, ”Minimum disclosure proofs of knowledge”, Journal of Computer and System Sciences (JCSS), 37(2), pages 156-189, October 1988.)
[Commitment with trapdoor (trapdoor commitment)]
Commitment with trapdoors TCOM = (Gen tc , Com tc , TCom tc , TCol tc ) is a commitment composed of the following four algorithms (Reference Non-Patent Document 5).
(Reference Non-Patent Document 5: Gilles Brassard, David Chaum and Claude Crepeau, “Minimum disclosure proofs of knowledge”, Journal of Computer and System Sciences (JCSS), 37 (2), pages 156-189, October 1988.)
<Gentc: 確率的アルゴリズム>
入力:セキュリティパラメータ1κ
出力:公開鍵と秘密鍵の組(pktc,sktc)←Gentc(1κ)
以下では、Gentcを鍵生成アルゴリズムともいうことにする。
<Gen tc : Stochastic algorithm>
Input:
Output: Public key and private key pair (pk tc , sk tc ) ← Gen tc (1 κ )
Hereinafter, Gen tc is also referred to as a key generation algorithm.
<Comtc:確率的アルゴリズム>
入力:pktc,平文φ∈{0,1}λ_m
出力:c=Comtc pk^tc(φ;rtc)(ただし、rtcは内部乱数)
以下では、Comtcを暗号化アルゴリズムともいうことにする。
<Com tc : Stochastic algorithm>
Input: pk tc , plaintext φ∈ {0,1} λ_m
Output: c = Com tc pk ^ tc (φ; r tc ) (where r tc is an internal random number)
Hereinafter, Com tc is also referred to as an encryption algorithm.
<TComtc:確率的アルゴリズム>
入力:sktc,1κ
出力:(c,ξ)←TComtc sk^tc(1κ)
<TCom tc : Stochastic algorithm>
Input: sk tc , 1 κ
Output: (c, ξ) ← TCom tc sk ^ tc (1 κ )
<TColtc:確定的アルゴリズム>
入力:sktc,(c,ξ),φ∈{0,1}λ_m
出力:r=TColtc sk^tc(c,ξ,φ)
もし、(pktc,sktc)∈Gentc,(c,ξ)∈ TComtc sk^tc(1κ)であるならば、任意のφ∈{0,1}*に対して、r=TColtc sk^tc(c,ξ,φ)は、c=Comtc pk^tc(φ;r)という条件を満たすとする。
<TCol tc : deterministic algorithm>
Input: sk tc , (c, ξ), φ∈ {0, 1} λ_m
Output: r = TCol tc sk ^ tc (c, ξ, φ)
If (pk tc , sk tc ) ∈ Gen tc , (c, ξ) ∈ TCom tc sk ^ tc (1 κ ), then for any φ∈ {0, 1} * , r = TCol It is assumed that tc sk ^ tc (c, ξ, φ) satisfies the condition c = Com tc pk ^ tc (φ; r).
落し戸付きコミットメントTCOMはさらに次のような条件を満たす。
1. pktcが与えられたとき、Comtc pk^tc(φ;rtc)=Comtc pk^tc(φ’;rtc’)となる(φ,rtc)≠(φ’,rtc’)を計算することは難しい。
2. すべての(pktc,φ)に対して、(c,φ,rtc)を次の二通りのやり方で作っても分布は同じである。ただし、COINpk^tcは乱数生成のための集合(以下、乱数空間という)である。
The trapdoor commitment TCOM further satisfies the following conditions:
1. When pk tc is given, Com tc pk ^ tc (φ; r tc ) = Com tc pk ^ tc (φ ′; r tc ′) (φ, r tc ) ≠ (φ ′, r tc ′) Is difficult to calculate.
2. For all (pk tc , φ), the distribution is the same even if (c, φ, r tc ) is made in the following two ways. However, COIN pk ^ tc is a set for random number generation (hereinafter referred to as random number space).
1)rtc←COINpk^tc;c=Comtc pk^tc(φ;rtc)
2)(c,ξ)←TComtc sk^tc(1κ);rtc=TColtc sk^tc(c,ξ,φ)
DL型の落し戸付きコミットメントの実例としてPedersenのコミットメント(参考非特許文献3)がある。
1) r tc <-COIN pk ^ tc ; c = Com tc pk ^ tc (φ; r tc )
2) (c, ξ) ← TCom tc sk ^ tc (1 κ ); r tc = TCol tc sk ^ tc (c, ξ, φ)
Pedersen's commitment (Reference Non-Patent Document 3) is an example of a DL type trapdoor commitment.
[シグマプロトコル]
言語L={x|(x,w)∈R}をNP言語とする(ただし、二項関係RはNP関係とする)。言語L上のシグマプロトコルΣ=(PΣ com,PΣ ans,VΣ vrfy,simPΣ com)は、次の4つのアルゴリズムから定義される。
[Sigma protocol]
The language L = {x | (x, w) εR} is an NP language (where the binary relation R is an NP relation). The sigma protocol Σ = (P Σ com , P Σ ans , V Σ vrfy , sim P Σ com ) on the language L is defined by the following four algorithms.
<PΣ com:確率的アルゴリズム>
入力:(x,w)∈R
出力:(α,ξ)←PΣ com(x,w)
以下では、PΣ comを第一メッセージ生成アルゴリズムともいうことにする。
<P Σ com: stochastic algorithm>
Input: (x, w) ∈ R
Output: (α, ξ) ← P Σ com (x, w)
Hereinafter, P Σ com is also referred to as a first message generation algorithm.
<PΣ ans:確定的アルゴリズム>
入力:(x,w)∈R,ξ,ε∈{0,1}λ_c
出力:γ=PΣ ans(x,w,ξ,ε)
以下では、PΣ ansを第二メッセージ生成アルゴリズムともいうことにする。
<P Σ ans : deterministic algorithm>
Input: (x, w) ∈ R, ξ, ∈ ∈ {0, 1} λ_c
Output: γ = P Σ ans (x, w, ξ, ε)
Hereinafter, P Σ ans is also referred to as a second message generation algorithm.
<VΣ vrfy:確定的アルゴリズム>
入力:x∈L,(α,ε,γ)
出力:0/1(ただし、1は受理、0は不受理を表す)
以下では、VΣ vrfyを検証アルゴリズムともいうことにする。
<V Σ vrfy : deterministic algorithm>
Input: xεL, (α, ε, γ)
Output: 0/1 (where 1 represents acceptance, 0 represents non-acceptance)
Hereinafter, V Σ vrfy is also referred to as a verification algorithm.
<simPΣ com:確率的アルゴリズム>
入力:x∈L,ε
出力:(α,γ)←simPΣ com(x,ε)
シグマプロトコルΣは、次のような条件を満たす(詳細は参考非特許文献4を参照)。
1. すべての(x,w)∈Rに対して、
<SimP Σ com: stochastic algorithm>
Input: xεL, ε
Output: (α, γ) ← simP Σ com (x, ε)
The sigma protocol Σ satisfies the following conditions (refer to
1. For all (x, w) ∈R,
この式は、(x,w)に対して、(α,ξ)←PΣ com(x,w)、ε←{0,1}λ_c、γ=PΣ ans(x,w,ξ,ε)の順で試行等を進めていくと、(α,ε,γ)がVΣ vrfyに受理される確率が1になることを示している。
2. ε≠ε’なる(α,ε,γ)と(α,ε’,γ’)が共にVΣ vrfyに受理される(すなわち、VΣ vrfy(x,(α,ε,γ))=1かつVΣ vrfy(x,(α,ε’,γ’))=1が成立する)場合、x∈Lである。
3. すべての(x,w)∈Rに対して、(α,ε,γ)を次の二通りのやり方で作っても分布は同じである。
This equation is expressed as (α, ξ) ← P Σ com (x, w), ε ← {0, 1} λ_c , γ = P Σ ans (x, w, ξ, ε) It is shown that the probability that (α, ε, γ) is accepted by V Σ vrfy becomes 1 when trials and the like are advanced in the order of).
2. epsilon ≠ epsilon 'becomes (α, ε, γ) and (α, ε', γ ' ) is accepted in the V sigma vrfy together (i.e., V Σ vrfy (x, ( α, ε, γ)) = 1 And if V Σ vrfy (x, (α, ε ′, γ ′)) = 1 holds), x∈L.
3. Even if (α, ε, γ) is made in the following two ways for all (x, w) εR, the distribution is the same.
1)(α,ξ)←PΣ com(x,w);ε←{0,1}λ_c;γ=PΣ ans(x,w,ξ,ε)
2)ε←{0,1}λ_c;(α,γ)←simPΣ com(x,ε)
1) (α, ξ) ← P Σ com (x, w); ε ← {0, 1} λ_c ; γ = P Σ ans (x, w, ξ, ε)
2) ε ← {0, 1} λ_c ; (α, γ) ← simP Σ com (x, ε)
[公開鍵暗号から定義される言語]
公開鍵暗号PKE=(K,E,D)から定義される言語Lencを以下のように定義する。
Lenc={(m,CT)|CT=Epk^enc(m,w)を満たすw∈COINpk^encが存在する}
[Language defined from public key cryptography]
The language L enc defined from the public key encryption PKE = (K, E, D) is defined as follows.
L enc = {(m, CT) | CT = E pk ^ enc (m, w) satisfies w∈COIN pk ^ enc }
<実施形態1>
以下、図1〜図7を参照してコミットメントシステム100について説明する。図1は、コミットメントシステム100の構成を示すブロック図である。図2は、共通参照情報生成装置200の構成を示すブロック図である。図3は、共通参照情報生成装置200の動作を示すフローチャートである。図4は、コミット生成装置300の構成を示すブロック図である。図5は、コミット受信装置400の構成を示すブロック図である。図6は、コミットフェーズのシークエンス図である。図7は、デコミットフェーズのシークエンス図である。
<
Hereinafter, the commitment system 100 will be described with reference to FIGS. FIG. 1 is a block diagram showing a configuration of the commitment system 100. FIG. 2 is a block diagram illustrating a configuration of the common reference
図1に示すように、コミットメントシステム100は、共通参照情報生成装置200と、コミット生成装置300と、コミット受信装置400を含む。共通参照情報生成装置200、コミット生成装置300、コミット受信装置400の各装置はネットワーク800(例:インターネット)に接続しており、相互に通信することが可能である。図2に示すように、共通参照情報生成装置200は、鍵生成部210と、CRS生成部220と、ハッシュ関数記録部290を含む。図4に示すように、コミット生成装置300は、秘匿情報暗号化部305と、第一メッセージ計算部310と、ハッシュ値計算部315と、ハッシュ値暗号化部320と、第一コミット部325と、第二メッセージ計算部330と、消去部335と、第二コミット部340と、開示部350と、通信部380と、開示情報記録部390を含む。図5に示すように、コミット受信装置400は、乱数生成部405と、ハッシュ値計算部450と、開封部455と、通信部480と、コミット情報記録部490を含む。
As illustrated in FIG. 1, the commitment system 100 includes a common reference
[CRSの生成]
共通参照情報生成装置200は、セキュリティパラメータ1κから共通参照情報crsを生成する。鍵生成部210は、セキュリティパラメータ1κから、公開鍵暗号PKEの鍵生成アルゴリズムKと落し戸付きコミットメントTCOMの鍵生成アルゴリズムGentcを用いて、(pkenc,skenc)←K(1κ)と(pktc,sktc)←Gentc(1κ)を生成し、skencとsktcを廃棄する(S210)。
[CRS generation]
The common reference
CRS生成部220は、ハッシュ関数記録部290に記録してあるハッシュ関数H:{0,1}*→{0,1}λ_mを読出し、crs=(pkenc,pktc,H)を共通参照情報(CRS)として生成し、出力する(S220)。共通参照情報crsは、コミット生成装置300、コミット受信装置400から取得できるように公開される。あるいは、共通参照情報生成装置200が、コミット生成装置300、コミット受信装置400にcrsを送信するのでもよい。いずれにしてもコミットフェーズ開始時には、コミット生成装置300、コミット受信装置400はcrsを保持している。
The
[コミット(封じ手)フェーズ]
本実施形態のコミットメントはコミット生成装置300とコミット受信装置400の3交信からなるプロトコルである。
[Commit (sealing) phase]
The commitment of the present embodiment is a protocol composed of three communications between the commit
コミット生成装置300の秘匿情報暗号化部305は、コミットする秘匿情報m∈MSPpk^encを入力としてとり、乱数w←COINpk^encを発生させ、公開鍵暗号PKEの暗号化アルゴリズムE、crsの第1要素であるpkencを用いて、暗号化済秘匿情報CT=Epk^enc(m,w)を計算する(S305)。ただし、MSPpk^encは平文空間、COINpk^encは乱数空間である。
The secret information encryption unit 305 of the commit
なお、秘匿情報mとS305で計算したCTの組(m,CT)はLenc={(m,CT)|CT=Epk^enc(m,w)を満たすw∈COINpk^encが存在する}で定義される言語Lencの元となる。 In addition, the set (m, CT) of the secret information m and the CT calculated in S305 has w∈COIN pk ^ enc that satisfies L enc = {(m, CT) | CT = E pk ^ enc (m, w) Is the source of the language L enc defined by
コミット生成装置300の第一メッセージ計算部310は、言語Lenc上のシグマプロトコルΣの第一メッセージ生成アルゴリズムPΣ comを用いて、言語Lencの元(m,CT)に対するシグマプロトコルΣの第一メッセージ(α,ξ)←PΣ com((m,CT),w)を計算する(S310)。ここで、wは、CT=Epk^enc(m,w)を満たすCOINpk^encの元であり、S305で発生させた乱数wである。
The first message calculation unit 310 of the commit
コミット生成装置300のハッシュ値計算部315は、crsの第3要素であるハッシュ関数Hを用いて、ハッシュ値φ=H(sid,ssid,C,R,m,CT,α)を計算する(S315)。sidはセッションID、ssidはサブセッションID、Cはコミット生成装置300のID、Rはコミット受信装置400のIDであり、それぞれ有限のビット列で表される。
The hash value calculation unit 315 of the commit
コミット生成装置300のハッシュ値暗号化部320は、乱数rtc←COINpk^tcを発生させ、落し戸付きコミットメントTCOMの暗号化アルゴリズムComtc、crsの第2要素であるpktcを用いて、暗号化済ハッシュ値Ψ=Comtc pk^tc (φ;rtc) を計算する(S320)。ただし、COINpk^tcは乱数空間である。
The hash value encryption unit 320 of the commit
コミット生成装置300の第一コミット部325は、IDの4つ組(sid,ssid,C,R)と暗号化済ハッシュ値Ψをコミット受信装置400に送信(S325)、コミット受信装置400は、通信部480を用いて、(sid,ssid,C,R)とΨを受信する(S480−1)。
The first commit unit 325 of the commit
コミット受信装置400の乱数生成部405は、(sid,ssid,C,R)を検証し、問題なければ乱数ε←{0,1}λ_cを発生させ、コミット生成装置300に送信する(S405)。コミット生成装置300は、通信部380を用いて、εを受信する(S380−1)。
The random
コミット生成装置300の第二メッセージ計算部330は、言語Lenc上のシグマプロトコルΣの第二メッセージ生成アルゴリズムPΣ ansを用いて、言語Lencの元(m,CT)に対するシグマプロトコルΣの第二メッセージγ=PΣ ans((m,CT),w,ξ,ε)を計算する(S330)。ここで、ξはS310で計算した第一メッセージの第2要素である。
The second message calculation unit 330 of the commit
コミット生成装置300の消去部335は、乱数w,第一メッセージの第2要素ξを消去する(S335)。
The erasure unit 335 of the commit
コミット生成装置300の第二コミット部340は、暗号化済秘匿情報CTをコミット受信装置400に送信(S340)、コミット受信装置400は、通信部480を用いて、暗号化済秘匿情報CTを受信し、コミット受信装置400はデコミットフェーズのための受理状態になる(S480−2)。
The second commit unit 340 of the commit
コミット生成装置300は、秘匿情報m、第一メッセージの第1要素α、第二メッセージγ、乱数rtcからなる4つ組(m,α,γ,rtc)を開示情報として開示情報記録部390に記録する(S390)。また、コミット受信装置400は、暗号化済秘匿情報CT、暗号化済ハッシュ値Ψ、乱数εからなる3つ組(CT,Ψ,ε)をコミット情報としてコミット情報記録部490に記録する(S490)。
The commit
[デコミット(開封)フェーズ]
本実施形態のデコミットメントはコミット生成装置300がコミット受信装置400に開示情報を送りつけ、コミット受信装置400がそれを受理するか拒否するかを判定する非対話型プロトコルである。
[Decommit (open) phase]
The decommitment of the present embodiment is a non-interactive protocol in which the commit
コミット生成装置300の開示部350は、開示情報記録部390に記録しておいた開示情報(m,α,γ,rtc)をコミット受信装置400に送信(S350)、コミット受信装置400は、通信部480を用いて、開示情報(m,α,γ,rtc)を受信する(S480−3)。
The disclosure unit 350 of the commit
コミット受信装置400のハッシュ値計算部450は、crsの第3要素であるハッシュ関数Hを用いて、ハッシュ値φ’= H(sid,ssid,C,R,m,CT,α)を計算し復元する(S450)。なお、(sid,ssid,C,R)はコミットフェーズにおいてコミット生成装置300から受信し、保持しておいたものである。また、CTはコミット情報記録部490に記録したコミット情報(CT,Ψ,ε)の第1要素である。
The hash
コミット受信装置400の開封部455は、落し戸付きコミットメントTCOMの暗号化アルゴリズムComtcと言語Lenc上のシグマプロトコルΣの検証アルゴリズムVΣ vrfyを用いて、Comtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))を計算し、Ψ=Comtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))=1が成立するか確認する(S455)。上記2式が成立することが確認されれば開封が正常に行われたと判断し承認する。一方、それ以外の場合、開封を拒絶する。なお、m,α,γ,rtcはS480−3で受信した開示情報(m,α,γ,rtc)の各要素、CT,Ψ,εはコミット情報記録部490に記録したコミット情報(CT,Ψ,ε)の各要素である。
なお、(sid,ssid,C,R)をコミット生成装置300で保持しておき、S350で改めて(sid,ssid,C,R)をコミット生成装置300からコミット受信装置400に送信するようにしてもよい。
Note that (sid, ssid, C, R) is held in the commit
<実施形態2>
実施形態1は、CRS再利用型・適応的安全な汎用結合コミットメントの一般的構成法である。そこで、実施形態2では、以下の通り、巡回群Gを用いて実施形態1を具体化する。
<
The first embodiment is a general configuration method of a CRS reuse type and adaptive secure general-purpose combined commitment. Therefore, in the second embodiment, the first embodiment is embodied using the cyclic group G as follows.
[記号等]
まず、次のように記号を定義する。
[Symbols, etc.]
First, symbols are defined as follows.
gを位数qの巡回群Gの生成元とする。また、κ=log2(q)とする。群演算は、乗法で記述する。gがGの生成元であるので、任意のa,b∈Gに対して、a=gx,b=gyとなるx,y∈Z/qZが存在し、a・b=gx+y∈Gである。 Let g be a generator of a cyclic group G of order q. Further, κ = log 2 (q). Group operations are described by multiplication. Since g is a generator of G, there exists x, yεZ / qZ such that a = g x , b = g y for any a, bεG, and a · b = g x + y ε G.
また、λm,λc≦κとする。 Further, it is assumed that λ m and λ c ≦ κ.
さらに、H’:{0,1}*→Z/qZを有限長のビット列x∈{0,1}*をZ/qZの元にハッシュするハッシュ関数とする。 Further, H ′: {0,1} * → Z / qZ is a hash function that hashes a finite-length bit string x∈ {0,1} * based on Z / qZ.
[公開鍵暗号]
公開鍵暗号PKE=(K,E,D)は、以下のような暗号である。
[Public key encryption]
The public key cipher PKE = (K, E, D) is the following cipher.
<K>
入力:1κ(ただし、κ=log2(q))
出力:xe←Z/qZをランダムに取ってきて、Ye=gx_eを計算する。Ze,Ze’←Gをランダムに取ってくる。(pkenc,skenc)=((Ye,Ze,Ze’),xe)とし、(pkenc,skenc)を出力する。
<K>
Input: 1 κ (where κ = log 2 (q))
Output: x e ← Z / qZ is taken at random, and Y e = g x_e is calculated. Z e , Z e '← G is taken at random. (Pk enc , sk enc ) = ((Y e , Z e , Z e ′), x e ), and (pk enc , sk enc ) is output.
<E>
入力:pkenc,平文m∈G
出力:乱数w←COINpk^encを生成し、t=H’(sid,ssid,C,R,gw)を計算し、CT=(gw,(Ze tZe’)w,m・Ye w)を計算し、CTを出力する。
<E>
Input: pk enc , plaintext m∈G
Output: Generate random number w ← COIN pk ^ enc , calculate t = H ′ (sid, ssid, C, R, g w ), CT = (g w , (Z e t Z e ′) w , m Calculate Y e w ) and output CT.
<D>
入力:skenc,CT
出力:CT=(CT1,CT2,CT3)をCT1,CT2,CT3に分解し、m=CT3/CT1 x_eを計算し、出力する。
<D>
Input: sk enc , CT
Output: CT = (CT 1 , CT 2 , CT 3 ) is decomposed into CT 1 , CT 2 , CT 3 , m = CT 3 / CT 1 x_e is calculated and output.
[公開鍵暗号から定義される言語]
公開鍵暗号PKEから定義される言語Lenc={(m,CT)|CT=(CT1,CT2,CT3),CT1=gw,CT2=(Ze tZe’)w,CT3=m・Ye wを満たすw∈COINpk^encが存在する。}(ただし、t=H’(sid,ssid,C,R,CT1))と定義する。
[Language defined from public key cryptography]
Language L enc = {(m, CT) | CT = (CT 1 , CT 2 , CT 3 ), CT 1 = g w , CT 2 = (Z e t Z e ′) w defined from the public key cryptography PKE , CT 3 = m · Y e w exists w∈COIN pk ^ enc . } (Where t = H ′ (sid, ssid, C, R, CT 1 )).
[シグマプロトコル]
言語Lenc上のシグマプロトコルΣ=(PΣ com,PΣ ans,VΣ vrfy,simPΣ com)を次のものとする。
[Sigma protocol]
Sigma protocol sigma = linguistic L enc (P Σ com, P Σ ans, V Σ vrfy, simP Σ com) to assume the next.
<PΣ com>
入力:(m,CT), w(ただし、CT=(CT1,CT2,CT3),CT1=gw,CT2=(Ze tZe’)w,CT3=m・Ye wを満たす。なお、t=H’(sid,ssid,C,R,CT1))
つまり、(pkenc,sid,ssid,C,R)も暗黙に含まれる。
出力:ξ←Z/qZをランダムに選び、α1=gξ,t= H’(sid,ssid,C,R,α1), α2=(Ze tZe’)ξ,α3=Ye ξと計算する。α=(α1,α2,α3)とし、(α,ξ)を出力する。
<P Σ com>
Input: (m, CT), w (where CT = (CT 1 , CT 2 , CT 3 ), CT 1 = g w , CT 2 = (Z e t Z e ′) w , CT 3 = m · Y satisfy e w. Note that, t = H '(sid, ssid, C, R, CT 1))
That is, (pk enc , sid, ssid, C, R) is also implicitly included.
Output: ξ ← Z / qZ is selected at random, α 1 = g ξ , t = H ′ (sid, ssid, C, R, α 1 ), α 2 = (Z e t Z e ′) ξ , α 3 = Y e ξ α = (α 1 , α 2 , α 3 ) and (α, ξ) is output.
<PΣ ans>
入力:(m,CT), w,ξ,ε∈{0,1}λ_c(ただし、CT=(CT1,CT2,CT3),CT1=gw,CT2=(Ze tZe’)w,CT3=m・Ye wを満たす。なお、t=H’(sid,ssid,C,R,CT1))
出力:γ=ξ−εw mod qを計算し、γを出力する。
<P Σ ans >
Input: (m, CT), w, ξ, εε {0, 1} λ_c (where CT = (CT 1 , CT 2 , CT 3 ), CT 1 = g w , CT 2 = (Z e t Z e ′) satisfying w , CT 3 = m · Y e w , where t = H ′ (sid, ssid, C, R, CT 1 ))
Output: γ = ξ−εw mod q is calculated and γ is output.
<VΣ vrfy>
入力:(m,CT)∈Lenc,(α,ε,γ)
出力:α1=gγCT1 ε、α2=(Ze tZe’)γCT2 ε、α3=Ye γ(CT3/m)εをすべて満たすなら1を、そうでないなら0を出力する。
<V Σ vrfy >
Input: (m, CT) εL enc , (α, ε, γ)
Output: α 1 = g γ CT 1 ε,
<simPΣ com>
入力: (m,CT)∈Lenc,ε
出力:γ←Z/qZをランダムに選び、α1=gγCT1 ε,α2=(Ze tZe’)γCT2 ε、α3=Ye γ(CT3/m)εを計算し、α=(α1,α2,α3)とし、(α,γ)を出力する。
<SimP Σ com>
Input: (m, CT) εL enc , ε
Output: γ ← Z / qZ is selected at random, α 1 = g γ CT 1 ε , α 2 = (Z e t Z e ′) γ CT 2 ε , α 3 = Y e γ (CT 3 / m) ε And α = (α 1 , α 2 , α 3 ), and outputs (α, γ).
[落し戸付きコミットメント]
落し戸付きコミットメントTCOMを次のものとする。
[Commitment with trapdoor]
The commitment TCOM with trapdoors is as follows.
<Gentc>
入力:1κ(ただし、κ=log2(q))
出力:xtc←Z/qZをランダムに取ってきて、h=gx_tcを計算する。pktc=(G,g,q,h)、sktc=(pktc,xtc)とし、(pktc,sktc)を出力する。
<Gen tc >
Input: 1 κ (where κ = log 2 (q))
Output: x tc ← Z / qZ is taken at random, and h = g x_tc is calculated. pk tc = (G, g, q, h), sk tc = (pk tc , x tc ), and (pk tc , sk tc ) is output.
<Comtc>
入力:pktc,平文φ∈{0,1}λ_m
出力:内部乱数rtc←Z/qZをランダムにとり、c=gr_tchφを計算し、cを出力する。
<Com tc >
Input: pk tc , plaintext φ∈ {0,1} λ_m
Output: Internal random number r tc ← Z / qZ is taken at random, c = g r_tc h φ is calculated, and c is output.
<TComtc>
入力:sktc,1κ
出力:ξ←Z/qZをランダムに取ってきて、c=gξを計算し、(c,ξ)を出力する。
<TCom tc >
Input: sk tc , 1 κ
Output: ξ ← Z / qZ is taken at random, c = g ξ is calculated, and (c, ξ) is output.
<TColtc>
入力:sktc,(c,ξ),φ∈{0,1}λ_m
出力:r=ξ−φ・xtc mod qを計算し、rを出力する(c=grhφを満たすことに注意)。
<TCol tc >
Input: sk tc , (c, ξ), φ∈ {0, 1} λ_m
Output: Calculate r = ξ−φ · x tc mod q and output r (note that c = g r h φ is satisfied).
<実施形態2の発明の理論的評価(効果)>
本発明は、共通参照情報CRSが固定長で再利用でき、適応的安全な汎用結合コミットメントの一般的構成法(実施形態1)とその具体的実現例(実施形態2)である。特に、巡回群を用いて公開鍵暗号、落し戸付きコミットメント、シグマプロトコルの3つを構成することにより、実施形態2はDL型のCRS再利用型・適応的安全な汎用結合可能コミットメントとなる。
<Theoretical Evaluation (Effect) of Invention of
The present invention is a general configuration method (embodiment 1) and a specific implementation example (embodiment 2) of a universal combined commitment that can be reused at a fixed length and in which common reference information CRS can be reused. In particular, by configuring the public key cryptosystem, the commitment with trapdoors, and the sigma protocol using a cyclic group, the second embodiment becomes a DL-type CRS reusable and adaptively secure general-purpose combinable commitment.
図8に本発明と非特許文献3、非特許文献4の比較表を示す。この表をみると分かるように、実施形態2及び実施形態3は、仮定が非特許文献3や非特許文献4と同等であるにも関わらず、共通パラメータ長、通信量、計算量の点で勝っている。
FIG. 8 shows a comparison table between the present invention and
ただし、κはセキュリティパラメータ、a/bは交信数(aはコミットフェーズに必要とされる交信数、bはデコミットフェーズに必要とされる交信数)、Texp(G)は巡回群G上のべき乗剰余演算1回のコストを表す。また、Gの表現にもよるが、|G|=κと考えてよい。DDHは判定DH仮定、CRHは衝突困難ハッシュ関数を意味する。 Where κ is a security parameter, a / b is the number of communications (a is the number of communications required for the commit phase, b is the number of communications required for the decommit phase), and T exp (G) is on the cyclic group G Represents the cost of one power-residue operation. Although it depends on the expression of G, it may be considered that | G | = κ. DDH means a decision DH assumption, and CRH means a collision-resistant hash function.
なお、実施形態2の効率は安全性も考慮に入れて、非特許文献3や非特許文献4と同等になるように、λm(κ)=κ,λc(κ)=κと設定した。つまり、安全性の点では、実施形態2の発明はDL型の非特許文献3や非特許文献4と同程度となっている。
Note that the efficiency of the second embodiment is set to λ m (κ) = κ and λ c (κ) = κ so that the efficiency is equal to that of
また、非特許文献3、非特許文献4、実施形態2のコミットできる平文mは、|G|ビット以下である。
The plaintext m that can be committed in
<実施形態3>
実施形態1では、CRS再利用型・適応的安全な汎用結合コミットメントの一般的構成法を示した。しかし、場合によっては、汎用結合可能コミットメントシステムに求められる安全性として、静的安全性で十分なこともある。また、コミットメントはゼロ知識証明と組み合わさることでしばしば開示することなく利用される。この場合、コミットフェーズの通信量、計算量ができるだけ少なく、コミットフェーズが非対話型であればより望ましい。
<
In the first embodiment, the general configuration method of the CRS reuse type and adaptive secure general-purpose combined commitment is shown. However, in some cases, static safety may be sufficient as the security required for a universal combinable commitment system. Also, commitments are often used without disclosure in combination with zero knowledge proofs. In this case, it is more desirable if the communication amount and calculation amount of the commit phase are as small as possible and the commit phase is non-interactive.
そこで、実施形態3では、コミットフェーズが非対話型のCRS再利用型・静的安全な汎用結合コミットメントの一般的構成法を示す。具体的には、実施形態1での送信手順を一部変更することにより、実現する。 Therefore, in the third embodiment, a general configuration method of a general-purpose combined commitment in which the commit phase is a non-interactive CRS reuse type and static safety will be described. Specifically, this is realized by changing a part of the transmission procedure in the first embodiment.
CRS再利用型・静的安全な汎用結合コミットメントシステムの構成はコミットメントシステム100の構成と同じである。また、CRS再利用型・静的安全な汎用結合コミットメントシステムに含まれる共通参照情報生成装置の構成もコミットメントシステム100に含まれる共通参照情報生成装置200の構成と同一である。そこで、以下では、図9〜図12を参照してCRS再利用型・静的安全な汎用結合コミットメントシステムに含まれるコミット生成装置500とコミット受信装置600について説明する。図9は、コミット生成装置500の構成を示すブロック図である。図10は、コミット受信装置600の構成を示すブロック図である。図11は、コミットフェーズのシークエンス図である。図12は、デコミットフェーズのシークエンス図である。
The configuration of the CRS reuse type / static secure general-purpose combined commitment system is the same as the configuration of the commitment system 100. In addition, the configuration of the common reference information generation device included in the CRS reuse type / static secure general combined commitment system is the same as the configuration of the common reference
図9に示すように、コミット生成装置500は、秘匿情報暗号化部505と、第二コミット部540と、第一メッセージ計算部510と、ハッシュ値計算部515と、ハッシュ値暗号化部520と、第一開示部525と、第二メッセージ計算部530と、第二開示部550と、通信部580と、開示情報生成用情報記録部590を含む。図10に示すように、コミット受信装置600は、乱数生成部605と、ハッシュ値計算部650と、開封部655と、通信部680と、コミット情報記録部690を含む。
As illustrated in FIG. 9, the commit generation device 500 includes a secret
[コミット(封じ手)フェーズ]
本実施形態のコミットメントはコミット生成装置500とコミット受信装置600の非対話型プロトコルである。
[Commit (sealing) phase]
The commitment in this embodiment is a non-interactive protocol between the commit generation device 500 and the commit reception device 600.
コミット生成装置500の秘匿情報暗号化部505は、コミットする秘匿情報m∈MSPpk^encを入力としてとり、乱数w←COINpk^encを発生させ、公開鍵暗号PKEの暗号化アルゴリズムE、crsの第1要素であるpkencを用いて、暗号化済秘匿情報CT=Epk^enc(m,w)を計算する(S505)。ただし、MSPpk^encは平文空間、COINpk^encは乱数空間である。
The secret
なお、秘匿情報mとS505で計算したCTの組(m,CT)はLenc={(m,CT)|CT=Epk^enc(m,w)を満たすw∈COINpk^encが存在する}で定義される言語Lencの元となる。 The secret information m and the CT set (m, CT) calculated in S505 have w∈COIN pk ^ enc that satisfies L enc = {(m, CT) | CT = E pk ^ enc (m, w). Is the source of the language L enc defined by
コミット生成装置500の第二コミット部540は、IDの4つ組(sid,ssid,C,R)と暗号化済秘匿情報CTをコミット受信装置600に送信(S540)、コミット受信装置600は、通信部680を用いて、IDの4つ組(sid,ssid,C,R)と暗号化済秘匿情報CTを受信し、コミット受信装置600はデコミットフェーズのための受理状態になる(S680−1)。sidはセッションID、ssidはサブセッションID、Cはコミット生成装置500のID、Rはコミット受信装置600のIDであり、それぞれ有限のビット列で表される。
The second commit
コミット生成装置500は、秘匿情報m、暗号化済秘匿情報CT、乱数wからなる3つ組(m,CT,w)を開示情報生成用情報として開示情報生成用情報記録部590に記録する(S590)。また、コミット受信装置600は、暗号化済秘匿情報CTをコミット情報としてコミット情報記録部690に記録する(S690)。
The commit generation device 500 records a triplet (m, CT, w) including the confidential information m, the encrypted confidential information CT, and the random number w in the disclosed information generating
[デコミット(開封)フェーズ]
本実施形態のデコミットメントはコミット生成装置500がコミット受信装置600に2つの開示情報(第一開示情報と第二開示情報)を送りつけ、コミット受信装置600がそれを受理するか拒否するかを判定するプロトコルである。第一開示情報は、実施形態1の第一コミット部325が送信した情報と同一である。また、第二開示情報は、実施形態1の開示部350が送信した情報と同一である。
[Decommit (open) phase]
In the decommitment of the present embodiment, the commit generation device 500 sends two pieces of disclosure information (first disclosure information and second disclosure information) to the commit reception device 600, and whether the commit reception device 600 accepts or rejects it. This is a protocol for determination. The first disclosure information is the same as the information transmitted by the first commit unit 325 of the first embodiment. Further, the second disclosure information is the same as the information transmitted by the disclosure unit 350 of the first embodiment.
コミット生成装置500の第一メッセージ計算部510は、言語Lenc上のシグマプロトコルΣの第一メッセージ生成アルゴリズムPΣ comを用いて、言語Lencの元(m,CT)に対するシグマプロトコルΣの第一メッセージ(α,ξ)←PΣ com((m,CT),w)を計算する(S510)。ここで、m,CT,wは、S590で開示情報生成用情報として開示情報生成用情報記録部590に記録していたものである。なお、wは、CT=Epk^enc(m,w)を満たすCOINpk^encの元である。
The first
コミット生成装置500のハッシュ値計算部515は、crsの第3要素であるハッシュ関数Hを用いて、ハッシュ値φ=H(sid,ssid,C,R,m,CT,α)を計算する(S515)。なお、(sid,ssid,C,R)はコミットフェーズにおいてコミット生成装置500から受信し、保持しておいたものである。
The hash
コミット生成装置500のハッシュ値暗号化部520は、乱数rtc←COINpk^tcを発生させ、落し戸付きコミットメントTCOMの暗号化アルゴリズムComtc、crsの第2要素であるpktcを用いて、暗号化済ハッシュ値Ψ=Comtc pk^tc (φ;rtc) を計算する(S520)。ただし、COINpk^tcは乱数空間である。
The hash
コミット生成装置500の第一開示部525は、暗号化済ハッシュ値Ψを第一開示情報としてコミット受信装置600に送信(S525)、コミット受信装置600は、通信部680を用いて、Ψを受信する(S680−2)。
The
コミット受信装置600の乱数生成部605は、(sid,ssid,C,R)を検証し、問題なければ乱数ε←{0,1}λ_cを発生させ、コミット生成装置500に送信する(S605)。コミット生成装置500は、通信部580を用いて、εを受信する(S580−1)。
The random
コミット生成装置500の第二メッセージ計算部530は、言語Lenc上のシグマプロトコルΣの第二メッセージ生成アルゴリズムPΣ ansを用いて、言語Lencの元(m,CT)に対するシグマプロトコルΣの第二メッセージγ=PΣ ans((m,CT),w,ξ,ε)を計算する(S530)。ここで、ξはS510で計算した第一メッセージの第2要素である。
The second
コミット生成装置500の第二開示部550は、秘匿情報m、第一メッセージの第1要素α、第二メッセージγ、乱数rtcを4つ組にした第二開示情報(m,α,γ,rtc)をコミット受信装置600に送信(S550)、コミット受信装置600は、通信部680を用いて、第二開示情報(m,α,γ,rtc)を受信する(S680−3)。
The
コミット受信装置600のハッシュ値計算部650は、crsの第3要素であるハッシュ関数Hを用いて、ハッシュ値φ’= H(sid,ssid,C,R,m,CT,α)を計算し復元する(S650)。なお、(sid,ssid,C,R)はコミットフェーズにおいてコミット生成装置500から受信し、保持しておいたものである。また、CTはコミット情報記録部690に記録したコミット情報である。
The hash
コミット受信装置600の開封部655は、落し戸付きコミットメントTCOMの暗号化アルゴリズムComtcと言語Lenc上のシグマプロトコルΣの検証アルゴリズムVΣ vrfyを用いて、Comtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))を計算し、Ψ=Comtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))=1が成立するか確認する(S655)。上記2式が成立することが確認されれば開封が正常に行われたと判断し承認する。一方、それ以外の場合、開封を拒絶する。なお、m,α,γ,rtcはS680−3で受信した第二開示情報(m,α,γ,rtc)の各要素、CTはコミット情報記録部690に記録したコミット情報、ΨはS680−2で受信した第一開示情報である。
なお、(sid,ssid,C,R)をコミット生成装置500で保持しておき、S525・S550で改めて(sid,ssid,C,R)をコミット生成装置500からコミット受信装置600に送信するようにしてもよい。 Note that (sid, ssid, C, R) is held in the commit generation device 500, and (sid, ssid, C, R) is transmitted from the commit generation device 500 to the commit reception device 600 again in S525 and S550. It may be.
<実施形態4>
実施形態3は、コミットフェーズが非対話型のCRS再利用型・静的安全な汎用結合コミットメントの一般的構成法である。実施形態4は、実施形態2で用いた公開鍵暗号PKE、公開鍵暗号から定義される言語Lenc、言語Lenc上のシグマプロトコルΣ、落し戸付きコミットメントTCOMを実施形態3に適用した汎用結合コミットメントである。
<
The third embodiment is a general configuration method of a CRS reuse type / static secure general-purpose combined commitment in which the commit phase is non-interactive.
これにより、DL型のCRS再利用型・静的安全な汎用結合コミットメントを構成することができる。 As a result, a DL-type CRS reusable and statically safe general-purpose combined commitment can be configured.
<実施形態4の発明の理論的評価(効果)>
本発明は、コミットフェーズが非対話型であり、共通参照情報CRSが固定長で再利用でき、静的安全な汎用結合コミットメントの一般的構成法(実施形態3)とその具体的実現例(実施形態4)である。特に、巡回群を用いて公開鍵暗号、落し戸付きコミットメント、シグマプロトコルの3つを構成することにより、実施形態4はDL型のCRS再利用型・静的安全な汎用結合可能コミットメントとなる。
<Theoretical Evaluation (Effect) of Invention of
The present invention has a non-interactive commit phase, the common reference information CRS can be reused with a fixed length, and a general configuration method of a statically safe general-purpose combined commitment (third embodiment) and a specific implementation example (implementation) Form 4). In particular, by configuring the public key cryptography, the commitment with trapdoors, and the sigma protocol using a cyclic group, the fourth embodiment becomes a DL-type CRS reusable / static secure general-purpose combinable commitment.
図13に本発明と非特許文献3、非特許文献4の比較表を示す。なお、図13の非特許文献3(Lin11)や非特許文献4(BCPV13)は、図8の非特許文献3(Lin11)や非特許文献4(BCPV13)とは異なり、静的安全を満たすように構成された汎用結合コミットメントである。この表をみると分かるように、実施形態2の場合と同様、実施形態4は、仮定が非特許文献3や非特許文献4と同等であるにも関わらず、共通パラメータ長、通信量、計算量の点で勝っている。
FIG. 13 shows a comparison table between the present invention and
なお、実施形態4の効率も安全性を考慮に入れて、非特許文献3や非特許文献4と同等になるように、λm(κ)=κ,λc(κ)=κと設定したのは実施形態2と同様である。つまり、安全性の点では、実施形態2と同様、実施形態4の発明はDL型の非特許文献3や非特許文献4と同程度となっている。
Note that the efficiency of the fourth embodiment is set to λ m (κ) = κ and λ c (κ) = κ so that the efficiency is equal to that of
また、非特許文献3、非特許文献4、実施形態4のコミットできる平文mは、|G|ビット以下である点も実施形態2と同様である。
The plaintext m that can be committed in
<補記>
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、CPU(Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい)、メモリであるRAMやROM、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、CPU、RAM、ROM、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、CD−ROMなどの記録媒体を読み書きできる装置(ドライブ)などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
<Supplementary note>
The apparatus of the present invention includes, for example, a single hardware entity as an input unit to which a keyboard or the like can be connected, an output unit to which a liquid crystal display or the like can be connected, and a communication device (for example, a communication cable) capable of communicating outside the hardware entity. Can be connected to a communication unit, a CPU (Central Processing Unit, may include a cache memory or a register), a RAM or ROM that is a memory, an external storage device that is a hard disk, and an input unit, an output unit, or a communication unit thereof , A CPU, a RAM, a ROM, and a bus connected so that data can be exchanged between the external storage devices. If necessary, the hardware entity may be provided with a device (drive) that can read and write a recording medium such as a CD-ROM. A physical entity having such hardware resources includes a general-purpose computer.
ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている(外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるROMに記憶させておくこととしてもよい)。また、これらのプログラムの処理によって得られるデータなどは、RAMや外部記憶装置などに適宜に記憶される。 The external storage device of the hardware entity stores a program necessary for realizing the above functions and data necessary for processing the program (not limited to the external storage device, for example, reading a program) It may be stored in a ROM that is a dedicated storage device). Data obtained by the processing of these programs is appropriately stored in a RAM or an external storage device.
ハードウェアエンティティでは、外部記憶装置(あるいはROMなど)に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にCPUで解釈実行・処理される。その結果、CPUが所定の機能(上記、…部、…手段などと表した各構成要件)を実現する。 In the hardware entity, each program stored in an external storage device (or ROM or the like) and data necessary for processing each program are read into a memory as necessary, and are interpreted and executed by a CPU as appropriate. . As a result, the CPU realizes a predetermined function (respective component requirements expressed as the above-described unit, unit, etc.).
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。 The present invention is not limited to the above-described embodiment, and can be appropriately changed without departing from the spirit of the present invention. In addition, the processing described in the above embodiment may be executed not only in time series according to the order of description but also in parallel or individually as required by the processing capability of the apparatus that executes the processing. .
既述のように、上記実施形態において説明したハードウェアエンティティ(本発明の装置)における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。 As described above, when the processing functions in the hardware entity (the apparatus of the present invention) described in the above embodiments are realized by a computer, the processing contents of the functions that the hardware entity should have are described by a program. Then, by executing this program on a computer, the processing functions in the hardware entity are realized on the computer.
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto-Optical disc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。 The program describing the processing contents can be recorded on a computer-readable recording medium. As the computer-readable recording medium, for example, any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used. Specifically, for example, as a magnetic recording device, a hard disk device, a flexible disk, a magnetic tape or the like, and as an optical disk, a DVD (Digital Versatile Disc), a DVD-RAM (Random Access Memory), a CD-ROM (Compact Disc Read Only). Memory), CD-R (Recordable) / RW (ReWritable), etc., magneto-optical recording medium, MO (Magneto-Optical disc), etc., semiconductor memory, EEP-ROM (Electronically Erasable and Programmable-Read Only Memory), etc. Can be used.
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。 The program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。 A computer that executes such a program first stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. When executing the process, the computer reads a program stored in its own recording medium and executes a process according to the read program. As another execution form of the program, the computer may directly read the program from a portable recording medium and execute processing according to the program, and the program is transferred from the server computer to the computer. Each time, the processing according to the received program may be executed sequentially. Also, the program is not transferred from the server computer to the computer, and the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition. It is good. Note that the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。 In this embodiment, a hardware entity is configured by executing a predetermined program on a computer. However, at least a part of these processing contents may be realized by hardware.
Claims (10)
κをセキュリティパラメータ、λm(・),λc(・)をκの関数、H:{0,1}*→{0,1}λ_mを衝突困難ハッシュ関数、Kを公開鍵暗号PKEの鍵生成アルゴリズム、Eを公開鍵暗号PKEの暗号化アルゴリズム、Gentcを落し戸付きコミットメントTCOMの鍵生成アルゴリズム、Comtcを落し戸付きコミットメントTCOMの暗号化アルゴリズム、Lenc={(m,CT)|CT=Epk^enc(m,w)を満たすw∈COINpk^encが存在する}を公開鍵暗号PKEから定義される言語(ただし、COINpk^encは乱数空間)、PΣ comを言語Lenc上のシグマプロトコルΣの第一メッセージ生成アルゴリズム、PΣ ansを言語Lenc上のシグマプロトコルΣの第二メッセージ生成アルゴリズム、VΣ vrfyを言語Lenc上のシグマプロトコルΣの検証アルゴリズムとして、
前記共通参照情報生成装置は、
1κから、前記鍵生成アルゴリズムK、Gentcを用いて、2つの公開鍵と秘密鍵の組(pkenc,skenc)←K(1κ)、(pktc,sktc)←Gentc(1κ)を生成し、前記秘密鍵skenc、sktcを廃棄する鍵生成部と、
前記公開鍵pkenc、pktc、前記ハッシュ関数Hを組にしたcrs=(pkenc,pktc,H)を共通参照情報として生成するCRS生成部と
を含み、
前記コミット生成装置は、
乱数w←COINpk^enc(ただし、COINpk^encは乱数空間)を生成し、前記暗号化アルゴリズムEと前記公開鍵pkencを用いて、秘匿情報m∈MSPpk^enc(ただし、MSPpk^encは平文空間)から暗号化済秘匿情報CT=Epk^enc(m,w)を計算する秘匿情報暗号化部と、
前記第一メッセージ生成アルゴリズムPΣ comを用いて、前記秘匿情報mと前記暗号化済秘匿情報CTの組(m,CT)と前記乱数wから第一メッセージ(α,ξ)←PΣ com((m,CT),w)を計算する第一メッセージ計算部と、
前記ハッシュ関数Hと4つ組(sid,ssid,C,R)(ただし、sidはセッションID、ssidはサブセッションID、Cは前記コミット生成装置のID、Rは前記コミット受信装置のIDを示す有限のビット列)を用いて、前記秘匿情報m、前記暗号化済秘匿情報CT、前記第一メッセージの第1要素αからハッシュ値φ=H(sid,ssid,C,R,m,CT,α)を計算するハッシュ値計算部と、
乱数rtc←COINpk^tc(ただし、COINpk^tcは乱数空間)を生成し、前記暗号化アルゴリズムComtcと前記公開鍵pktcを用いて、前記ハッシュ値φから暗号化済ハッシュ値Ψ=Comtc pk^tc (φ;rtc) を計算するハッシュ値暗号化部と、
前記4つ組(sid,ssid,C,R)、前記暗号化済ハッシュ値Ψを前記コミット受信装置に送信する第一コミット部と、
前記第二メッセージ生成アルゴリズムPΣ ansを用いて、前記秘匿情報mと前記暗号化済秘匿情報CTの組(m,CT)、前記乱数w、前記第一メッセージの第2要素ξ、前記コミット受信装置から受信した乱数εから第二メッセージγ=PΣ ans((m,CT),w,ξ,ε)を計算する第二メッセージ計算部と、
前記乱数wと前記第一メッセージの第2要素ξを消去する消去部と、
前記暗号化済秘匿情報CTを前記コミット受信装置に送信する第二コミット部と、
前記秘匿情報mと前記第一メッセージの第1要素αと前記第二メッセージγと前記乱数rtcからなる4つ組(m,α,γ,rtc)を開示情報として前記コミット受信装置に送信する開示部と
を含み、
前記コミット受信装置は、
前記コミット生成装置から受信した前記4つ組(sid,ssid,C,R)を検証し、問題なければ前記乱数ε←{0,1}λ_cを生成し、前記乱数εを前記コミット生成装置に送信する乱数生成部と、
前記コミット生成装置から受信した前記4つ組(sid,ssid,C,R)、前記暗号化済秘匿情報CT、前記開示情報(m,α,γ,rtc)と前記ハッシュ関数Hを用いて、ハッシュ値φ’=H(sid,ssid,C,R,m,CT,α)を計算するハッシュ値計算部と、
前記暗号化アルゴリズムComtcと前記検証アルゴリズムVΣ vrfyを用いて、前記ハッシュ値φ’、前記開示情報(m,α,γ,rtc)、前記暗号化済秘匿情報CT、前記乱数εからComtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))を計算し、前記暗号化済ハッシュ値Ψ=Comtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))=1が成立するか確認する開封部と
を含むコミットメントシステム。 A commitment system including a common reference information generating device, a commit generating device, and a commit receiving device,
κ is a security parameter, λ m (·), λ c (·) is a function of κ, H: {0,1} * → {0,1} λ_m is a hard-to-collision hash function, K is a key of public key cryptography PKE Generation algorithm, E is the encryption algorithm of public key cryptography PKE, Gen tc is the key generation algorithm of the door-to-door commitment TCOM, Com tc is the encryption algorithm of the door-to-door commitment TCOM, L enc = {(m, CT) | CT = E pk ^ enc (m, w) satisfying w∈COIN pk ^ enc } is a language defined by public key cryptography PKE (where COIN pk ^ enc is a random number space), P Σ com is a language L enc on the first message generation algorithm sigma protocol sigma of the second message generation a sigma protocol sigma on P sigma ans language L enc Lugorism, V Σ vrfy as a verification algorithm for the sigma protocol Σ on the language L enc
The common reference information generation device includes:
From 1 kappa, the key generation algorithm K, using the Gen tc, 2 one public and private key pair (pk enc, sk enc) ← K (1 κ), (pk tc, sk tc) ← Gen tc ( 1 κ ) and a key generation unit for discarding the secret keys sk enc and sk tc ;
A public key pk enc , pk tc , and a CRS generator that generates crs = (pk enc , pk tc , H) as a set of hash functions H as common reference information,
The commit generation device includes:
A random number w ← COIN pk ^ enc (where COIN pk ^ enc is a random number space) is generated, and the secret information mεMSP pk ^ enc (where MSP pk is used) using the encryption algorithm E and the public key pk enc. ^ enc is a plaintext space), and a secret information encryption unit for calculating encrypted secret information CT = E pk ^ enc (m, w);
Using the first message generation algorithm P Σ com , the first message (α, ξ) ← P Σ com (from the set (m, CT) of the secret information m and the encrypted secret information CT and the random number w. A first message calculator for calculating (m, CT), w);
The hash function H and a quadruple (sid, ssid, C, R) (where sid is a session ID, ssid is a sub-session ID, C is an ID of the commit generating device, and R is an ID of the commit receiving device) Using the finite bit string, the secret information m, the encrypted secret information CT, and the first element α of the first message have a hash value φ = H (sid, ssid, C, R, m, CT, α ) For calculating the hash value,
A random number r tc ← COIN pk ^ tc (where COIN pk ^ tc is a random number space) is generated, and an encrypted hash value Ψ is obtained from the hash value φ using the encryption algorithm Com tc and the public key pk tc. = Hash value encryption unit for calculating Com tc pk ^ tc (φ; r tc ),
A first commit unit that transmits the quadruple (sid, ssid, C, R) and the encrypted hash value Ψ to the commit receiver;
Using the second message generation algorithm P Σ ans , the set (m, CT) of the secret information m and the encrypted secret information CT, the random number w, the second element ξ of the first message, the commit reception A second message calculator for calculating a second message γ = P Σ ans ((m, CT), w, ξ, ε) from a random number ε received from the device;
An erasure unit for erasing the random number w and the second element ξ of the first message;
A second commit unit that transmits the encrypted confidential information CT to the commit receiver;
A set of four pieces (m, α, γ, r tc ) composed of the secret information m, the first element α of the first message, the second message γ, and the random number r tc is transmitted as disclosure information to the commit receiver. Including the disclosure section
The commit receiver
The quadruplet (sid, ssid, C, R) received from the commit generation device is verified. If there is no problem, the random number ε ← {0, 1} λ_c is generated, and the random number ε is transmitted to the commit generation device. A random number generator to transmit;
Using the quadruple (sid, ssid, C, R) received from the commit generation device, the encrypted confidential information CT, the disclosed information (m, α, γ, r tc ) and the hash function H A hash value calculator for calculating a hash value φ ′ = H (sid, ssid, C, R, m, CT, α);
Using the encryption algorithm Com tc and the verification algorithm V Σ vrfy , the hash value φ ′, the disclosure information (m, α, γ, r tc ), the encrypted confidential information CT, and the random number ε tc pk ^ tc (φ ′; r tc ) and V Σ vrfy ((m, CT), (α, ε, γ)) are calculated, and the encrypted hash value Ψ = Com tc pk ^ tc (φ ′ A commitment system including: r tc ) and an opening portion for confirming whether V Σ vrfy ((m, CT), (α, ε, γ)) = 1 holds.
κをセキュリティパラメータ、λm(・),λc(・)をκの関数、H:{0,1}*→{0,1}λ_mを衝突困難ハッシュ関数、Kを公開鍵暗号PKEの鍵生成アルゴリズム、Eを公開鍵暗号PKEの暗号化アルゴリズム、Gentcを落し戸付きコミットメントTCOMの鍵生成アルゴリズム、Comtcを落し戸付きコミットメントTCOMの暗号化アルゴリズム、Lenc={(m,CT)|CT=Epk^enc(m,w)を満たすw∈COINpk^encが存在する}を公開鍵暗号PKEから定義される言語(ただし、COINpk^encは乱数空間)、PΣ comを言語Lenc上のシグマプロトコルΣの第一メッセージ生成アルゴリズム、PΣ ansを言語Lenc上のシグマプロトコルΣの第二メッセージ生成アルゴリズム、VΣ vrfyを言語Lenc上のシグマプロトコルΣの検証アルゴリズムとして、
前記共通参照情報生成装置は、
1κから、前記鍵生成アルゴリズムK、Gentcを用いて、2つの公開鍵と秘密鍵の組(pkenc,skenc)←K(1κ)、(pktc,sktc)←Gentc(1κ)を生成し、前記秘密鍵skenc、sktcを廃棄する鍵生成部と、
前記公開鍵pkenc、pktc、前記ハッシュ関数Hを組にしたcrs=(pkenc,pktc,H)を共通参照情報として生成するCRS生成部と
を含み、
前記コミット生成装置は、
乱数w←COINpk^enc(ただし、COINpk^encは乱数空間)を生成し、前記暗号化アルゴリズムEと前記公開鍵pkencを用いて、秘匿情報m∈MSPpk^enc(ただし、MSPpk^encは平文空間)から暗号化済秘匿情報CT=Epk^enc(m,w)を計算する秘匿情報暗号化部と、
4つ組(sid,ssid,C,R)(ただし、sidはセッションID、ssidはサブセッションID、Cは前記コミット生成装置のID、Rは前記コミット受信装置のIDを示す有限のビット列)、前記暗号化済秘匿情報CTを前記コミット受信装置に送信する第二コミット部と、
前記第一メッセージ生成アルゴリズムPΣ comを用いて、前記秘匿情報mと前記暗号化済秘匿情報CTの組(m,CT)と前記乱数wから第一メッセージ(α,ξ)←PΣ com((m,CT),w)を計算する第一メッセージ計算部と、
前記ハッシュ関数Hと前記(sid,ssid,C,R)を用いて、前記秘匿情報m、前記暗号化済秘匿情報CT、前記第一メッセージの第1要素αからハッシュ値φ=H(sid,ssid,C,R,m,CT,α)を計算するハッシュ値計算部と、
乱数rtc←COINpk^tc(ただし、COINpk^tcは乱数空間)を生成し、前記暗号化アルゴリズムComtcと前記公開鍵pktcを用いて、前記ハッシュ値φから暗号化済ハッシュ値Ψ=Comtc pk^tc (φ;rtc) を計算するハッシュ値暗号化部と、
前記暗号化済ハッシュ値Ψを前記コミット受信装置に送信する第一開示部と、
前記第二メッセージ生成アルゴリズムPΣ ansを用いて、前記秘匿情報mと前記暗号化済秘匿情報CTの組(m,CT)、前記乱数w、前記第一メッセージの第2要素ξ、前記コミット受信装置から受信した乱数εから第二メッセージγ=PΣ ans((m,CT),w,ξ,ε)を計算する第二メッセージ計算部と、
前記秘匿情報mと前記第一メッセージの第1要素αと前記第二メッセージγと前記乱数rtcからなる4つ組(m,α,γ,rtc)を第二開示情報として前記コミット受信装置に送信する第二開示部と
を含み、
前記コミット受信装置は、
前記コミット生成装置から受信した前記4つ組(sid,ssid,C,R)を検証し、問題なければ前記乱数ε←{0,1}λ_cを生成し、前記乱数εを前記コミット生成装置に送信する乱数生成部と、
前記コミット生成装置から受信した前記4つ組(sid,ssid,C,R)、前記暗号化済秘匿情報CT、前記開示情報(m,α,γ,rtc)と前記ハッシュ関数Hを用いて、ハッシュ値φ’=H(sid,ssid,C,R,m,CT,α)を計算するハッシュ値計算部と、
前記暗号化アルゴリズムComtcと前記検証アルゴリズムVΣ vrfyを用いて、前記ハッシュ値φ’、前記開示情報(m,α,γ,rtc)、前記暗号化済秘匿情報CT、前記乱数εからComtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))を計算し、前記暗号化済ハッシュ値Ψ=Comtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))=1が成立するか確認する開封部と
を含むコミットメントシステム。 A commitment system including a common reference information generating device, a commit generating device, and a commit receiving device,
κ is a security parameter, λ m (·), λ c (·) is a function of κ, H: {0,1} * → {0,1} λ_m is a hard-to-collision hash function, K is a key of public key cryptography PKE Generation algorithm, E is the encryption algorithm of public key cryptography PKE, Gen tc is the key generation algorithm of the door-to-door commitment TCOM, Com tc is the encryption algorithm of the door-to-door commitment TCOM, L enc = {(m, CT) | CT = E pk ^ enc (m, w) satisfying w∈COIN pk ^ enc } is a language defined by public key cryptography PKE (where COIN pk ^ enc is a random number space), P Σ com is a language L enc on the first message generation algorithm sigma protocol sigma of the second message generation a sigma protocol sigma on P sigma ans language L enc Lugorism, V Σ vrfy as a verification algorithm for the sigma protocol Σ on the language L enc
The common reference information generation device includes:
From 1 kappa, the key generation algorithm K, using the Gen tc, 2 one public and private key pair (pk enc, sk enc) ← K (1 κ), (pk tc, sk tc) ← Gen tc ( 1 κ ) and a key generation unit for discarding the secret keys sk enc and sk tc ;
A public key pk enc , pk tc , and a CRS generator that generates crs = (pk enc , pk tc , H) as a set of hash functions H as common reference information,
The commit generation device includes:
A random number w ← COIN pk ^ enc (where COIN pk ^ enc is a random number space) is generated, and the secret information mεMSP pk ^ enc (where MSP pk is used) using the encryption algorithm E and the public key pk enc. ^ enc is a plaintext space), and a secret information encryption unit for calculating encrypted secret information CT = E pk ^ enc (m, w);
Quadruple (sid, ssid, C, R) (where sid is the session ID, ssid is the sub-session ID, C is the ID of the commit generating device, and R is a finite bit string indicating the ID of the commit receiving device), A second commit unit that transmits the encrypted confidential information CT to the commit receiver;
Using the first message generation algorithm P Σ com , the first message (α, ξ) ← P Σ com (from the set (m, CT) of the secret information m and the encrypted secret information CT and the random number w. A first message calculator for calculating (m, CT), w);
Using the hash function H and the (sid, ssid, C, R), the hash value φ = H (sid, Sid, m) from the secret information m, the encrypted secret information CT, and the first element α of the first message. hash value calculation unit for calculating ssid, C, R, m, CT, α),
A random number r tc ← COIN pk ^ tc (where COIN pk ^ tc is a random number space) is generated, and an encrypted hash value Ψ is obtained from the hash value φ using the encryption algorithm Com tc and the public key pk tc. = Hash value encryption unit for calculating Com tc pk ^ tc (φ; r tc ),
A first disclosure unit that transmits the encrypted hash value ψ to the commit receiver;
Using the second message generation algorithm P Σ ans , the set (m, CT) of the secret information m and the encrypted secret information CT, the random number w, the second element ξ of the first message, the commit reception A second message calculator for calculating a second message γ = P Σ ans ((m, CT), w, ξ, ε) from a random number ε received from the device;
The commit reception device using the secret information m, the first element α of the first message, the second message γ, and the quadrature (m, α, γ, r tc ) made up of the random number r tc as second disclosure information A second disclosure part that transmits to
The commit receiver
The quadruplet (sid, ssid, C, R) received from the commit generation device is verified. If there is no problem, the random number ε ← {0, 1} λ_c is generated, and the random number ε is transmitted to the commit generation device. A random number generator to transmit;
Using the quadruple (sid, ssid, C, R) received from the commit generation device, the encrypted confidential information CT, the disclosed information (m, α, γ, r tc ) and the hash function H A hash value calculator for calculating a hash value φ ′ = H (sid, ssid, C, R, m, CT, α);
Using the encryption algorithm Com tc and the verification algorithm V Σ vrfy , the hash value φ ′, the disclosure information (m, α, γ, r tc ), the encrypted confidential information CT, and the random number ε tc pk ^ tc (φ ′; r tc ) and V Σ vrfy ((m, CT), (α, ε, γ)) are calculated, and the encrypted hash value Ψ = Com tc pk ^ tc (φ ′ A commitment system including: r tc ) and an opening portion for confirming whether V Σ vrfy ((m, CT), (α, ε, γ)) = 1 holds.
gを位数qの巡回群Gの生成元、前記κをκ=log2(q)、前記ハッシュ関数HをH’:{0,1}*→Z/qZ(つまり、有限長のビット列x∈{0,1}*をZ/qZの元にハッシュするハッシュ関数)とし、
前記λm,λcはλm,λc≦κを満たし、
前記鍵生成アルゴリズムKは、xe←Z/qZをランダムに取ってきて、Ye=gx_eを計算し、Ze,Ze’←Gをランダムに取ってきた後、(pkenc,skenc)=((Ye,Ze,Ze’),xe)を出力するアルゴリズムであり、
前記暗号化アルゴリズムEは、乱数w←COINpk^encを生成し、t=H’(sid,ssid,C,R,gw)を計算し、CT=(gw,(Ze tZe’)w,m・Ye w)(ただし、m∈G)を出力するアルゴリズムであり、
前記言語LencをLenc={(m,CT)|CT=(CT1,CT2,CT3),CT1=gw,CT2=(Ze tZe’)w,CT3=m・Ye wを満たすw∈COINpk^encが存在する。}(ただし、t=H’(sid,ssid,C,R,CT1))とし、
前記第一メッセージ生成アルゴリズムPΣ comは、(m,CT), w(ただし、CT=(CT1,CT2,CT3),CT1=gw,CT2=(Ze tZe’)w,CT3=m・Ye wを満たす。なお、t=H’(sid,ssid,C,R,CT1))を入力とし、ξ←Z/qZをランダムに選び、α1=gξ,t= H’(sid,ssid,C,R,α1), α2=(Ze tZe’)ξ,α3=Ye ξと計算し、α=(α1,α2,α3)とし、(α,ξ)を出力するアルゴリズムであり、
前記第二メッセージ生成アルゴリズムPΣ ansは、(m,CT), w,ξ,ε∈{0,1}λ_c(ただし、CT=(CT1,CT2,CT3),CT1=gw,CT2=(Ze tZe’)w,CT3=m・Ye wを満たす。なお、t=H’(sid,ssid,C,R,CT1))を入力とし、γ=ξ−εw mod qを計算し、γを出力するアルゴリズムであり、
前記検証アルゴリズムVΣ vrfyは、(m,CT)∈Lenc,(α,ε,γ)を入力とし、α1=gγCT1 ε、α2=(Ze tZe’)γCT2 ε、α3=Ye γ(CT3/m)εをすべて満たすなら1を、そうでないなら0を出力するアルゴリズムであり、
前記鍵生成アルゴリズムGentcは、xtc←Z/qZをランダムに取ってきて、h=gx_tcを計算し、pktc=(G,g,q,h)、sktc=(pktc,xtc)とし、(pktc,sktc)を出力するアルゴリズムであり、
前記暗号化アルゴリズムComtcは、内部乱数rtc←Z/qZをランダムにとり、c=gr_tchxを計算し、cを出力するアルゴリズムである
コミットメントシステム。 The commitment system according to claim 1 or claim 2,
g is a generator of the cyclic group G of order q, κ is κ = log 2 (q), and the hash function H is H ′: {0, 1} * → Z / qZ (that is, a finite-length bit string x ∈ {0,1} * is a hash function that hashes to Z / qZ))
Λ m and λ c satisfy λ m and λ c ≦ κ,
The key generation algorithm K takes x e ← Z / qZ at random, calculates Y e = g x_e , takes Z e , Z e ′ ← G at random, and then (pk enc , sk enc ) = ((Y e , Z e , Z e ′), x e )
The encryption algorithm E generates a random number w ← COIN pk ^ enc , calculates t = H ′ (sid, ssid, C, R, g w ), and CT = (g w , (Z e t Z e). ') W , m · Y e w ) (where m∈G),
The language L enc is expressed as L enc = {(m, CT) | CT = (CT 1 , CT 2 , CT 3 ), CT 1 = g w , CT 2 = (Z e t Z e ′) w , CT 3 = There exists wεCOIN pk ^ enc that satisfies m · Y e w . } (Where t = H ′ (sid, ssid, C, R, CT 1 )),
The first message generation algorithm P Σ com is (m, CT), w (where CT = (CT 1 , CT 2 , CT 3 ), CT 1 = g w , CT 2 = (Z e t Z e ′). W , CT 3 = m · Y e w , where t = H ′ (sid, ssid, C, R, CT 1 )) is input, and ξ ← Z / qZ is selected at random, α 1 = g ξ , t = H ′ (sid, ssid, C, R, α 1 ), α 2 = (Z e t Z e ′) ξ , α 3 = Y e ξ and α = (α 1 , α 2 , α 3 ) and (α, ξ) is output,
The second message generation algorithm P Σ ans is (m, CT), w, ξ, ε∈ {0, 1} λ_c (where CT = (CT 1 , CT 2 , CT 3 ), CT 1 = g w , CT 2 = (Z e t Z e ′) w , CT 3 = m · Y e w , where t = H ′ (sid, ssid, C, R, CT 1 )) is input and γ = ξ−εw mod q is an algorithm that outputs γ,
The verification algorithm V Σ vrfy takes (m, CT) εL enc and (α, ε, γ) as inputs, and α 1 = g γ CT 1 ε and α 2 = (Z e t Z e ′) γ CT 2 ε , α 3 = Y e γ (CT 3 / m) An algorithm that outputs 1 if ε is satisfied, and outputs 0 otherwise.
The key generation algorithm Gen tc takes x tc ← Z / qZ at random, calculates h = g x_tc , pk tc = (G, g, q, h), sk tc = (pk tc , x tc ), and (pk tc , sk tc ) is output.
The encryption algorithm Com tc takes an internal random number r tc ← Z / qZ randomly commitment system is an algorithm that calculates the c = g r_tc h x, outputs or c.
κをセキュリティパラメータ、λm(・),λc(・)をκの関数、H:{0,1}*→{0,1}λ_mを衝突困難ハッシュ関数、Kを公開鍵暗号PKEの鍵生成アルゴリズム、Eを公開鍵暗号PKEの暗号化アルゴリズム、Gentcを落し戸付きコミットメントTCOMの鍵生成アルゴリズム、Comtcを落し戸付きコミットメントTCOMの暗号化アルゴリズム、Lenc={(m,CT)|CT=Epk^enc(m,w)を満たすw∈COINpk^encが存在する}を公開鍵暗号PKEから定義される言語(ただし、COINpk^encは乱数空間)、PΣ comを言語Lenc上のシグマプロトコルΣの第一メッセージ生成アルゴリズム、PΣ ansを言語Lenc上のシグマプロトコルΣの第二メッセージ生成アルゴリズム、VΣ vrfyを言語Lenc上のシグマプロトコルΣの検証アルゴリズムとして、
前記共通参照情報生成装置が、1κから、前記鍵生成アルゴリズムK、Gentcを用いて、2つの公開鍵と秘密鍵の組(pkenc,skenc)←K(1κ)、(pktc,sktc)←Gentc(1κ)を生成し、前記秘密鍵skenc、sktcを廃棄する鍵生成ステップと、
前記共通参照情報生成装置が、前記公開鍵pkenc、pktc、前記ハッシュ関数Hを組にしたcrs=(pkenc,pktc,H)を共通参照情報として生成するCRS生成ステップと、
前記コミット生成装置が、乱数w←COINpk^enc(ただし、COINpk^encは乱数空間)を生成し、前記暗号化アルゴリズムEと前記公開鍵pkencを用いて、秘匿情報m∈MSPpk^enc(ただし、MSPpk^encは平文空間)から暗号化済秘匿情報CT=Epk^enc(m,w)を計算する秘匿情報暗号化ステップと、
前記コミット生成装置が、前記第一メッセージ生成アルゴリズムPΣ comを用いて、前記秘匿情報mと前記暗号化済秘匿情報CTの組(m,CT)と前記乱数wから第一メッセージ(α,ξ)←PΣ com((m,CT),w)を計算する第一メッセージ計算ステップと、
前記コミット生成装置が、前記ハッシュ関数Hと4つ組(sid,ssid,C,R)(ただし、sidはセッションID、ssidはサブセッションID、Cはコミット生成装置のID、Rはコミット受信装置のIDを示す有限のビット列)を用いて、前記秘匿情報m、前記暗号化済秘匿情報CT、前記第一メッセージの第1要素αからハッシュ値φ=H(sid,ssid,C,R,m,CT,α)を計算するハッシュ値計算ステップと、
前記コミット生成装置が、乱数rtc←COINpk^tc(ただし、COINpk^tcは乱数空間)を生成し、前記暗号化アルゴリズムComtcと前記公開鍵pktcを用いて、前記ハッシュ値φから暗号化済ハッシュ値Ψ=Comtc pk^tc (φ;rtc) を計算するハッシュ値暗号化ステップと、
前記コミット生成装置が、前記4つ組(sid,ssid,C,R)、前記暗号化済ハッシュ値Ψを前記コミット受信装置に送信する第一コミットステップと、
前記コミット受信装置が、前記4つ組(sid,ssid,C,R)を検証し、問題なければ乱数ε←{0,1}λ_cを生成し、前記乱数εを前記コミット生成装置に送信する乱数生成ステップと、
前記コミット生成装置が、前記第二メッセージ生成アルゴリズムPΣ ansを用いて、前記秘匿情報mと前記暗号化済秘匿情報CTの組(m,CT)、前記乱数w、前記第一メッセージの第2要素ξ、前記乱数εから第二メッセージγ=PΣ ans((m,CT),w,ξ,ε)を計算する第二メッセージ計算ステップと、
前記コミット生成装置が、前記乱数wと前記第一メッセージの第2要素ξを消去する消去ステップと、
前記コミット生成装置が、前記暗号化済秘匿情報CTを前記コミット受信装置に送信する第二コミットステップと、
前記コミット生成装置が、前記秘匿情報mと前記第一メッセージの第1要素αと前記第二メッセージγと前記乱数rtcからなる4つ組(m,α,γ,rtc)を開示情報として前記コミット受信装置に送信する開示ステップと、
前記コミット受信装置が、前記4つ組(sid,ssid,C,R)、前記暗号化済秘匿情報CT、前記開示情報(m,α,γ,rtc)と前記ハッシュ関数Hを用いて、ハッシュ値φ’=H(sid,ssid,C,R,m,CT,α)を計算するハッシュ値計算ステップと、
前記コミット受信装置が、前記暗号化アルゴリズムComtcと前記検証アルゴリズムVΣ vrfyを用いて、前記ハッシュ値φ’、前記開示情報(m,α,γ,rtc)、前記暗号化済秘匿情報CT、前記乱数εからComtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))を計算し、前記暗号化済ハッシュ値Ψ=Comtc pk^tc(φ’;rtc)とVΣ vrfy((m,CT),(α,ε,γ))=1が成立するか確認する開封ステップと
を含むコミットメント方法。 A commitment method executed by a commitment system including a common reference information generating device, a commit generating device, and a commit receiving device,
κ is a security parameter, λ m (·), λ c (·) is a function of κ, H: {0,1} * → {0,1} λ_m is a hard-to-collision hash function, K is a key of public key cryptography PKE Generation algorithm, E is the encryption algorithm of public key cryptography PKE, Gen tc is the key generation algorithm of the door-to-door commitment TCOM, Com tc is the encryption algorithm of the door-to-door commitment TCOM, L enc = {(m, CT) | CT = E pk ^ enc (m, w) satisfying w∈COIN pk ^ enc } is a language defined by public key cryptography PKE (where COIN pk ^ enc is a random number space), P Σ com is a language L enc on the first message generation algorithm sigma protocol sigma of the second message generation a sigma protocol sigma on P sigma ans language L enc Lugorism, V Σ vrfy as a verification algorithm for the sigma protocol Σ on the language L enc
The common reference information generation apparatus uses the key generation algorithm K and Gen tc from 1 κ , and sets of two public keys and secret keys (pk enc , sk enc ) ← K (1 κ ), (pk tc , Sk tc ) ← Gen tc (1 κ ), and the secret key sk enc , sk tc is discarded,
A CRS generating step in which the common reference information generation device generates crs = (pk enc , pk tc , H) as a set of the public keys pk enc , pk tc and the hash function H as common reference information;
The commit generating device, random number w ← COIN pk ^ enc (However, COIN pk ^ enc is random number space) to generate, using the public key pk enc and the encryption algorithm E, confidential information m∈MSP pk ^ a secret information encryption step for calculating encrypted secret information CT = E pk ^ enc (m, w) from enc (where MSP pk ^ enc is a plaintext space);
The commit generation device uses the first message generation algorithm P Σ com to generate a first message (α, ξ) from the set (m, CT) of the secret information m and the encrypted secret information CT and the random number w. ) ← First message calculation step of calculating P Σ com ((m, CT), w);
The commit generation device is a quadruple (sid, ssid, C, R) with the hash function H (where sid is a session ID, ssid is a sub-session ID, C is a commit generation device ID, and R is a commit reception device) ) Using the secret information m, the encrypted secret information CT, and the first element α of the first message, the hash value φ = H (sid, ssid, C, R, m). , CT, α) for calculating a hash value,
The commit generation device generates a random number r tc ← COIN pk ^ tc (where COIN pk ^ tc is a random number space), and uses the encryption algorithm Com tc and the public key pk tc from the hash value φ. A hash value encryption step of calculating an encrypted hash value Ψ = Com tc pk ^ tc (φ; r tc );
A first commit step in which the commit generating device transmits the quadruple (sid, ssid, C, R) and the encrypted hash value Ψ to the commit receiving device;
The commit receiver verifies the quadruplicate (sid, ssid, C, R), and if there is no problem, generates a random number ε ← {0, 1} λ_c and transmits the random number ε to the commit generator. A random number generation step;
The commit generation device uses the second message generation algorithm P Σ ans to set the secret information m and the encrypted secret information CT (m, CT), the random number w, and the second of the first message. A second message calculation step of calculating a second message γ = P Σ ans ((m, CT), w, ξ, ε) from the element ξ and the random number ε;
The commit generating device erasing the random number w and the second element ξ of the first message;
A second commit step in which the commit generating device transmits the encrypted confidential information CT to the commit receiving device;
The commit generation device uses the secret information m, the first element α of the first message, the second message γ, and the random number r tc as a set of four (m, α, γ, r tc ) as disclosure information. A disclosure step of transmitting to the commit receiver;
The commit receiver uses the quadruple (sid, ssid, C, R), the encrypted confidential information CT, the disclosed information (m, α, γ, r tc ) and the hash function H, A hash value calculation step of calculating a hash value φ ′ = H (sid, ssid, C, R, m, CT, α);
Using the encryption algorithm Com tc and the verification algorithm V Σ vrfy , the commit receiver uses the hash value φ ′, the disclosed information (m, α, γ, r tc ), and the encrypted confidential information CT. Then, Com tc pk ^ tc (φ ′; r tc ) and V Σ vrfy ((m, CT), (α, ε, γ)) are calculated from the random number ε, and the encrypted hash value Ψ = Com tc A commitment method including : pk ^ tc (φ ′; r tc ) and an unsealing step for checking whether V Σ vrfy ((m, CT), (α, ε, γ)) = 1 holds.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016110377A JP6563857B2 (en) | 2016-06-01 | 2016-06-01 | Commitment system, common reference information generation device, commit generation device, commit reception device, commitment method, program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016110377A JP6563857B2 (en) | 2016-06-01 | 2016-06-01 | Commitment system, common reference information generation device, commit generation device, commit reception device, commitment method, program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2017215534A JP2017215534A (en) | 2017-12-07 |
| JP6563857B2 true JP6563857B2 (en) | 2019-08-21 |
Family
ID=60576818
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016110377A Active JP6563857B2 (en) | 2016-06-01 | 2016-06-01 | Commitment system, common reference information generation device, commit generation device, commit reception device, commitment method, program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6563857B2 (en) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6933290B2 (en) * | 2018-02-20 | 2021-09-08 | 日本電信電話株式会社 | Secret calculation device, secret calculation authentication system, secret calculation method, and program |
| EP4280535A4 (en) * | 2021-01-13 | 2024-03-13 | Fujitsu Limited | Control method, information processing system, information processing device, and control program |
-
2016
- 2016-06-01 JP JP2016110377A patent/JP6563857B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2017215534A (en) | 2017-12-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Bell et al. | Secure single-server aggregation with (poly) logarithmic overhead | |
| Boyd et al. | Fast and secure updatable encryption | |
| Gennaro et al. | Bounds on the efficiency of generic cryptographic constructions | |
| Afshar et al. | Non-interactive secure computation based on cut-and-choose | |
| Jarecki et al. | Adaptively secure threshold cryptography: Introducing concurrency, removing erasures | |
| Choudhuri et al. | Mempool privacy via batched threshold encryption: Attacks and defenses | |
| Sen | Homomorphic encryption-theory and application | |
| Samanthula et al. | An efficient and probabilistic secure bit-decomposition | |
| Chen | Cryptography standards in quantum time: new wine in old wineskin? | |
| Peng | Danger of using fully homomorphic encryption: A look at Microsoft SEAL | |
| Li et al. | Two-round PAKE protocol over lattices without NIZK | |
| JP6556955B2 (en) | Communication terminal, server device, program | |
| CN111211897A (en) | Time control encryption security enhancement method based on random prediction model | |
| Avitabile et al. | Signature-based witness encryption with compact ciphertext | |
| Saarinen et al. | Post Quantum Cryptography | |
| EP3462668A1 (en) | Plaintext equivalence proof techniques in communication systems | |
| Lauer et al. | T0RTT: non-interactive immediate forwardsecret single-pass circuit construction | |
| Goldwasser et al. | Proof of plaintext knowledge for the Ajtai-Dwork cryptosystem | |
| JP5755557B2 (en) | Timed cryptographic system, timed cryptographic method, apparatus, and program | |
| JP6563857B2 (en) | Commitment system, common reference information generation device, commit generation device, commit reception device, commitment method, program | |
| Davis et al. | On the possibility of a backdoor in the Micali-Schnorr generator | |
| JP5863683B2 (en) | Commitment system, common reference information generation device, commit generation device, commit reception device, commitment method, and program | |
| Hsu et al. | A new efficient and secure secret reconstruction scheme (ssrs) with verifiable shares based on a symmetric bivariate polynomial | |
| Nguyen et al. | Lattice-based public key encryption with multi-ciphertexts equality test in cloud computing | |
| JP5755600B2 (en) | Commitment system, common reference information generating device, commit generating device, commit receiving device, commitment method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180903 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190410 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190528 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190705 |
|
| 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: 20190723 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190725 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6563857 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |