KR102268548B1 - Simulation-extractable succinct non-interactive arguments of knowledge method and apparatus - Google Patents

Simulation-extractable succinct non-interactive arguments of knowledge method and apparatus Download PDF

Info

Publication number
KR102268548B1
KR102268548B1 KR1020190062516A KR20190062516A KR102268548B1 KR 102268548 B1 KR102268548 B1 KR 102268548B1 KR 1020190062516 A KR1020190062516 A KR 1020190062516A KR 20190062516 A KR20190062516 A KR 20190062516A KR 102268548 B1 KR102268548 B1 KR 102268548B1
Authority
KR
South Korea
Prior art keywords
proof
knowledge
common reference
reference string
group
Prior art date
Application number
KR1020190062516A
Other languages
Korean (ko)
Other versions
KR20200136675A (en
Inventor
오현옥
김지혜
이지원
Original Assignee
한양대학교 산학협력단
국민대학교산학협력단
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 한양대학교 산학협력단, 국민대학교산학협력단 filed Critical 한양대학교 산학협력단
Priority to KR1020190062516A priority Critical patent/KR102268548B1/en
Publication of KR20200136675A publication Critical patent/KR20200136675A/en
Application granted granted Critical
Publication of KR102268548B1 publication Critical patent/KR102268548B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

본 발명은 비상호적 영지식 증명 방법 및 장치를 개시한다. 본 발명에 따르면, 프로세서 및 상기 프로세서에 연결된 메모리를 포함하되, 상기 메모리는, 증명을 위한 그룹 원소 (A, B, C) 중 C에 A 및 B를 입력으로 하는 해시함수를 부가하여 증명을 생성하도록, 상기 프로세서에 의해 실행 가능한 프로그램 명령어들을 저장하는 비상호적 영지식 증명 장치가 제공된다. The present invention discloses a method and apparatus for non-reciprocal zero-knowledge proof. According to the present invention, it includes a processor and a memory connected to the processor, wherein the memory generates a proof by adding a hash function with A and B as inputs to C among group elements (A, B, C) for proof To do so, a non-reciprocal zero-knowledge proof apparatus for storing program instructions executable by the processor is provided.

Description

증명 변형 방지 비상호적 영지식 증명 방법 및 장치{Simulation-extractable succinct non-interactive arguments of knowledge method and apparatus}Proof-transformation prevention non-reciprocal zero-knowledge proof method and apparatus {Simulation-extractable succinct non-interactive arguments of knowledge method and apparatus}

본 발명은 증명 변형 방지 비상호적 영지식 증명 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for proof-transformation-resistant non-reciprocal zero-knowledge proof.

최근 프라이버시를 보장하는 블록체인 시스템이나, 계산을 위임하는 클라우드 시스템 등에서는 프라이버시를 보호하면서도 정당한 연산을 증명하기 위해 간결한 비상호적 영지식 증명(이하 zk-SNARK: zero-knowledge Succinct Non-interactive ARguments of Knowledge)을 필수적인 설계 도구로 사용한다.Recently, in blockchain systems that guarantee privacy or cloud systems that delegate computation, concise non-reciprocal zero-knowledge proofs (hereafter zk-SNARK: zero-knowledge Succinct Non-interactive ARguments of Knowledge) to prove legitimate operations while protecting privacy. ) as an essential design tool.

타원 곡선 그룹의 페어링 연산을 사용하는(pairing-based) 간결한 비상호적 영지식 증명은 증명자가 본인이 알고 있는 정보를 공개하지 않으면서도 간결한 방법으로 지식 소유를 증명할 수 있는 기술로, 최근 많은 주목을 받고 있는 암호기술이다. Concise, non-reciprocal zero-knowledge proof using the pairing operation of an elliptic curve group is a technique that allows a prover to prove knowledge possession in a concise way without disclosing the information he or she knows. It is encryption technology.

최근 연구에서 증명 변형 방지 비상호적 영지식 증명(이하 SE-SNARK: simulation-extractable succinct non-interactive arguments of knowledge)의 경우, 가장 최신 연구를 살펴보아도 제곱산술회로(이하 SAP: Square Arithmetic Program)를 기반으로 설계되어 있다.In the case of proof deformation prevention non-reciprocal zero-knowledge proof (SE-SNARK: simulation-extractable succinct non-interactive arguments of knowledge) in recent studies, even the most recent research is based on a square arithmetic circuit (SAP: Square Arithmetic Program) is designed with

[PGHR13] Parno, Bryan, et al. "Pinocchio: Nearly practical verifiable computation." 2013 IEEE Symposium on Security and Privacy. IEEE, 2013.는 타원 곡선 페어링과 QAP(Quadratic Arithmetic Program)를 사용하여 처음으로 산술 회로 크기에 상관없이 증명의 크기가 상수로 고정되는 zk-SNARK를 제안하였다. 이 연구에서는 산술회로가 아무리 증가해도 검증에 필요한 증명의 크기는 타원곡선 그룹 원소 8개로 고정되고 검증 연산은 5개로 동일하다.[PGHR13] Parno, Bryan, et al. "Pinocchio: Nearly practical verifiable computation." 2013 IEEE Symposium on Security and Privacy. IEEE, 2013. proposed zk-SNARK in which the size of the proof is fixed as a constant regardless of the size of the arithmetic circuit for the first time using elliptic curve pairing and QAP (Quadratic Arithmetic Program). In this study, no matter how many arithmetic circuits are increased, the size of the proof required for verification is fixed with 8 elements of the elliptic curve group, and the verification operation is the same with 5 elements.

[Gro16] Groth, Jens. "On the size of pairing-based non-interactive arguments." Annual International Conference on the Theory and Applications of Cryptographic Techniques. Springer, Berlin, Heidelberg, 2016.는 zk-SNARK 중에서 가장 효율적인 결과를 얻어낸 최신 설계이다. 이 설계에서는 기존 연구에 비해 zk-SNARK의 검증에서 필요한 증명 크기와 페어링 연산을 최적화하는데 집중하였다. 그 결과 산술회로 크기에 상관없이 증명의 크기는 원소 3개, 검증 연산은 단일 연산으로 고정된다.[Gro16] Groth, Jens. "On the size of pairing-based non-interactive arguments." Annual International Conference on the Theory and Applications of Cryptographic Techniques. Springer, Berlin, Heidelberg, 2016. is the latest design with the most efficient results among zk-SNARKs. Compared to previous studies, this design focused on optimizing the proof size and pairing operation required for validation of zk-SNARK. As a result, regardless of the size of the arithmetic circuit, the size of the proof is fixed to three elements and the verification operation is fixed to a single operation.

그러나 zk-SNARK는 이미 만들어진 증명이 있을 경우, 중간자가 이를 변형하여 증명자가 알고 있는 정보 없이도 다른 형태의 증명을 만들어내는 것이 가능한 문제가 있었다. However, in the case of zk-SNARK, if there is a proof that has already been created, there is a problem that the middleman can transform it and create another type of proof without the information known by the prover.

