VeilSwap
← All posts
프라이버시2026-10-278 min read

라이트코인 MWEB 프라이버시 실측: 숨는 것과 새는 것

연속 101개 MWEB 블록을 읽었습니다: peg-in 30건, peg-out 24건, 풀 451,920 LTC — 그리고 모든 peg 금액은 공개됩니다. 확장 블록이 숨기는 것과 숨기지 못하는 것.

MWEB는 흔히 '프라이버시를 켠 라이트코인'으로 소개됩니다. 절반은 맞고, 틀린 절반은 바로 코인을 옮기려는 순간에 문제가 되는 절반입니다. 우리는 블록 3,202,394부터 3,202,494까지 — 연속 101개 블록, 4시간 31분 31초, 2026-10-27 10:05 UTC 무렵까지 — 의 MWEB 섹션을 전부 읽었습니다. 결론은 깔끔하게 갈립니다. 확장 블록 내부에서는 아무것도 보이지 않습니다. 금액도, 주소도, 입력과 출력의 연결도 없습니다. 그런데 경계에서는 거의 모든 것이 보입니다. MWEB에 얼마가 들어 있는지는 매 블록 litoshi 단위로 공표되고, 모든 peg-in과 peg-out은 정확한 금액과 목적지 주소를 달고 투명 체인에 나타납니다. 버그가 아니라 Mimblewimble 확장 블록의 구조입니다. 그리고 그 구조가 MWEB가 무엇에 쓸모 있는지를 결정합니다. (LTC→XMR 루트)

MWEB는 무엇인가. MWEB(LIP-0002, LIP-0003)는 새 체인도, 메인 원장의 새 주소 형식도 아닙니다. 각 블록 옆에 붙는 평행 섹션으로, 내용은 Mimblewimble 방식의 체인 — 기밀 출력과 kernel입니다. 메인넷은 높이 2,265,984, 2022-05-20 05:04:16 UTC에 활성화했습니다. 직전 블록 2,265,983에는 125개 트랜잭션이 있고 MWEB 출력은 하나도 없으며, 바로 다음 블록에 두 개의 특수 출력이 나타납니다. 1.24998370 LTC의 peg-in(kernel 7b367c60에 커밋)과 확장 블록 헤더(2d19998a)를 메인 체인에 커밋하는 HogEx 트랜잭션입니다. 평소 쓰는 LTC 주소는 아무것도 바뀌지 않습니다. 확장 블록은 블록당 트랜잭션 하나로 커밋되고, 합의 규칙은 그 무게 상한을 200,000으로 제한합니다(메인 블록은 4,000,000). (LTC→XMR 루트)

풀 잔액은 공개 숫자다. HogEx가 그 계기판입니다. 블록 3,202,492에서 txid 6066d5a0, 125바이트, 입력 1·출력 2. 첫 출력은 45,155,067,009,209 litoshi — 451,550.67009209 LTC — 를 ltc1g로 시작하는 주소로 보내고, 이 값은 해당 높이의 MWEB 공급량과 정확히 일치합니다. 둘째 출력은 2.97 LTC의 peg-out으로 목적지는 ltc1q7v2qhf0입니다. 관측 창이 끝날 때 풀은 451,920.71324566 LTC, 유통량 7,777만 LTC의 0.581%, 55.80달러 기준 약 2,522만 달러입니다. 특별한 도구 없이 매 블록 누구나 읽을 수 있습니다. MWEB는 눈금이 달린 믹싱 풀입니다. (LTC→XMR 루트)

실제로 숨겨지는 것. 섹션 내부에서 출력은 금액 대신 Pedersen 커밋먼트를 갖고, kernel은 숫자를 드러내지 않고 수지가 맞는다는 것만 증명합니다. kernel은 집계되기도 합니다. 101개 블록에서 kernel은 총 58개, 1개 이상인 블록 35개, 0개인 블록 66개, 한 블록 최대 4개였습니다. cut-through는 개수로 드러납니다 — MWEB 입력 41개가 소비되어 출력 83개가 생성 — 이것이 설계 의도 그대로입니다. 중간 출력이 사라지고 남는 것은 누가 누구에게 지불했는지 말하지 않는 커밋먼트 집합입니다. 크기도 같은 논리입니다. 빈 확장 섹션은 175바이트, 창의 중앙값이 정확히 그 값이었고, 최대는 7,901바이트로 블록 3,202,422(kernel 4개, 600.12 LTC peg-in)였습니다. (LTC→XMR 루트)

경계에서 새는 것. peg-in과 peg-out 모두 평범한 투명 출력입니다. peg-in은 203바이트 트랜잭션으로 입력 1·출력 1, 스크립트는 OP_9 뒤에 32바이트 kernel ID — 한눈에 식별됩니다. 블록 3,202,493의 두 건은 수수료 326과 1,630 litoshi, 금액은 0.103과 378.236 LTC였습니다. peg-out은 HogEx에서 일반 P2WPKH 출력으로 나옵니다. 101개 블록 창에서 peg-in은 23개 블록에 30건·합계 1,532.98198122 LTC, peg-out은 18개 블록에 24건·합계 764.75040055 LTC. peg-out 중앙값 8.35 LTC, 최대 355.68 LTC. 풀은 순증 789.41 LTC, 창 전체 MWEB 수수료는 178,902 litoshi — kernel당 중앙값 2,901 litoshi로 1센트도 되지 않습니다. (LTC→XMR 루트)

