용어 송금 경로 우리가 못하는 것 질문
Mitilena Mitilena Wallet Cold crypto wallet
ONLINE · 22,000+ COINS 지갑 만들기만들기
작동 방식 · 송금 경로 7단계

우리는 여러분의 자산을 쓸 수 없습니다. 그게 어디서 막히는지 지금 보여드립니다.

Mitilena에서 송금은 일곱 단계를 거칩니다. 자산의 키가 필요한 단계는 딱 하나이고 — 그 단계는 여러분의 기기에서 이뤄집니다. 서버로 가는 것은 이미 서명된 결과라서 고칠 수 없습니다.

기기에서 트랜잭션 서명 서버는 서명만 봅니다 비수탁 지갑 — 키는 여러분 것
일곱 단계, 서명 한 번
01보내는 주소 선택비밀 없음02받는 사람 입력공개 데이터03수수료 계산키 불필요04초안 작성아직 돈이 아님05기기에서 서명키가 필요한 유일한 단계06결과가 서버로 전달서명된 봉투07기록에 저장이름·IP 없음
여러분의 기기
만들고 서명함
키는 여기서만 사용
서명된 트랜잭션
Mitilena 서버
네트워크로 전달, 키는 보지 않음
해시가 여러분에게 돌아옴
블록체인
기록 · 주소만 보고 사람은 모름
나머지를 이해하려면 필요한 세 단어

주소

계좌번호라고 생각하면 됩니다. 누구에게나 보여줄 수 있고 — 그곳으로 돈이 들어옵니다. 여러분이 누구인지는 말하지 않습니다: 블록체인에는 「이름」 칸이 없습니다.

개인키

이것이 여러분의 서명입니다. 계정 비밀번호가 아니라 진짜 서명: 키를 가진 사람이 그 주소의 코인을 쓸 수 있습니다. 개인키는 어디에 저장되나요? 오직 여러분에게만; 우리에게는 보여주지 않으며, 우리에게도 없습니다.

트랜잭션

지시서입니다: 「주소 A에서 주소 B로 이만큼 보내라.」 서명이 붙기 전에는 그 자체로 아무 효력이 없습니다. 네트워크는 서명된 것만 받습니다.

송금 경로

지갑이 암호화폐를 보내는 방법: 일곱 단계 — 키가 필요한 단계는 딱 하나

각 단계는 쉬운 말로 시작하고, 이어서 「내부 동��」 한 줄의 기술 설명을 둡니다. 초보자는 건너뛰고, 개발자는 그 줄만 읽습니다. 모두 지갑·백엔드 코드와 맞춰 확인했습니다 — 추측이 아닙니다.

단계 01

어느 주소에서 보낼지 고릅니다

지갑 목록을 열고 돈이 나갈 지갑을 고릅니다. 여기서는 비밀스러운 일이 없습니다: 앱이 주소 문자열만 가져올 뿐입니다.

주소는 어디에 있나요. 가입하지 않았다면 — 브라우저나 앱의 로컬 저장소에만, 잔액·설정과 함께 있습니다. 주소는 우리에게 보내지지 않습니다: 여러분이 존재하는지도 모릅니다. 계정(이메일, Google, Apple)을 만들면 — 서버로는 주소만 가서 폰과 PC 목록이 맞춰집니다. 개인키는 계정에 들어가지 않습니다: ��드에 그 필드가 아예 없습니다.

내부 동작지갑 목록 - localStorage의 walletsWithCryptoIds 키 아래 JSON. 가입 시 주소는 addSpecificWalletToUser 소켓으로 추가되고 사용자 해시에 묶입니다. 서버로 가는 객체에는 개인키 필드가 아예 없습니다.
「출금」 필드 — 주소 문자열과 블록체인의 잔액. 이 단계에서 지갑에 더 필요한 것은 없습니다.
가입 없음
주소는 기기에서만. 여러분이 있는지도 모릅니다.
계정 있음
서버로는 주소만. 키를 넣을 필드가 없습니다.
단계 02