[GM17] Groth, Jens, and Mary Maller. "Snarky signatures: Minimal signatures of knowledge from simulation-extractable snarks." Annual International Cryptology Conference. Springer, Cham, 2017.에서는 SE-SNARK라는 새로운 정의를 제안하고, 이에 맞는 최적화된 설계를 제안하였다. 이 설계에서는 기존 [Gro16]에 비교해 볼 때 증명 크기는 여전히 원소 3개로 유지하였지만, 변형 방지를 위한 추가적인 검증을 위해 검증 연산이 두 개로 증가하였다. 또한 기존 [Gro16]은 기반으로 삼는 산술 회로에 [PGHR13]과 동일한 QAP를 사용하였지만, [GM17]은 변형 방지를 위해 QAP 대신 SAP를 사용하였다. SAP는 제곱의 형태를 가지는 산술회로이며 QAP보다 산술회로의 크기가 두배로 증가하는 형식이기 때문에 키 크기 및 증명 시간이 두배로 증가하게 된다.[GM17] Groth, Jens, and Mary Maller. "Snarky signatures: Minimal signatures of knowledge from simulation-extractable snarks." Annual International Cryptology Conference. Springer and Cham, 2017. proposed a new definition of SE-SNARK and an optimized design for it. In this design, compared to the existing [Gro16], the proof size was still maintained at 3 elements, but the verification operation was increased to two for additional verification to prevent deformation. Also, the existing [Gro16] used the same QAP as [PGHR13] for the underlying arithmetic circuit, but [GM17] used SAP instead of QAP to prevent deformation. Since SAP is an arithmetic circuit in the form of a square and the size of the arithmetic circuit is doubled than that of QAP, the key size and proof time are doubled.

상기한 종래기술의 문제점을 해결하기 위해, 본 발명은 단일 검증으로 증명을 확인하는 것이 가능하며 키 크기와 증명 시간도 줄일 수 있는 증명 변형 방지 비상호적 영지식 증명 방법 및 장치를 제안하고자 한다. In order to solve the problems of the prior art, the present invention intends to propose a method and apparatus for preventing non-reciprocal zero-knowledge proof from tampering that can confirm a proof by a single verification and can also reduce the key size and proof time.

상기한 바와 같은 목적을 달성하기 위하여, 본 발명의 일 실시예에 따르면, 비상호적 영지식 증명 장치로서, 프로세서; 및 상기 프로세서에 연결된 메모리를 포함하되, 상기 메모리는, 증명을 위한 그룹 원소 (A, B, C) 중 C에 A 및 B를 입력으로 하는 해시함수를 부가하여 증명을 생성하도록, 상기 프로세서에 의해 실행 가능한 프로그램 명령어들을 저장하는 비상호적 영지식 증명 장치가 제공된다. In order to achieve the above object, according to an embodiment of the present invention, there is provided a non-reciprocal zero-knowledge proof apparatus, comprising: a processor; and a memory coupled to the processor, wherein the memory is configured by the processor to generate a proof by adding a hash function with A and B as inputs to C among the group elements (A, B, C) for proof. A non-reciprocal zero-knowledge proof device for storing executable program instructions is provided.

상기 프로그램 명령어들은, 설정 과정에서, 관계 R을 입력으로 하여 공통참조문자열 및 시뮬레이션 트랩도어를 반환하고, 증명 과정에서, 이차산술회로 기반으로 상기 공통참조문자열, 상기 관계 R에 속하는 인스턴스 및 위트니스를 입력으로 하여 증명을 반환하고, 검증 과정에서, 상기 공통참조문자열, 상기 인스턴스 및 상기 증명을 입력으로 하여 검증 결과를 반환할 수 있다. In the setting process, the program instructions return a common reference string and a simulation trap door by inputting the relation R as input, and in the proof process, input the common reference string, the instance belonging to the relation R and the wisdom based on the secondary arithmetic circuit to return the proof, and during the verification process, the common reference string, the instance, and the proof may be input to return the verification result.

상기 C는 아래와 같이 C*로 수정될 수 있다. The C may be modified to C * as follows.

Figure 112019054681996-pat00001
Figure 112019054681996-pat00001

여기서,

Figure 112019054681996-pat00002
Figure 112019054681996-pat00003
Figure 112019054681996-pat00004
는 해시함수임here,
Figure 112019054681996-pat00002
and
Figure 112019054681996-pat00003
Wow
Figure 112019054681996-pat00004
is a hash function

상기 그룹 원소들은 쌍선형 지도(bilinear map)을 가질 수 있다. The group elements may have a bilinear map.

본 발명의 다른 측면에 따르면, 비상호적 영지식 증명 방법으로서, 관계 R을 입력으로 하여 공통참조문자열 및 시뮬레이션 트랩도어를 반환하는 단계; 이차산술회로 기반으로 상기 공통참조문자열, 상기 관계 R에 속하는 인스턴스 및 위트니스를 입력으로 하여 증명을 반환하는 단계-상기 증명은 증명을 위한 그룹 원소 (A, B, C) 중 C에 A 및 B를 입력으로 하는 해시함수를 부가함-; 및 상기 공통참조문자열, 상기 인스턴스 및 상기 증명을 입력으로 하여 검증 결과를 반환하는 단계를 포함하는 비상호적 영지식 증명 방법이 제공된다. According to another aspect of the present invention, there is provided a non-reciprocal zero-knowledge proof method, comprising: returning a common reference string and a simulation trapdoor with a relation R as an input; Returning a proof by inputting the common reference string, the instance belonging to the relation R, and the Witness based on the quadratic arithmetic circuit as inputs - The proof includes A and B in C among the group elements (A, B, C) for proof Added hash function as input-; and returning a verification result using the common reference string, the instance, and the proof as inputs.

본 발명에 따르면, 비대칭 그룹에서 이차산술회로를 사용하여 단일 검증이 가능하며 증명 시간도 단축할 수 있는 장점이 있다. According to the present invention, single verification is possible using a secondary arithmetic circuit in an asymmetric group, and there is an advantage in that the proof time can be shortened.

또한, 본 발명에 따르면, 대칭 그룹에서 단일 검증 방정식과 증명을 위한 원소를 2개로 간소화할 수 있는 장점이 있다. In addition, according to the present invention, there is an advantage in that a single verification equation and two elements for proof in a symmetric group can be simplified.

도 1은 본 발명의 일 실시예에 따른 비상호적 영지식 증명 장치의 구성을 도시한 도면이다. 1 is a diagram illustrating the configuration of a non-reciprocal zero-knowledge proof apparatus according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.Since the present invention can have various changes and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. However, this is not intended to limit the present invention to specific embodiments, and it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention.

도 1은 본 발명의 일 실시예에 따른 비상호적 영지식 증명 장치의 구성을 도시한 도면이다. 1 is a diagram illustrating the configuration of a non-reciprocal zero-knowledge proof apparatus according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 실시예에 따른 비상호적 영지식 증명 장치는 프로세서(100) 및 메모리(102)를 포함할 수 있다. As shown in FIG. 1 , the non-reciprocal zero-knowledge proof apparatus according to the present embodiment may include a processor 100 and a memory 102 .

메모리(102)는 고정식 하드 드라이브나 착탈식 저장 장치와 같은 불휘발성 저장 장치를 포함할 수 있다. 착탈식 저장 장치는 컴팩트 플래시 유닛, USB 메모리 스틱 등을 포함할 수 있다. 메모리(102)는 각종 랜덤 액세스 메모리와 같은 휘발성 메모리도 포함할 수 있다.Memory 102 may include a non-volatile storage device such as a fixed hard drive or a removable storage device. The removable storage device may include a compact flash unit, a USB memory stick, and the like. Memory 102 may also include volatile memory, such as various random access memories.

이와 같은 메모리(102)에는 프로세서(100)에 의해 실행 가능한 프로그램 명령어들이 저장된다. The memory 102 stores program instructions executable by the processor 100 .

