前一篇我们对区块链有了一个简单的了解,这一篇我们来说一下区块链的账户体系
大家都知道,银行的的账户是账号加密码的方式,有了密码就可以在账号取钱。而银行的密码一世是6位数的数字组成,那么区块链的账户是怎么管理的呢?区块链的账户也是通过密码的方式管理的,只不过这个密码要复杂的多,那就是“
私钥
”。
私钥是怎么样的呢?为什么足够安全?
大家都知道,计算机是用0,1 存储数据,私钥一般是长度为256的0,1,组成,它的最大数为
2^256
,这么说你感觉不到有多大,那我们把它换成10进制的数据,它是多大的数字:
115792089237316195423570985008687907853269984665640564039457584007913129639936
,银行的6位数密码原理上只有
999999
种可能,对比上前面私钥的数字,这个数字足够震撼了吧。假如有人想尝试你的密码,那么把全世界的计算机都运转起来,运算到太阳熄灭,也运算不到它的亿亿分之一,这就是为什么它足够安全。
区块链账户的三要素:私钥、公钥、地址
前面我们说了,私钥就是密码,我们可以通过密码去改写区块链的数据,但是我的密码,我要保护好,不可能公开,而区块链上所有东西都是公开透明的,那我怎么保证我的私钥安全呢,我的资产又存储在什么地方呢?这里就用到了公钥和地址。我们先看一张图,理解下它的生成方式。
(图片源于网络)
从这张图我们可以简单的理解:
私钥生成公钥、公钥生成地址
。
那么公钥、地址是用来做什么的?
地址:很好理解,就是你的资产存储的地方。别人查你的地址,就知道你有多少资产。这些是公开的。
公钥:它公开的区块链上,大家都可以知道对方的公钥,它就是私钥的补充,可以验证私钥的“
签名
”,就是上一篇中我们提到的,你如何动用你的区块链资产,修改你的区块链数据。说的简单点就是私钥可以”
盖章
“ ,公钥就是你对外公布的你盖章的“
图案
”,只不过在区块链里是用数字计算出来的,每次的盖章都不一样,但是可以用
公钥
验证这个”
章
“(也就是签名)对不对。
整个过程就是你要动用你的"
地址
"的资产,那么你需要"
私钥
"来对这个行为盖个“
签名
”,同时把可以验证这个签名对不对的“
公钥
”,告诉所有人,那么其它人就可以验证这个行为合法性,你就可以动用你的资产了。
好了,大家都对区块链上的账户体系有一些了解了,下一篇我们继续聊账户体系,深入理解下在区链上的运转。