받는 사람을 입력합니다

받는 주소는 붙여넣기, QR 스캔, 주소록에서 고를 수 있습니다. 주소록은 여러분의 송금 기록으로 만듭니다: 앱이 이 네트워크의 여러분 주소를 보내고, 그 주소에서 이미 보낸 상대를 받아옵니다. 「연락처」를 모으지 않고 전화부 접근도 요청하지 않습니다.

이름표와 즐겨찾기는 여러분에게만. 「엄마」「거래처」 같은 라벨과 고정 주소는 기기 로컬 저장소에만 있고 — 서버에는 없습니다. 입력하는 동안 지갑이 네트워크 규칙으로 주소를 검사합니다: 길이, 형식, 체크섬. 오타는 입력란을 넘어가지 않습니다.

내부 동작getAddressBook 소켓이 txs 테이블에서 「보낸이 - 여러분 주소 중 하나」를 조회하고 수신자마다 최근 송금 최대 3건을 돌려줍니다. 라벨·즐겨찾기 - localStorage의 mitilenaAddrLabels_v1, mitilenaAddrFavs_v1.
「활성 주소」 배지: 수신자 잔액과 활동. 공개 데이터입니다 — 누구든 아무 주소나 조회할 수 있습니다.
배지가 보여주는 것
보내는 코인의 잔액; 토큰이면 — 네트워크 네이티브 코인까지(없으면 수신자가 수수료를 낼 수 없음); 그리고 그 주소가 이미 거친 트랜잭션 수.
단계 03

네트워크 수수료를 계산합니다 — 키는 필요 없습니다

암호화폐 네트워크 수수료는 고정이 아닙니다: 송금을 블록에 넣도록 네트워크에 지불합니다. 솔직한 숫자를 보여주려면 네트워크에 물어야 합니다. 밖으로 나가는 것은 여러분 주소, 받는 주소, 금액뿐입니다. 키도 서면도 없습니다 — 자산을 움직일 수 있는 것은 아무것도 없습니다.

왜 안전한가. 읽기이지 행위가 아닙니다: 「지금 송금 비용이 얼마인가」를 묻는 것은 전광판을 보는 것과 같습니다. 읽기만으로는 코인이 빠지지 않습니다: 출금은 서명이 있을 때만 됩니다.

세 가지 속도. 더 느리고 싸게, 또는 더 빠르고 비싸게 고릅니다. 우리 마진이 아닙니다 — 수수료는 전부 네트워크 채굴자·검증자에게 갑니다. Mitilena는 송금 수수료를 받지 않습니다.

내부 동작기본 수수료 단계 - getFee 소켓, 이 요청에는 여러분 주소가 전혀 안 들어가고 네트워크 id만. 주소별 데이터 - 별도 호출: getBtcUnspent 및 유사, getTronResources, getXrpAccountStatus, getTonFee. EVM 요금은 노드의 eth_gasPrice.
수수료 슬라이더: 크기 374 vBytes에서 1-4 sat/vB. 네트워크가 키 없이 이 숫자를 모두 돌려줍니다.
네트워크별로 무엇을 묻는지
BTC, LTC, DOGE, BCH, ZEC - 미사용 「조각」 목록: 개수가 트랜잭션 크기와 수수료를 좌우합니다.
EVM 네트워크: ETH, BNB, Polygon, Arbitrum, Base, AVAX, ETC - 네트워크 가스 가격과 결제 순번.
Tron - 주소의 무료 자원 bandwidth·energy: 충분하면 - 송금이 더 저렴합니다.
XRP - 수신 계정이 있는지: 미활성 계정은 예치금이 필요합니다.
TON과 Solana - 수수료 추정과 수신자에게 이 토큰용 「주머니」가 있는지.
단계 04

트랜잭션 초안을 만듭니다