본 실시예에 따른 프로그램 명령어들은, 증명을 위한 그룹 원소 (A, B, C) 중 C에 A 및 B를 입력으로 하는 해시함수를 부가하여 증명을 생성한다. The program instructions according to the present embodiment generate a proof by adding a hash function inputting A and B to C among the group elements (A, B, C) for proof.

본 실시예는 증명을 위한 그룹 원소 간 해시함수를 이용한 연결성을 부여하기 때문에 변형을 방지할 수 있고 단일 검증으로 증명 확인이 가능하다. Since this embodiment provides connectivity using a hash function between group elements for proof, deformation can be prevented and proof can be verified with a single verification.

또한, 본 실시예에 따른 프로그램 명령어들은, 설정 과정에서, 관계 R을 입력으로 하여 공통참조문자열 및 시뮬레이션 트랩도어를 반환하고, 증명 과정에서, 이차산술회로 기반으로 상기 공통참조문자열, 상기 관계 R에 속하는 인스턴스 및 위트니스를 입력으로 하여 증명을 반환하고, 검증 과정에서, 상기 공통참조문자열, 상기 인스턴스 및 상기 증명을 입력으로 하여 검증 결과를 반환한다. In addition, the program instructions according to the present embodiment return a common reference string and a simulation trapdoor by inputting the relation R as an input in the setting process, and in the proof process, based on the secondary arithmetic circuit, the common reference string and the relation R A proof is returned by inputting the instance and wisdom to which it belongs, and in the verification process, a verification result is returned by inputting the common reference string, the instance, and the proof as inputs.

본 발명은 비대칭 그룹(타입 III 페어링)에서 단일 검증 방정식을 갖는 이차산술회로(QAP) 기반 SE-SNARK(simulation-extractable-SNARK)를 제안한다. The present invention proposes a quadratic arithmetic circuit (QAP) based simulation-extractable-SNARK (SE-SNARK) with a single verification equation in an asymmetric group (type III pairing).

쌍선형 지도(bilinear map)를 갖는 세 개의 그룹

Figure 112019054681996-pat00005
이 주어지며, 본 실시예에 따른 증명은 소스 그룹으로부터 단지
Figure 112019054681996-pat00006
에서 2개,
Figure 112019054681996-pat00007
에서 하나인 세 개의 그룹 원소를 구성한다. Three groups with a bilinear map
Figure 112019054681996-pat00005
given that the proof according to this embodiment is only from the source group
Figure 112019054681996-pat00006
2 from
Figure 112019054681996-pat00007
constitutes three group elements that are one in .

본 실시예에 따르면, SE-SNARK에서 단일 검증 방정식으로 증명을 검증한다. 보다 상세하게 해시함수를 활용하여 고유 증명 튜플(tuple, A, B, C)을 결합함으로써 가단성(malleability) 검사에 대한 추가적인 식을 제거한다. According to this embodiment, the proof is verified with a single verification equation in SE-SNARK. More specifically, by using a hash function to combine unique proof tuples (tuple, A, B, C), additional expressions for malleability checks are eliminated.

표 1은 QAP 기반 SE-SNARK의 전체 크기와 성능을 기존 영지식 증명인 zk-SNARK [Gro16] 및 SE-SNARK [GM17]과 비교한 것이다. Table 1 compares the overall size and performance of the QAP-based SE-SNARK with the existing zero-knowledge proofs, zk-SNARK [Gro16] and SE-SNARK [GM17].

zk-
SNARK [Gro16]
zk-
SNARK [Gro16]
SE-
SNARK [GM17]
SE-
SNARK [GM17]
Our SE-SNARKOur SE-SNARK
Circuit basecircuit base QAPQAP SAPSAP QAPQAP CRS(common reference string) sizeCRS (common reference string) size

Figure 112019054681996-pat00008
Figure 112019054681996-pat00008
Figure 112019054681996-pat00009
Figure 112019054681996-pat00009
Figure 112019054681996-pat00010
Figure 112019054681996-pat00010
Proof sizeProof size
Figure 112019054681996-pat00011
Figure 112019054681996-pat00011
Figure 112019054681996-pat00012
Figure 112019054681996-pat00012
Figure 112019054681996-pat00013
Figure 112019054681996-pat00013
Prover computationProver computation
Figure 112019054681996-pat00014
Figure 112019054681996-pat00014
Figure 112019054681996-pat00015
Figure 112019054681996-pat00015
Figure 112019054681996-pat00016
Figure 112019054681996-pat00016
Verifier computationVerifier computation
Figure 112019054681996-pat00017
Figure 112019054681996-pat00017
Figure 112019054681996-pat00018
Figure 112019054681996-pat00018
Figure 112019054681996-pat00019
Figure 112019054681996-pat00019
Verify equationVerify equation 1One 22 1One

표 1은 l(원소 인스턴스), m(와이어들), n(곱셈 게이트들)을 갖는 산술 회로 만족도의 비교이다. Table 1 is a comparison of arithmetic circuit satisfaction with l (element instance), m (wires), and n (multiplication gates).

SE-SNARK는 제곱 게이트를 사용하기 때문에, n 곱셈 게이트 및 m 와이어들 대신 2n 제곱 게이트 및 2m 와이어들이 고려된다. Since SE-SNARK uses a squared gate, 2n squared gates and 2m wires are considered instead of n multiply gates and m wires.

표 1에서

Figure 112019054681996-pat00020
는 그룹 원소, E는 거듭제곱, P는 페어링을 의미한다. in table 1
Figure 112019054681996-pat00020
is a group element, E is a power, and P is a pairing.

이하에서는 기본적인 표기법 및 관계를 설명한다. Hereinafter, basic notations and relationships will be described.

보안 파라미터를

Figure 112019054681996-pat00021
로 표기한다. 함수
Figure 112019054681996-pat00022
Figure 112019054681996-pat00023
일때
Figure 112019054681996-pat00024
로 표기한다security parameters
Figure 112019054681996-pat00021
marked with function
Figure 112019054681996-pat00022
is
Figure 112019054681996-pat00023
when
Figure 112019054681996-pat00024
marked with

Figure 112019054681996-pat00025
이면 함수 f를 무시할 수 있고
Figure 112019054681996-pat00026
이면 압도적이라고 정의한다.
Figure 112019054681996-pat00025
Then the function f can be ignored and
Figure 112019054681996-pat00026
This is defined as overwhelming.

암묵적으로 모든 참가자와 공격자가 보안 파라미터를 알고 있다고 가정한다. It implicitly assumes that all participants and attackers know the security parameters.

S가 집합인 경우

Figure 112019054681996-pat00027
는 S에서 임의로 x를 선택하는 과정을 나타낸다.If S is a set
Figure 112019054681996-pat00027
represents the process of randomly selecting x from S.

Figure 112019054681996-pat00028
가 확률론적 알고리즘인 경우,
Figure 112019054681996-pat00029
는 어떤 적절한 입력에서
Figure 112019054681996-pat00030
를 실행하고 출력 x를 반환하는 과정을 나타낸다.
Figure 112019054681996-pat00028
If is a probabilistic algorithm,
Figure 112019054681996-pat00029
is from any appropriate input
Figure 112019054681996-pat00030
It shows the process of executing and returning the output x.

알고리즘

Figure 112019054681996-pat00031
의 경우,
Figure 112019054681996-pat00032
는 랜덤 코인을 포함하여
Figure 112019054681996-pat00033
의 모든 입력과 출력을 포함하는 목록으로 정의한다. algorithm
Figure 112019054681996-pat00031
In the case of,
Figure 112019054681996-pat00032
including random coins
Figure 112019054681996-pat00033
It is defined as a list containing all inputs and outputs of

