아하
  • 토픽

  • 스파링

  • 잉크

  • 미션


정직한그늘나비112

정직한그늘나비112

영지식증명의 3가지 조건인 완전성, 건실성, 영지식성에 대해 알고 싶습니다.

흔히들 다크코인이라 불리는 블록체인에는 합의 알고리즘으로 영지식증명이 사용되는데요.

영지식증명은 완전성, 건실성, 영지식성 3가지 조건이 만족되야 한다고 들었습니다.

이 3가지 조건에 대해 좀더 자세히 알고 싶습니다.

    1개의 답변이 있어요!

    • 까칠한담비242

      까칠한담비242

      영지식증명이라는 것은 말 그대로 증명하는 방법입니다. 그런데 '영지식'이므로 내가 어떤 것에 대해 알고 있다는 것을 굳이 밝히지 않고도 그것을 증명할 수 있는 방법이라고 할 수 있습니다.

      이처럼 내가 무엇인가를 알고 있을 때 그러한 정보를 상대방에게 알리지 않고서도 정보를 알고 있다는 것을 증명할 수 있다면 정보를 보호할 수 있고, 정보가 암호화됨으로 인해서 보안성이 높아진다고 할 수 있습니다.

      블록체인에서 영지식증명을 이용하는 것도 이러한 정보보호, 보안성 측면의 장점을 이용하기 위한 목적이 크다고 보시면 됩니다.

      그렇다면 영지식증명이란 구체적으로 어떤 식으로 이루어지는지 알아보도록 하겠습니다. 대표적인 예로는 동굴의 비유가 사용됩니다.

      예를 들어 '=O' 모양과 같이 고리 모양의 동굴(O)에 들어가는 입구(=)가 하나이고 그 사이에 비밀번호를 알아야만 열리는 문이 존재함 -)으로써 '=O' 동굴이 입구를 기준으로 좌, 우측 A와 B길로 나뉜다고 해 보겠습니다.

      이때 철수와 영희가 있고, 철수가 영희에게 A에서 B, B에서 A로 통하는 문-)의 비밀번호를 알리지 않고도 자신이 비밀번호를 알고 있음을 증명(영지식 증명)하기 위해서는 영희가 임의로 정해준 길로 비밀번호를 누르고 문을 통과하여 나오고 그것을 영희가 확인함으로써 가능해집니다.

      만약에 입구로 들어간 철수가 동굴 안에 있는 문의 비밀번호를 모른다면 A와 B길 사이에 있는문 -)을 통해 A방향 쪽에서 B방향으로 나올 수 없고 B방향 쪽에서 A방향으로 나올 수도 없기 때문입니다.

      이를 통해 철수는 영희에게 비밀번호를 가르쳐 주지 않고도 자신이 비밀번호를 알고 있음을 증명할 수 있게 되고 이것이 영지식증명의 가장 기본적인 사례가 되는 것입니다.

      끝으로 질문자께서 말씀하신 완전성, 건실성, 영지식성에 대해 설명드리자면,

      우선 완전성의 경우에 철수가 문의 비밀번호를 알고 있다는 것을, 철수의 증명을 통해 '참'임이 입증 되고 영희가 그것을 완전히 납득할 수 있어야 함을 의미하고

      다음으로 건실성의 경우에는 철수가 문의 비밀번호를 모르는 경우 영희가 지시하는 방향으로 나올 수가 없기 때문에, 철수가 비밀번호를 안다는 것이 거짓이 되어 영희를 절대로 납득시킬 수 없어야 함을 의미하며,

      마지막으로 영지식성의 경우에는 철수가 문의 비밀번호를 안다는 것이 그의 증명으로 입증되더라도 그것 외에 영희가 문의 비밀번호를 알게 된다든지 하는 다른 정보들을 알 수 없어야 한다는 것을 의미하게 됩니다.

      답변이 도움이 되길 바랍니다.