지갑이 지시서를 통째로 모읍니다: 어디서, 어디로, 얼마, 수수료, 순번. 주소마다 나가는 결제 카운터 — nonce가 있습니다. 같은 트랜잭션이 두 번 통과하지 않게 하고 순서를 지킵니다. 아직 대기열에 있는 송금까지 포함해 네트워크에 현재 값을 묻습니다.

초안은 아직 돈이 아닙니다. 이 단계에는 지시 문장만 있습니다. 서명이 없으면 무가치합니다: 은행이 서명 없는 이체서를 받지 않듯 네트워크도 받지 않습니다. 잃어버려도, 보여줘도, 버려도 — 잔액은 바뀌지 않습니다.

내부 동작nonce는 getNonce 소켓으로 옵니다; EVM에서는 getTransactionCount(address, 'pending'). UTXO 네트워크에는 번호가 없고 - 미사용 출력이 그 역할을 합니다. Tron: extendExpiration 1200초.
서명 전 화면: 금액, 출금, 입금. 지금은 지시 문장일 뿐입니다 — 네트워크는 받지 않습니다.
Tron 참고
네트워크 노드가 초안을 만들고 약 1분만 살아 있습니다 — 카드를 꺼내 PIN을 넣기엔 짧습니다. 우리는 20분으로 늘립니다; 추가 권한은 생기지 않습니다.
Solana 참고
서명 전에 주소가 일반 지갑인지, 스마트컨트랙트 계정이 아닌지 확인합니다: 「선물」 시드에서 온 경우가 많고 ��� 잔액은 보이지만 출금이 안 됩니다.
단계 05
키가 필요한 유일한 단계

트랜잭션 서명. 여러분의 기기에서 이뤄집니다

이 흐름이 존재하는 이유입니다. 지갑이 초안과 키로 서명을 계산합니다 — 바로 여기, 앱이나 브라우저 탭에서. 키는 네 가지 경로로 올 수 있고, 네 가지 모두 기기에서 끝납니다:

1직접 입력 — 종이, PDF, 비밀번호 관리자에서.
2QR 스캔 — 카메라만, 네트워크 없음.
3NFC 카드·스티커 접촉 — 캐리어에서 키를 읽고 비밀번호로 복호화하며, 서명이 끝날 때까지만 메모리에 있습니다.
4PIN 입력 — 이전에 기기에 키 저장을 허용한 경우.

맞는 키인지 확인. 보내기 전에 지갑이 입력한 키에서 주소를 뽑아 보내는 주소와 비교합니다. 불일치 — 송금은 나가지 않고 「Wrong private key」가 보입니다. 서명은 트랜잭션 문장과 키에 대한 수학입니다: 서명에서 키를 되돌릴 수 없고, 그 트랜잭션에만 유효합니다. 금액이나 수신자를 한 글자만 바꿔도 — 서명이 맞지 않습니다.

PIN으로 저장하는 이야기 — 솔직히. 키는 기기에서 암호화되어 로컬 저장소에 암호문으로만 둡니다. PIN은 6~12자, 이모지 가능. 우리는 이 PIN을 모르고 복구할 수도 없습니다: 여러분의 머릿속에만 있습니다.

내부 동작PIN에서 PBKDF2-SHA256으로 암호화 키를 유도, 10만 회, 기록마다 임의 salt; AES-256-CBC, localStorage에 salt:iv:ciphertext로 저장. 「키가 보낸이와 일치」 게이트 - SignOnline.vue, sendTrans.
Monero 참고
트랜잭션은 브라우저의 로컬 암호 모듈에서 만들고 서명합니다. 서버는 링 서명용 남의 공개 출력을 주고, 여러분의 것이 이미 쓰였는지 확인합니다. Monero 잔액에는 뷰 키가 필요합니다 — 읽기만 하고 쓸 수는 없습니다.
오프라인으로 서명할 때
Mitilena Air는 인터넷 없는 기기에서 서명합니다: 트랜잭션이 QR·소리·NFC로 갔다가 이미 서명된 채로 돌아옵니다. 네트워크에 연결된 기기에는 키가 1초도 나타나지 않습니다.
서명 방법 세 가지: 이 기기에서, NFC 카드로, 또는 Mitilena Air 오프라인. 어느 경우에도 키는 나가지 않습니다.
서명 화면: 개인키 또는 12단어, QR이나 카드. 입력란은 기기에만 있습니다.
PIN으로 저장: 암호화되어 이 브라우저에만 보관됩니다.
단계 06