본 실시예에서는 보안의 정의와 증명에 게임을 사용한다. 게임

Figure 112019054681996-pat00034
에는 게임의 출력이 되는 주요 절차가 있다. In this embodiment, a game is used to define and prove security. game
Figure 112019054681996-pat00034
There is a main procedure that becomes the output of the game.

Figure 112019054681996-pat00035
표기법은 출력이 1일 확률을 나타낸다
Figure 112019054681996-pat00035
The notation represents the probability that the output is 1.

보안 매개변수

Figure 112019054681996-pat00036
가 주어지면, 관계 생성기
Figure 112019054681996-pat00037
은 다항 시간 소멸 관계
Figure 112019054681996-pat00038
를 반환한다.
Figure 112019054681996-pat00039
에 대해
Figure 112019054681996-pat00040
는 관계 내에 있는 인스턴스
Figure 112019054681996-pat00041
에 대한 위트니스이다. security parameters
Figure 112019054681996-pat00036
Given , the relationship generator
Figure 112019054681996-pat00037
is a polynomial time extinction relation
Figure 112019054681996-pat00038
returns
Figure 112019054681996-pat00039
About
Figure 112019054681996-pat00040
is an instance within the relationship
Figure 112019054681996-pat00041
Witness for.

Figure 112019054681996-pat00042
가 출력할 수 있는 가능한 관계의 집합을
Figure 112019054681996-pat00043
로 표기한다.
Figure 112019054681996-pat00042
The set of possible relationships that can be output by
Figure 112019054681996-pat00043
marked with

이하 간결한 비상호적 영지식 증명에 대해 상세하게 설명한다. Hereinafter, a concise non-reciprocal zero-knowledge proof will be described in detail.

Figure 112019054681996-pat00044
에 대한 간결한 비상호적 영지식 증명은 알고리즘 Arg = (Setup, Prove, Vfy, SimProve)의 네 부분으로 이루어지며 다음과 같이 수행된다.
Figure 112019054681996-pat00044
The concise, non-reciprocal zero-knowledge proof for A is composed of four parts of the algorithm Arg = (Setup, Prove, Vfy, SimProve) and is performed as follows.

Figure 112019054681996-pat00045
: 설정 알고리즘은 관계
Figure 112019054681996-pat00046
를 입력으로 취하는 PPT(Populous) 알고리즘이고, crs(common reference string: 공통참조문자열)와 시뮬레이션 트랩도어(simulation trapdoor)
Figure 112019054681996-pat00047
를 반환한다.
Figure 112019054681996-pat00045
: Setting Algorithm Relation
Figure 112019054681996-pat00046
It is a PPT (Populous) algorithm that takes as input, crs (common reference string) and simulation trapdoor.
Figure 112019054681996-pat00047
returns

Figure 112019054681996-pat00048
: 증명자 알고리즘은 관계
Figure 112019054681996-pat00049
Figure 112019054681996-pat00050
에 대해 crs를 입력으로 하는 PPT 알고리즘이고, 증명
Figure 112019054681996-pat00051
를 반환한다.
Figure 112019054681996-pat00048
: The prover algorithm is a relation
Figure 112019054681996-pat00049
and
Figure 112019054681996-pat00050
It is a PPT algorithm with crs as input for
Figure 112019054681996-pat00051
returns

Figure 112019054681996-pat00052
: 검증자 알고리즘은 결정론적 crs, 인스턴스
Figure 112019054681996-pat00053
및 증명
Figure 112019054681996-pat00054
를 입력으로 하는 결정론적 다항 시간 알고리즘(deterministic polynomial time algorithm)이고, 0(reject) 또는 1(accept)를 반환한다.
Figure 112019054681996-pat00052
: The validator algorithm is deterministic crs, instance
Figure 112019054681996-pat00053
and proof
Figure 112019054681996-pat00054
It is a deterministic polynomial time algorithm that takes as input and returns 0 (reject) or 1 (accept).

Figure 112019054681996-pat00055
: 시뮬레이터는 crs,
Figure 112019054681996-pat00056
및 인스턴스
Figure 112019054681996-pat00057
를 입력으로 하는 PPT 알고리즘이고 증명
Figure 112019054681996-pat00058
를 반환한다.
Figure 112019054681996-pat00055
: Simulator is crs,
Figure 112019054681996-pat00056
and instances
Figure 112019054681996-pat00057
PPT algorithm as input and proof
Figure 112019054681996-pat00058
returns

이와 같은 간결한 비상호적 영지식 증명은 완전성, 지식 건실성(knowledge soundness), 영지식 및 간결성을 충족한다. Such a concise, non-reciprocal zero-knowledge proof satisfies completeness, knowledge soundness, zero-knowledge and conciseness.

본 실시예에 따른 SE-SNARK에서는, 랜덤 오라클 모델 내에서 해시함수를 활용한다. 이에 따라 아래와 같은 forking lemma 버전을 사용한다. In the SE-SNARK according to the present embodiment, a hash function is used in the random oracle model. Accordingly, the following forking lemma version is used.

Lemma 1.(General forking lemma). Lemma 1. (General forking lemma).

정수 Q와 크기

Figure 112019054681996-pat00059
의 집합
Figure 112019054681996-pat00060
를 고정한다. Integer Q and size
Figure 112019054681996-pat00059
set of
Figure 112019054681996-pat00060
to fix

Figure 112019054681996-pat00061
는 입력
Figure 112019054681996-pat00062
를 페어링으로 반환하는 랜덤 프로그램이라 할 때, 이의 첫번째 원소는
Figure 112019054681996-pat00063
범위를 갖는 정수이고 두번째 원소는 측면 출력(side output)으로 참조된다.
Figure 112019054681996-pat00061
is input
Figure 112019054681996-pat00062
A random program that returns as pairing, its first element is
Figure 112019054681996-pat00063
It is an integer with a range and the second element is referred to as the side output.

Figure 112019054681996-pat00064
는 입력 생성기라고 하는 랜덤한 알고리즘이다.
Figure 112019054681996-pat00064
is a random algorithm called an input generator.

Figure 112019054681996-pat00065
의 수용 확률(accepting probability)은 acc로 표기하며 본 실시예에서
Figure 112019054681996-pat00066
의 확률로 정의되고,
Figure 112019054681996-pat00067
;
Figure 112019054681996-pat00068
;
Figure 112019054681996-pat00069
Figure 112019054681996-pat00070
이다.
Figure 112019054681996-pat00065
The accepting probability of is denoted by acc, and in this embodiment
Figure 112019054681996-pat00066
is defined as the probability of
Figure 112019054681996-pat00067
;
Figure 112019054681996-pat00068
;
Figure 112019054681996-pat00069
Figure 112019054681996-pat00070
to be.

forking 알고리즘

Figure 112019054681996-pat00071
와 연관되는
Figure 112019054681996-pat00072
는 다음과 같이 입력 y에서 진행하는 랜덤 알고리즘이다. forking algorithm
Figure 112019054681996-pat00071
associated with
Figure 112019054681996-pat00072
is a random algorithm proceeding on input y as follows.

Figure 112019054681996-pat00073
Figure 112019054681996-pat00073

쌍선형 그룹들 및 가정들Bilinear Groups and Assumptions

