一. 关于交易的细节
以v2ex的20$v2ex打赏为例:
1.在点击打赏按钮之后, 会唤起钱包进行交易, 其实在交易的面板中是有一个默认折叠的高级选项的, 可以点击展开折叠, 如图1所示:
2. 如果点开高级选项会显示本次交易包含的操作指令, 如图2所示:
Program Id 就是程序的ID, 也就是我们常说的智能合约
Data 就是这个程序传入的参数
可以看到打赏V币一共执行了3个指令, 上面两个指令是Unknown, 所以钱包把他们对应的合约地址也就是Program Id给贴出来了, 右边有一个打开按钮, 点击就可以查看这个合约的具体信息. 最后一个指令是Transfer, 这个指令是内置指令, 也就是System Program, 类似系统内核里面自带的一些工具或者函数方法. (其实前面两个ComputeBudget, 也是系统提供的, 是NativeLoader管理的, 为什么显示Unknown不清楚, 但是这不是这次讨论的重点, pass掉)
然后细说最后这个Transfer, 这个其实就是转账操作, 转账分两种, 一种是原生转账, 一种是SPL转账, 咱们使用的V币打赏就是SPL转账, 这两种转账差不多其实, 先细说这个图里的SPL转账:
- Amount是2+7个0, 因为V币是6位小数, 所以这个Amount * V币的小数位就是实际操作的V币数量
- Source 是来源 Token 账户, 在这个图里面是: 4kbSR...9PARy
- Destination 是目标 Token 账户
- Owner 是授权人或者说是来源Token账户的所有者, 这个地方我没有裁全, 大概能看到是我H5u的钱包公钥.
这个地方需要注意的是, Token账户地址不是你的钱包地址, 而是你在对应Token下创建的账户, 这也是为什么我们给从来没持有国V币的用户(or 回收了V币钱包地址)打赏的时候, 会额外支付0.002sol的原因, 这0.002sol就是用来创建对方在V2EX Token上的账户租金.
这一点就是原生转账和SPL转账之间最大的不同, 原生转账的双方地址就是双方对应的solana链上的钱包地址, 而SPL转账则是对应Token上面的账户地址.
3. 我们点击确认按钮, 大概会得到下面这一个界面:
在这个界面的最下方有一个 在Solscan上查看 点击就可以在Solscan上查看这一笔交易的详细信息, 包括传参, 账户操作, Log之类的, 大概是这样的:
ps: 还有一个比较好用的查看交易信息的网站叫: https://explorer.solana.com/ 后面可以拼接: tx/xxxx 或者 address/xxxx, 就可以查看交易或者对应的账户信息, address可以是代币地址, 也可以是钱包地址.
以https://sol-incinerator.com回收空钱包地址的截图为例, 大家可以自己分析一下或者自己尝试着操作一下看看:
二. 关于在交易所以及Web3钱包的一些tips, 这点可能需要大家来一起补充, 我操作的比较少, 挑我知道的说
1. 在交易所钱包
的虚拟货币 和 在Web3钱包
里面的虚拟货币 虚拟币是一样的, 但还是有一些不同的, 打个比方:
- 交易所里的币 就像是你存在银行里的钱。
- 银行帮你保管,交易记录在银行的内部账本上。
- 你使用网银APP进行操作,非常方便。
- 但理论上,银行可以冻结你的账户(配合调查时),如果银行倒闭,你的钱可能会受损。
- Web3钱包里的币 就像是你放在自己家里保险箱的现金。
- 现金完全由你掌控,看得见摸得着。
- 你可以自由支配,无需经过任何第三方。
- 但如果你弄丢了保险箱钥匙(私钥/助记词),或者被小偷破门而入,钱就永远找不回来了。
2. 交易所里面的充币/提币, web3钱包里面的转账手续费问题
挑我知道的说:
- web3钱包的转账是没有第三方收取手续费的, 只需要支付一些gas和优先费就可以了
- 交易所里面的这个
充币
目测没有什么额外的手续费, 跟web3钱包是一样的 - 但是这个
提币
操作, 好像都是需要一些额外的服务费的, 之前用Binance好像每笔usdt都会收我0.5u的样子, 现在用okx每次大概收我1u, 但是我去帮助文档里面检索了一下, 发现这么一些答案:
还有这么一个解释: