아하
생활

생활꿀팁

WINTERFELL
WINTERFELL

Transaction의 프라이버시를 보호한다는 밈블윔블(MimbleWimble)은 어떤 프로토콜인가요?

새로운 형태의 프라이버시 보호기술을 탑재한 암호화폐들이 2019년 초부터 블록체인 생태계의 관전 포인트로 부상했습니다. 신형 프로젝트인 빔(Beam)과 그린(Grin)은 프라이버시 보호기술인 밈블윔블(mimblewimble) 프로토콜을 채용한 첫 암호화폐들로 비트코인의 한계를 극복하겠다는걸 명분으로 내걸고 있는데요.

밈블윔블이 어떻게 거래의 프라이버시를 보호하는지 알고 싶습니다.

55글자 더 채워주세요.
1개의 답변이 있어요!
  • 까칠한담비242
    까칠한담비242

    핵심만 말씀드리자면 밈블윔블이란 암호화폐의 송신자가 익명성 요소라는 무작위 값을 활용하여 거래 내용을 인코딩하고 그것을 디코딩할 수 있는 정보와 함께 수신자에게 전송하면, 수신자가 그 거래 내용을 디코딩하여 유효성을 증명한 다음 다시 익명성 요소로 무작위 값을 생성하여 해당 암호화폐의 정당한 소유주임을 증명하는 방법이라고 할 수 있습니다. 이 과정에서 트랜젝션의 내용이 암호화되어 공개되지 않음으로써 익명성을 확보한다고 할 수 있습니다.

    좀 더 자세하게 설명드리자면, 밈블윔블이란 해리포터에 등장하는 마법 주문의 이름으로 특정한 화제나 주제에 대해 말하지 못하도록 혀를 꼬아 버리는 저주에서 따온 이름입니다. 이러한 이름에서도 알 수 있듯이 이 밈블윔블 프로토콜을 이용하면 거래 내역의 익명성을 높일 수 있습니다.

    비트코인의 트랜젝션은 입금된 비트코인과 출금된 비트코인의 수량을 공개적으로 조회할 수 있기 때문에 이를 통해 입금 내역과 출금 내역을 확인함으로써 트랜젝션이 유효하다는 것을 증명할 수 있습니다. 예를들어 한 사람이 1BTC를 전송하고 다른 사람이 1BTC를 받은 경우 이외에 전송된 비트코인의 수량이 비정상적으로 감소하거나 증가된 바가 없으므로 유효하다는 것을 알 수 있습니다. 즉 Input 값의 합계는 Output 값의 합계와 동일하게 되는 것입니다.

    그런데 이렇게 공개적으로 트랜젝션을 검증하는 비트코인과 달리 밈블윔블은 익명성 거래를 지원합니다. 별도의 주소 시스템이 없이 트랜젝션의 송신자가 보내는 값이 무작위 수인 ‘익명성 요소(blinding factors)’로 인코딩되고 이러한 값을 해독할 수 있는 정보와 함께 수신자에게 전달됩니다. 수신자는 연산을 통해 트랜젝션의 송신자가 보내는 값을 디코딩하여 확인할 수 있습니다. 이를 통해 트랜젝션의 유효성이 증명될 수 있습니다.

    한편, 이렇게 송신자가 보낸 트랜젝션이 수신자에 의해 유효성이 증명되면 수신자는 이것을 자신의 소유라는 것을 증명할 수 있어야 합니다. 밈블윔블에서는 트랜젝션의 송신자가 보내는 값을 디코딩하여 확인할 수 있는 사람인 수신자만이 역시 무작위 값인 익명성 요소를 생성할 수 있습니다.

    이때 수신자는 Input 값과 Output 값의 합계를 초과하는 익명성 요소의 무작위 값을 생성하는데 이것이 프라이빗 키 역할을 함으로써 수신자는 트랜젝션에 대한 서명을 할 수 있고 비트코인의 정당한 소유주임을 증명할 수 있도록 합니다.

    그리고 밈블윔블 트랜젝션을 통해 생성된 블록은 초과 값으로 만든 새로운 Input 값과 Output 값 그리고 서명 내역만을 가지게 됩니다. 따라서 Input값과 Output값의 합계가 동일하다는 것이 증명됨으로써 전송된 비트코인의 수량이 동일하다는 것이 확인되고 트랜젝션이 유효함을 증명할 수 있게 됩니다.

    끝으로 이러한 밈블윔블의 트랜젝션 처리 과정에서 익명성 요소로 인해 전송 금액, 송신자와 수신자에 대한 정보가 암호화되어 공개되지 않음으로써 거래의 익명성이 확보된다고 할 수 있습니다.

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