Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6563857B2 - Commitment system, common reference information generation device, commit generation device, commit reception device, commitment method, program - Google Patents
[go: Go Back, main page]

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 PDF

Info

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
Application number
JP2016110377A
Other languages
Japanese (ja)
Other versions
JP2017215534A (en
Inventor
英一郎 藤崎
英一郎 藤崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2016110377A priority Critical patent/JP6563857B2/en
Publication of JP2017215534A publication Critical patent/JP2017215534A/en
Application granted granted Critical
Publication of JP6563857B2 publication Critical patent/JP6563857B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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 Non-Patent Document 3 and Non-Patent Document 4 that are considered to be the most efficient at present are all of the DL type.

効率のよいCRS再利用型で適応的安全な汎用結合可能コミットメントは、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8などがある。   Non-Patent Document 3, Non-Patent Document 4, Non-Patent Document 5, Non-Patent Document 6, Non-Patent Document 7, Non-Patent Document 8, and the like are efficient CRS reusable, adaptive and safe universally joinable commitments. .

Ran Canetti, “Universally composable security: A new paradigm for cryptograpic protocols”, Technical report, Cryptology ePrint Archive, Report 2000/067, 2005. Preliminary version appeared in FOCS'01.Ran Canetti, “Universally composable security: A new paradigm for cryptograpic protocols”, Technical report, Cryptology ePrint Archive, Report 2000/067, 2005. Preliminary version appeared in FOCS'01. R. Canetti and M. Fischlin, “Universally composable commitments”, In Joe Kilian, editor, Advances in Cryptology - CRYPTO 2001, 21st Annual International Cryptology Conference, Santa Barbara, California, USA, August 19-23, 2001, Proceedings, volume 2139 of Lecture Notes in Computer Science, pages 19-40, Springer, Heidelberg, 2001.R. Canetti and M. Fischlin, “Universally composable commitments”, In Joe Kilian, editor, Advances in Cryptology-CRYPTO 2001, 21st Annual International Cryptology Conference, Santa Barbara, California, USA, August 19-23, 2001, Proceedings, volume 2139 of Lecture Notes in Computer Science, pages 19-40, Springer, Heidelberg, 2001. Yehuda Lindell, “Highly-efficient universally-composable commitments based on the DDH assumption”, In Kenneth G. Paterson, editor, EUROCRYPT 2011, volume 6632 of Lecture Notes in Computer Science, pages 446-466, Springer, Heidelberg, 2011. The full version is available at Cryptology ePrint Archive http://eprint.iacr.org/2011/180.Yehuda Lindell, “Highly-efficient universally-composable commitments based on the DDH assumption”, In Kenneth G. Paterson, editor, EUROCRYPT 2011, volume 6632 of Lecture Notes in Computer Science, pages 446-466, Springer, Heidelberg, 2011. full version is available at Cryptology ePrint Archive http://eprint.iacr.org/2011/180. Olivier Blazy, Celine Chevalier, David Pointcheval and Damien Vergnaud, “Analysis and improvement of lindell's uc-secure commitment schemes”, In Michael J. Jacobson, Jr., Michael E. Locasto, Payman Mohassel and Reihaneh Safavi-Naini, editors, ACNS 2013, volume 7954 of Lecture Notes in Computer Science, pages 534-551, Springer, Heidelberg, 2013.Olivier Blazy, Celine Chevalier, David Pointcheval and Damien Vergnaud, “Analysis and improvement of lindell's uc-secure commitment schemes”, In Michael J. Jacobson, Jr., Michael E. Locasto, Payman Mohassel and Reihaneh Safavi-Naini, editors, ACNS 2013, volume 7954 of Lecture Notes in Computer Science, pages 534-551, Springer, Heidelberg, 2013. Ivan Damgard and Jesper Buus Nielsen, “Perfect hiding and perfect binding universally composable commitment schemes with constant expansion factor”, In Moti Yung, editor, CRYPTO 2002, volume 2442 of Lecture Notes in Computer Science, pages 581-596, Springer, Heidelberg, 2002. The full version is available at http://www.brics.dk/RS/01/41/.Ivan Damgard and Jesper Buus Nielsen, “Perfect hiding and perfect binding universally composable commitment schemes with constant expansion factor”, In Moti Yung, editor, CRYPTO 2002, volume 2442 of Lecture Notes in Computer Science, pages 581-596, Springer, Heidelberg, 2002. The full version is available at http://www.brics.dk/RS/01/41/. Ivan Damgard and Jens Groth, “Non-interactive and reusable non-malleable commitment schemes”, In STOC 2003, pages 426-437, ACM, 2003.Ivan Damgard and Jens Groth, “Non-interactive and reusable non-malleable commitment schemes”, In STOC 2003, pages 426-437, ACM, 2003. Marc Fischlin, Benoit Libert, and Mark Manulis, “Non-interactive and re-usable universally composable string commitments with adaptive security”, In Dong Hoon Lee and Xiaoyun Wang, editors, ASIACRYPT 2011, volume 7073 of Lecture Notes in Computer Science, pages 468-485, Springer, Heidelberg, 2011.Marc Fischlin, Benoit Libert, and Mark Manulis, “Non-interactive and re-usable universally composable string commitments with adaptive security”, In Dong Hoon Lee and Xiaoyun Wang, editors, ASIACRYPT 2011, volume 7073 of Lecture Notes in Computer Science, pages 468-485, Springer, Heidelberg, 2011. Eiichiro Fujisaki, “All-But-Many encryption - A new framework for fully-equipped UC commitments”, In Palash Sarkar and Tetsu Iwata, editors, ASIACRYPT 2014 (2), volume 8874 of Lecture Notes in Computer Science, pages 426-447, Springer, Heidelberg, 2014.Eiichiro Fujisaki, “All-But-Many encryption-A new framework for fully-equipped UC commitments”, In Palash Sarkar and Tetsu Iwata, editors, ASIACRYPT 2014 (2), volume 8874 of Lecture Notes in Computer Science, pages 426-447 , Springer, Heidelberg, 2014.

しかし、非特許文献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 Document 5, Non-Patent Document 6, and Non-Patent Document 8 have the prime factorization type problem as the basis of safety, the security parameter becomes large, and the non-patent document that sets the basis of safety as the DL type problem. 3. Compared with Non-Patent Document 4, the amount of communication and the amount of calculation are inferior. Non-Patent Document 7 bases safety on the DL type problem, but because it is configured on symmetric pairing (Reference Non-Patent Document 1), the security parameter length is the same as the prime factorization type, which is also inefficient. .
(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, Non-Patent Document 3, Non-Patent Document 4, and Non-Patent Document 7 are information discard types, and Non-Patent Document 5, Non-Patent Document 6, and Non-Patent Document 8 are information discard-free types. In addition, Non-Patent Document 4, Non-Patent Document 5, and Non-Patent Document 6 require a three-way communication with commitment, Non-Patent Document 3 requires a five-way communication, and Non-Patent Document 7 and Non-Patent Document 8 are non-interactive.

このように、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8の各方式を見てみるといずれも一長一短ある。しかし、実装面を考えると、通信量と計算量の点で非特許文献4の方式が最も効率のよい従来方式である。   As described above, each of the methods of Non-Patent Document 3, Non-Patent Document 4, Non-Patent Document 5, Non-Patent Document 6, Non-Patent Document 7, and Non-Patent Document 8 has advantages and disadvantages. However, when considering the mounting aspect, the method of Non-Patent Document 4 is the most efficient conventional method in terms of communication amount and calculation amount.

そこで本発明では、共通パラメータ長、通信量、計算量を削減することが可能となる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.

本発明の一態様は、共通参照情報生成装置と、コミット生成装置と、コミット受信装置とを含むコミットメントシステムであって、κをセキュリティパラメータ、λ(・),λ(・)をκの関数、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.

本発明の一態様は、共通参照情報生成装置と、コミット生成装置と、コミット受信装置とを含むコミットメントシステムであって、κをセキュリティパラメータ、λ(・),λ(・)をκの関数、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.

コミットメントシステム100の構成を示すブロック図。1 is a block diagram showing a configuration of a commitment system 100. FIG. 共通参照情報生成装置200の構成を示すブロック図。The block diagram which shows the structure of the common reference information generation apparatus 200. FIG. 共通参照情報生成装置200の動作を示すフローチャート。5 is a flowchart showing the operation of the common reference information generating apparatus 200. コミット生成装置300の構成を示すブロック図。FIG. 2 is a block diagram showing a configuration of a commit generation device 300. コミット受信装置400の構成を示すブロック図。FIG. 3 is a block diagram showing a configuration of a commit receiving device 400. コミットフェーズのシークエンス図(実施形態1)。FIG. 3 is a sequence diagram of a commit phase (first embodiment). デコミットフェーズのシークエンス図(実施形態1)。FIG. 3 is a sequence diagram of a decommit phase (first embodiment). 離散対数問題に基づくコミットメント方式の比較表(実施形態2)。Comparison table of commitment methods based on discrete logarithm problem (Embodiment 2). コミット生成装置500の構成を示すブロック図。FIG. 3 is a block diagram showing a configuration of a commit generation device 500. コミット受信装置600の構成を示すブロック図。4 is a block diagram showing a configuration of a commit receiving device 600. FIG. コミットフェーズのシークエンス図(実施形態3)。FIG. 10 is a sequence diagram of a commit phase (third embodiment). デコミットフェーズのシークエンス図(実施形態3)。FIG. 10 is a sequence diagram of a decommit phase (third embodiment). 離散対数問題に基づくコミットメント方式の比較表(実施形態4)。Comparison table of commitment schemes based on the discrete logarithm problem (Embodiment 4).

以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。   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>
Non-patent document 4, which is a CRS reusable and adaptively secure universally joinable commitment that is considered to be the most efficient at present, is a public key cipher Cramer-Shoup cipher that is strong against selective ciphertext attacks (reference non-patent document 2) And Pedersen Trapdoor Commitment (Reference Non-Patent Document 3) and Sigma Protocol (Reference Non-Patent Document 4).
(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.

κをセキュリティパラメータ、λ(・),λ(・)をκの関数とする。しばしば、λ(κ)=κ,λ(κ)=κである。
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: Security parameter 1 κ
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: Security parameter 1 κ
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 Reference Non-Patent Document 4 for details).
1. For all (x, w) ∈R,

Figure 0006563857
Figure 0006563857

この式は、(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を以下のように定義する。
enc={(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は、デコミットフェーズのシークエンス図である。
<Embodiment 1>
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 information generation apparatus 200. FIG. 3 is a flowchart showing the operation of the common reference information generating apparatus 200. FIG. 4 is a block diagram illustrating a configuration of the commit generation device 300. FIG. 5 is a block diagram illustrating a configuration of the commit reception device 400. FIG. 6 is a sequence diagram of the commit phase. FIG. 7 is a sequence diagram of the decommit phase.

図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 information generation device 200, a commit generation device 300, and a commit reception device 400. The common reference information generating device 200, the commit generating device 300, and the commit receiving device 400 are connected to a network 800 (eg, the Internet) and can communicate with each other. As shown in FIG. 2, the common reference information generation apparatus 200 includes a key generation unit 210, a CRS generation unit 220, and a hash function recording unit 290. As illustrated in FIG. 4, the commit generation device 300 includes a secret information encryption unit 305, a first message calculation unit 310, a hash value calculation unit 315, a hash value encryption unit 320, and a first commit unit 325. , A second message calculation unit 330, a deletion unit 335, a second commit unit 340, a disclosure unit 350, a communication unit 380, and a disclosure information recording unit 390. As illustrated in FIG. 5, the commit reception device 400 includes a random number generation unit 405, a hash value calculation unit 450, an unsealing unit 455, a communication unit 480, and a commit information recording unit 490.

[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 information generation device 200 generates common reference information crs from the security parameter 1 κ . The key generation unit 210 uses the key generation algorithm K of the public key cryptography PKE and the key generation algorithm Gen tc of the trap door commitment TCOM from the security parameter 1 κ , and (pk enc , sk enc ) ← K (1 κ ) And (pk tc , sk tc ) ← Gen tc (1 κ ) are generated, and sk nc and sk tc are discarded (S210).

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 CRS generation unit 220 reads the hash function H: {0, 1} * → {0, 1} λ_m recorded in the hash function recording unit 290, and commonly refers to crs = (pk enc , pk tc , H). It produces | generates and outputs as information (CRS) (S220). The common reference information crs is disclosed so that it can be acquired from the commit generation device 300 and the commit reception device 400. Alternatively, the common reference information generation apparatus 200 may transmit crs to the commit generation apparatus 300 and the commit reception apparatus 400. In any case, at the start of the commit phase, the commit generation device 300 and the commit reception device 400 hold crs.

[コミット(封じ手)フェーズ]
本実施形態のコミットメントはコミット生成装置300とコミット受信装置400の3交信からなるプロトコルである。
[Commit (sealing) phase]
The commitment of the present embodiment is a protocol composed of three communications between the commit generation device 300 and the commit reception device 400.

コミット生成装置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 generation device 300 takes the secret information mεMSP pk ^ enc to be committed as input, generates a random number w ← COIN pk ^ enc, and encrypts the encryption algorithms E and crs of the public key cryptography PKE. The encrypted secret information CT = E pk ^ enc (m, w) is calculated using pk enc which is the first element of (S305). However, MSP pk ^ enc is a plaintext space and COIN pk ^ enc is a random number space.

なお、秘匿情報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 generation device 300 uses the first message generation algorithm P Σ com of the sigma protocol Σ on the language L enc , and the first message calculation unit 310 of the sigma protocol Σ for the element (m, CT) of the language L enc One message (α, ξ) ← P Σ com ((m, CT), w) is calculated (S310). Here, w is an element of COIN pk ^ enc that satisfies CT = E pk ^ enc (m, w), and is the random number w generated in S305.

コミット生成装置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 generation device 300 calculates the hash value φ = H (sid, ssid, C, R, m, CT, α) using the hash function H that is the third element of crs ( S315). sid is a session ID, ssid is a sub-session ID, C is an ID of the commit generation device 300, and R is an ID of the commit reception device 400, each represented by a finite bit string.

コミット生成装置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 generation device 300 generates a random number r tc ← COIN pk ^ tc , and uses pk tc which is the second element of the encryption algorithm Com tc and crs of the trapdoor commitment TCOM, The encrypted hash value Ψ = Com tc pk ^ tc (φ; r tc ) is calculated (S320). Where COIN pk ^ tc is a random number space.

コミット生成装置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 generation device 300 transmits the quadruple ID (sid, ssid, C, R) and the encrypted hash value Ψ to the commit reception device 400 (S325). (Sid, ssid, C, R) and Ψ are received using the communication unit 480 (S480-1).

コミット受信装置400の乱数生成部405は、(sid,ssid,C,R)を検証し、問題なければ乱数ε←{0,1}λ_cを発生させ、コミット生成装置300に送信する(S405)。コミット生成装置300は、通信部380を用いて、εを受信する(S380−1)。 The random number generation unit 405 of the commit reception device 400 verifies (sid, ssid, C, R), and if there is no problem, generates a random number ε ← {0, 1} λ_c and transmits it to the commit generation device 300 (S405). . The commit generation device 300 receives ε using the communication unit 380 (S380-1).

コミット生成装置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 generation device 300 uses the second message generation algorithm P Σ ans of the sigma protocol Σ on the language L enc , and the second message calculation unit 330 of the sigma protocol Σ for the element (m, CT) of the language L enc Two messages γ = P Σ ans ((m, CT), w, ξ, ε) are calculated (S330). Here, ξ is the second element of the first message calculated in S310.

コミット生成装置300の消去部335は、乱数w,第一メッセージの第2要素ξを消去する(S335)。   The erasure unit 335 of the commit generation device 300 erases the random number w and the second element ξ of the first message (S335).

コミット生成装置300の第二コミット部340は、暗号化済秘匿情報CTをコミット受信装置400に送信(S340)、コミット受信装置400は、通信部480を用いて、暗号化済秘匿情報CTを受信し、コミット受信装置400はデコミットフェーズのための受理状態になる(S480−2)。   The second commit unit 340 of the commit generation device 300 transmits the encrypted confidential information CT to the commit reception device 400 (S340), and the commit reception device 400 receives the encrypted confidential information CT using the communication unit 480. Then, the commit receiver 400 enters an accepting state for the decommit phase (S480-2).

コミット生成装置300は、秘匿情報m、第一メッセージの第1要素α、第二メッセージγ、乱数rtcからなる4つ組(m,α,γ,rtc)を開示情報として開示情報記録部390に記録する(S390)。また、コミット受信装置400は、暗号化済秘匿情報CT、暗号化済ハッシュ値Ψ、乱数εからなる3つ組(CT,Ψ,ε)をコミット情報としてコミット情報記録部490に記録する(S490)。 The commit generation device 300 uses the quadruple (m, α, γ, r tc ) including the secret information m, the first element α of the first message, the second message γ, and the random number r tc as disclosure information as a disclosure information recording unit. It records in 390 (S390). Further, the commit receiving device 400 records a triplet (CT, Ψ, ε) including the encrypted confidential information CT, the encrypted hash value Ψ, and the random number ε as commit information in the commit information recording unit 490 (S490). ).

[デコミット(開封)フェーズ]
本実施形態のデコミットメントはコミット生成装置300がコミット受信装置400に開示情報を送りつけ、コミット受信装置400がそれを受理するか拒否するかを判定する非対話型プロトコルである。
[Decommit (open) phase]
The decommitment of the present embodiment is a non-interactive protocol in which the commit generation device 300 sends disclosure information to the commit reception device 400, and the commit reception device 400 determines whether to accept or reject it.

コミット生成装置300の開示部350は、開示情報記録部390に記録しておいた開示情報(m,α,γ,rtc)をコミット受信装置400に送信(S350)、コミット受信装置400は、通信部480を用いて、開示情報(m,α,γ,rtc)を受信する(S480−3)。 The disclosure unit 350 of the commit generation device 300 transmits the disclosure information (m, α, γ, r tc ) recorded in the disclosure information recording unit 390 to the commit reception device 400 (S350). Disclosure information (m, α, γ, r tc ) is received using the communication unit 480 (S480-3).

コミット受信装置400のハッシュ値計算部450は、crsの第3要素であるハッシュ関数Hを用いて、ハッシュ値φ’= H(sid,ssid,C,R,m,CT,α)を計算し復元する(S450)。なお、(sid,ssid,C,R)はコミットフェーズにおいてコミット生成装置300から受信し、保持しておいたものである。また、CTはコミット情報記録部490に記録したコミット情報(CT,Ψ,ε)の第1要素である。   The hash value calculation unit 450 of the commit reception device 400 calculates a hash value φ ′ = H (sid, ssid, C, R, m, CT, α) using the hash function H that is the third element of crs. Restore (S450). Note that (sid, ssid, C, R) is received from the commit generation device 300 and held in the commit phase. CT is the first element of the commit information (CT, Ψ, ε) recorded in the commit information recording unit 490.

コミット受信装置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,Ψ,ε)の各要素である。 Open portion 455 of the commit receiving apparatus 400, by using the verification algorithm V sigma vrfy Sigma protocol sigma on encryption algorithms trapdoor commitments TCOM Com tc and language L enc, Com tc pk ^ tc (φ '; r tc ) and V Σ vrfy ((m, CT), (α, ε, γ)), and Ψ = Com tc pk ^ tc (φ ′; r tc ) and V Σ vrfy ((m, CT), It is confirmed whether (α, ε, γ)) = 1 holds (S455). If it is confirmed that the above two formulas are established, it is determined that the opening has been normally performed and approved. On the other hand, opening is refused otherwise. Note that m, α, γ, r tc are the elements of the disclosure information (m, α, γ, r tc ) received in S480-3, and CT, Ψ, ε are the commit information recorded in the commit information recording unit 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 generation device 300, and (sid, ssid, C, R) is transmitted again from the commit generation device 300 to the commit reception device 400 in S350. Also good.

<実施形態2>
実施形態1は、CRS再利用型・適応的安全な汎用結合コミットメントの一般的構成法である。そこで、実施形態2では、以下の通り、巡回群Gを用いて実施形態1を具体化する。
<Embodiment 2>
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の生成元とする。また、κ=log(q)とする。群演算は、乗法で記述する。gがGの生成元であるので、任意のa,b∈Gに対して、a=g,b=gとなる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.

また、λ,λ≦κとする。 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κ(ただし、κ=log(q))
出力:x←Z/qZをランダムに取ってきて、Y=gx_eを計算する。Z,Z’←Gをランダムに取ってくる。(pkenc,skenc)=((Y,Z,Z’),x)とし、(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,g)を計算し、CT=(g,(Z ’),m・Y )を計算し、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=(CT,CT,CT)をCT,CT,CTに分解し、m=CT/CT 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=(CT,CT,CT),CT=g,CT=(Z ’),CT=m・Y を満たすw∈COINpk^encが存在する。}(ただし、t=H’(sid,ssid,C,R,CT))と定義する。
[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=(CT,CT,CT),CT=g,CT=(Z ’),CT=m・Y を満たす。なお、t=H’(sid,ssid,C,R,CT))
つまり、(pkenc,sid,ssid,C,R)も暗黙に含まれる。
出力:ξ←Z/qZをランダムに選び、α=gξ,t= H’(sid,ssid,C,R,α), α=(Z ’)ξ,α=Y ξと計算する。α=(α,α,α)とし、(α,ξ)を出力する。
<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=(CT,CT,CT),CT=g,CT=(Z ’),CT=m・Y を満たす。なお、t=H’(sid,ssid,C,R,CT))
出力:γ=ξ−ε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,(α,ε,γ)
出力:α=gγCT ε、α=(Z ’)γCT ε、α=Y γ(CT/m)εをすべて満たすなら1を、そうでないなら0を出力する。
<V Σ vrfy >
Input: (m, CT) εL enc , (α, ε, γ)
Output: α 1 = g γ CT 1 ε, α 2 = (Z e t Z e ') γ CT 2 ε, α 3 = Y e γ 1 if (CT 3 / m) satisfy all the epsilon, if not 0 is output.

<simPΣ com
入力: (m,CT)∈Lenc,ε
出力:γ←Z/qZをランダムに選び、α=gγCT ε=(Z ’)γCT ε、α=Y γ(CT/m)εを計算し、α=(α,α,α)とし、(α,γ)を出力する。
<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κ(ただし、κ=log(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_tcφを計算し、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=gφを満たすことに注意)。
<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 Embodiment 2>
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 Non-Patent Document 3 and Non-Patent Document 4. As can be seen from this table, the second and third embodiments are similar in terms of common parameter length, communication amount, and calculation amount in spite of assumptions equivalent to non-patent document 3 and non-patent document 4. I'm winning.

ただし、κはセキュリティパラメータ、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と同等になるように、λ(κ)=κ,λ(κ)=κと設定した。つまり、安全性の点では、実施形態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 Non-Patent Document 3 and Non-Patent Document 4 in consideration of safety. . That is, in terms of safety, the invention of the second embodiment is comparable to DL type non-patent document 3 and non-patent document 4.

また、非特許文献3、非特許文献4、実施形態2のコミットできる平文mは、|G|ビット以下である。   The plaintext m that can be committed in Non-Patent Document 3, Non-Patent Document 4, and Embodiment 2 is | G | bits or less.

<実施形態3>
実施形態1では、CRS再利用型・適応的安全な汎用結合コミットメントの一般的構成法を示した。しかし、場合によっては、汎用結合可能コミットメントシステムに求められる安全性として、静的安全性で十分なこともある。また、コミットメントはゼロ知識証明と組み合わさることでしばしば開示することなく利用される。この場合、コミットフェーズの通信量、計算量ができるだけ少なく、コミットフェーズが非対話型であればより望ましい。
<Embodiment 3>
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 information generation device 200 included in the commitment system 100. Therefore, hereinafter, the commit generation device 500 and the commit reception device 600 included in the CRS reuse type / static secure general-purpose combined commitment system will be described with reference to FIGS. FIG. 9 is a block diagram illustrating a configuration of the commit generation device 500. FIG. 10 is a block diagram illustrating a configuration of the commit reception device 600. FIG. 11 is a sequence diagram of the commit phase. FIG. 12 is a sequence diagram of the decommit phase.

図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 information encryption unit 505, a second commit unit 540, a first message calculation unit 510, a hash value calculation unit 515, and a hash value encryption unit 520. , A first disclosure unit 525, a second message calculation unit 530, a second disclosure unit 550, a communication unit 580, and a disclosure information generation information recording unit 590. As illustrated in FIG. 10, the commit reception device 600 includes a random number generation unit 605, a hash value calculation unit 650, an unsealing unit 655, a communication unit 680, and a commit information recording unit 690.

[コミット(封じ手)フェーズ]
本実施形態のコミットメントはコミット生成装置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 information encryption unit 505 of the commit generation device 500 takes the secret information mεMSP pk ^ enc to be input as an input, generates a random number w ← COIN pk ^ enc, and encrypts the encryption algorithms E and crs of the public key encryption PKE. The encrypted secret information CT = E pk ^ enc (m, w) is calculated using pk enc that is the first element of (S505). However, MSP pk ^ enc is a plaintext space and COIN pk ^ enc is a random number space.

なお、秘匿情報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 unit 540 of the commit generation device 500 transmits the quadruple ID (sid, ssid, C, R) and the encrypted confidential information CT to the commit reception device 600 (S540). The communication unit 680 is used to receive the quadruple ID (sid, ssid, C, R) and the encrypted confidential information CT, and the commit receiving device 600 enters an accepting state for the decommit phase (S680-). 1). sid is a session ID, ssid is a sub-session ID, C is an ID of a commit generation device 500, and R is an ID of a commit reception device 600, each represented by a finite bit string.

コミット生成装置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 information recording unit 590 as disclosed information generating information ( S590). Further, the commit receiving device 600 records the encrypted confidential information CT as commit information in the commit information recording unit 690 (S690).

[デコミット(開封)フェーズ]
本実施形態のデコミットメントはコミット生成装置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 message calculation unit 510 of the commit generation device 500 uses the first message generation algorithm P Σ com of the sigma protocol Σ on the language L enc , and the first message calculation unit 510 of the sigma protocol Σ for the element (m, CT) of the language L enc One message (α, ξ) ← P Σ com ((m, CT), w) is calculated (S510). Here, m, CT, and w are those recorded in the disclosure information generation information recording unit 590 as disclosure information generation information in S590. Note that w is an element of COIN pk ^ enc that satisfies CT = E pk ^ enc (m, w).

コミット生成装置500のハッシュ値計算部515は、crsの第3要素であるハッシュ関数Hを用いて、ハッシュ値φ=H(sid,ssid,C,R,m,CT,α)を計算する(S515)。なお、(sid,ssid,C,R)はコミットフェーズにおいてコミット生成装置500から受信し、保持しておいたものである。   The hash value calculation unit 515 of the commit generation device 500 calculates the hash value φ = H (sid, ssid, C, R, m, CT, α) using the hash function H that is the third element of crs ( S515). Note that (sid, ssid, C, R) is received from the commit generation device 500 and held in the commit phase.

コミット生成装置500のハッシュ値暗号化部520は、乱数rtc←COINpk^tcを発生させ、落し戸付きコミットメントTCOMの暗号化アルゴリズムComtc、crsの第2要素であるpktcを用いて、暗号化済ハッシュ値Ψ=Comtc pk^tc (φ;rtc) を計算する(S520)。ただし、COINpk^tcは乱数空間である。 The hash value encryption unit 520 of the commit generation device 500 generates a random number r tc ← COIN pk ^ tc , and uses pk tc which is the second element of the encryption algorithm Com tc and crs of the trapdoor commitment TCOM, The encrypted hash value Ψ = Com tc pk ^ tc (φ; r tc ) is calculated (S520). Where COIN pk ^ tc is a random number space.

コミット生成装置500の第一開示部525は、暗号化済ハッシュ値Ψを第一開示情報としてコミット受信装置600に送信(S525)、コミット受信装置600は、通信部680を用いて、Ψを受信する(S680−2)。   The first disclosure unit 525 of the commit generation device 500 transmits the encrypted hash value Ψ as the first disclosure information to the commit reception device 600 (S525), and the commit reception device 600 receives Ψ using the communication unit 680. (S680-2).

コミット受信装置600の乱数生成部605は、(sid,ssid,C,R)を検証し、問題なければ乱数ε←{0,1}λ_cを発生させ、コミット生成装置500に送信する(S605)。コミット生成装置500は、通信部580を用いて、εを受信する(S580−1)。 The random number generation unit 605 of the commit reception device 600 verifies (sid, ssid, C, R), and if there is no problem, generates a random number ε ← {0, 1} λ_c and transmits it to the commit generation device 500 (S605). . The commit generation device 500 receives ε using the communication unit 580 (S580-1).

コミット生成装置500の第二メッセージ計算部530は、言語Lenc上のシグマプロトコルΣの第二メッセージ生成アルゴリズムPΣ ansを用いて、言語Lencの元(m,CT)に対するシグマプロトコルΣの第二メッセージγ=PΣ ans((m,CT),w,ξ,ε)を計算する(S530)。ここで、ξはS510で計算した第一メッセージの第2要素である。 The second message calculation unit 530 of the commit generation device 500 uses the second message generation algorithm P Σ ans of the sigma protocol Σ on the language L enc , and the second message calculation unit 530 of the sigma protocol Σ for the element (m, CT) of the language L enc Two messages γ = P Σ ans ((m, CT), w, ξ, ε) are calculated (S530). Here, ξ is the second element of the first message calculated in S510.

コミット生成装置500の第二開示部550は、秘匿情報m、第一メッセージの第1要素α、第二メッセージγ、乱数rtcを4つ組にした第二開示情報(m,α,γ,rtc)をコミット受信装置600に送信(S550)、コミット受信装置600は、通信部680を用いて、第二開示情報(m,α,γ,rtc)を受信する(S680−3)。 The second disclosure unit 550 of the commit generation device 500 includes the second disclosure information (m, α, γ,) including the secret information m, the first element α of the first message, the second message γ, and the random number r tc . r tc ) is transmitted to the commit receiving device 600 (S550), and the commit receiving device 600 receives the second disclosure information (m, α, γ, r tc ) using the communication unit 680 (S680-3).

コミット受信装置600のハッシュ値計算部650は、crsの第3要素であるハッシュ関数Hを用いて、ハッシュ値φ’= H(sid,ssid,C,R,m,CT,α)を計算し復元する(S650)。なお、(sid,ssid,C,R)はコミットフェーズにおいてコミット生成装置500から受信し、保持しておいたものである。また、CTはコミット情報記録部690に記録したコミット情報である。   The hash value calculation unit 650 of the commit reception device 600 calculates a hash value φ ′ = H (sid, ssid, C, R, m, CT, α) using the hash function H that is the third element of crs. Restoration is performed (S650). Note that (sid, ssid, C, R) is received from the commit generation device 500 and held in the commit phase. CT is commit information recorded in the commit information recording unit 690.

コミット受信装置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で受信した第一開示情報である。 Open portion 655 of the commit receiving apparatus 600, by using the verification algorithm V sigma vrfy Sigma protocol sigma on encryption algorithms trapdoor commitments TCOM Com tc and language L enc, Com tc pk ^ tc (φ '; r tc ) and V Σ vrfy ((m, CT), (α, ε, γ)), and Ψ = Com tc pk ^ tc (φ ′; r tc ) and V Σ vrfy ((m, CT), It is confirmed whether (α, ε, γ)) = 1 holds (S655). If it is confirmed that the above two formulas are established, it is determined that the opening has been normally performed and approved. On the other hand, opening is refused otherwise. Note that m, α, γ, r tc are elements of the second disclosure information (m, α, γ, r tc ) received in S680-3, CT is commit information recorded in the commit information recording unit 690, and Ψ is This is the first disclosure information received in 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に適用した汎用結合コミットメントである。
<Embodiment 4>
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. Embodiment 4 may be a general-purpose binding of applying a public key cryptography PKE used in the second embodiment, the language L enc defined from the public key encryption, Sigma protocol Σ linguistic L enc, the trapdoor commitments TCOM to Embodiment 3 It is a commitment.

これにより、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 Embodiment 4>
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 Non-Patent Document 3 and Non-Patent Document 4. Note that non-patent document 3 (Lin11) and non-patent document 4 (BCPV13) in FIG. 13 are different from non-patent document 3 (Lin11) and non-patent document 4 (BCPV13) in FIG. Is a general-purpose combined commitment. As can be seen from this table, as in the case of the second embodiment, the fourth embodiment is similar to the non-patent document 3 and the non-patent document 4, but the common parameter length, communication amount, calculation You win in terms of quantity.

なお、実施形態4の効率も安全性を考慮に入れて、非特許文献3や非特許文献4と同等になるように、λ(κ)=κ,λ(κ)=κと設定したのは実施形態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 Non-Patent Document 3 and Non-Patent Document 4. This is the same as in the second embodiment. That is, in terms of safety, like the second embodiment, the invention of the fourth embodiment is comparable to the DL type non-patent document 3 and the non-patent document 4.

また、非特許文献3、非特許文献4、実施形態4のコミットできる平文mは、|G|ビット以下である点も実施形態2と同様である。   The plaintext m that can be committed in Non-Patent Document 3, Non-Patent Document 4, and Embodiment 4 is the same as that of Embodiment 2 in that it is equal to or smaller than | G | bits.

<補記>
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、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)

共通参照情報生成装置と、コミット生成装置と、コミット受信装置とを含むコミットメントシステムであって、
κをセキュリティパラメータ、λ(・),λ(・)をκの関数、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上のシグマプロトコルΣの検証アルゴリズムとして、
前記共通参照情報生成装置は、
κから、前記鍵生成アルゴリズム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.
共通参照情報生成装置と、コミット生成装置と、コミット受信装置とを含むコミットメントシステムであって、
κをセキュリティパラメータ、λ(・),λ(・)をκの関数、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上のシグマプロトコルΣの検証アルゴリズムとして、
前記共通参照情報生成装置は、
κから、前記鍵生成アルゴリズム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.
請求項1または請求項2に記載のコミットメントシステムであって、
gを位数qの巡回群Gの生成元、前記κをκ=log(q)、前記ハッシュ関数HをH’:{0,1}→Z/qZ(つまり、有限長のビット列x∈{0,1}をZ/qZの元にハッシュするハッシュ関数)とし、
前記λ,λはλ,λ≦κを満たし、
前記鍵生成アルゴリズムKは、x←Z/qZをランダムに取ってきて、Y=gx_eを計算し、Z,Z’←Gをランダムに取ってきた後、(pkenc,skenc)=((Y,Z,Z’),x)を出力するアルゴリズムであり、
前記暗号化アルゴリズムEは、乱数w←COINpk^encを生成し、t=H’(sid,ssid,C,R,g)を計算し、CT=(g,(Z ’),m・Y )(ただし、m∈G)を出力するアルゴリズムであり、
前記言語LencをLenc={(m,CT)|CT=(CT,CT,CT),CT=g,CT=(Z ’),CT=m・Y を満たすw∈COINpk^encが存在する。}(ただし、t=H’(sid,ssid,C,R,CT))とし、
前記第一メッセージ生成アルゴリズムPΣ comは、(m,CT), w(ただし、CT=(CT,CT,CT),CT=g,CT=(Z ’),CT=m・Y を満たす。なお、t=H’(sid,ssid,C,R,CT))を入力とし、ξ←Z/qZをランダムに選び、α=gξ,t= H’(sid,ssid,C,R,α), α=(Z ’)ξ,α=Y ξと計算し、α=(α,α,α)とし、(α,ξ)を出力するアルゴリズムであり、
前記第二メッセージ生成アルゴリズムPΣ ansは、(m,CT), w,ξ,ε∈{0,1}λ_c(ただし、CT=(CT,CT,CT),CT=g,CT=(Z ’),CT=m・Y を満たす。なお、t=H’(sid,ssid,C,R,CT))を入力とし、γ=ξ−εw mod qを計算し、γを出力するアルゴリズムであり、
前記検証アルゴリズムVΣ vrfyは、(m,CT)∈Lenc,(α,ε,γ)を入力とし、α=gγCT ε、α=(Z ’)γCT ε、α=Y γ(CT/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_tcを計算し、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.
請求項1ないし3のいずれか1項に記載のコミットメントシステムに含まれる共通参照情報生成装置。 The common reference information generation apparatus included in the commitment system according to any one of claims 1 to 3 . 請求項1ないし3のいずれか1項に記載のコミットメントシステムに含まれるコミット生成装置。 A commit generation device included in the commitment system according to any one of claims 1 to 3 . 請求項1ないし3のいずれか1項に記載のコミットメントシステムに含まれるコミット受信装置。 A commit receiver included in the commitment system according to any one of claims 1 to 3 . 共通参照情報生成装置と、コミット生成装置と、コミット受信装置とを含むコミットメントシステムが実行するコミットメント方法であって、
κをセキュリティパラメータ、λ(・),λ(・)をκの関数、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.
請求項4に記載の共通参照情報生成装置としてコンピュータを機能させるためのプログラム。 A program for causing a computer to function as the common reference information generating apparatus according to claim 4. 請求項5に記載のコミット生成装置としてコンピュータを機能させるためのプログラム。A program for causing a computer to function as the commit generation device according to claim 5. 請求項6に記載のコミット受信装置としてコンピュータを機能させるためのプログラム。A program for causing a computer to function as the commit receiver according to claim 6.
JP2016110377A 2016-06-01 2016-06-01 Commitment system, common reference information generation device, commit generation device, commit reception device, commitment method, program Active JP6563857B2 (en)

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)

* Cited by examiner, † Cited by third party
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

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