I. 영지식(ZK) | 러닝비트로

Nov 30 2022
런던 정확한 개수를 말하거나 사진을 보여주지 않고 옷장에 바지가 5개 이상 있다는 것을 친구에게 보여줄 수 있다면 어떨까요? 사람들이 실제 사실 외에 다른 것을 알지 못하면서 서로에게 사실을 증명할 수 있는 세상을 상상해 보십시오. 유토픽이지만 다행스럽게도 우리는 그러한 시나리오에 기울고 있는 시대에 있습니다.

런던

정확한 개수를 말하지 않거나 사진을 보여주지 않고 옷장에 바지가 5개 이상 있다는 것을 친구에게 보여줄 수 있다면 어떨까요? 사람들이 실제 사실 외에 다른 것을 알지 못하면서 서로에게 사실을 증명할 수 있는 세상을 상상해 보십시오. 유토픽이지만 다행스럽게도 우리는 그러한 시나리오에 기울고 있는 시대에 있습니다.

위의 상황을 가능하게 하는 개념을 ZK(Zero-Knowledge)라고 합니다. 이미 언급한 것 이상으로 자신에 대한 제로 속성을 공유할 수 있기 때문입니다. 예: 와인을 구매하려는 경우 18세 이상이라는 ZKP(Zero Knowledge Proof)를 만들 수 있습니다. 이 증명을 와인 회사에 보내면 약간의 수학 및 마술을 통해 회사에서 증명을 확인하고 판매합니다. 와인. 이름, 시민권, 심지어 생년월일도 공유할 필요가 없었습니다. 멋지죠?

재미있게 읽으세요!

그래서… ZKP가 무엇입니까?

본질적으로 ZKP는 한 사람(증명자)이 진술이 사실이라는 사실 외에 추가 정보를 제공하지 않고 특정 주장이 사실임을 다른 사람(검증자)에게 입증할 수 있는 방법입니다. 실제 증명 생성 및 검증에는 암호화 알고리즘이 포함됩니다.

즉, ZKP는 A(증명자)에서 B(검증자)¹로 정보를 가능한 한 적게 공유하는 매우 우아한 방법입니다.

또는 더 간단하게 다른 당사자가 귀하의 진술을 구성하는 데이터에 실제로 액세스하지 않고도 귀하가 말한 진술의 진실성을 확인할 수 있습니다.

당신은 알고 계십니까..?

ZKP가 작동하기 위한 한 가지 필수 요소는 신뢰할 수 있는 기관/출처의 존재입니다. 신뢰할 수 있는 출처는 키워드입니다. 증거를 만들기 위해서는 진술의 진실성을 확인할 수 있는 신뢰할 수 있는 장소가 필요하기 때문입니다.

예를 들어 트위터에서 1,000명 이상의 팔로워가 있다는 것을 친구에게 증명하고 싶다면 다음 단계는 계정의 총 팔로워 수에 대해 ZKP를 만들어 친구들과 공유하는 것입니다. 부인할 수 없는 사실인 정보에 대해 증거가 생성되기 때문에 친구들은 결과가 정확하다는 것을 알게 될 것입니다.

  1. 보유한 트위터 팔로워 수를 속이거나 꾸며낼 수 없습니다.
  2. 정보는 신뢰할 수 있는 소스(예: Twitter)에서 제공되며 누군가의 생각에서 나온 것이 아닙니다.

더 많은 사용 사례

영지식 증명을 실생활에서 사용할 수 있는 몇 가지 방법은 다음과 같습니다.

Giphy.com

✔️ 금융: ING 은행³은 ZKP를 사용하여 고객이 실제 데이터를 공개하지 않고 자신에 대한 특정 사실을 증명할 수 있도록 합니다. 예를 들어 누군가가 대출을 받으려면 소득이 은행에서 허용하는 범위에 있음을 증명하면 됩니다.

✔️ 온라인 투표: 익명으로 투표할 수 있으며 투표가 최종 집계에 반영되었는지 확인할 수 있습니다.

✔️ 인터넷을 안전하게 만드십시오. 신원 확인과 결합된 ZKP를 사용하여 사용자는 개인 정보를 보내지 않고도 방문하는 웹사이트에서 고유한 사람임을 증명할 수 있습니다. 이는 잘못된 정보, 소셜 미디어의 봇(Twitter를 예로 들 수 있음⁴), 국가 후원 캠페인 등과 싸우는 데 큰 도움이 될 수 있습니다.

✔️ 개인정보 확인 . 위의 와인 예를 따라가면 이제 클럽에 가고 싶어하는데 연령 제한이 있다고 상상해 봅시다. 25세 미만은 입장할 수 없습니다. 나이뿐만 아니라 사진, 생년월일, 거주지 주소 등도 포함됩니다. 대신 ZKP를 사용하여 문서가 본인 소유이고 연령이 25세를 초과했음을 증명할 수 있습니다. 예를 들어 보안 담당자가 코드를 스캔하면 연령 요건을 충족하면 화면이 녹색으로 표시됩니다. 그게 다야.

간단히 말해서 다음은 ZKP로 할 수 있는 것과 할 수 없는 것에 대한 몇 가지 예입니다.

아웃디드

OutDID가 ZKP를 사용하는 방법

앞서 언급한 예는 다음과 같은 우리의 솔루션을 반영할 수 있습니다. 우리는 생년월일, 시민권 등과 같은 데이터(트위터의 팔로워 수)를 제공하는 여권(트위터와 같은 인증 소스)을 사용합니다. 18세 이상, 미국 시민권자(또는 트위터 팔로워 1,000명 이상)와 같은 증거를 만들 수 있습니다.

보다 구체적인 방식으로 우리 애플리케이션은 ZKP를 사용하여 자세한 내용을 제공하지 않고 특정 Web3 프로젝트의 사용자 요구 사항을 충족함을 보여줍니다. 예를 들어, 에어드롭에 등록하려면 미국 시민이 아님을 증명해야 합니다. OutDID를 사용하면 우리 애플리케이션에서 다른 시민권을 가지고 있다는 증명(예: 보안 담당자의 QR 코드)을 생성할 수 있습니다. 그런 다음 dApp으로 보낼 수 있습니다. 프로젝트는 당신이 보낸 증명이 맞는지 확인하고 에어드랍을 받을 수 있습니다.

작은 도전

이제 ZKP가 무엇인지 알았으니 인트로의 바지에 이 기술을 적용할 수 없는 이유를 댓글로 알려주세요. :)

그리고 잊지 마세요...

비트코인의 슬로건

계속 연락하자

한 번 비공개는 영원히 비공개입니다. 당신은 안에 있습니까?

웹사이트 | 전보 | 링크드인 | 트위터 | 미디엄 ❤

Giphy.com

자원:

  1. https://link.springer.com/content/pdf/10.1007/BF02351717.pdf
  2. https://www.blockchain-council.org/blockchain/zero-knowledge-proof-protocol/
  3. https://www.ingwb.com/en/insights/distributed-ledger-technology/ing-launches-major-addition-to-blockchain-technology
  4. https://www.rand.org/blog/2022/09/elon-musk-may-have-a-point-about-bots-on-twitter.html
  • https://www.youtube.com/watch?v=fOGdb1CTu5c
  • https://ethereum.org/en/zero-knowledge-proofs/
  • https://polygon.technology/blog/a-gentle-introduction-to-zero-knowledge-proofs