이하에서는 [GM17]에서 채택한 SE-SNARK에 필요한 기본 쌍선형 그룹과 난해한 가정을 제시한다. Hereinafter, basic bilinear groups and esoteric assumptions required for SE-SNARK adopted in [GM17] are presented.

Definition 3Definition 3

쌍선형 그룹 생성기

Figure 112019054681996-pat00074
는 단항으로 보안 파라미터를 입력으로 취하고 기본 순서(prime order) p의 순환 그룹
Figure 112019054681996-pat00075
를 구성하는 쌍선형 그룹
Figure 112019054681996-pat00076
을 보조 정보 aux와 함께 반환한다. Bilinear group generator
Figure 112019054681996-pat00074
is unary, taking security parameters as input and a cyclic group of primary order p
Figure 112019054681996-pat00075
bilinear groups that make up
Figure 112019054681996-pat00076
is returned along with the auxiliary information aux.

그룹 작업 계산, 쌍선형 지도의 평가, 그룹 멤버쉽의 결정 및 그룹들의 샘플링 생성기를 위한 효율적인 알고리즘이 존재한다. Efficient algorithms exist for group task computation, evaluation of bilinear maps, determination of group membership, and generators of sampling of groups.

지도는 모든

Figure 112019054681996-pat00077
Figure 112019054681996-pat00078
에 대해, 그리고 모든
Figure 112019054681996-pat00079
에 대해 쌍선형이고, 다음과 같은 식을 얻는다. map is all
Figure 112019054681996-pat00077
and
Figure 112019054681996-pat00078
about, and all
Figure 112019054681996-pat00079
is bilinear with respect to , and we get the following equation:

Figure 112019054681996-pat00080
Figure 112019054681996-pat00080

그리고 지도는 non-degenerate하며, 만일

Figure 112019054681996-pat00081
이면
Figure 112019054681996-pat00082
또는
Figure 112019054681996-pat00083
이다. And the map is non-degenerate, if
Figure 112019054681996-pat00081
back side
Figure 112019054681996-pat00082
or
Figure 112019054681996-pat00083
to be.

일반적으로 쌍선형 그룹은 쌍으로 이루어진 타원형 곡선으로 구성되는데, 타원형 곡선은 비-쌍선형 지도를 산출하기 위해 변형될 수 있다. In general, a bilinear group consists of paired elliptical curves, which can be transformed to yield a non-bilinear map.

Figure 112019054681996-pat00084
인 대칭 쌍선형 그룹과
Figure 112019054681996-pat00085
인 비대칭 쌍선형 그룹으로 쌍선형 그룹을 설정하는 많은 방법이 있다.
Figure 112019054681996-pat00084
symmetric bilinear group and
Figure 112019054681996-pat00085
There are many ways to set up a bilinear group as an asymmetric bilinear group.

본 실시예에서는

Figure 112019054681996-pat00086
Figure 112019054681996-pat00087
사이의 어느 방향으로든 효율적으로 계산할 수 있는 할 수 있는 non-trivial homomorphism이 없는 비대칭 그룹(타입 III)에 대해 살펴볼 것이다. In this embodiment
Figure 112019054681996-pat00086
and
Figure 112019054681996-pat00087
We will look at an asymmetric group (type III) without a capable non-trivial homomorphism that can be computed efficiently in either direction between them.

난해한 가정(Intractability Assumptions)Intractability Assumptions

타원 곡선 그룹의 페어링 기반 SE-SNARK 보안 입증을 위해 사용하는 난해한 가정을 설명한다. We describe the esoteric assumptions we use for pairing-based SE-SNARK security verification of elliptic curve groups.

대칭 그룹의 PKE(Power Knowledge of Exponent) 가정은 SNARK 시스템에서 사용되지만 확장 PKE(eX-tended PKE: XPKE)라 하는 비대칭 그룹의 일반화된 PKE 가정이 최근에 제안되어 활용되고 있다. The power knowledge of exponent (PKE) assumption of the symmetric group is used in the SNARK system, but the generalized PKE assumption of the asymmetric group called extended PKE (eX-tended PKE: XPKE) has been recently proposed and utilized.

본 실시예에서는 대칭 그룹 및 비대칭 그룹 모두에서 XPKE 가정을 채택하여 사용한다. In this embodiment, the XPKE assumption is adopted and used in both the symmetric group and the asymmetric group.

본 실시예에서, 비밀 랜덤 변수에 대해 평가된 다항식인 이산 로그가 있는 소스 그룹 원소에 접근할 수 있는 공격자를 고려한다. In this embodiment, consider an attacker with access to source group elements with a discrete logarithm that is a polynomial evaluated over a secret random variable.

이러한 가정은 공격자가 비대칭 그룹 또는 타입 III와 일치하는 이산 로그 페어링을 위해 두 소스 그룹에서 그룹 원소를 생성할 수 있는 유일한 방법이라 한다. This assumption is said to be the only way an attacker can create group elements from two source groups for asymmetric group or type III-matched discrete log pairing.

Figure 112019054681996-pat00088
Figure 112019054681996-pat00089
Figure 112019054681996-pat00090
는 b가 다항식의 알려진 선형 조합의 평가라는 것을 알고 있는 경우이다.
Figure 112019054681996-pat00088
sign
Figure 112019054681996-pat00089
and
Figure 112019054681996-pat00090
is the case when we know that b is the evaluation of a known linear combination of polynomials.

대칭 그룹 가정과 유사하게, 공격자는 이산 로그에 매칭하는 동일한 소스 그룹에서 다른 생성기의 그룹 원소를 생성할 수 있다. Similar to the symmetric group assumption, an attacker can create group elements of different generators from the same source group matching the discrete logarithm.

즉, 알려지지 않은

Figure 112019054681996-pat00091
Figure 112019054681996-pat00092
에 대해 b가 다항식의 알려진 선형 조합의 평가라는 것을 알고 있는 경우이다. that is, unknown
Figure 112019054681996-pat00091
sign
Figure 112019054681996-pat00092
, if we know that b is the evaluation of a known linear combination of polynomials.

비대칭(asymmetric) XPKE 가정은

Figure 112019054681996-pat00093
로 대칭(symmetric) XPKE 가정은
Figure 112019054681996-pat00094
로 표기한다. The asymmetric XPKE assumption is
Figure 112019054681996-pat00093
The symmetric XPKE assumption is
Figure 112019054681996-pat00094
marked with

가정 1.Assumption 1.

Figure 112019054681996-pat00095
는 공격자(adversary),
Figure 112019054681996-pat00096
를 추출자라 한다.
Figure 112019054681996-pat00095
is the attacker,
Figure 112019054681996-pat00096
is called an extractor.

비대칭 그룹

Figure 112019054681996-pat00097
에서, 이득
Figure 112019054681996-pat00098
는 다음과 같이 정의하고,
Figure 112019054681996-pat00099
는 다항식
Figure 112019054681996-pat00100
의 집합이다. asymmetric group
Figure 112019054681996-pat00097
from the gain
Figure 112019054681996-pat00098
is defined as:
Figure 112019054681996-pat00099
is a polynomial
Figure 112019054681996-pat00100
is a set of

Figure 112019054681996-pat00101
Figure 112019054681996-pat00101

대칭 그룹

Figure 112019054681996-pat00102
에서, 이득
Figure 112019054681996-pat00103
Figure 112019054681996-pat00104
는 다음과 같이 정의되고,
Figure 112019054681996-pat00105
Figure 112019054681996-pat00106
의 집합이다. Symmetry group
Figure 112019054681996-pat00102
from the gain
Figure 112019054681996-pat00103
Figure 112019054681996-pat00104
is defined as,
Figure 112019054681996-pat00105
is
Figure 112019054681996-pat00106
is a set of

