Blockchain A-Z™: Learn How To Build Your First Blockchain
单纯从技术角度了解blockthain.
Module 1, Blockchain

特点:
分布式的,不可篡改的,p2p的 网络。存储在每个node上保存一份,这就是个基于网络的RAID 1 啊,感觉存不了多少东西,对存储的需求量巨大。
Module 2
几种主流技术,这个是截止2018的,有点老了,需要调研下新的有哪些


挖矿技术原理:就是对nonce 值一个一个试,对整个Block hash 计算,找到符合条件的hash值则为成功挖到。hash 用的是SHA256. 这对计算资源也是需求巨大。上图这个hash 值只是示例,实际上是一个全0开头的值,而且随着时间 0越来越多,逐渐增大挖币的难度。
比特币每隔210000个Block,挖到的币减半,这就是 Halving. 另一个概念是frequency, 控制在10min 一个。
挖币难度公式:
Difficulty = max_target / current_target.
Difficulty 每 2016 (2 week) 调整一次,基于是不是平均挖币时间10min来调整,比如>10min说明比较难挖到,那就调整current_target 大一些,difficulty 就小了。

Mining pool 就是解决了个人miner 单小力薄的问题,大家联合起来人多力量大,话语权也大。
Nonce Range 也是一个很有意思的概念。它是32位的,不足够mine出来,这种情况下可以引入两个两个变化量 timestamp 和 切换transaction, 这样就解决了range 不够的问题。
Mempol, 这个就是存在每个node 的memory里面的transactions, node从里面取transaction, 一旦block mine出来了,就删除对应的transaction.
共识机制有个重要的内容是,如果两个mining pool 同时mine出来了一个Block,那就两边继续mine, 谁先到6个block就算谁赢,另一边就白挖了。
UTXOs - 就是你没花出去的
Module 3, Smart contract
就是可以在分布式网络上跑的程序,把整个网络当成一个超大计算机。Ethereum 上才可以建,这个就是一个生态。
跑程序跑在EVM里,而且需要gas.
Decentralized Applications (Dapps)
Decentralized Autonomous Organizations (DAOs)
Initial Coin Offerings (ICOs) 类似于上市的IPO,可以通过发token来融资。
Reference:
https://www.superdatascience.com/pages/blockchain
Blockchain A-Z™: Learn How To Build Your First Blockchain的更多相关文章
- [z]spring boot gradle build
I had the same problem. I believe it is caused by the JRE that gradle is configured to use rather th ...
- 2016 - 1- 22 Build a Nav bar (intro to HTML&CSS)
一:Learn how to build a NavBar --- allow user navigate ur site 1. The hypetext refrence link This att ...
- [Docker] Build a Simple Node.js Web Server with Docker
Learn how to build a simple Node.js web server with Docker. In this lesson, we'll create a Dockerfil ...
- [AngularFire2] Build a Custom Node Backend Using Firebase Queue
In this lesson we are going to learn how to build a custom Node process for batch processing of Fire ...
- [人脸活体检测] 论文:Learn Convolutional Neural Network for Face Anti-Spoofing
[人脸活体检测] 论文:Learn Convolutional Neural Network for Face Anti-Spoofing 论文简介 这是最早期CNN用于活体检测的文章,在此之前都是手 ...
- project3 blockchain
[概念] 做服务的时候main里面不能单独有东西,都得包起来. Identifier expected是因为没有main函数 雾草,task3还要加proxy, add再干别的.难受!妈的,什么代理模 ...
- The Best Blockchain Open Source Projects
https://101blockchains.com/blockchain-open-source/ Blockchain has been the buzzword of the year for ...
- 攻防世界高手进阶之Web_python_block_chain(2018年DDCTFmini blockchain)
打开题目大概看了一下,是有关区块链的题目, 感觉代码要格式化一下,不然没法看 代码格式化站点:https://www.html.cn/tool/js_beautify/ hash of genesis ...
- 以太坊blockchain源码分析
blockchain关键元素 db:持久化到底层数据储存,即leveldb: genesisBlock:创始区块 currentBlock:当前区块,blockchain中并不是储存链所有的block ...
- Gazebo機器人仿真學習探索筆記(六)工具和实用程序
Gazebo附带了许多工具和实用程序. 这些教程说明了这些可用的工具,以及如何使用它们. 主要有: 1 记录和播放 2 日志过滤 3 应用力/扭矩 4 HDF5数据集 官网介绍通俗具体,非常容易,请参 ...
随机推荐
- P1387
#include<iostream> #include<utility> using namespace std; typedef long long ll; #define ...
- Apache Kyuubi 在小米大数据平台的应用实践
导读:今天分享的主题是<Kyuubi 在小米大数据平台的应用实践>,主要分为四部分内容: Kyuubi 在小米的落地过程 打造易用和高可用的 Kyuubi 服务 基于 kyuubi 的改进 ...
- 使用ES6中Class实现手写PromiseA+,完美通过官方872条用例
目录 Promise出现的原因 myPromise的实现要点 myPromise的实现 myPromise - 实现简单的同步 myPromise - 增加异步功能 myPromise - 链式调用( ...
- IPFS 解决国内 docker mirror 封锁
IPFS 解决国内 docker mirror 封锁 内容仅用于研究,帮助开发者学习技术知识,以建设祖国 IPFS 技术是当前 Web3 的主要基建设施,提供去中心化存储,以及 libp2p 的去中心 ...
- MySQL之DDL
1. 数据库 * 查看所有数据库:SHOW DATABASES * 切换(选择要操作的)数据库:USE 数据库名 * 创建数据库:CREATE DATABASE [IF NOT EXISTS] myd ...
- 全网最适合入门的面向对象编程教程:24 类和对象的 Python 实现-异常的捕获与处理:try/except 语句、文件读写示例、Exception 引用
全网最适合入门的面向对象编程教程:24 类和对象的 Python 实现-异常的捕获与处理:try/except 语句.文件读写示例.Exception 引用 摘要: 本文主要介绍了在使用 Python ...
- springsecurity流程梳理与总结
springsecurity的基本使用方法学习完了,还是有些懵圈,再回过头来梳理一下流程以及使用情况 1-4.传一个User实体,new一个UserPasswordAuthenticationToke ...
- ComfyUI插件:ComfyUI layer style 节点(一)
前言: 学习ComfyUI是一场持久战,而ComfyUI layer style 是一组专为图片设计制作且集成了Photoshop功能的强大节点.该节点几乎将PhotoShop的全部功能迁移到Comf ...
- Jmeter函数助手1-CSVRead
CSVRead函数适用于读取文件获取参数值. 用于获取值的CSV文件 | *别名:csv文件路径 CSV文件列号| next| *alias:读取列,0表示第一列,1表示第二列 1.首先我们需要一个文 ...
- 【Tutorial C】08 函数 Function
函数的定义 C源程序是由函数组成的. 最简单的程序有一个主函数 main(),但实用程序往往由多个函数组成, 由主函数调用其他函数,其他函数也可以互相调用. 函数是C源程序的基本模块,程序的许多功能是 ...