钱包,就是交易的出入口
可以类比银行卡,有一个银行卡号和银行卡密码,别人知道你的银行卡密码就可以向你转账,你拥有密码就可以支付。在web3里面,银行卡类比成公钥,支付密码类比成私钥。每个钱包创建的时候会生成一个公钥一个私钥,私钥只有你自己拥有。交易都需要通过私钥签名认证。
但是实际上,钱包并不含有ether或者其他token,代币都是存在链上的,钱包只是一个包含私钥公钥的字符串。用来证明你拥有这些资产。
在web3的世界,钱包不仅是一个储存资产的地方,钱包更像是一个地址(本质上也是一个地址),大家可以类比成web2的IP。用户通过连接钱包来访问网站
定义:用户不拥有自己的私钥,私钥掌握在第三方交易所或者平台上。一般通过邮箱验证等方式进行交易,比较像web2的交易方式
优点:
由于使用的是中心化平台的服务,所以遇到问题的时候可以享受技术支持
私钥由第三方保护,因为托管在第三方服务器上
在平台的操作相对来说安全
缺点
最重要的一点是,您不持有私钥,本质上您并不“拥有”钱包的资产
其次,由于存储在第三方服务器上,所以有可能遭遇数据泄露或者外部黑客攻击;不过这样取决于平台的安全性。再者说,其实所有的服务器都是有受攻击的可能的。把资产存在银行里,银行甚至可能倒闭。这也就是去中心化账本和去中心化钱包的可贵之处,托管钱包有点违背了去中心化的精神(去中心化程度不高)
必须联网才能使用
定义:用户拥有自己的私钥,所有交易都要经过自己的私钥签名,也就是说只有自己能访问自己的资金
优点:
如上所述,只有自己掌握私钥,拥有了资金的完全掌控权
部分钱包是支持不联网使用的
缺点:
托管钱包的交互更像传统web2的交互,不需要通过签名等方式,但是非托管钱包的交互需要涉及签名等,如有不慎可能会丢失钱包内的所有资金
如果丢失密钥,也就是等于丢失了资金,所以自己一定要保管好私钥
大部分项目都是直接用非托管钱包,基本只有中心化交易所用到了托管钱包。
今天想了很久也找了很多资料,在想为什么要引入托管钱包,对平台方有什么好处呢。保存用户的私钥如果服务器被攻击导致私钥泄露或者资金丢失,平台方要付很大的责任。
没有什么资料能说明这一点。所以类比web2的逻辑的话,只能从平台方本身的资金流去解释,托管钱包能让平台方有足够多的资金去做投资等等。比如最近的FTX事件,第二大交易所几天内宣布破产,就是因为挪用用户资金,有兴趣大家自行查阅。
平台形式应该也有一部分因素。交易所一般是有APP的,但是大部分web3项目基本是网页端,在网页端用钱包连接有天然的优势。网页版一般在PC端,可以用浏览器钱包连接;APP一般在移动端,要唤起第三方钱包,相对来说会麻烦一些。