Figure 112019054681996-pat00107
Figure 112019054681996-pat00107

Figure 112019054681996-pat00108
Figure 112019054681996-pat00108

모든 PPT 공격자들

Figure 112019054681996-pat00109
에 대해
Figure 112019054681996-pat00110
Figure 112019054681996-pat00111
가정들은
Figure 112019054681996-pat00112
에 상대적으로 유지되고,
Figure 112019054681996-pat00113
Figure 112019054681996-pat00114
Figure 112019054681996-pat00115
에서는 무시할 수 있는 PPT 알고리즘
Figure 112019054681996-pat00116
가 존재한다. All PPT attackers
Figure 112019054681996-pat00109
About
Figure 112019054681996-pat00110
Wow
Figure 112019054681996-pat00111
the families
Figure 112019054681996-pat00112
is maintained relative to
Figure 112019054681996-pat00113
and
Figure 112019054681996-pat00114
end
Figure 112019054681996-pat00115
PPT algorithm that is negligible in
Figure 112019054681996-pat00116
exists

단변량 케이스에서, 다항식(Poly) 가정은 어떠한

Figure 112019054681996-pat00117
에 대해,
Figure 112019054681996-pat00118
가 주어지면, 공격자는 비록
Figure 112019054681996-pat00119
Figure 112019054681996-pat00120
를 알고 있다고 하더라도 선형적으로 독립되는
Figure 112019054681996-pat00121
다항식 g에 대한
Figure 112019054681996-pat00122
를 계산할 수 없다. In the univariate case, the polynomial assumption is
Figure 112019054681996-pat00117
About,
Figure 112019054681996-pat00118
Given that, the attacker
Figure 112019054681996-pat00119
sign
Figure 112019054681996-pat00120
is linearly independent even if we know
Figure 112019054681996-pat00121
for polynomial g
Figure 112019054681996-pat00122
cannot be calculated

본 실시예에서는 비대칭 그룹(

Figure 112019054681996-pat00123
) 및 대칭 그룹(
Figure 112019054681996-pat00124
)에서 2개의 다항식 가정을 채택한다. In this embodiment, the asymmetric group (
Figure 112019054681996-pat00123
) and the symmetric group (
Figure 112019054681996-pat00124
) adopts two polynomial assumptions.

가정 2. Assumption 2.

Figure 112019054681996-pat00125
는 공격자(adversary)이라 하고, 다음과 같이 정의된
Figure 112019054681996-pat00126
에서, 이득
Figure 112019054681996-pat00127
Figure 112019054681996-pat00128
을 정의하며,
Figure 112019054681996-pat00129
는 다항식
Figure 112019054681996-pat00130
집합이다.
Figure 112019054681996-pat00125
is called an adversary, and is defined as
Figure 112019054681996-pat00126
from the gain
Figure 112019054681996-pat00127
Figure 112019054681996-pat00128
define,
Figure 112019054681996-pat00129
is a polynomial
Figure 112019054681996-pat00130
is a set

Figure 112019054681996-pat00131
Figure 112019054681996-pat00131

다음과 같이 정의되는

Figure 112019054681996-pat00132
에서, 이득
Figure 112019054681996-pat00133
을 정의하고,
Figure 112019054681996-pat00134
은 다항식 X
Figure 112019054681996-pat00135
Figure 112019054681996-pat00136
의 집합이다. defined as
Figure 112019054681996-pat00132
from the gain
Figure 112019054681996-pat00133
define,
Figure 112019054681996-pat00134
is the polynomial X
Figure 112019054681996-pat00135
Figure 112019054681996-pat00136
is a set of

Figure 112019054681996-pat00137
Figure 112019054681996-pat00137

Figure 112019054681996-pat00138
Figure 112019054681996-pat00138

모든 PPT 공격자들

Figure 112019054681996-pat00139
에 대해
Figure 112019054681996-pat00140
Figure 112019054681996-pat00141
가정들은
Figure 112019054681996-pat00142
에 상대적으로 유지되고,
Figure 112019054681996-pat00143
Figure 112019054681996-pat00144
Figure 112019054681996-pat00145
에서는 무시할 수 있는 PPT 알고리즘
Figure 112019054681996-pat00146
가 존재한다. All PPT attackers
Figure 112019054681996-pat00139
About
Figure 112019054681996-pat00140
Wow
Figure 112019054681996-pat00141
the families
Figure 112019054681996-pat00142
is maintained relative to
Figure 112019054681996-pat00143
and
Figure 112019054681996-pat00144
end
Figure 112019054681996-pat00145
PPT algorithm that is negligible in
Figure 112019054681996-pat00146
exists

QAP 기반 SE-SNARK SchemeQAP-based SE-SNARK Scheme

이하에서는 표준 zk-SNARK를 수정할 수 있는 방법을 설명한다. The following describes how the standard zk-SNARK can be modified.

[Gro16]의 Groth의 zk-SNARK 검증 방정식을 만족하는 증명에서

Figure 112019054681996-pat00147
가 세 개의 그룹원소라는
Figure 112019054681996-pat00148
를 가정한다. In the proof that satisfies Groth's zk-SNARK verification equation in [Gro16],
Figure 112019054681996-pat00147
is the three group elements
Figure 112019054681996-pat00148
assume

Figure 112019054681996-pat00149
에서 알려진 다항식
Figure 112019054681996-pat00150
및 몇가지 비밀
Figure 112019054681996-pat00151
에 대해 다음과 같이 정의된다.
Figure 112019054681996-pat00149
polynomials known from
Figure 112019054681996-pat00150
and some secrets
Figure 112019054681996-pat00151
is defined as follows.

Figure 112019054681996-pat00152
Figure 112019054681996-pat00152

수학식 1을 만족하는 증명 A, B, C를 일반적으로 랜덤화하는 2가지 방법이 있다. There are two methods for generally randomizing proofs A, B, and C that satisfy Equation (1).

공격자는 아래 둘 중 하나로 설정할 수 있다. An attacker can set one of the following two:

Figure 112019054681996-pat00153
Figure 112019054681996-pat00153

Figure 112019054681996-pat00154
Figure 112019054681996-pat00154

본 실시예에서, C에서 A 및 B의 해시를 이용한 2가지 공격을 무력화하는 방법을 제안한다. In this embodiment, we propose a method of neutralizing two attacks using hashes of A and B in C.

검증 방정식은 A 및 B의 변경을 감지하기 위해 요구된다. A verification equation is required to detect changes in A and B.

A 또는 B가 변경될 경우 수정된 증명으로부터 지수값 a 및 b를 추출할 수 있어야 한다. It shall be possible to extract the exponent values a and b from the modified proof if A or B changes.

따라서 본 실시예는 a 및 b가 부가된 2개의 해시함수를 포함한다. 결과적으로 C는 다음과 같이 수정된다. Therefore, this embodiment includes two hash functions to which a and b are added. As a result, C is modified as follows.

Figure 112019054681996-pat00155
Figure 112019054681996-pat00155

여기서,

Figure 112019054681996-pat00156
Figure 112019054681996-pat00157
Figure 112019054681996-pat00158
는 해시함수이다. here,
Figure 112019054681996-pat00156
and
Figure 112019054681996-pat00157
Wow
Figure 112019054681996-pat00158
is a hash function.

수정된

