让人张口结舌的上涨速度,也带动了越来越多的人投身“挖矿”的热潮之中。摩尔定律乃至也失去了效果——显卡等核算机设备不光没有降价,还一路上涨。比特币背面的区块链技能,更被称为下一个可能改动世界的技能。
本课程从比特币的密码学原理,买卖原理等等方面展开,一层一层地揭开区块链技能的面纱,带领同学们领会来自未来的技能。
Python
1 .试验知识点
2. 比特币简介
从技能层面来看,比特币是最早和最成功的区块链运用,它能够被看作一个由加密算法,一致机制,p2p网络等技能组合而成的体系。
别的这个体系分发的钱银也被称作比特币,假如要防止混淆咱们也能够用BTC来指代这种钱银。
比特币是什么呢? 切当地说,比特币有多种意义,许多人在议论比特币时存在概念上的混淆,下面咱们别离论述比特币的不同意义:
在现代社会中,一种大量流转的钱银一般都有十分高档的加密技能,例如人民币上就有水印、荧光光圈等一系列技能来进步假造的难度。数字钱银在本质上是网络上的数据,十分简略受到攻击,所以需求一套完善的加密体系。
值得一提的是,把握私钥就能生成相应的公钥和比特币地址,相当于把握了整个账户,所以咱们一定要保管好自己的私钥。
3.2 椭圆加密算法
K = k * G
下面是这个算法的一些关键:
y2 = x3 + ax +b
2.椭圆曲线的加法的核算方法 (x1,y1) + (x2,y2) = (x3,y3)
3.经过核算 G+G 算出 2G , 继而算出 4G,终究经过大约 log2(k) 次算出 k * G , 由于每次的核算量不大,所以整体核算量也不大。
3.3 哈希函数
哈希函数有许多种,一般有如下界说:
从安全视点来看,它有下面的特征:
3.4 代码
读者能够看一看这段代码,实际操作一下来了解比特币的加密原理。
翻开试验楼在线环境,首要需求经过终端装置 ecdsa 包:
装置完结之后,引荐经过在线环境桌面上就能看到的 gedit 编辑器书写代码。终究保存并运转成果如下:
四、买卖与数字签名
在了解到私钥和公钥的概念后,咱们来看一看比特币内部的买卖是怎样做的。 从上面这幅图能够看到,一个方框代表一笔买卖,例如中心的方块代表的是由 owner1 支付给 owner2 的一次买卖,咱们能够看到在方框下方有一个签名,正是这个签名让这次买卖有用。
sig := sign(sk, message)
而签名完结后,其他人要有方法验证这笔买卖是否有用,所以它们要用 owner1的公钥,买卖相关信息以及签名完结验证,用 api 的方式来表达就是
这儿的pk代表公钥,isValid是一个布尔变量,其值为真或假。
五、总结
鄙人一节中,咱们会对存储这些买卖记录的数据结构进行介绍,也就是传说中的“区块链” 。
领取专属 10元无门槛券
私享最新 技术干货