암호화폐 지갑 서버가 보는 것: 서명 결과뿐

서명이 준비됐습니다. 이제 지갑이 서명된 트랜잭션을 보냅니다 — 그게 전부입니다. 한 줄 안에 이미: 어디서, 어디로, 얼마, 수수료, 순번, 서명 자체가 들어 있습니다. 무엇을 바꿔도 불가능합니다 — 서명이 깨지고 네트워크가 거절합니다. 금액을 고치거나, 수신자를 바꾸거나, 두 번 보낼 수 없습니다.

서버가 하는 일. 딱 하나: 네트워크 노드를 통해 봉투를 블록체인에 넘기고 해시를 돌려줍니다 — 어떤 탐색기에서든 찾을 수 있는 번호. 편지를 열 수 없는 우편배달부와 같습니다. 서명된 트랜잭션은 Mitilena에 묶여 있지 않습니다: 그 네트워크의 어떤 노드든 받습니다. 내일 우리 서버가 사라져도 코인은 여러분 것입니다 — 키가 여러분에게 있으니까요.

내부 동작pushSignedTxToBlockchain 소켓이 txHex 필드 - 서명된 트랜잭션 - 를 받아 해당 네트워크 전송 메서드를 호출합니다. 이 요청에 개인키는 없습니다: 어떤 형식에도 그 필드가 없습니다.
「트랜잭션 보내기」 버튼은 이미 서명된 봉투를 서버로 보냅니다. 그 안의 무엇을 바꿔 넣을 수 없습니다.
단계 07

송금 기록 — 그리고 무엇이 적히는지

전송이 성공하면 지갑이 짧은 기록을 남겨 내역과 주소록이 동작합니다. 기록에는: 네트워크, 코인, 금액, 보낸 주소, 받는 주소, 해시, 보낸 시점 환율, 날짜. 여기에 추적 링크 코드가 있어 수신자에게 상태를 보여줄 수 있습니다.

기록에 없는 것: 이름, 이메일, IP 주소, 사용자 id. 행은 사람이 아니라 블록체인에 이미 공개된 주소에 묶입니다. 그래서 익명화했다고 말합니다. Mitilena Air 오프라인 서명 시 온라인 쪽은 송금에 대해 아무것도 저장하지 않습니다: 완성된 봉투만 봅니다.

내부 동작saveAnonymTxDataForTrackingLinkPurposes 소켓이 txs 테이블에 한 행을 넣습니다. 사용자 컬럼은 없습니다. 2단계 주소록은 같은 테이블을 여러분 주소로 읽습니다 - 그래서 수신자는 알되 여러분은 모릅니다.
txs 테이블 · 한 행「사용자」 컬럼 없음
있음
네트워크와 코인
금액
보낸 주소
받는 주소
트랜잭션 해시
보낸 시점 환율
날짜
추적 링크 코드
없음
이름
이메일
IP 주소
사용자 id
물리적으로 할 수 없는 것

「안 하겠다고 약속」이 아니라 — 할 수단이 없어서 못합니다

여러분의 자산을 쓰기

지갑이 암호화폐를 훔칠 수 있나요? 아니요: 출금에는 서명이, 서명에는 키가 필요합니다. 우리에게 키가 없고; 어떤 단계에서도 키가 전송되지 않습니다.

송금 동결·취소

서명된 트랜잭션은 네트워크로 가 그 규칙대로 살아갑니다. 「되돌리기」 버튼은 없습니다 — 우리에게도, 누구에게도.

수신자 바꾸기