Figure 112019054681996-pat00159
에 따르면, 다음과 같이 검증은 A 및 B에 적절한 항을 추가함에 의해 수정된다. Modified
Figure 112019054681996-pat00159
According to , the verification is modified by adding the appropriate terms to A and B as follows:

Figure 112019054681996-pat00160
Figure 112019054681996-pat00160

Figure 112019054681996-pat00161
라 한다.
Figure 112019054681996-pat00161
say

만일

Figure 112019054681996-pat00162
Figure 112019054681996-pat00163
로 변경되면
Figure 112019054681996-pat00164
Figure 112019054681996-pat00165
로 수정되어야 한다. if
Figure 112019054681996-pat00162
end
Figure 112019054681996-pat00163
when changed to
Figure 112019054681996-pat00164
is
Figure 112019054681996-pat00165
should be modified to

그러나,

Figure 112019054681996-pat00166
Figure 112019054681996-pat00167
는 위트니스가 알려진 경우에만 계산 가능하기 때문에 공격자는 증명을 위조할 수 없다. But,
Figure 112019054681996-pat00166
and
Figure 112019054681996-pat00167
An attacker cannot falsify the proof, since it is computable only if the Witness is known.

만일 A 및 B가 변경되면 해시 결과

Figure 112019054681996-pat00168
Figure 112019054681996-pat00169
가 변하게 된다. 따라서
Figure 112019054681996-pat00170
Figure 112019054681996-pat00171
Figure 112019054681996-pat00172
Figure 112019054681996-pat00173
에 따라 유효한
Figure 112019054681996-pat00174
계산을 위해 알려져야만 한다. If A and B change, the hash result
Figure 112019054681996-pat00168
and
Figure 112019054681996-pat00169
will change therefore
Figure 112019054681996-pat00170
and
Figure 112019054681996-pat00171
is
Figure 112019054681996-pat00172
and
Figure 112019054681996-pat00173
valid according to
Figure 112019054681996-pat00174
must be known for calculation.

Quadratic Arithmetic ProgramsQuadratic Arithmetic Programs

SE-SNARK에서 관계

Figure 112019054681996-pat00175
에서, QAP를 채택하고, 이는 다음과 같다. Relationships in SE-SNARK
Figure 112019054681996-pat00175
, adopts QAP, which is as follows.

Figure 112019054681996-pat00176
Figure 112019054681996-pat00176

쌍선형 그룹

Figure 112019054681996-pat00177
은 제한된 필드
Figure 112019054681996-pat00178
를 정의하고, 다항식
Figure 112019054681996-pat00179
은 다음의 정의를 갖는 QAP에서 각각 선형적으로 독립된 다항식 집합을 나타낸다.bilinear group
Figure 112019054681996-pat00177
is a restricted field
Figure 112019054681996-pat00178
define the polynomial
Figure 112019054681996-pat00179
denotes a set of linearly independent polynomials in QAP with the following definition.

Figure 112019054681996-pat00180
Figure 112019054681996-pat00180

여기서,

Figure 112019054681996-pat00181
는 엄격하게 n보다 작고, 여기서 n은
Figure 112019054681996-pat00182
의 차수이다. here,
Figure 112019054681996-pat00181
is strictly less than n, where n is
Figure 112019054681996-pat00182
is the order of

Figure 112019054681996-pat00183
를 1로 정의하면 다음의 정의로 관계 R을 설명한다.
Figure 112019054681996-pat00183
If is defined as 1, the relation R is explained by the following definition.

Figure 112019054681996-pat00184
Figure 112019054681996-pat00184

Figure 112019054681996-pat00185
보다 큰 필드 사이즈를 갖는 관계 R이 주어지면
Figure 112019054681996-pat00186
은 QAP에서 관계 생성기라 정의한다.
Figure 112019054681996-pat00185
Given a relationship R with a larger field size,
Figure 112019054681996-pat00186
is defined as a relationship generator in QAP.

ConstructionConstruction

Figure 112019054681996-pat00187
: 생성기
Figure 112019054681996-pat00188
, 해시함수
Figure 112019054681996-pat00189
및 파라미터
Figure 112019054681996-pat00190
,
Figure 112019054681996-pat00191
와 다음의 집합을 선택한다.
Figure 112019054681996-pat00187
: Generator
Figure 112019054681996-pat00188
, hash function
Figure 112019054681996-pat00189
and parameters
Figure 112019054681996-pat00190
,
Figure 112019054681996-pat00191
and select the following set.

Figure 112019054681996-pat00192
Figure 112019054681996-pat00192

Figure 112019054681996-pat00193
:
Figure 112019054681996-pat00194
로 설정하고,
Figure 112019054681996-pat00195
로서
Figure 112019054681996-pat00196
Figure 112019054681996-pat00197
로서
Figure 112019054681996-pat00198
를 분석한다.
Figure 112019054681996-pat00193
:
Figure 112019054681996-pat00194
set to,
Figure 112019054681996-pat00195
as
Figure 112019054681996-pat00196
and
Figure 112019054681996-pat00197
as
Figure 112019054681996-pat00198
Analyze

QAP로부터

Figure 112019054681996-pat00199
를 계산하기 위해 위트니스를 사용하고,
Figure 112019054681996-pat00200
를 선택하고,
Figure 112019054681996-pat00201
를 계산한다. from QAP
Figure 112019054681996-pat00199
Using Witness to calculate ,
Figure 112019054681996-pat00200
select ,
Figure 112019054681996-pat00201
to calculate

Figure 112019054681996-pat00202
Figure 112019054681996-pat00202

Figure 112019054681996-pat00203
:
Figure 112019054681996-pat00204
로서
Figure 112019054681996-pat00205
Figure 112019054681996-pat00206
Figure 112019054681996-pat00207
로서
Figure 112019054681996-pat00208
를 분석한다.
Figure 112019054681996-pat00203
:
Figure 112019054681996-pat00204
as
Figure 112019054681996-pat00205
and
Figure 112019054681996-pat00206
Figure 112019054681996-pat00207
as
Figure 112019054681996-pat00208
Analyze

다음 방정식이 만족될 경우에만

Figure 112019054681996-pat00209
로 설정하고 증명을 수락한다. Only if the following equation is satisfied
Figure 112019054681996-pat00209
set to and accept the proof.

Figure 112019054681996-pat00210
Figure 112019054681996-pat00210

Figure 112019054681996-pat00211
:
Figure 112019054681996-pat00212
를 선택하고
Figure 112019054681996-pat00213
를 계산한다.
Figure 112019054681996-pat00211
:
Figure 112019054681996-pat00212
select
Figure 112019054681996-pat00213
to calculate

Figure 112019054681996-pat00214
Figure 112019054681996-pat00214

상기에서는 비대칭 그룹(타입 III 페어링)에서 단일 검증 방정식을 갖는 이차산술회로(QAP) 기반 SE-SNARK(simulation-extractable-SNARK)를 설명하였다. In the above, a quadratic arithmetic circuit (QAP)-based simulation-extractable-SNARK (SE-SNARK) with a single verification equation in the asymmetric group (type III pairing) has been described.

본 실시예에서와 같이 증명 원소 C에 A 및 B를 입력으로 하는 해시함수를 부가하여 증명을 하는 경우, 대칭 그룹(타입 I 페어링)에서 단일 검증 방정식과 증명을 위한 2개의 원소를 가진 제곱산술회로(SAP) 기반 SE-SNARK(simulation-extractable-SNARK)이 제공될 수 있다. In the case of proof by adding a hash function inputting A and B to the proof element C as in this embodiment, a square arithmetic circuit with a single verification equation and two elements for proof in a symmetric group (type I pairing) (SAP) based simulation-extractable-SNARK (SE-SNARK) may be provided.

