pile·
보안·코인원코인원·

영지식증명, 새로운 블록체인 검증 방식의 등장

코인원 CTO Lab 인턴이 영지식증명(Zero-Knowledge Proof)과 그 발전형인 zk-SNARK 를 블록체인 맥락에서 소개한 글이다. 알리바바의 동굴 비유로 개념을 잡고, 만족해야 하는 세 조건과 비상호적 증명으로 넘어간 이유, 실제 블록체인 적용 사례까지 이어진다.

핵심 포인트
  • 영지식증명은 증명자가 자신이 아는 정보를 공개하지 않으면서 그것을 안다는 사실만 검증자에게 납득시키는 과정이다.
  • 만족해야 할 세 조건은 완전성(참이면 정직한 증명자가 납득시킬 수 있다), 건전성(거짓이면 어떤 거짓말로도 납득시킬 수 없다), 영지식성(참·거짓 외에는 아무것도 알 수 없다)이다.
  • 동굴 비유식 증명은 증명자와 검증자가 계속 통신해야 하고, 증명이 커질수록 주고받는 메시지와 시간이 늘어 비효율적이다.
  • 2013년 등장한 zk-SNARK 는 사전 정의된 함수와 매개 변수로 단 한 번에 검증한다. 비상호성과 간결성이 핵심이다.
  • 증명 사이즈와 검증 시간이 증명할 정보의 양과 무관하게 일정하다는 성질이 블록체인 확장성 논의로 이어진다.
상세 정리
  • 역할 정의: 정보가 참임을 보이는 쪽이 증명자(Prover), 그것을 확인하는 쪽이 검증자(Verifier)다.
  • 동굴 비유: 입구에서 두 갈래로 갈렸다가 끝이 마법의 문으로 이어진 동굴에서, 비밀 단어를 아는 사람만 문을 열어 반대편으로 나올 수 있다.
  • 한 번의 시행으로는 판정이 안 된다. 지시한 갈래로 나왔더라도 처음부터 그쪽으로 들어갔을 가능성이 남기 때문에, 절차를 여러 번 반복해 알고 있을 확률을 높이는 방식이다.
  • 이 과정이 끝나면 검증자는 비밀 단어 자체를 모르는 채로 상대가 그것을 아는지 여부만 확인하게 된다.
  • zk-SNARK 의 이름 풀이: zero-knowledge Succinct Non-interactive ARguments of Knowledge 로, 간결하고 비상호적인 지식 논의라는 뜻이다.
  • 비상호성: 증명자와 검증자의 온라인 여부와 무관하게 증명·검증이 가능하다.
  • 간결성: 증명 사이즈가 작아 1/1000 초 단위에 검증될 정도다.
  • 동작 방식: 증명자가 매개 변수와 증인 변수(정보를 증명하는 데 필요한 비밀 입력값)를 증명 함수에 넣어 증명 데이터를 만들면, 검증자는 매개 변수와 그 증명 데이터를 검증 함수에 넣어 유효성만 판별한다.
  • 적용 배경: 일반적인 블록체인은 수신자·송신자·전송 금액 같은 거래 내역이 공개·기록되므로 개인정보 보호와 보안 강화를 위해 zk-SNARK 접목 시도가 늘고 있다.
  • 사례 ①: 지캐시(Zcash)는 영지식증명으로 익명 거래를 구현해, 거래 내역은 체인에 기록되되 잔고와 송금 금액은 공개되지 않는다.
  • 사례 ②: 이더리움은 확장성을 위해 zk-SNARK 도입 계획을 밝혔고, 최대 500 TPS 까지 끌어올리며 스마트 컨트랙트 내부에서 영지식 검증 알고리즘을 돌리는 구상이 알려져 있다.
왜 읽나영지식증명이라는 단어는 들어 봤지만 무엇을 보장하고 왜 zk-SNARK 로 넘어갔는지 모르는 사람에게 비유부터 적용 사례까지 한 번에 잡아 준다.
코인원
코인원 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 보안·gitlab-engGitLab Blog·

    Serena MCP 에이전트의 치명적 원격 코드 실행 취약점 분석

    GitLab 보안팀이 AI 코딩 에이전트 Serena(월 PyPI 다운로드 13.6만 건)에서 치명적 원격 코드 실행 취약점을 발견했다. Jinja2 비샌드박스 환경과 신뢰 모델의 미검사 경로가 결합해 개발자가 악의적 저장소를 열기만 해도 코드가 실행된다. serena-agent 1.7.0에서 SandboxedEnvironment 교체로 수정 완료됐다.

    요약 이어보기
    #mcp#security#rce+2