
先区分钱包、账户与链上资产
钱包通常是帮助用户操作区块链账户的程序或设备,账户则是链上记录资产与权限的对象。以太坊资料将账户分为由私钥控制的外部拥有账户,以及由代码控制的合约账户;钱包可以作为访问这些账户的界面。比特币资料也把钱包程序与钱包文件区分开来:程序负责生成地址、查看链上信息、创建或签署交易,文件主要保存私钥及相关信息。
因此,确认一个“独立电子钱包”能做什么,不能只看它是否能显示余额。应先确认它管理的是哪条区块链、哪种账户,以及私钥由谁保存和使用。链上资产本身记录在网络账本中,钱包保存或调用的是控制资产所需的密钥与交易数据。

核心功能边界:接收、查看、签名与广播
钱包的基础能力可以拆成几个相互关联但可以分离的部分。第一是生成或管理公钥、地址,使用户能够接收资产;第二是读取区块链信息,识别与地址有关的余额和交易;第三是创建交易并使用私钥签名;第四是把已签名交易发送到网络,由节点进行验证和广播。具备这些功能的钱包,通常属于较完整的联网钱包。

这些能力并非必须全部集中在一个程序中。比特币开发资料描述了只负责分发地址的程序、只负责签名的程序,以及负责连接网络的程序,它们可以协同完成一次支付。由此判断功能边界时,应分别问清楚:钱包能否生成或导入密钥,能否显示未签名交易内容,能否在本地完成签名,能否直接广播交易。缺少其中某一项,并不必然意味着它不是钱包,只能说明它属于更专门的组成部分。
独立性主要体现在密钥与签名控制权
“独立”可以从密钥控制方式来理解,而不是简单理解为应用能够单独运行。外部拥有账户的私钥用于签署交易,掌握私钥的一方通常拥有发起转账或调用合约的能力。钱包若在本地生成并保存私钥,用户需要负责备份、密码保护和恢复;若钱包只保存公钥或地址,则它可以查看收款情况,却不能独立签署支出交易。
离线钱包和硬件钱包进一步把签名环节与联网设备分开。联网设备可以生成交易并读取网络信息,独立的签名设备负责审核交易细节和签名,签名结果再交回联网程序广播。这样的架构改变的是操作分工与密钥暴露范围,并没有改变资产仍由区块链账本记录的事实。确认边界时,应检查签名前是否能核对收款地址、金额和交易类型,以及签名设备是否真正持有私钥。
支持代币、合约和多链时要逐项核对
以太坊账户既可以接收、持有和发送以太币及代币,也可以与已部署的智能合约交互。但这不代表所有钱包都自动支持所有代币或合约操作。钱包至少需要能够识别相应网络的地址格式、交易结构和资产数据;涉及合约时,还要能展示或处理相应的调用信息。某个钱包能完成普通转账,只能证明它覆盖了该网络的一部分功能。
比特币与以太坊的账户和交易模型不同,不能仅凭“支持数字货币”这一描述推断跨链能力。判断多链支持时,应分别确认网络名称、地址格式、资产类型、手续费信息、签名规则和广播渠道。若钱包只提供收款地址展示或观察功能,就不应把它描述为能够完成完整转账。
常见问题是:删除钱包应用后资产是否消失?通常链上记录不会因应用被删除而消失,但能否恢复控制权取决于是否安全保存了正确的私钥、助记材料或其他恢复凭据。另一个问题是:有地址是否等于有钱包?不一定。地址可以被单独用于收款或观察,只有在存在相应签名控制能力时,才具备支出相关功能。