영지식 증명은 어떤 기술인가요?
안녕하세요?
대쉬, 모네로, 지캐시 등 다크 코인들이 많이 사용하는 기술이 영지식 증명 기술이라고 알고 있습니다. 영지식 증명 기술이란 정확히 어떤것인지 궁금합니다.
답변 미리 감사드립니다.
영지식증명이라는 것은 말 그대로 증명하는 방법입니다. 그런데 '영지식'이므로 내가 어떤 것에 대해 알고 있다는 것을 굳이 밝히지 않고도 그것을 증명할 수 있는 방법이라고 할 수 있습니다.
이처럼 내가 무엇인가를 알고 있을 때 그러한 정보를 상대방에게 알리지 않고서도 정보를 알고 있다는 것을 증명할 수 있다면 정보를 보호할 수 있고, 정보가 암호화됨으로 인해서 보안성이 높아진다고 할 수 있습니다.
블록체인에서 영지식증명을 이용하는 것도 이러한 정보보호, 보안성 측면의 장점을 이용하기 위한 목적이 크다고 보시면 됩니다.
그렇다면 영지식증명이란 구체적으로 어떤 식으로 이루어지는지 알아보도록 하겠습니다. 대표적인 예로는 동굴의 비유가 사용됩니다.
예를 들어 '=O' 모양과 같이 고리 모양의 동굴(O)에 들어가는 입구(=)가 하나이고 그 사이에 비밀번호를 알아야만 열리는 문이 존재함 -)으로써 '=O' 동굴이 입구를 기준으로 좌, 우측 A와 B길로 나뉜다고 해 보겠습니다.
이때 철수와 영희가 있고, 철수가 영희에게 A에서 B, B에서 A로 통하는 문-)의 비밀번호를 알리지 않고도 자신이 비밀번호를 알고 있음을 증명(영지식 증명)하기 위해서는 영희가 임의로 정해준 길로 비밀번호를 누르고 문을 통과하여 나오고 그것을 영희가 확인함으로써 가능해집니다.
만약에 입구로 들어간 철수가 동굴 안에 있는 문의 비밀번호를 모른다면 A와 B길 사이에 있는문 -)을 통해 A방향 쪽에서 B방향으로 나올 수 없고 B방향 쪽에서 A방향으로 나올 수도 없기 때문입니다.
이를 통해 철수는 영희에게 비밀번호를 가르쳐 주지 않고도 자신이 비밀번호를 알고 있음을 증명할 수 있게 되고 이것이 영지식증명의 가장 기본적인 사례가 되는 것입니다.
끝으로 이러한 영지식증명의 원리가 블록체인에 적용되면, 블록체인의 특성상 거래가 있었다는 내역은 공개되지만 전송자와 수신자, 전송 금액 등과 같은 자세한 거래 정보를 익명화할 수 있게 됩니다.
이처럼 영지식증명 기술을 통해 개인의 거래 정보를 익명화할 수 있고 프라이버시를 보호할 수 있다는 측면에서 긍정적으로 볼 수 있는 측면도 있겠습니다.
답변이 도움이 되길 바랍니다.
안녕하세요. 영지식 증명에 대하여 답변드리겠습니다.
영지식 증명(Zero-Knowledge Proof)이란?
상대방이 특정 조건에 부합된 답을 알고 있는지 간접적인 방법을 통해 증명하는 방식을 말합니다.
즉, 상대편이 퀴즈를 내어 답을 말하도록 하는 것으로 공식을 알고 있어야만 가능한 답을 반복 퀴즈를 통해 상대편이 공식을 알고 있는지 확률적으로 알아내는 방법을 말합니다.
따라서 공식을 알고 있으면 답을 맞출 확률은 100% 그렇지 않을 경우는 오답을 말할 확률이 높게 되는 원리 입니다.
영지식 증명에 3가지 조건이 부합되어야 가능합니다.
완전성 : 어떤 질문이 참이면, 정직한 증명자는 정직한 검증자에게 납득시킬 수 있습니다.
건실성 : 어떤 질문이 거짓이면, 부정직한 증명자라도 정직한 검증자에게 참인지를 납득시킬 수 없습니다.
영지식성 : 검증자는 어떤 질문에 대해 참인지 거짓인지 외에는 아무것도 알 수 없습니다.
감사합니다.