Web应用一般需要创建如下数据表用于实现支付逻辑:账户表(accounts)、交易表(transactions)。accounts用于存储用户信息,如个人信息、账户余额;transactions用于存储资金的流动信息,如由谁支付给谁多少钱。比特币的实现则完全不同:
- 没有账户
- 没有余额
- 没有地址信息
- 没有货币信息
- 没有付款人、收款人
由于blockchain是完全开放、公开的,因此我们不希望存储任何用户敏感信息。账户中不包含任何交易额信息。交易也不会将钱从一个账户转到另一个账户,也不存储任何账户余额信息。仅有的就是交易信息,交易信息到底有什么呢?