比特币和支付宝转帐对比
最近DCEP的话题带动了比特币,支付宝,微信等支付的支付话题,DCEP可以离线支付,支付宝和微信支付我们天天在用,再熟悉不过了。但是对于比特币,除了你知道它代表着区块链革命,知道它如何交易,你知道它是如何转帐的么?
一、创建比特币钱包
第一步:下载比特币钱包,不需要去向银行第三方开户,可以在本地客户端自动生成比特币地址。
第二步:比特币转帐时需输入收款方的比特币地址以及转帐金额,就可以开始转帐了。
二、比特币地址和密码的生成
比特币地址是由字母和数字构成的,24-36位的字符串。私钥也是类似的字符串。
地址是公开的,但是私钥是保密的,类似于银行卡的帐号和密码。但是银行卡密码和支付宝密码都是可以自己设定的。
通过一套非对称加密技术的数学算法,产生一对密钥A和B。若使用A加密一份数据,必须使用B来解密;若使用B来加密一份数据,必须使用A来解密。通过A可以轻松地算出B,但是知道B却不能算出A。
A叫做私钥,B叫做公钥。A是保密的,B是公开的。比特币地址就是一套非对称技术。
因为公钥和私钥是成对产生的,所以比特币的地址不能像银行卡一样,可以单独的设定或修改密码。
三、比特币的转帐流程和支付宝转帐的差别?
看起来没什么区别,但是背后的逻辑完全不同。
超市买东西,一共支付50元:
支付宝支付流程——打开支付宝,输入密码,扫一扫,直接支付5元。
比特币支付流程——打开比特币钱包,输入密码,扫一扫,钱包里面扣除了一个地址的0.5个比特币,扣除5元后,把找回的零钱转回原来的帐户或另建一个帐户,把找回的钱发回去。相当于你付了一个大面额钞票,然后获得找零。
四、比特币交易工作原理:
银行和支付宝帐号都是基于帐户模型,比特币是基于UTXO模型。
UTXO模型是未花费的交易输出,就是我可以花没有花出的钱。
五、两种模型差异对比:
1、支付宝付款不用找零,花多少付多少,再小的零头都可以一次支付。
2、UTXO的转帐流程
UTXO可以用现金系统来理解,是点对点的电子现金系统。
什么是现金系统?比如我去买衣服,一件衣服80元,我付了一张100元现金,店家找回20元现金。
比如我昨天收到0.5个比特币和1个比特币,总共有1.5个比特币。实际上我的地址上有两条记录,也就是两个UTXO。就好象我的钱包里放着两张现金,一张100元,一张50元。所以,当我想买0.8个BTC的商品的时候,系统会将我的1个比特币转出去,自动帮我找零。0.8个比特币到了收款方的地址,0.2个比特币返回到我原来的地址。或者新建一个地址,转到新建的地址里去。
六、UTXO模型的好处
1、保护隐私,我们的比特币帐本是一个公共帐本,代表每个人都可以去查询,当你将比特币地址和某个人联系在一起的时候,就有人会绘制这个地址和这个人的资金转移关系图。我们将零钱返回到一个新建的地址上,就会使这种追踪更困难。
2、UTXO的数据模型比帐户模型数据库体积小,每个比特币都可以拥有无数多的地址,每个地址可以拥有无数多的UTXO。很多地址有可能成为废地址,在帐户模型下有可能要保留这些废地址,数据库的体积就会越来越大,比特币在处理每一笔交易的时候都需要查询这个数据库,当数据库体积无限膨胀时,查询的速度就会越来越慢。相比,UTXO模型下所存的数据库都是有用的数据,也就是没有被花掉的比特币,这样数据库的体积不仅小,而且查询起来的时候很快捷。
3、高并发处理能力:在帐户模型下,A给B转了50元,就必须在A的帐户减去50元,在B的帐户加上50元。如果同时,A又给C转了80元,这笔交易就必须排队,不能并行。在UTXO模型下,A给B转帐和A给C转帐可以并行。相对而言,可扩展性更强,处理能力更强。
(全文完)
感谢阅读