March 25, 2019

What is ZKP(Zero-Knowledge Proof)


영지식 증명. ZKP(Zero-Knowledge Proof) 메인

영지식 증명. ZKP(Zero-Knowledge Proof) 소개 채널

영지식 증명. ZKP(Zero-Knowledge Proof) 교육 목표

영지식 증명. ZKP(Zero-Knowledge Proof) 개요

영지식 증명. ZKP(Zero-Knowledge Proof) 3요소

영지식 증명. ZKP(Zero-Knowledge Proof) 3요소 설명

영지식 증명. ZKP(Zero-Knowledge Proof) 요약

영지식 증명. ZKP(Zero-Knowledge Proof) 에시

영지식 증명. ZKP(Zero-Knowledge Proof) 예시 1

영지식 증명. ZKP(Zero-Knowledge Proof) 예시 2

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 증명자 행동

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 절차 고안

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 동굴 진입

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 입구 위치

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 진행

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 증명자 행동 패턴

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 다음 증명자 행동 패턴

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 증명자 반응

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 검증자 행동

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 검증절차 특징

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 검증절차 특징 1

영지식 증명. ZKP(Zero-Knowledge Proof) 예시. 검증절차 구현

영지식 증명. ZKP(Zero-Knowledge Proof) 채널 소개 끝

ZKP(Zero-Knowledge Proof)
영지식 증명.

A way to prove that the information is true, without revealing the information it holds.

보유한 정보를 드러내지 않으면서, 그 정보가 참이라는 것을 증명하는 방법.

Three elements of the ZKP
영지식증명(ZKP)의 3요소
증명자(Prover)
검증자(Verifier)
검증 절차(Proving process, protocol)

1. prover: The person who wishes to prove own information.
2. verifier: The person who wants to verify the information of prover.
3. Proving process: Procedures to verify that the information is true.

1. 증명자: 보유한 정보를 증명하고자 하는 자.
2. 검증자: 증명자의 정보를 검증하고자 하는 자.
3. 검증 절차: 해당 정보가 참이라는 것을 검증할 수 있는 절차.

ZKP(Zero-Knowledge Proof) summary
prover and the verifier mutually recognize that the prover's information is true through the appointmented proving process that does not disclose the prover's information.

영지식 증명 요약
증명자와 검증자는 증명자의 정보를 노출하지 않는 별도의 검증절차를 통해 증명자의 정보가 참이라는 것을 상호간 인정한다.

Example of ZKP(Zero-Knowledge Proof): Ali Baba's cave
Jean-Jacques Quisquater - ZKP for children.

영지식 증명 예시: 알리바바의 동굴
Jean-Jacques Quisquater - “어린이를 위한 영지식 증명”

Suppose there is a cave like the one on the right. This cave has the same entrance and exit. In other words, only one side is open.

우측과 같은 동굴이 있다고 가정합니다. 이 동굴은 입구와 출구가 동일합니다. 즉, 한쪽만 뚫려 있습니다.

In the middle of the cave there is a firmly closed door that blocks traffic.

그리고 동굴 중간에는 통행을 가로막는 굳게 닫힌 문이 있습니다.

The only prover knows the password for this door.

이 문의 비밀번호는 증명자만 알고 있습니다.

At this time, the prover wants to prove that he knows this password without disclosing it. So the prover designed one method(proving process).

이 때 증명자는, 이 비밀번호를 노출하지 않으면서, 알고 있다는 사실을 증명하고 싶습니다. 그래서 한 가지 방법(검증 절차)를 고안하게 됩니다.

First, the prover enters the cave And the verifier is located at the entrance to the cave.

먼저 증명자는 동굴에 들어갑니다. 검증자는 동굴 입구에 위치합니다.

Now the verifier speaks to the prover.
"Hey, come out to A"

이제 검증자가 증명자에게 말합니다.
“야, A로 나와봐”

Then the prover goes back to the way it came.

그러면 증명자는 들어갔던 길로 그대로 돌아 나오면 됩니다.

Then the prover goes back into the cave and the verifier speaks again.
"Hey, once more, come out to A"

이어서 증명자는 다시 동굴로 들어가고 검증자는 다시 외칩니다.
“야, 다시 A로 나와봐”

Even if the prover goes to B, the prover can come back A because the prover knows the password.

들어갈 때는 B로 갔어도, 비밀번호를 알고 있기 때문에 증명자는 A로 나올 수 있습니다.

In this way, if the prover appears each time with a random path specified by the verifier, stochastically, It can be inferred that the prover knows the password.

이런 식으로, 검증자가 지정한 랜덤한 길로 매번 나타난다면, 확률상, 증명자는 비밀번호를 알고 있다고 유추할 수 있습니다.

However, since this proving process is based on recognition between the prover and the verifier, it is important to establish a reasonable proving process that everyone can recognize.

하지만 이러한 검증 절차는 증명자와 검증자 상호간의 인정(약속)에 기반하고 있기 때문에 모두가 인정할 수 있는 합리적인 검증 절차를 마련하는 것이 무엇보다 중요합니다.

Thus, proving process are usually implemented through discrete algebra, encryption, hashing, etc., which are mathematically proven.

그렇기에, 검증 절차는 일반적으로 수학적으로 그 가능성이 입증된, 이산대수, 암호화, 해시 등을 통해 구현되고 있습니다.

Thank you.
감사합니다.