区块链公私钥

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_32023305/article/details/82184823

掌握了私钥就掌握了一切。

  • 私钥:随机生成,以十六进制格式表示(256位的二进制数,以64位十六进制数显示,每个十六进制数占4位)
  • 公钥: 私钥经过SECP256K1算法处理生成公钥,这种算法无法从公钥在反推出私钥,是保证比特币安全的基础算法
  • 钱包地址: 以公钥 K 为输入,计算其SHA256哈希值,并以此结果计算RIPEMD160 哈希值,得到一个长度为160比特(20字节)的数字,同样比特币地址也无法反推算出公钥
    即:A = RIPEMD160(SHA256(K)) 公式中,K是公钥,A是生成的比特币地址

  • 公钥生成地址流程

 

交易验证过程

    • 生成交易信息:
      付款地址,收款地址,金额
    • 签名:
      付款人使用私钥对交易信息(摘要)签名生成签名信息;
      同时私钥也生成付款方的公钥;
      这一步保证了信息来源和完整性
    • 广播
      将交易信息,签名信息广播到网络
    • 验证

      节点将签名信息+付款的公钥运算结果与交易原始信息对比是否一致

       

收款节点以及比特币网络中其他的节点都可以验证该交易是否有效,通过验证的有效交易将由矿工打包进新的区块,上传至区块链。一般经过6个区块的确认收款方即可完全确认到账。(10分钟一个,即一个小时,这样的原因是6个以后攻击者几乎不可能再篡改网络)


 

猜你喜欢

转载自blog.csdn.net/sinat_32023305/article/details/82184823
今日推荐