상기한 본 발명의 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가지는 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.The above-described embodiments of the present invention have been disclosed for the purpose of illustration, and various modifications, changes, and additions will be possible within the spirit and scope of the present invention by those skilled in the art having ordinary knowledge of the present invention, and such modifications, changes and additions should be regarded as belonging to the following claims.

Claims (5)

비상호적 영지식 증명 장치로서,
프로세서; 및
상기 프로세서에 연결된 메모리를 포함하되,
상기 메모리는,
증명을 위한 그룹 원소 (A, B, C) 중 C에 A 및 B를 입력으로 하는 해시함수를 부가하여 증명을 생성하도록,
상기 프로세서에 의해 실행 가능한 프로그램 명령어들을 저장하며,
상기 프로그램 명령어들은,
설정 과정에서, 관계 R을 입력으로 하여 공통참조문자열 및 시뮬레이션 트랩도어를 반환하고,
증명 과정에서, 이차산술회로 기반으로 상기 공통참조문자열, 상기 관계 R에 속하는 인스턴스 및 위트니스를 입력으로 하여 증명을 반환하고,
검증 과정에서, 상기 공통참조문자열, 상기 인스턴스 및 상기 증명을 입력으로 하여 검증 결과를 반환하는 비상호적 영지식 증명 장치.
A non-reciprocal zero-knowledge proof device, comprising:
processor; and
a memory coupled to the processor;
The memory is
To generate a proof by adding a hash function with A and B as inputs to C among the group elements (A, B, C) for proof,
store program instructions executable by the processor;
The program instructions are
In the setting process, a common reference string and a simulation trapdoor are returned with the relation R as input,
In the proof process, based on the secondary arithmetic circuit, the proof is returned by inputting the common reference string, the instance belonging to the relation R, and the Witness,
A non-reciprocal zero-knowledge proof device that returns a verification result by inputting the common reference string, the instance, and the proof in a verification process.
삭제delete 제1항에 있어서,
상기 C는 아래와 같이 C*로 수정되는 비상호적 영지식 증명 장치.
Figure 112019054681996-pat00215

여기서,
Figure 112019054681996-pat00216
Figure 112019054681996-pat00217
Figure 112019054681996-pat00218
는 해시함수임
According to claim 1,
The above C is a non-reciprocal zero-knowledge proof device modified to C * as follows.
Figure 112019054681996-pat00215

here,
Figure 112019054681996-pat00216
and
Figure 112019054681996-pat00217
Wow
Figure 112019054681996-pat00218
is a hash function
제1항에 있어서,
상기 그룹 원소들은 쌍선형 지도(bilinear map)을 갖는 비상호적 영지식 증명 장치.
According to claim 1,
The non-reciprocal zero-knowledge proof apparatus in which the group elements have a bilinear map.
비상호적 영지식 증명 방법으로서,
관계 R을 입력으로 하여 공통참조문자열 및 시뮬레이션 트랩도어를 반환하는 단계;
이차산술회로 기반으로 상기 공통참조문자열, 상기 관계 R에 속하는 인스턴스 및 위트니스를 입력으로 하여 증명을 반환하는 단계-상기 증명은 증명을 위한 그룹 원소 (A, B, C) 중 C에 A 및 B를 입력으로 하는 해시함수를 부가함-; 및
상기 공통참조문자열, 상기 인스턴스 및 상기 증명을 입력으로 하여 검증 결과를 반환하는 단계를 포함하는 비상호적 영지식 증명 방법.
A non-reciprocal zero-knowledge proof method comprising:
returning a common reference string and a simulation trapdoor with the relation R as an input;
Returning a proof by inputting the common reference string, the instance belonging to the relation R, and the Witness based on the quadratic arithmetic circuit as inputs - The proof is A and B in C among the group elements (A, B, C) for proof Added hash function as input-; and
and returning a verification result using the common reference string, the instance, and the proof as inputs.
KR1020190062516A 2019-05-28 2019-05-28 Simulation-extractable succinct non-interactive arguments of knowledge method and apparatus KR102268548B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190062516A KR102268548B1 (en) 2019-05-28 2019-05-28 Simulation-extractable succinct non-interactive arguments of knowledge method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190062516A KR102268548B1 (en) 2019-05-28 2019-05-28 Simulation-extractable succinct non-interactive arguments of knowledge method and apparatus

Publications (2)

Publication Number Publication Date
KR20200136675A KR20200136675A (en) 2020-12-08
KR102268548B1 true KR102268548B1 (en) 2021-06-22

Family

ID=73779167

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190062516A KR102268548B1 (en) 2019-05-28 2019-05-28 Simulation-extractable succinct non-interactive arguments of knowledge method and apparatus

Country Status (1)

Country Link
KR (1) KR102268548B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102605644B1 (en) * 2020-06-30 2023-11-23 한양대학교 산학협력단 Convolutional neural network model verification method and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101472312B1 (en) * 2012-08-31 2014-12-24 고려대학교 산학협력단 Method for maintaining the security of a message encrypted using Identity based Signcryption System thereof

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
엄지은 외 3인,"효율적인 ID 기반 인증 및 키 교환 프로토콜", Journal of The Korea Institute of Information Security & Cryptology, VOL.26, NO.6, Dec. 2016

Also Published As

Publication number Publication date
KR20200136675A (en) 2020-12-08

Similar Documents

Publication Publication Date Title
Groth On the size of pairing-based non-interactive arguments
Bost et al. Verifiable dynamic symmetric searchable encryption: Optimality and forward security
Bellare et al. Transitive signatures based on factoring and RSA
Lai et al. Succinct arguments for bilinear group arithmetic: practical structure-preserving cryptography
Boyen et al. Adaptively secure fully homomorphic signatures based on lattices
Bellare et al. Transitive signatures: new schemes and proofs
Daza et al. Shorter quadratic QA-NIZK proofs
Bellare et al. Contention in cryptoland: obfuscation, leakage and UCE
Koo et al. An online data-oriented authentication based on Merkle tree with improved reliability
Fuchsbauer et al. EUF-CMA-Secure Structure-Preserving Signatures on Equivalence Classes.
Boneh et al. BLS multi-signatures with public-key aggregation
Luo et al. A more efficient leveled strongly-unforgeable fully homomorphic signature scheme
Ishai et al. On Zero-Knowledge PCPs: Limitations, Simplifications, and Applications
KR102268548B1 (en) Simulation-extractable succinct non-interactive arguments of knowledge method and apparatus
Zhou et al. An Efficient Code‐Based Threshold Ring Signature Scheme with a Leader‐Participant Model
Liu et al. Identity-based remote data integrity checking of cloud storage from lattices
Fuchsbauer et al. Non-interactive zaps of knowledge
Seuschek et al. A cautionary note: Side-channel leakage implications of deterministic signature schemes
de Hoogh et al. Certificate validation in secure computation and its use in verifiable linear programming
KR20240045231A (en) Creation of digitally signed shares
Sakai et al. Methods for restricting message space in public-key encryption
Rondelet A note on anonymous credentials using BLS signatures
Zhao et al. sHMQV: An efficient key exchange protocol for power-limited devices
Zhang et al. Secure Hamming distance based record linkage with malicious adversaries
Baghery et al. Signatures of knowledge for Boolean circuits under standard assumptions

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant