术语 转账路径 我们做不到什么 常见问题
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)——传到服务器的只有地址,好让手机和电脑列表一致。私钥绝不会进账户:代码里根本没有这个字段。

底层钱包列表 - localStorage 里 walletsWithCryptoIds 下的 JSON。注册时通过 addSpecificWalletToUser 套接字添加地址并绑定到用户哈希。发往服务器的对象里根本没有私钥字段。
「从」字段——地址字符串和链上余额。这一步钱包不需要别的。
不注册
地址只在你的设备上。我们不知道你存在。
有账户
传到服务器的只有地址。没有密钥字段。
第 02 步

你填写发给谁

可以粘贴收款地址、扫二维码,或从地址簿选取。地址簿来自你自己的转账:应用把你在该网络上的地址发出去,拿回你曾从这些地址付过款的对象。我们不收集「通讯录」,也不要手机通讯录权限。

备注和收藏只留在你这边。「妈妈」「供应商」这类备注和置顶地址存在设备本地存储——服务器上没有。你一边输入,钱包一边按网络规则校验:长度、格式、校验和。打错一个字也过不了输入框。

底层getAddressBook 套接字按「发送方 - 你的某个地址」查询 txs 表,每个收款方最多返回三笔最近转账。备注与收藏 - 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 - 网络 gas 价格与付款序号。
Tron - 地址的免费资源 bandwidth 与 energy:够用时转账更便宜。
XRP - 收款账户是否存在:未激活的需要预留金。
TON and Solana - 手续费估算,以及收款方有没有装这个代币的「口袋」。
第 04 步

组装交易草稿

钱包把整条指令拼齐:从哪、到哪、多少、手续费、以及序号。每个地址都有一笔出账计数器——nonce。它防止同一笔交易被清算两次,并让付款按顺序进行。我们向网络询问当前值,包括还卡在内存池里的转账。

草稿还不是钱。这一步只有指令文本。没有签名一文不值:网络不会接受,就像银行不会接受未签名的付款单。你可以弄丢它、给人看、扔掉——余额不变。

底层nonce 由 getNonce 套接字返回;EVM 网络即 getTransactionCount(地址, 'pending')。UTXO 网络没有这个序号——未花费输出扮演同样角色。Tron:extendExpiration 延长 1200 秒。
签名前屏幕:金额、从哪、到哪。目前只是指令文本——网络不会接受。
Tron 说明
网络节点生成草稿,默认大约只能活一分钟——来不及掏卡输 PIN。我们把它延长到 20 分钟;这不会多给我们任何权限。
Solana 说明
签名前我们会检查地址是普通钱包,而不是智能合约账户:后者常来自「别人送的」助记词——余额看得见,却提不出来。
第 05 步
唯一用到密钥的一步

交易签名。这一步发生在你的设备上

整条流程就是为了这一刻。钱包拿草稿和你的密钥算出签名——就在这里,应用里或浏览器标签页里。密钥可以有四种来源,四种都以你的设备为终点:

1手动输入——来自纸片、PDF 或密码管理器。
2扫二维码——只用摄像头,不上网。
3贴一下 NFC 卡或贴纸——密钥从载体读出,用你的密码解密,只在内存里活到签名结束。
4输入 PIN——如果你之前允许把密钥保存在设备上。

核对是不是这把密钥。发送前,钱包会用你输入的密钥推导出地址,并与付款地址比对。对不上——转账不会发出,你会看到 “Wrong private key”。签名是交易文本与密钥上的数学运算:从签名推不回密钥,且只对这一笔交易有效。金额或收款方哪怕改一个字符——签名就对不上。

关于用 PIN 保存——说清楚。密钥在你的设备上加密,并以密文存在本地存储。PIN 为 6 到 12 个字符,可用表情。我们不知道这个 PIN,也无法找回:它只存在你脑子里。

底层由 PIN 经 PBKDF2-SHA256 推导加密密钥,100,000 次迭代,每条记录随机盐;AES-256-CBC 加密,以 salt:iv:密文 存入 localStorage。「密钥对应付款方」门禁 - SignOnline.vue、sendTrans。
Monero 说明
交易在浏览器里由本地加密模块组装并签名。服务器返回环签名用的他人公开输出,并检查你的是否已花费。看 Monero 余额需要查看密钥——它只能读,不能花。
若离线签名
Mitilena Air 在无网设备上签名:交易经二维码、声音或 NFC 过去,签好再回来。密钥哪怕一秒也不会出现在连网设备上。
三种签名方式:本机、NFC 卡,或经 Mitilena Air 离线。无论哪种,密钥都不会离开。
签名屏幕:私钥或 12 个单词、二维码或卡片。输入框只活在你的设备上。
用 PIN 保存:已加密,且只存在这个浏览器里。
第 06 步

