Non-Custodial Web3 Wallets: Who Really Controls the Funds?
Disclaimer: This article is for educational purposes only. It is not financial, legal, or investment advice.
일반적인 앱에서는 이메일, 전화번호 또는 고객 지원을 통해 접근을 복구할 수 있습니다. 비수탁형 Web3 지갑은 다른 모델을 사용하며 유효한 암호학적 서명을 만들 수 있는 능력에 제어권이 달려 있습니다.
사용자만 개인 키를 보유한다면 해당 블록체인 주소의 작업을 승인할 수 있는 사람도 그 사용자뿐입니다. 지갑 개발자, 플랫폼 또는 지원팀은 그 키를 알 수 없어야 하며 단순히 "블록체인 비밀번호를 재설정"할 수도 없습니다.
That is the core of a non-custodial, or self-custody, wallet: an intermediary does not hold the keys on the user’s behalf.
핵심 요점
- 토큰은 블록체인에 존재하며 지갑은 키를 관리하고 네트워크 데이터를 표시합니다.
- 개인 키로 서명할 수 있는 사람이 해당 주소를 통제합니다.
- 시드 문구는 여기서 파생된 모든 계정을 복구하는 데 사용될 수 있으므로 절대 공유해서는 안 됩니다.
- 앱 비밀번호는 보통 한 기기를 보호하며 시드 문구를 대신하지 않습니다.
- 자기수탁은 직접 제어권을 제공하지만 피싱, 악성코드 또는 안전하지 않은 서명을 막아 주지는 않습니다.
토큰이 실제로 존재하는 위치
암호화폐 자산은 휴대전화, 브라우저 확장 프로그램 또는 하드웨어 기기 안에 저장되지 않습니다. 블록체인은 어떤 자산이 어떤 주소와 연결되어 있고 어떤 작업이 발생했는지에 관한 공유 상태를 저장합니다.
일반적으로 지갑은 다음과 같은 기능을 합니다:
- 키를 생성하거나 키에 연결합니다;
- 네트워크에서 잔액과 내역을 조회합니다;
- 트랜잭션을 준비하고 서명합니다.
지갑 앱을 삭제해도 블록체인의 토큰은 삭제되지 않습니다. 그러나 키를 복구할 유효한 방법이 없으면 사용자가 토큰을 제어할 능력을 영구적으로 잃을 수 있습니다.
공개 주소, 개인 키 및 시드 문구
이 용어들은 서로 다른 목적을 가집니다.
Public address
발신자와 공유하거나 블록 탐색기에서 공개 기록을 확인하는 데 사용할 수 있습니다. 주소를 안다고 해서 출금 트랜잭션을 승인할 수 있는 것은 아닙니다.
개인 키
이 비밀 정보는 특정 계정의 작업에 서명합니다. 이를 얻은 사람은 누구나 해당 주소를 대신해 작업할 수 있습니다.
시드 문구
Secret Recovery Phrase라고도 하는 시드 문구는 호환되는 지갑에서 관련 키와 계정을 복구할 수 있는 단어 모음입니다. 정확한 복구 방식은 제품마다 다르므로 사용하는 지갑의 공식 문서를 따라야 합니다.
One rule remains universal: never give a seed phrase or private key to support staff, a community administrator, a “verification” website, or someone promising to recover funds.
전송을 받으려면 공개 주소만 필요합니다. 트랜잭션 확인에는 주소 또는 트랜잭션 해시만 필요합니다. 어느 작업에도 시드 문구는 필요하지 않습니다.
비밀번호와 시드 문구의 차이
앱 또는 확장 프로그램 비밀번호는 일반적으로 한 기기의 로컬 접근을 잠급니다. 다른 사람이 해당 기기를 여는 것을 막을 수 있지만 블록체인 주소의 범용 인증 정보는 아닙니다.
공격자가 시드 문구를 얻었다면 로컬 비밀번호를 변경해도 접근 권한을 없앨 수 없습니다. 다른 호환 지갑에서 키를 복구할 수 있기 때문입니다.
사용자가 로컬 비밀번호를 잊었더라도 올바른 시드 문구를 보유하고 복구 과정을 이해한다면 일반적으로 접근을 복구할 수 있습니다. 지갑 접근 수단과 키 복구 방법을 모두 잃으면 지원팀도 필요한 서명을 대신 만들 수 없습니다.
일부 최신 지갑은 소셜 로그인, 분산 복구 또는 스마트 계정 메커니즘을 사용합니다. 백업 방식이 기존 시드 문구 방식과 다를 수 있습니다. 사용하기 전에 다음 사항을 확인하십시오:
- 누가 접근 권한을 복구할 수 있나요?
- 몇 개의 요소 또는 몇 명의 참여자가 필요한가?
- 서비스 제공자가 단독으로 트랜잭션에 서명할 수 있는가?
- 외부 계정이 차단되면 어떻게 되나요?
- 제어권을 내보내거나 이전할 수 있는가?
‘Web3 지갑’이라는 명칭만으로는 이러한 질문에 답할 수 없습니다.
수탁형 및 비수탁형 접근
| Question | 수탁형 서비스 | 비수탁형 지갑 |
|---|---|---|
| 누가 키를 보유하나요? | 제공업체 또는 해당 인프라 | 사용자 또는 사용자가 선택한 자기수탁 방식 |
| 누가 온체인 작업에 서명하나요? | 사용자 요청에 따른 제공업체 | 사용자의 지갑 |
| 접근 권한은 어떻게 복구하는가? | 일반적으로 계정과 지원 서비스를 통해 | 시드 문구, 키 또는 정의된 복구 설계를 통해 |
| 서비스가 출금을 제한할 수 있는가? | 예. 해당 시스템 내부에서는 가능합니다 | 인터페이스에 문제가 생겨도 키는 다른 호환 인터페이스에서 작동할 수 있습니다 |
| 주요 위험 | 서비스 제공자의 침해, 장애, 제한 또는 지급 불능 | 키 분실 또는 침해 및 안전하지 않은 서명 |
이 비교는 통제 모델을 설명합니다. 어느 한 선택지가 보편적으로 안전하다는 뜻은 아니며, 각 모델은 위험과 책임을 서로 다른 위치에 둡니다.
‘내 자금을 내가 통제한다’는 말의 실제 의미
개인 키를 제어하면 서명할 수 있지만 모든 토큰이나 애플리케이션에 무제한 권한을 갖는 것은 아닙니다.
결과는 다음 요소에도 따라 달라질 수 있습니다:
- 토큰 컨트랙트 규칙;
- 발행자의 일시 중지, 동결 또는 블랙리스트 기능;
- 이전에 부여한 토큰 승인;
- 예치된 자산을 보유하는 프로토콜의 로직;
- 네트워크 가용성 및 수수료;
- 스마트 컨트랙트 버그;
- 인터페이스, RPC 제공업체 또는 법적 제한.
예를 들어 사용자가 스마트 컨트랙트에 토큰을 예치할 수 있습니다. 키는 계속 사용자가 관리하지만 출금은 해당 컨트랙트의 규칙에 따라서만 가능합니다. 자기수탁은 중개자의 키 보관을 없애지만 코드를 우회하지는 못합니다.
트랜잭션 처리 과정
- 지갑이 잔액과 현재 수수료 매개변수를 조회합니다.
- 사용자가 수신자와 금액을 입력합니다.
- 앱에 준비된 트랜잭션이 표시됩니다.
- 사용자가 이를 승인합니다.
- 개인 키는 로컬 장치 또는 하드웨어 서명 장치에서 서명을 생성합니다.
- 서명된 트랜잭션이 네트워크에 전파됩니다.
- 네트워크가 서명과 실행 규칙을 검증합니다.
올바르게 설계된 지갑은 개인 키를 블록체인에 공개하지 않습니다. 키 자체를 노출하지 않고 권한을 증명하는 서명을 전송합니다.
제어권이 안전성을 의미하지는 않습니다
자기수탁은 수탁자에 대한 의존을 줄이지만 책임은 소유자에게 이전합니다.
피싱
위조 사이트는 사용자에게 지갑을 연결하고 악성 요청에 서명하도록 유도합니다. 연결과 서명은 서로 다른 작업이지만 모든 서명 요청을 주의 깊게 확인해야 합니다.
시드 문구 침해
다른 사람이 복구 문구를 보았다면 여기서 파생된 모든 주소가 침해된 것으로 간주해야 합니다. 앱 비밀번호 변경만으로는 충분하지 않습니다.
유해한 승인
사용자는 컨트랙트에 토큰 사용 권한을 부여할 수 있습니다. 위험 수준은 토큰, 지출 권한을 받은 주소 및 허용 금액에 따라 달라집니다.
주소 바꿔치기
악성코드는 복사한 주소를 바꿀 수 있습니다. 서명 전에 신뢰할 수 있는 화면에서 트랜잭션 세부 정보를 확인하세요.
백업 분실
휴대전화가 고장 나거나 앱이 삭제되었는데 복구 수단이 없는 경우, 기존 자기수탁 방식에서는 중앙 지원팀이 키를 다시 만들 수 없습니다.
기본 자기수탁 보안 수칙
- 공식 웹사이트의 링크를 통해서만 지갑을 설치하고 광고로 노출된 복제본과 가짜 확장 프로그램을 주의하세요.
- 지갑의 공식 안내에 따라 복구 데이터를 백업하고 가능하면 오프라인으로 보관해 무단 접근을 차단하세요.
- 메시지로 받은 링크에 시드 문구를 입력하지 마세요. 검증된 지갑에서 직접 복구할 때만 사용하세요.
- 시드 문구의 스크린샷을 찍거나 이메일 또는 메신저 앱으로 보내지 마세요.
- 서명 전에 네트워크, 주소, 자산, 금액, 승인 및 수수료를 확인하세요.
- 큰 금액에는 하드웨어 서명 장치를 고려할 수 있지만 복구 방식과 공급망 위험을 이해해야 합니다.
- 일상적인 dApp 사용과 장기 보관처럼 목적에 따라 주소를 분리하세요.
- 신뢰할 수 있는 탐색기나 공식 네트워크 도구를 사용해 이전 토큰 승인을 정기적으로 확인하세요.
- 새로운 작업 흐름은 먼저 소액으로 테스트하십시오.
- 비밀 정보를 미리 노출하지 않는 안전한 상속 계획을 준비하세요.
문제가 발생한 경우
앱 비밀번호는 분실했지만 시드 문구는 안전한 경우
복구 문구를 임의의 웹사이트에 입력하지 마세요. 지갑의 공식 복구 안내를 찾아 검증된 앱을 사용하세요.
시드 문구가 노출되었을 수 있는 경우
관련된 모든 주소가 침해되었다고 간주하십시오. 안전한 기기에서 새로운 독립 지갑을 만들고 가능하면 가스비와 활성 승인을 고려해 자산을 새 주소로 옮기십시오. 기존 비밀번호를 변경하는 것만으로는 충분하지 않습니다.
의심스러운 승인에 서명함
블록 탐색기에서 트랜잭션과 활성 허용량을 확인하세요. 허용량 철회 자체도 가스비가 필요한 온체인 트랜잭션입니다. 시드 문구가 노출되었다면 철회만으로는 충분하지 않습니다.
토큰을 잘못된 주소로 보냄
블록체인에는 확인된 전송을 취소하는 기능이 없습니다. 수신 주소의 관리자 또는 적용 가능한 컨트랙트 로직만 자산을 반환할 수 있습니다. 트랜잭션을 되돌려 주겠다는 사람에게 시드 문구를 절대 공개하지 마세요.
"비수탁형"이라는 주장을 검증하는 방법
서비스 제공자에게 다음을 문의하세요:
- 누가 개인 키를 생성하고 보관하나요?
- 내 승인 없이 회사가 트랜잭션에 서명할 수 있는가?
- 회사에 문의하지 않고 접근 권한을 복구할 수 있는가?
- 호환 지갑으로 제어권을 내보내거나 이전할 수 있는가?
- 서비스가 종료되면 어떻게 되나요?
답변은 ‘탈중앙화’ 또는 ‘안전함’이라는 표현만 반복하지 말고 아키텍처를 설명해야 합니다.
결론
비수탁형 지갑은 앱 안의 은행 계좌가 아닙니다. 사용자가 키를 관리하고 블록체인 작업에 서명하는 도구입니다.
Direct control removes the need to trust an intermediary with key custody, but makes the user responsible for backups, signature review, and device security. The most useful habit is simple: a public address can be shared; a seed phrase and private key must never be shared.