peg-out은 주소로 색인된다. 대부분이 놓치는 지점입니다. 공개 탐색기 API는 목적지 주소로 MWEB peg-out을 필터링해 돌려줍니다. kernel ID, litoshi 단위 금액, 주소 클래스까지 붙어서요. ltc1q7v2qhf0를 넘기면 kernel 0124ff8d, 금액 297,000,000, witness_v0_keyhash라고 답합니다. 즉 '이 주소의 자금이 MWEB에서 나왔다'는 사실은 온체인에 있을 뿐 아니라 검색이 됩니다. 시간도 겹쳐 보죠. 4시간 반 동안 네트워크 전체 peg-out은 24건, 시간당 약 5건입니다. 10 LTC를 peg-in하고 같은 시간 안에 9.97 LTC를 peg-out하면, 45만 LTC 풀에 섞인 것이 아니라 5명짜리 줄에 선 것이고 양 끝 금액이 일치합니다. MWEB의 익명 집합은 동시 peg 트래픽이지 풀 잔액이 아닙니다. (LTC→XMR 루트)

스왑 앞뒤에서 구체적으로 쓰는 법. Litecoin Core는 MWEB 주소를 만들 수 있습니다(getnewaddress의 address_type에 mweb). 121자, ltcmweb1로 시작, bech32m이 아니라 bech32, 66바이트(스캔 공개키와 스펜드 공개키)를 인코딩합니다. 절차는 주소 생성 → 그쪽으로 LTC 전송(이것이 peg-in) → MWEB 확인 대기 → 스왑 사이트의 LTC 입금 주소로 peg-out. 2026-10-27 10:15 UTC 기준 이 사이트는 100 LTC → 9.22231144 XMR(1 XMR당 10.8433 LTC, 현물 10.6351 대비 올인 1.96%), 10 LTC → 0.91940493 XMR(2.27%)을 제시했습니다. LTC 페어 하한은 0.24991437 LTC(13.95달러), 상한 1,350.4905204 LTC(75,357달러). 함정 셋: 거래소는 ltcmweb1 주소로 보내지 못하므로 peg-in은 OP_9 출력을 만들 수 있는 지갑에서 해야 하고, peg-out 금액과 목적지는 공개이며, peg-out 출력은 6블록 동안 쓸 수 없습니다(PEGOUT_MATURITY = 6) — 측정한 평균 162.9초/블록이면 약 16.3분입니다. (LTC→XMR 루트)

MWEB는 여전히 패치 중이다. v0.21.5.6(2026-08-02)에서 메인넷 파라미터에 동결된 MWEB 출력 목록이 들어갔습니다. 현재 32바이트 출력 ID 하나(2f3a08d9에서 94f7)이고 노드는 그 사용을 거부합니다. 여기에 소스가 '알려진 MWEB 입력 메타데이터 취약점'이라 부르는 것에 대한 1블록 예외(grandfather), 그리고 높이 3,154,440(2026-08-04 23:04:57 UTC)부터 pegout 기능을 주장하는 kernel은 실제로 pegout을 포함해야 한다는 규칙이 더해졌습니다. v0.21.5.8(2026-09-12)은 같은 정규화 규칙을 extra data로 확장해 높이 3,172,640(2026-09-05 16:51:01 UTC)부터 적용했습니다. 커밋 제목은 노골적입니다 — reject empty MWEB pegout features, reject empty MWEB kernel extradata. 아직 합의 계층에서 형식을 못 박는 중이라는 뜻입니다. 결론: MWEB는 '내가 가진 투명 코인'과 '사이트로 보내는 입금'의 연결을 끊는 용도에는 맞습니다. 단, 입금 자체가 공개이고 시간당 5건의 peg-out은 얇은 군중이라는 조건 아래에서만요. XMR로 바꾸는 일의 대체재는 아닙니다 — 오히려 XMR로 바꿀 때 peg 단계가 숨길 수 없는 부분입니다. (LTC→XMR 루트)

Frequently asked questions

MWEB는 거래 금액을 숨기나요?

확장 블록 내부에서는 숨겨지고 경계에서는 숨겨지지 않습니다. 읽은 101개 블록(3,202,394~3,202,494)에서 peg 금액은 모두 공개였습니다: peg-in 30건 합계 1,532.98198122 LTC, peg-out 24건 합계 764.75040055 LTC, 그리고 HogEx 트랜잭션이 풀 잔액을 litoshi 단위로 표시합니다 — 창이 끝날 때 451,920.71324566 LTC였습니다. 기밀 커밋먼트는 확장 블록 내부에 머무는 전송만 가립니다.

거래소에서 MWEB 주소로 LTC를 바로 보낼 수 있나요?

아니요. peg-in은 출력 스크립트가 OP_9에 32바이트 kernel ID를 붙인 트랜잭션(203바이트, 입력 1·출력 1)이고, 거래소는 평범한 투명 트랜잭션을 보냅니다. MWEB peg-in을 만들 수 있는 지갑 — 예를 들어 address_type을 mweb으로 둔 Litecoin Core — 이 필요합니다. 생성되는 주소는 121자이고 ltcmweb1로 시작합니다.

peg-out한 코인은 언제 쓸 수 있나요?

6블록입니다. PEGOUT_MATURITY는 합의 규칙이며, 101개 블록에서 측정한 평균 162.9초/블록 기준으로 6블록은 약 16.3분입니다. 출력은 즉시 블록에 나타나 탐색기에서 바로 보이지만, 성숙 기간이 지나기 전에는 옮길 수 없습니다.

Ready to swap?

No account · No KYC · No email

Exchange now
라이트코인 MWEB 프라이버시 실측: 숨는 것과 새는 것 — VeilSwap