Zcash 라이트월렛 노드
TL;DR
- 대부분의 사람들은 전체 블록체인을 내려받지 않는 라이트 월렛을 통해 Zcash를 사용합니다. 대신 이미 그 작업을 수행한 서버와 통신합니다.
- 오늘날 라이트 월렛을 지원하는 소프트웨어는 두 가지입니다. Go로 작성된 기존 서비스인 lightwalletd와 Rust로 작성된 새로운 인덱서인 Zaino입니다.
- 키는 절대 기기를 떠나지 않으며, 서버는 자금을 사용할 수도 완전히 실드된 거래 안의 금액과 메모를 읽을 수도 없습니다.
- 서버가 알기 쉬운 정보는 IP 주소와 활동 시점입니다. 실드된 거래는 블록체인에서 일어나는 일을 보호하지만 서버와의 연결은 보호하지 않습니다.
- Tor는 IP 식별자를 제거합니다.
zcash_client_backend 기반 월렛에서 사용할 수 있으며, ZODL에서는 고급 설정의 옵션입니다.
- 월렛이 사용할 서버를 변경하거나 직접 운영할 수 있습니다. lightwalletd와 Zaino 모두 오픈 소스입니다.
핵심 설명
대부분의 사람들은 전체 블록체인을 내려받지 않는 라이트 월렛을 통해 Zcash를 사용합니다. 대신 이미 그 작업을 수행한 서버와 통신합니다. 이 페이지에서는 그러한 서버가 무엇인지, 서버가 여러분에 대해 볼 수 있는 것과 볼 수 없는 것은 무엇인지, Tor를 통해 연결을 라우팅하는 방법, 그리고 월렛이 사용하는 서버를 변경하는 방법을 설명합니다.
오늘날 라이트 월렛을 지원하는 소프트웨어는 두 가지입니다. lightwalletd는 Go로 작성된 기존 서비스입니다. Zaino는 zcashd 사용 중단 작업의 일부로 구축된 Rust 기반의 새로운 인덱서입니다.
라이트 월렛 서버의 역할
라이트 월렛 서버는 월렛과 Zcash 블록체인 사이에 위치하며, 체인의 대역폭 효율적인 뷰를 제공합니다. 서버는 세 가지 일을 합니다.
압축 블록을 제공합니다. 전체 블록 대신, 월렛이 자신의 실드된 주소로의 결제를 감지하고, 노트의 사용을 감지하며, 증인을 업데이트하는 데 필요한 정보만 담은 압축된 형태를 전송합니다.
거래를 중계합니다. 송금 시 월렛은 완성된 거래를 서버에 전달하고, 서버는 이를 네트워크에 브로드캐스트합니다.
현재 높이와 월렛에 필요한 수수료 정보 같은 체인 질의에 응답합니다.
월렛은 여전히 개인적인 작업을 로컬에서 수행합니다. 키를 보관하고, 노트를 찾기 위해 블록을 시험 복호화하며, 기기에서 거래를 구성하고 서명합니다.
서버가 볼 수 있는 것과 볼 수 없는 것
이 부분은 오해하기 쉽습니다. 키가 기기를 떠나지 않는다고 해서 서버가 여러분에 대해 아무것도 알 수 없다는 뜻은 아닙니다.
여기서 참고할 자료는 Zcash 월렛 앱 위협 모델이며, 이 문제에 관심이 있다면 전문을 읽어볼 가치가 있습니다. 이 문서는 여러 유형의 공격자를 설명합니다. 이 페이지에서 중요한 공격자는 월렛과 인터넷 사이, 그리고 서버와 인터넷 사이의 트래픽을 관찰할 수 있는 공격자입니다. 서버 운영자는 월렛이 직접 연결되므로 본질적으로 그 위치의 일부에 있게 됩니다.
먼저 보호되는 것부터 살펴보겠습니다. 서버가 손상된 경우를 포함해 모델의 모든 공격자에 대해, 공격자는 "사용자의 암호화 키 자료(사용 키, 조회 키, 시드 문구 등)를 전혀 알 수 없고", 자금을 훔칠 수 없으며, 의도하지 않은 자금 전송을 강요할 수도 없습니다. 완전히 실드된 거래 안의 금액과 메모는 암호화된 상태로 유지됩니다.
다음은 보호되지 않는 부분입니다. 위협 모델은 트래픽을 관찰하는 공격자에 대한 알려진 약점을 다음과 같이 나열합니다.
| 약점 | 방식 |
|---|
| 사용자가 누구인지 파악 | "공격자는 사용자의 IP 주소를 알고 있으며, 이는 사용자의 실제 신원으로 이어질 수 있음" |
| 사용자가 대략 어디에 있는지 파악 | IP를 "지리 위치 데이터베이스에서 조회하여 위치를 추정" |
| 실드된 거래를 송금하거나 수신한 사실과 시점 파악 | 송금은 "연결이 암호화되어 있어도 보이는 더 많은 대역폭을 사용". 모델은 송금 및 수신 행위 자체가 서버 운영자에게 보인다고 언급 |
| 시간에 따라 수행한 거래 수 계산 | 더 긴 기간 동안 관찰되는 동일한 대역폭 패턴 |
| 반복적인 결제 패턴 포착 | 활동이 발생하는 시점 관찰 |
| 주소가 본인의 것인지 판단 | 이미 주소를 알고 있는 공격자는 "그 주소로 자금을 보내고" 월렛이 이를 가져올 때 "대역폭 급증이 있는지 관찰"할 수 있음 |
모델은 일반적인 경우에 "사용자와 lightwalletd 서버 운영자 간의 신뢰 관계"를 가정한다고도 언급합니다.
따라서 솔직한 요약은 이렇습니다. 라이트 월렛 서버는 자금을 사용할 수 없고, 실드된 거래의 금액이나 메모를 읽을 수도 없습니다. 그러나 IP 주소와 활동 시점은 알기 쉬우며, 이 두 정보는 함께 보면 개인에 대해 많은 것을 드러낼 수 있습니다. 실드된 거래는 블록체인에서 일어나는 일을 보호합니다. 하지만 그 자체로 서버와의 연결을 숨기지는 않습니다.
시각화 / 비유
지금까지 발행된 모든 신문을 보관하는 공공 도서관을 생각해 보세요. 풀 노드는 전체 기록 보관소를 집으로 가져가는 독자입니다. 라이트 월렛은 대신 사서에게 매일의 요약본을 요청하는 독자입니다. 자신과 관련된 내용이 있는지 알아보기 위한 정보만 담긴 얇은 종이 한 장입니다.
그 요약본은 봉인되어 있습니다. 사서는 어떤 항목이 여러분에게 중요한지 읽을 수 없는 상태로 이를 준비하고, 여러분은 집에서 자신의 키로 엽니다. 이것이 압축 블록이며, 이를 여는 과정이 기기에서의 시험 복호화입니다.
하지만 사서는 어떤 독자가 들어왔는지, 언제 왔는지, 얼마나 두꺼운 묶음을 들고 나갔는지는 여전히 봅니다. 이것이 IP 주소와 활동 시점입니다. 봉투가 아무리 잘 봉인되어 있어도 안내 데스크에서는 보입니다. Tor는 익명의 배달원을 보내는 것과 같습니다. 사서는 여전히 같은 묶음을 건네지만, 이제 그것이 누구의 집으로 가는지는 알 수 없습니다.
심층 분석
Tor를 통한 라우팅
Tor는 IP 주소와 월렛 트래픽의 연결을 끊어 위 표에서 가장 강력한 식별자를 제거합니다.
많은 Zcash 월렛이 기반으로 하는 Rust 라이브러리에는 이를 지원하는 기능이 있습니다. zcash_client_backend에는 Tor의 Rust 구현체인 Arti 기반 Tor 모듈이 포함되어 있어, 별도의 Tor 클라이언트를 제공하지 않고도 월렛이 동기화, 거래 브로드캐스트, 가격 조회를 Tor를 통해 라우팅할 수 있습니다.
Zaino 개발자들은 위협 모델을 직접 인용하며 같은 주장을 합니다. 즉, "Zcash 인덱싱 서버로부터 클라이언트의 신원을 난독화하기 위해 Nym 또는 Tor와 같은 익명 전송 프로토콜을 사용할 필요"가 있습니다.
ZODL에서 Tor는 고급 설정의 옵션입니다. 월렛의 릴리스 노트는 사용자가 "메타데이터 노출을 줄이고 싶다면" 수동 연결 모드와 "고급 설정에서 Tor 활성화"를 사용하도록 안내합니다. 또한 앱은 월렛을 복원하기 전에 Tor를 켜도록 제안합니다. 이 시점은 새 IP가 그렇지 않으면 전체 월렛 기록과 연결될 수 있는 순간입니다.
두 가지 주의점이 있습니다. Tor는 서버로부터 IP를 숨기지만, 서버가 여러분의 요청에서 파악하는 내용은 바꾸지 않습니다. 또한 onion 라우팅은 지연 시간을 추가하므로 동기화가 더 오래 걸립니다. 직접 서버를 운영하면 운영자가 본인이 되므로 신뢰 문제를 다른 방식으로 피할 수 있습니다.
Rust 인덱서 Zaino
Zaino는 zcashd 사용 중단 작업의 일부로 lightwalletd를 대체하기 위해 Zingo 팀이 Rust로 작성한 인덱서입니다. 라이트 클라이언트, 풀 클라이언트, 블록 탐색기를 지원하며, "Zebra 또는 zcashd 풀 검증자"가 보유한 체인 데이터를 읽습니다.
활발하게 개발 중이며, 버전 0.8.0은 2026년 8월에 출시되었습니다. 가능한 경우 lightwalletd와의 하위 호환성을 유지하는 것이 목표이므로, 월렛은 다시 작성하지 않고도 이를 사용할 수 있습니다.
Zaino에는 아키텍처 다이어그램이 포함된 별도 페이지가 있으므로, 이 페이지에서는 라이트 월렛 서버로서의 역할만 다룹니다.
직접 운영하기
가장 강력한 선택지는 직접 운영자가 되는 것이며, 이는 신뢰 문제를 완전히 제거합니다. 두 서버 모두 오픈 소스입니다. Go로 작성된 lightwalletd와 Rust로 작성된 Zaino가 있습니다. 둘 다 풀 검증자로부터 데이터를 읽으므로 Zebra도 필요합니다.
실질적 영향
서버 목록
hosh.zec.rocks 대시보드는 공개 서버와 그 상태를 추적하며, 실제로 어떤 서버가 운영 중인지 확인할 수 있는 곳입니다. status.zec.rocks는 서비스 상태를 보여줍니다.
작성 시점에 해당 대시보드에 나열된 서버:
| 서버 | 참고 |
|---|
| zec.rocks:443 | na.zec.rocks, eu.zec.rocks, ap.zec.rocks 및 sa.zec.rocks의 지역 엔드포인트가 함께 나열됨 |
| zec-node.cakewallet.com:443 | Cake Wallet 도메인에서 운영 |
| zec.0xrpc.io:443 | 여러 체인을 위한 무료 공개 엔드포인트를 제공하고 용량 비용 충당을 위한 기부를 요청하는 0xRPC가 운영 |
| zaino.unsafe.zec.rocks:443 | Zaino 인스턴스. 호스트 이름에 유의하고 실험적인 것으로 취급 |
| testnet.zec.rocks:443 | 테스트넷이며, zaino.testnet.unsafe.zec.rocks에 Zaino 테스트넷 인스턴스가 나열됨 |
이 목록을 신뢰하기보다 대시보드를 확인하세요. 운영자는 생기고 사라지며, 이와 같은 페이지는 시간이 지나면 오래됩니다.
월렛에서 서버 변경하기
신뢰하는 운영자를 선택하거나, 활동을 여러 운영자에 분산하거나, 직접 운영하는 서버를 지정하려는 경우에 유용합니다.
아래 메뉴 경로는 이 페이지를 업데이트했을 당시에는 정확했지만 월렛 인터페이스는 바뀔 수 있으므로 정확한 경로가 아닌 힌트로 취급하세요. 고급 설정이나 서버 옵션을 찾아보세요.
ZODL
이전 이름은 Zashi입니다. 오른쪽 상단의 톱니바퀴를 누른 뒤 고급 설정으로 이동하세요. Tor도 같은 화면에 있습니다. ZODL은 서버가 오래되어 동기화에 실패한 경우 서버 전환 바로가기 또한 제공합니다.
Ywallet
오른쪽 상단의 톱니바퀴를 누른 뒤 Zcash 탭으로 이동하세요.

