区块链原理学习之二-私钥公钥和地址
来源:互联网 发布:eve online for mac 编辑:程序博客网 时间:2024/05/16 09:16
比特币属于加密货币,其加密的基础是加密学。秘钥分为公钥和私钥,其成对出现。公钥用于交易中的收款确认,类似于银行交易中的“收款方”。私钥用于数字签名,确认交易的所有权,类似于银行交易中的“签名”。加密基础算法主要分为幂加密和椭圆曲线加密,比特币的加密原理采用后者。此种加密算法的特点是从一方到另一方交易实现,反之则较难实现。
私钥和公钥的生成算法:1)由随机算法形成私钥 2)根据椭圆算法由私钥形成公钥 3)根据公钥形成比特币的地址。其中的核心问题是椭圆曲线算法。
私钥的生成是随机的选择256位0-2 256数字,并对其进行SHA256算法获得.其核心是随机熵源的选择.如果采用十六进制标识,则私钥显示64位.如果采用bitcoin显示私钥可以采用dumpprivkey。
我们可以通过私钥生成公钥,生成的公式为K=k*G k为私钥,G为离散的常数点,K为公钥。由私钥生成公钥简单,反之则需要通过暴力破解进行逆向运算(理论上几乎不可能)。
比特币的公钥地址是以1开头,A = RIPEMD160(SHA256(K))其中K为公钥,A为比特币的地址(最终经过Base58形成),为20字节的地址。
阅读全文
0 0
- 区块链原理学习之二-私钥公钥和地址
- 区块链原理学习-区块链结构
- 区块链基础之比特币原理
- GitChat · 区块链 | 教你如何轻松学习区块链和比特币基础技术原理
- 区块链的运行原理和发展
- 区块链的运行原理和发展
- 区块链之比特币的私钥,公钥和地址是什么?
- 【区块链开发指南】区块链基础之比特币地址
- 区块链技术原理
- 区块链技术原理
- 区块链技术原理
- 区块链技术原理
- 区块链技术原理
- 区块链记账原理
- 比特币学习之区块链
- 【区块链开发指南】区块链基础之区块和交易
- 区块链读书笔记二
- 区块链技术浅析之二:区块链的技术源流
- Java关于 反射 的一些整理
- curl不能支持https问题
- 4.4、 Shell编程中数组、date和cal命令
- strace命令基本用法
- 快速排序 Java
- 区块链原理学习之二-私钥公钥和地址
- MySQL 数据备份与还原
- thinkphp5.0 volist
- 关于CAShapeLayer的一些实用案例和技巧
- include动作与指令的区别
- 字典树排序(思路分析)
- NIO就这些知识吗?
- 多线程学习(一)什么是多线程?
- 解析Unicode编码和Java char