PRS白皮书科普系列短文——公钥和私钥



  • 八师 2天之前
    关注区块链的人,多数都听说过甚至接触过公钥和私钥,也知道他们的重要性,但它们具体是什么,怎么来的,可能很多人就不清楚了。

    下面,就跟大家说说这些基概念。

    密钥对

    在比特币(其数字货币也一样)系统中,我们用密码学技术创建一个密钥对,用于控制比特币的获取。

    密钥对包括一个私钥,和由其衍生出的唯 一的公钥。打个比方,公钥就像银行的帐号,需要对外公开,用于接收比特币,而私钥就像控制账户的PIN码,需要保密要,用于比特币支付时的交易签名。

    私钥

    私钥就是一个随机选出的256位二进制数字,比特币软件使用随机数生成器来产生私钥。一般是通过在一个密码学安全的随机源中取出一长串随机字节,对其使用SHA256哈希算法进行运算,这样就可以方便地产生一个256位的数字。如果这个数小于2的256次方,那么就是合格的私钥,否则就再生成一次,直到合格为止。

    随机源其实也不神秘,就是我们钱包里的助记词,由12到24个单词组成。

    私钥用于生成支付比特币所必需的签名以证明对资金的所有权。私钥必须始终保持机密,因为一旦被泄露给第三 方,相当于该私钥保护之下的比特币也拱手相让了。

    比特币私钥可选的范围在是2^256,这是一个非常大的数字。用十进制表示的话,大约是10^77,而可见宇宙被估计只含有10^80个原子,所以用暴力破解的可能性为零,只要你保管好自己的私钥,你的数字资产就是安全的。

    公钥

    有了私钥,通过椭圆曲线算法就可以得到公钥啦!椭圆曲线算法是一个单向计算过程,所以这个过程是不可逆的。也就是说,私钥可以转换为公钥,但公钥不能转换回私钥。否则后果就很严重啦!

    参考资料:《精通比特币》