주소는 서명된 봉투 안에 박혀 있습니다. 어떤 수정도 서명을 깨뜨립니다.

PIN이나 키 복구

우리 서버에 없습니다. 불편하지만 — 그게 곧 보장입니다.

내역을 남에게 「당신 것」으로 보여주기

DB에서는 신원에 묶이지 않고 주소에만 묶입니다.

그리고 약속하지 않는 것

이것도 솔직히: 지갑이 도와줄 수 없는 곳

블록체인은 공개됩니다

주소, 금액, 송금 시각은 누구에게나 영원히 보입니다. 프라이버시는 지갑이 아니라 주소 취급의 신중함 — 또는 Monero 같은 네트워크에서 옵니다.

키를 잃으면 — 접근도 잃습니다

우리 포함 누구도 복구해 주지 않습니다. 두 곳에 바로 보관하세요, 가능하면 오프라인으로.

공격자가 장악한 기기는 그 사람의 기기입니다

서명은 여러분이 시작하는 곳에서 이뤄집니다. 폰의 바이러스가 어떤 서버 구멍보다 위험합니다; 큰 금액에는 NFC 카드와 오프라인 서명이 있습니다.

Monero는 뷰 키가 필요합니다

잔액을 보여주려면 필요합니다. 읽기만 하고 쓸 수는 없습니다 — 미리 알아 두세요.

질문

여기까지 읽고 흔히 묻는 것

모든 일이 기기에서 이뤄지는데, 서버를 통해 암호화폐 보내기 안전한가요?

네, 서버 역할을 이해하면 됩니다: 네트워크에 수수료와 순번을 묻고, 환율을 받고, 완성된 봉투를 넘깁니다. 모두 공개 작업이라 키가 필요 없습니다. 일부 네트워크 노드는 직접 운영해 외부 서비스에 의존하지 않습니다.

제 잔액을 보나요?

누구든 아무 주소 잔액을 볼 수 있습니다 — 블록체인의 공개 기록입니다. 문제는 주소가 여러분과 연결됐는지뿐입니다. 가입하지 않으면 주소 목록조차 모릅니다: 기기에만 있습니다.

제가 안 보는 사이 수신 주소를 바꾸면요?

주소는 서명 안에 들어갑니다. 서명 뒤에 바꾸면 — 서명이 깨지고 네트워크가 거절합니다. 서명 전에는 화면에 주소가 있습니다: 끝자리를 확인하세요 — 암호화폐에서 평생 쓸 습관입니다.

수수료가 왜 계속 바뀌나요?

블록 공간 경매입니다. 네트워크가 붐비면 공간이 비싸집니다. 그 순간 네트워크가 답하는 값을 보여주고 속도를 고르게 합니다.

송금이 확인 없이 멈춰 있어요. 어떻게 하죠?

이미 네트워크에 있습니다 — 해시가 있고 탐색기에 보입니다. EVM에서는 막힌 송금을 덮어쓸 수 있습니다: 같은 순번과 더 높은 수수료로 새 것을 보냅니다.

nonce란 쉬운 말로?

여러분 주소에서 나가는 결제의 순번입니다. 첫 송금은 0, 다음은 1, 그렇게 이어집니다. 같은 결제가 두 번 통과하지 않게 합니다.

거래소와 뭐가 다른가요?

거래소에서는 코인이 회사 계정에 있고 여러분은 DB의 한 줄입니다: 동결하고, 서류를 요구하고, 출금을 제한할 수 있습니다. 여기서는 코인이 여러분의 블록체인 주소에 있고, 키는 여러분이 갖고 있습니다.

폰을 잃어버리면요?

코인은 블록체인에 남습니다. 새 기기에 지갑을 설치하고 보관한 키를 넣으면 — 전부 있습니다. 키 없이는 누구도 도울 수 없습니다.

직접 확인하세요: 일곱 단계 경로, 키는 여러분만

30초, 가입·신분증 없이 · support@mitilena.com · @mitilena_wallet
무료 지갑 만들기