Zingo
왼쪽 상단의 햄버거 메뉴를 누른 뒤 설정으로 이동하고 아래로 스크롤하세요.

eZcash
왼쪽 상단의 햄버거 메뉴를 누른 뒤 설정, 고급으로 이동하세요.

이 스크린샷은 2025년 3월에 촬영되었으며 이후 앱들이 릴리스를 배포했으므로 버튼 위치가 바뀌었을 수 있습니다.
흔한 실수
서버가 거래를 읽을 수 있다고 생각하기. 읽을 수 없습니다. 키는 기기에 남아 있고, 완전히 실드된 거래 안의 금액과 메모는 서버가 손상된 공격자에게도 암호화된 상태로 유지됩니다.
"실드됨"을 "익명 연결"로 해석하기. 실드된 거래는 블록체인에서 일어나는 일을 보호합니다. IP 주소와 활동 시점은 별개의 계층이며, 바로 그 계층을 서버가 봅니다.
Tor가 모든 흔적을 없앤다고 가정하기. Tor는 서버로부터 IP를 숨기지만, 서버가 요청에서 파악하는 내용은 바꾸지 않으며 동기화에 지연 시간을 추가합니다.
위키 페이지의 서버 목록을 신뢰하기. 운영자는 생기고 사라집니다. 월렛을 어떤 서버로든 지정하기 전에 실제로 운영 중인 서버는 hosh.zec.rocks에서 확인하세요.
요약
라이트 월렛은 디스크 공간을 차지하지 않고 실드된 풀을 제공하므로 좋은 선택입니다. 다만 무엇을 교환하는지 명확히 알아야 합니다. 서버는 자금을 가져가거나 실드된 금액을 읽을 수 없지만, IP 주소와 거래 시점은 쉽게 파악할 수 있습니다. Tor를 통해 라우팅하고, 운영자를 신중하게 선택하거나, 직접 운영하세요.
관련 페이지
최종 업데이트: 2026년 8월