加密钱包服务器能看到什么:只有签名结果

签名好了。现在钱包把已签名交易发给我们——仅此而已。这一串里已经有:从谁、到谁、多少、手续费、序号,以及签名本身。改其中任何一点都不可能——签名会失效,网络会拒绝。我们改不了金额、换不了收款方,也不能再发第二次。

服务器做什么。就一件事:经网络节点把信封交给区块链,并返回哈希——你在任何浏览器都能查的编号。像不会拆信的邮递员。已签名交易并不绑定 Mitilena:该网络上任意节点都会接受。明天我们的服务器消失了,币仍是你的——因为密钥在你手里。

底层pushSignedTxToBlockchain 套接字接收 txHex 字段——已签名交易——并调用对应网络的发送方法。该请求里没有私钥:任何格式甚至都没有这个字段。
「发送交易」按钮把已签名信封发到服务器。里面什么都换不了。
第 07 步

转账历史——以及里面写了什么

发送成功后,钱包会存一条短记录,好让历史和地址簿能用。记录里有:网络、币种、金额、付款地址、收款地址、哈希、发送时汇率和日期。还有跟踪链接码,你可以发给收款方看状态。

记录里没有:你的姓名、邮箱、IP 地址或用户 id。这一行不绑到人,而是绑到链上本就公开的地址。所以我们叫它脱敏。经 Mitilena Air 离线签名时,在线端不保存任何转账信息:它只看到装好的信封。

底层saveAnonymTxDataForTrackingLinkPurposes 套接字往 txs 表写一行。那里没有用户列。第 2 步的地址簿按你的地址读同一张表——所以它认识你的收款方,却不认识你。
txs 表 · 一行没有「用户」列
网络与币种
金额
付款地址
收款地址
交易哈希
发送时汇率
日期
跟踪链接码
没有
你的姓名
邮箱
IP 地址
用户 id
我们物理上做不到的事

不是「承诺不做」——是做不到,因为手里没工具

花掉你的钱

钱包会不会偷币?不会:扣款需要签名,签名需要密钥。我们没有密钥;任何一步都不会传送密钥。

冻结或取消转账

已签名交易进入网络,并按网络规则运行。没有「撤销」按钮——我们没有,别人也没有。

调换收款方

地址写进了已签名信封。任何改动都会弄坏签名。

找回你的 PIN 或密钥

它们不在我们的服务器上。这很麻烦——而这正是保障。

把你的历史当作「你的」展示给外人

库里绑的是地址,不是身份。

以及我们不承诺的

同样坦白:钱包帮不上的地方

区块链是公开的

你的地址、金额和转账时间对所有人永久可见。隐私不来自钱包,而来自你如何使用地址——或像 Monero 这样的网络。

丢了密钥——就丢了访问权

谁也找不回来,包括我们。请立刻存两处,最好离线。

设备被攻击者控制,就成了他们的设备

签名发生在你启动它的地方。手机上的病毒比任何服务器漏洞更危险;大额可用 NFC 卡和离线签名。

Monero 需要查看密钥

显示余额需要它。它只能读,不能花——但最好事先知道。

常见问题

读到这里,大家常问什么

既然都在设备上完成,经你们服务器发送加密货币安全吗?

安全——如果你明白服务器的角色:向网络询问手续费和序号、拉取汇率、转发装好的信封。这些都是公开操作,不需要密钥。部分网络节点我们自建,以免依赖第三方服务。

你们能看到我的余额吗?

任何人都能看到任意地址余额——这是链上公开记录。问题只在于地址是否关联到你。不注册时我们甚至不知道你的地址列表:它在你的设备上。

如果我不看的时候,你们偷偷换了收款地址怎么办?

地址会进入签名。签完后再换——签名失效,网络拒绝。签名前地址就在你屏幕上:核对末几位——加密世界里受用一生的习惯。

为什么手续费老在变?

这是区块空间的竞价。网络忙时,空间更贵。我们展示网络此刻的答复,并让你选速度。

转账一直未确认。怎么办?

它已经在网络上——有哈希,浏览器里能看到。EVM 网络上卡住的转账可以顶替:用同一序号、更高手续费再发一笔。

什么是 nonce,用白话说?

你这个地址出账的序号。第一笔是零,第二笔是一,以此类推。它防止同一笔付款被执行两次。

这和交易所有什么不同?

在交易所,币记在公司账户上,你是他们库里的一行:可以冻结、要证件、限提现。这里币记在你的链上地址,密钥在你手里。

手机丢了怎么办?

币仍在区块链上。在新设备装上钱包,输入保存的密钥——都还在。没有密钥,谁也帮不了。

自己验证:七步路径,密钥只在你这边

30 秒,无需注册、无需护照 · support@mitilena.com · @mitilena_wallet
创建免费钱包