数据简化DataSimp导读区块链BlockChain技术概述;维基百科:区块链技术指南;0102做铺垫,重点看这篇《中本聪(Satoshi Nakamoto)比特币白皮书:一种点对点的电子现金系统》;区域链技术资料29个网址汇总。

区块链技术

01区块链BlockChain技术概述(5600)

区块链技术别称分布式账本技术分类互联网数据库应用领域金融所谓区块链技术,[1]简称BT(Blockchain technology),也被称之为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明,让每个人均可参与数据库记录[2-3]最早是比特币的基础技术,目前世界各地均在研究,可广泛应用于金融等各领域。[4]

▌1区块链是什么?

2008年中本聪发表的论文《比特币:一种点对点的电子现金系统》。文章提出,希望可以创建一套新型的电子支付系统,这套系统“基于密码学原理而不是基于信用,使得任何达成一致的双方能够直接进行支付,从而不需要第三方中介参与”。2009年1月3日,区块链的第一个区块诞生,该区块又名“创世区块”2009年1月12日,中本聪发送了10个比特币给密码学专家哈尔芬尼。2010年7月,比特币交易所Mt.Gox的成立,比特币的价值被世界认可。

区块链的概念源于数字货币——比特币,是一种把区块以链的方式组合在一起的数据结构,它不依赖中心机构的管理,而在网络中分布式记录与存储。区块链的诞生,标志着人类开始构建真正的信任互联网。根据参与人数和应用范围不同,区块链也可分为共有链、联盟链和私有链。这就决定了像现在的公有云、私有云和混合云那样,根据不同的场景决定用途;可修改技术。

2区块链基本原理及阐述

区块链的基本原理理解起来并不难。基本概念包括:[5]

交易(Transaction):一次操作,导致账本状态的一次改变,如添加一条记录

区块(Block):记录一段时间内发生的交易和状态结果,是对当前账本状态的一次共识

链(Chain):由一个个区块按照发生顺序串联而成,是整个状态变化的日志记录

如果把区块链作为一个状态机,则每次交易就是试图改变一次状态,而每次共识生成的区块,就是参与者对于区块中所有交易内容导致状态改变的结果进行确认。

通俗的话阐述:如果我们把数据库假设成一本账本,读写数据库就可以看做一种记账的行为,区块链技术的原理就是在一段时间内找出记账最快最好的人,由这个人来记账,然后将账本的这一页信息发给整个系统里的其他所有人。这也就相当于改变数据库所有的记录,发给全网的其他每个节点,所以区块链技术也称为分布式账本(distributed ledger)[4]

3区块链核心技术和主要特征

区块链的核心技术主要包括共识机制、密码学原理以及分布式储存。

第一,共识机制。所谓共识,是指多方参与的节点在预设规则下,通过多个节点交互对某些数据、行为或流程达成一致的过程。共识机制是指定义共识过程的算法、协议和规则。区块链的共识机制具备“少数服从多数”以及“人人平等”的特点,其中“少数服从多数”并不完全指节点个数,也可以是计算能力、股权数或者其他的计算机可以比较的特征量。“人人平等”是当节点满足条件时,所有节点都有权优先提出共识结果、直接被其他节点认同后并最后有可能成为最终共识结果。

第二、密码学原理。在区块链中,信息的传播按照公钥、私钥这种非对称数字加密技术实现交易双方的互相信任。在具体实现过程中,通过公、私密钥对中的一个密钥对信息加密后,只有用另一个密钥才能解开的过程。并且将其中一个秘钥公开后(即为公开的公钥),根据公开的公钥无法测算出另一个不公开的密钥(即为私钥)。

第三、分布式存储。区块链中的分布式存储是参与的节点各自都有独立的、完整的数据存储。跟传统的分布式存储有所不同,区块链的分布式存储的独特性主要体现在两个方面:一是区块链每个节点都按照块链式结构存储完整的数据,传统分布式存储一般是将数据按照一定的规则分成多份进行存储。二是区块链每个节点存储都是独立的、地位等同的,依靠共识机制保证存储的一致性,而传统分布式存储一般是通过中心节点往其他备份节点同步数据。数据节点可以是不同的物理机器,也可以是云端不同的实例。

区块链技术具有四个主要特征:去中心化、共识机制、可追溯性以及高度信任。

第一,去中心化。区块链是由众多节点共同组成的点对点网状结构,不依赖第三方中介平台或硬件设施,没有中心管制,通过分布式记录和存储的形式,各个节点之间实现数据信息的自我验证、传递和管理。数据在每个节点互为备份,各节点地位平等共同维护系统功能,因此系统不会因为任意节点的损坏或异常而影响正常运行,使得基于区块链的数据存储具有较高的安全可靠性。

第二,共识机制。共识机制主要指网络中的所有节点间如何达成共识的认证原则,去认定一份交易信息的有效性,保证信息的真实可靠。有了该机制,区块链应用中便无需依赖中心机构来鉴定和验证某一数值或交易。共识机制可以减少伪冒交易的发生,只有超过51%的节点成员达成共识,数据交易才能发生,有利于保证每份副本信息的一致性,建立适用于不同应用场景的交易验证规则,从而在效率与安全之间取得平衡。

第三,可追溯性。区块链中的数据信息全部存储在带有时间戳的链式区块结构里,具有极强的可追溯性和可验证性。区块链中任意两个区块间都通过密码学方法相关联,可以追溯到任何一个区块的数据信息。

第四,高度信任。区块链是建立信任关系的新技术,这种信任依赖于算法的自我约束,任何恶意欺骗系统的行为都会遭到其他节点的排斥和抑制。区块链技术具有开源、透明的特性,系统参与者能够知晓系统的运作规则和数据内容,任意节点间的数据交换通过数字签名技术进行验证,按照系统既定的规则运行,保证数据信

4 比特币从一出生,就注定了不可能成为真正的货币(有待观察)

比特币从一出生,就注定了不可能成为真正的货币。它创造的不是财富,而是惊人的泡沫。它非但不是啥高科技的金融创新,而是黑色交易洗钱的地下通道你可能听说过身边的不少“故事”。有屯几个比特币后来几千元一个就卖了(最高的时候是13万一个),后悔不迭;还有买了10多个之后,硬盘格式化了,比特币再也找不回来了;还有,更惨的是,早晨投了10万元买币,下午只剩下3000元。一日炒币,一年炒股。跌宕起伏,人生莫过于炒币。

1、货币的本质是信用,法定货币的本质是国家信用,货币的背后必须要有财富对应,有法律保障。而比特币并没有国家信用背书,没有法律保障,只是无政府主义的狂欢和财富幻觉。

2、货币作为常用支付工具,要求币值稳定。而比特币的币值上蹿下跳,根本无法成为信用货币!

5 区块链变革与90年代初的互联网相似(有待观察)

区块链变革与互联网相似,如今的地位与90年代初的互联网相似。当时,谁知道互联网是什么?只要是公司挂上“.com”的域名,一冲飞天。直到泡沫破灭;那时候,真正发财的是“卖铲子”的人;从此之后,互联网经过10多年低迷期;再经过几个时期,最终引领了一个个领域的变革,引起社会、经济、文化各个层面的革新。每一轮变革,均有技术的推动力,比如云计算、大数据、物联网和现在谈论最多的人工智能。而且,这些技术都是站在过去的技术积累之上,一步步酝酿而爆发的。

互联网解决的是“信息”不对称的问题,传递的是信息;区块链解决的是“信任”的问题,传递的是“价值”。相比较而言,区块链和其他技术的关联性不大,甚至可以“重造”互联网的底层架构,重新改变公司的形态、投融资的形态和商业变革。这才是最伟大,最让人心动的地方。

“分布式账本”、“去中心化”、“不对称加密算法”、“共同维护”、“可编程性”等技术特点决定了区块链与传统的互联网架构不同。现在还依托传统互联网架构,以后,或许颠覆。比如,现在的云计算并不是真正的“分布式”,要依托云数据中心AWS、微软、阿里云等。以后的数据存储,理论上是可以“去中心化”,多个同样的副本存在多个节点,真正没有数据中心托管。发邮件也不是现在点对点的发送,而是全球广播,所有人都能收到,只有“密钥”的人才能打开。电商交易需要淘宝、京东这样的中间商或者平台商确保资金安全,解决信任问题;以后直接是“点对点”,有了“智能合约”就不怕不支付。场景还可以更多样。智能合约与共享经济、物联网相结合,可规定何时、何地、何人发生何种操作。像租房、约车规定时间之后,自动履行,再也不用担心时间问题。

现在谈论更多的是比特币能够成为法币。一定程度是,它的匿名性、快捷性和可信任程度让不少国家和地区重视;与其堵塞不如一起合作,现在有不少银行组织结构正在组织力量开发各类区块链的合作,如R3组织。

6 比特币先驱人物志:戴伟 Wei Dai、中本聪交流

戴伟W Dai是一位兴趣广泛的密码学专家,他在1998年发明了B-money匿名的、分布式的电子加密货币系统,强调点对点的交易和不可更改的交易记录。中本聪发明比特币的时候,借鉴了很多戴伟的设计,并和戴伟有很多邮件交流。另外,如果你经历过以太坊的交易及打款流程,一定看见过GWei概念。从最开始对gas price不明觉厉,甚至现在都没有弄明白GWei与Ether究竟怎么换算?

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

以太坊交易不可少的一个步骤是确认gas limitprice,价格单位GWei

以太坊的最小单位是Wei。通常,做以太坊交易时,免不了计算Gas价格,用到的单位是GWei。而1个以太币=10的18次方Wei,Wei是以太坊的最小单位,正源于Wei Dai的名字。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

戴伟 Wei Dai,密码界的华裔老江湖

戴伟W Dai毕业于美国华盛顿大学,计算机专业,辅修数学,曾在微软的加密研究小组工作,参与了专用应用密码系统的研究、设计与实现工作。或许你曾经读过戴习为先生的《过河卒》一书。1994年3月,微软比尔·盖茨第一次访华,陪在他身边的就只有戴习为一个人。戴习为曾是IT界技术级别最高的在美华人,在微软身居要职,1997年退休。据传戴习为正是Wei Dai的父亲。

B-money:早于比特币的分布式思想分布式思想是比特币的重要灵感来源,在比特币的官网上,B-money被认为是比特币的精神先导。B-money的设计在很多关键的技术特质上与比特币非常相似。B-money有些不切实际,其最大的现实困难在于货币的创造环节。在B-money系统中,要求所有账号共同决定计算量的成本并就此达成一致意见。每台计算机各自单独书写交易记录,达成一致很难。戴伟为此设计了复杂的奖惩机制以防止作弊,但没有从根本上解决问题。

计算技术发展相当快,而且有时并不公开,计算量的成本这类信息并不准确、及时,也难以获得,因而B-money很难成为现实。其实在早期,B-money、暗网、加密信用都只是理论探索,并未真正投入应用场景。直到2010年,美国政府向支付服务机构施压、对维基解密实施金融封锁时,Timothy C.May的暗网才逐渐成为现实,而比特币也在后来成就了现实世界里的加密信用。

Crypto++:中本聪也使用的密码编程库

三大类加密解密算法对称加密算法DES、AES,加密、解密用的密钥一致,好像日常生活中钥匙,开门和锁门都是同一把。非对称加密算法RSA,加密、解密用的密钥不同,有公钥、私钥之分。散列算法SHA系列,如SHA-256和我们熟悉的MD5等,验证信息有没有被修改。通过一个Hash函数,对信息量很大的文件进行提炼,得出一个固定长度的Hash值。通过比较两个值,即可得知这两个文件是否完全一致,或者说,另一个文件有没有被修改。从而避免逐字逐句比对,节省时间。

Crypto++是一个非常强大的密码学库,提供丰富的加密解密算法,包括密码、消息认证码、单向散列函数、公钥密码体制、密钥协商方案和deflate压缩,涉及RSA、MD5、DES、AES、SHA-256等,基本上密码学所需的主要功能都可以在里面找到,功能全且统一性好,在密码学界很受欢迎。

Crypto++就是这样的存在,提供了常用的加解密函数接口,帮你入门。这个免费、开源、跨平台C++数据加密算法库,便是由Wei Dai创建。不论是学习还是从应用的角度,都是难得教材。

7比特币名人Dr Christian SeberinoEOS解决了啥问题

Christian Seberino自我介绍:英国伦敦Blockchain Partners的联合创始人。他还是社区学院的兼职教授,也是计算机科学,计算机程序设计,数学和自然科学的中学教师。他为国家安全局(NSA)完成了分类密码和网络软件。他还在包括谷歌,高通,太空和美国海军作战系统中心在内的行业,政府,军事和学术界担任了二十多年的各种技术职位。他对区块链有深入的了解,并从初级到开发人员进行各个层面的教学。Seberino博士为Input Output公司开发区块链教育项目,这是区块链领域的首选公司之一。他也是以太坊经典区块链技术社区知名人士,讲解区块链技术应用和安全方面很专业。

EOS并不是官方的缩写,你可以理解为Enterprise Operation System,即为商用分布式应用设计的一款区块链操作系统。目前区块链世界有以下几个痛点没有解决:难以扩展(如Bitcoin扩容之争)、代价昂贵(以太坊智能合约执行的每一步都需要支付费用,随着交易量的增加,交易费相应增加)、缺乏互操作性(在区块链上开发dApp不是很容易,需要自己写很多模块)等等。EOS是EOS.IO软件引入的一种新的区块链架构,旨在实现分布式应用的性能扩展。注意,它并不是像比特币和以太坊那样是货币,而是基于EOS.IO软件项目之上发布的代币。

8 美国NIST区块链技术报告

2018124日,美国国家标准与技术研究所(NIST)的区块链技术报告《区块链技术概述》(英文,共59页)对区块链技术、区块链系统架构组件、区块链用例和区块链的益处及局限性做了综合高端的概述。NIST区块链技术报告的主要目的是为那些区块链知识欠缺但又想就此做出明智决策的IT经理们提供帮助。尽管不少有关区块链的困惑和炒作,以及有关加密货币和初始代币发行(ICOs)的更耸人听闻的故事,但区块链技术被接纳程度是很多人都在关注。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

2018年世界经济论坛上,区块链似乎是无所不在,再次显示了区块链是如何被视为未来的关键,尽管这里也有许多关于加密货币的观点和意见。达沃斯论坛传递出的对区块链的一般共识和态度是:“小心加密货币,但对它背后的数字记账技术(区块链或分布式记账技术)的现实利用和可能性,要密切关注”。虽然眼下加密货币和初始代币发行(ICOs)由于各种错误的原因而处于舆论的漩涡之中(这并不意味着加密货币没有未来,而恰巧相反),但区块链或分布式记账技术确实表现出很好的应用前景,尤其是像智慧合约这类区块链应用,正引起越来越广泛的兴趣。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

本报告内容不只是有区块链技术导论,更有区块链技术系统架构组件,统一模式需求,创新数据系统要素、智慧合约,区块链权限模型和丰富的应用案例,从金融应用到非金融应用,如区块链与物联网、智慧建筑等。当然,报告也尽量涉及区块链技术的益处和局限性,旨在“帮助IT经理们就给定的任务下,区块链是否是一个适宜的工具做出明智的决策”。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

02维基百科:区块链技术指南(3131)

区块链技术指南

目录

·1.前言

·2.区块链思想的诞生与概念

o2.1.从数字货币说起

o2.2.比特币:前所未有的社会学实验

o2.3.区块链核心概念

o2.4.小结

·3.区块链技术的价值、挑战与展望

o3.1.商业价值

o3.2.关键技术和挑战

o3.3.趋势与展望

o3.4.小结

·4. 典型应用场景

o4.1.金融服务

o4.2.征信和权属管理

o4.3.资源共享

o4.4.投资管理

o4.5.物联网与供应链

o4.6.其它场景

o4.7.小结

·5.分布式系统核心问题

o5.1.一致性问题

o5.2.共识算法

o5.3.FLP 不可能性原理

o5.4.CAP 原理

o5.5.ACID 原则

o5.6.Paxos 与 Raft

o5.7.拜占庭问题与算法

o5.8.可靠性指标

o5.9.小结

·6.密码学与安全技术

o6.1.Hash 算法与摘要

o6.2.加解密算法

o6.3.数字签名

o6.4.数字证书

o6.5.PKI 体系

o6.6.Merkle 树

o6.7.同态加密

o6.8.其它问题

o6.9.小结

·7.比特币项目 -- 思想诞生的摇篮

o7.1.简介

o7.2.原理和设计

o7.3.挖矿

o7.4.工具

o7.5.共识机制

o7.6.闪电网络

o7.7.侧链

o7.8.小结

·8.Ethereum(以太坊)-- 技术落地的实验

o8.1.简介

o8.2.安装

o8.3.相关工具

o8.4.协议设计

o8.5.智能合约示例一

o8.6.小结

·9.Hyperledger(超级账本)-- 商用分布式账本

o9.1.诞生与发展

o9.2.社区组织

o9.3.五大顶级项目

o9.4.开发和提交代码

o9.5.小结

·10.Fabric 部署与管理

o10.1.简介

o10.2.使用 Fabric 1.0 版本

o10.3.Fabric v0.6

§10.3.1.安装部署

§10.3.2.使用 chaincode

§10.3.3.权限管理

§10.3.4.Python 客户端

o10.4.小结

·11.区块链应用开发

o11.1.简介

o11.2.链上代码工作原理

o11.3.示例一:信息公证

o11.4.示例二:交易资产

o11.5.示例三:数字货币发行与管理

o11.6.示例四:学历认证

o11.7.示例五:社区能源共享

o11.8.小结

·12.Fabric 架构与设计

o12.1.简介

o12.2.架构设计

o12.3.消息协议

o12.4.小结

·13.区块链即服务

o13.1.Bluemix BaaS

o13.2.超能 BaaS

o13.3.使用 Hyperledger Cello 搭建区块链服务

o13.4.小结

·14.性能与评测

o14.1.简介

o14.2.Hyperledger Fabric v0.6

o14.3.小结

·15.附录

o15.1.术语

o15.2.常见问题

o15.3.相关组织

o15.4.ProtoBuf 与 gRPC

o15.5.资源链接

▌定义

区块链(Blockchain)技术自身仍然在飞速发展中,目前还缺乏统一的规范和标准。

wikipedia定义:A blockchain —originally, block chain —is a distributed database that maintains a continuously-growing list of data records hardened against tampering and revision. It consists of data structure blocks—which hold exclusively data in initial blockchain implementations, and both data and programs in some of the more recent implementations—with each block holding batches of individual transactions and the results of any blockchain executables. Each block contains a timestamp and information linking it to a previous block.

最早区块链技术雏形出现在比特币项目中。作为比特币背后的分布式记账平台,在无集中式管理的情况下,比特币网络稳定运行了近八年时间,支持了海量的交易记录,并未出现严重的漏洞。

注:比特币历史上唯一已知的漏洞事件曾导致比特币的恶意增发,但问题很快被发现并修正,相关非法交易被撤销。

公认的最早关于区块链的描述性文献是中本聪所撰写的 比特币:一种点对点的电子现金系统,但该文献重点在于讨论比特币系统,实际上并没有明确提出区块链的定义和概念。在其中,区块链被描述为用于记录比特币交易的账目历史。

记账技术历史悠久,现代复式记账系统Double Entry Bookkeeping)是由意大利数学家卢卡·帕西奥利,1494 年在Summa de arithmetica, geometrica, proportioni et proportionalità》一书中最早制定。复式记账法对每一笔账目同时记录来源和去向,首次将对账验证功能引入记账过程,提升了记账的可靠性。从这个角度来看,区块链是首个自带对账功能的数字记账技术实现

更广泛意义地看,区块链属于一种去中心化的记录技术。参与到系统上的节点,可能不属于同一组织、彼此无需信任;区块链数据由所有节点共同维护,每个参与维护节点都能复制获得一份完整记录的拷贝。

跟传统的记账技术相比,其特点应该包括:

·维护一条不断增长的链,只可能添加记录,而发生过的记录都不可篡改;

·去中心化,或者说多中心化,无需集中的控制而能达成共识,实现上尽量分布式;

·通过密码学的机制来确保交易无法抵赖和破坏,并尽量保护用户信息和记录的隐私性。

更进一步的,还可以将智能合约跟区块链结合到一起,让其提供除了交易(比特币区块链已经支持简单的脚本计算)功能外更灵活的合约功能,执行更为复杂的操作。这样扩展之后的区块链,已经超越了单纯数据记录的功能了,实际上带有点“普适计算”的意味了。

从技术特点上,可以看到现在区块链技术的三种典型应用场景:

定位

功能

智能合约

一致性

权限

类型

性能

代表

公信的数字货币

记账功能

不带有或较弱

PoW

公有链

较低

比特币

公信的交易处理

智能合约

图灵完备

PoW、PoS

公有链

受限

以太坊

带权限的交易处理

商业处理

多种语言,图灵完备

多种,可插拔

支持

联盟链

可扩展

Hyperledger

▌基本原理

区块链的基本原理理解起来并不难。基本概念包括:

·交易(Transaction):一次操作,导致账本状态的一次改变,如添加一条记录;

·区块(Block):记录一段时间内发生的交易和状态结果,是对当前账本状态的一次共识;

·链(Chain):由一个个区块按照发生顺序串联而成,是整个状态变化的日志记录。

如果把区块链作为一个状态机,则每次交易就是试图改变一次状态,而每次共识生成的区块,就是参与者对于区块中所有交易内容导致状态改变的结果进行确认。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

在实现上,首先假设存在一个分布式的数据记录本(这方面的技术相对成熟),这个记录本只允许添加、不允许删除。其结构是一个线性的链表,由一个个“区块”串联组成,这也是其名字“区块链”的来源。新的数据要加入,必须放到一个新的区块中。而这个块(以及块里的交易)是否合法,可以通过一些手段快速检验出来。维护节点都可以提议一个新的区块,然而必须经过一定的共识机制来对最终选择的区块达成一致。

具体以比特币为例来看如何使用了区块链技术?客户端发起一项交易后,会广播到网络中并等待确认。网络中的节点会将一些等待确认的交易记录打包在一起(此外还要包括此前区块的哈希值等信息),组成一个候选区块。然后,试图找到一个 nonce 串放到区块里,使得候选区块的 hash 结果满足一定条件(比如小于某个值)。一旦算出来这个区块在格式上就合法了,就可以进行全网广播。大家拿到提案区块,进行验证,发现确实符合约定条件了,就承认这个区块是一个合法的新区块,被添加到链上。当然,在实现上还会有很多的细节。

比特币的这种基于算力的共识机制被称为 Proof of Work(PoW)。目前,要让 hash 结果满足一定条件并无已知的启发式算法,只能进行暴力尝试。尝试的次数越多,算出来的概率越大。通过调节对 hash 结果的限制,比特币网络控制约 10 分钟平均算出来一个合法区块。算出来的节点将得到区块中所有交易的管理费和协议固定发放的奖励费(目前是 12.5 比特币,每四年减半)。也即俗称的挖矿。

很自然会有人问,能否进行恶意操作来破坏整个区块链系统或者获取非法利益。比如不承认别人的结果,拒绝别人的交易等。实际上,因为系统中存在大量的用户,而且用户默认都只承认他看到的最长的链。只要不超过一半(概率意义上越少肯定越难)的用户协商,最终最长的链将很大概率上是合法的链,而且随着时间增加,这个概率会越大。例如,经过 6 个块后,即便有一半的节点联合起来想颠覆被确认的结果,其概率将为 126=1.6%frac{1}{2}^6 = 1.6%216=1.6%,即低于 160frac{1}{60}601 的可能性。

注:熟悉 Git的人,应该会赞叹两者在设计上的异曲同工之妙。

▌分类

根据参与者的不同,可以分为公开(Public)链、联盟(Consortium)链和私有(Private)链。

公开链,顾名思义,任何人都可以参与使用和维护,典型的如比特币区块链,信息是完全公开的。

如果引入许可机制,包括私有链和联盟链两种。

私有链,则是集中管理者进行限制,只能得到内部少数人可以使用,信息不公开。

联盟链则介于两者之间,由若干组织一起合作维护一条区块链,该区块链的使用必须是有权限的管理,相关信息会得到保护,典型如银联组织。

目前来看,公开链将会更多的吸引社区和媒体的眼球,但更多的商业价值应该在联盟链和私有链上。

根据使用目的和场景的不同,又可以分为以数字货币为目的的货币链,以记录产权为目的的产权链,以众筹为目的的众筹链等。

▌误区

目前,对区块链的认识还存在不少误区。

首先,区块链不是数据库。虽然区块链也可以用来存储数据,但它要解决的问题是多方的互信问题。单纯从存储数据角度,它的效率可能不高,笔者也不推荐把大量的原始数据放到区块链上。

其次,区块链不是要颠覆现有技术。作为基于多项已有技术而出现的新事物,区块链跟现有技术的关系是一脉相承的,在解决多方合作和可信处理上多走了一步,但并不意味着它将彻底颠覆已有的商业模式。很长一段时间里,区块链的适用场景仍需摸索,跟已有系统必然是合作共存的关系。

03中本聪(Satoshi Nakamoto)比特币白皮书:一种点对点的电子现金系统 (7208)

比特币白皮书:一种点对点的电子现金系统

原文作者:中本聪Satoshi Nakamoto

[摘要]:本文提出了一种完全通过点对点技术实现的电子现金系统,它使得在线支付能够直接由一方发起并支付给另外一方,中间不需要通过任何的金融机构。虽然数字签名(Digital signatures)部分解决了这个问题,但是如果仍然需要第三方的支持才能防止双重支付(double-spending)的话,那么这种系统也就失去了存在的价值。我们(we)在此提出一种解决方案,使现金系统在点对点的环境下运行,并防止双重支付问题。该网络通过随机散列(hashing)对全部交易加上时间戳(timestamps),将它们合并入一个不断延伸的基于随机散列的工作量证明(proof-of-work)的链条作为交易记录,除非重新完成全部的工作量证明,形成的交易记录将不可更改。最长的链条不仅将作为被观察到的事件序列(sequence)的证明,而且被看做是来自CPU计算能力最大的池(pool)。只要大多数的CPU计算能力都没有打算合作起来对全网进行攻击,那么诚实的节点将会生成最长的、超过攻击者的链条。这个系统本身需要的基础设施非常少。信息尽最大努力在全网传播即可,节点(nodes)可以随时离开和重新加入网络,并将最长的工作量证明链条作为在该节点离线期间发生的交易的证明。

1. 简介

互联网上的贸易,几乎都需要借助金融机构作为可资信赖的第三方来处理电子支付信息。虽然这类系统在绝大多数情况下都运作良好,但是这类系统仍然内生性地受制于“基于信用的模式”(trust based model)的弱点。我们无法实现完全不可逆的交易,因为金融机构总是不可避免地会出面协调争端。而金融中介的存在,也会增加交易的成本,并且限制了实际可行的最小交易规模,也限制了日常的小额支付交易。并且潜在的损失还在于,很多商品和服务本身是无法退货的,如果缺乏不可逆的支付手段,互联网的贸易就大大受限。因为有潜在的退款的可能,就需要交易双方拥有信任。而商家也必须提防自己的客户,因此会向客户索取完全不必要的个人信息。而实际的商业行为中,一定比例的欺诈性客户也被认为是不可避免的,相关损失视作销售费用处理。而在使用物理现金的情况下,这些销售费用和支付问题上的不确定性却是可以避免的,因为此时没有第三方信用中介的存在。

所以,我们非常需要这样一种电子支付系统,它基于密码学原理而不基于信用,使得任何达成一致的双方,能够直接进行支付,从而不需要第三方中介的参与。杜绝回滚(reverse)支付交易的可能,这就可以保护特定的卖家免于欺诈;而对于想要保护买家的人来说,在此环境下设立通常的第三方担保机制也可谓轻松加愉快。在这篇论文中,我们(we)将提出一种通过点对点分布式的时间戳服务器来生成依照时间前后排列并加以记录的电子交易证明,从而解决双重支付问题。只要诚实的节点所控制的计算能力的总和,大于有合作关系的(cooperating)攻击者的计算能力的总和,该系统就是安全的。

2. 交易(Transactions)

我们定义,一枚电子货币(an electronic coin)是这样的一串数字签名:每一位所有者通过对前一次交易和下一位拥有者的公钥(Public key) 签署一个随机散列的数字签名,并将这个签名附加在这枚电子货币的末尾,电子货币就发送给了下一位所有者。而收款人通过对签名进行检验,就能够验证该链条的所有者。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

该过程的问题在于,收款人将难以检验,之前的某位所有者,是否对这枚电子货币进行了双重支付。通常的解决方案,就是引入信得过的第三方权威,或者类似于造币厂(mint)的机构,来对每一笔交易进行检验,以防止双重支付。在每一笔交易结束后,这枚电子货币就要被造币厂回收,而造币厂将发行一枚新的电子货币;而只有造币厂直接发行的电子货币,才算作有效,这样就能够防止双重支付。可是该解决方案的问题在于,整个货币系统的命运完全依赖于运作造币厂的公司,因为每一笔交易都要经过该造币厂的确认,而该造币厂就好比是一家银行。

我们需要收款人有某种方法,能够确保之前的所有者没有对更早发生的交易实施签名。从逻辑上看,为了达到目的,实际上我们需要关注的只是于本交易之前发生的交易,而不需要关注这笔交易发生之后是否会有双重支付的尝试。为了确保某一次交易是不存在的,那么唯一的方法就是获悉之前发生过的所有交易。在造币厂模型里面,造币厂获悉所有的交易,并且决定了交易完成的先后顺序。如果想要在电子系统中排除第三方中介机构,那么交易信息就应当被公开宣布(publicly announced)[1],我们需要整个系统内的所有参与者,都有唯一公认的历史交易序列。收款人需要确保在交易期间绝大多数的节点都认同该交易是首次出现。

3. 时间戳服务器(Timestamp server)

本解决方案首先提出一个“时间戳服务器”。时间戳服务器通过对以区块(block)形式存在的一组数据实施随机散列而加上时间戳,并将该随机散列进行广播,就像在新闻或世界性新闻组网络(Usenet)的发帖一样[2][3][4][5]。显然,该时间戳能够证实特定数据必然于某特定时间是的确存在的,因为只有在该时刻存在了才能获取相应的随机散列值。每个时间戳应当将前一个时间戳纳入其随机散列值中,每一个随后的时间戳都对之前的一个时间戳进行增强(reinforcing),这样就形成了一个链条(Chain)。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

4. 工作量证明(Proof-of-Work

为了在点对点的基础上构建一组分散化的时间戳服务器,仅仅像报纸或世界性新闻网络组一样工作是不够的,我们还需要一个类似于亚当•柏克(Adam Back)提出的哈希现金(Hashcash)[6]。在进行随机散列运算时,工作量证明机制引入了对某一个特定值的扫描工作,比方说SHA-256下,随机散列值以一个或多个0开始。那么随着0的数目的上升, 找到这个解所需要的工作量将呈指数增长,而对结果进行检验则仅需要一次随机散列运算。

我们在区块中补增一个随机数(Nonce),这个随机数要使得该给定区块的随机散列值出现了所需的那么多个0。我们通过反复尝试来找到这个随机数,直到找到为止,这样我们就构建了一个工作量证明机制。只要该CPU耗费的工作量能够满足该工作量证明机制,那么除非重新完成相当的工作量,该区块的信息就不可更改。由于之后的区块是链接在该区块之后的,所以想要更改该区块中的信息,就还需要重新完成之后所有区块的全部工作量。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

同时,该工作量证明机制还解决了在集体投票表决时,谁是大多数的问题。如果决定大多数的方式是基于IP地址的,一IP地址一票,那么如果有人拥有分配大量IP地址的权力,则该机制就被破坏了。而工作量证明机制的本质则是一CPU一票。“大多数”的决定表达为最长的链,因为最长的链包含了最大的工作量。如果大多数的CPU为诚实的节点控制,那么诚实的链条将以最快的速度延长,并超越其他的竞争链条。如果想要对业已出现的区块进行修改,攻击者必须重新完成该区块的工作量外加该区块之后所有区块的工作量,并最终赶上和超越诚实节点的工作量。我们将在后文证明,设想一个较慢的攻击者试图赶上随后的区块,那么其成功概率将呈指数化递减。

另一个问题是,硬件的运算速度在高速增长,而节点参与网络的程度则会有所起伏。为了解决这个问题,工作量证明的难度(the proof-of-work difficulty)将采用移动平均目标的方法来确定,即令难度指向令每小时生成区块的速度为某一个预定的平均数。如果区块生成的速度过快,那么难度就会提高。

5. 网络

运行该网络的步骤如下:

·1) 新的交易向全网进行广播;

·2) 每一个节点都将收到的交易信息纳入一个区块中;

·3) 每个节点都尝试在自己的区块中找到一个具有足够难度的工作量证明;

·4) 当一个节点找到了一个工作量证明,它就向全网进行广播;

·5) 当且仅当包含在该区块中的所有交易都是有效的且之前未存在过的,其他节点才认同该区块的有效性;

·6) 其他节点表示他们接受该区块,而表示接受的方法,则是在跟随该区块的末尾,制造新的区块以延长该链条,而将被接受区块的随机散列值视为先于新区快的随机散列值。

节点始终都将最长的链条视为正确的链条,并持续工作和延长它。如果有两个节点同时广播不同版本的新区块,那么其他节点在接收到该区块的时间上将存在先后差别。当此情形,他们将在率先收到的区块基础上进行工作,但也会保留另外一个链条,以防后者变成最长的链条。该僵局(tie)的打破要等到下一个工作量证明被发现,而其中的一条链条被证实为是较长的一条,那么在另一条分支链条上工作的节点将转换阵营,开始在较长的链条上工作。

所谓“新的交易要广播”,实际上不需要抵达全部的节点。只要交易信息能够抵达足够多的节点,那么他们将很快被整合进一个区块中。而区块的广播对被丢弃的信息是具有容错能力的。如果一个节点没有收到某特定区块,那么该节点将会发现自己缺失了某个区块,也就可以提出自己下载该区块的请求。

6. 激励

我们约定如此:每个区块的第一笔交易进行特殊化处理,该交易产生一枚由该区块创造者拥有的新的电子货币。这样就增加了节点支持该网络的激励,并在没有中央集权机构发行货币的情况下,提供了一种将电子货币分配到流通领域的一种方法。这种将一定数量新货币持续增添到货币系统中的方法,非常类似于耗费资源去挖掘金矿并将黄金注入到流通领域。此时,CPU的时间和电力消耗就是消耗的资源。

另外一个激励的来源则是交易费(transaction fees)。如果某笔交易的输出值小于输入值,那么差额就是交易费,该交易费将被增加到该区块的激励中。只要既定数量的电子货币已经进入流通,那么激励机制就可以逐渐转换为完全依靠交易费,那么本货币系统就能够免于通货膨胀。

激励系统也有助于鼓励节点保持诚实。如果有一个贪婪的攻击者能够调集比所有诚实节点加起来还要多的CPU计算力,那么他就面临一个选择:要么将其用于诚实工作产生新的电子货币,或者将其用于进行二次支付攻击。那么他就会发现,按照规则行事、诚实工作是更有利可图的。因为该等规则使得他能够拥有更多的电子货币,而不是破坏这个系统使得其自身财富的有效性受损。

7. 回收硬盘空间

如果最近的交易已经被纳入了足够多的区块之中,那么就可以丢弃该交易之前的数据,以回收硬盘空间。为了同时确保不损害区块的随机散列值,交易信息被随机散列时,被构建成一种Merkle树(Merkle tree)[7]的形态,使得只有根(root)被纳入了区块的随机散列值。通过将该树(tree)的分支拔除(stubbing)的方法,老区块就能被压缩。而内部的随机散列值是不必保存的。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

不含交易信息的区块头(Block header)大小仅有80字节。如果我们设定区块生成的速率为每10分钟一个,那么每一年产生的数据位4.2MB。(80 bytes * 6 * 24 * 365 = 4.2MB)。2008年,PC系统通常的内存容量为2GB,按照摩尔定律的预言,即使将全部的区块头存储于内存之中都不是问题。

8. 简化的支付确认(Simplified Payment Verification

在不运行完整网络节点的情况下,也能够对支付进行检验。一个用户需要保留最长的工作量证明链条的区块头的拷贝,它可以不断向网络发起询问,直到它确信自己拥有最长的链条,并能够通过merkle的分支通向它被加上时间戳并纳入区块的那次交易。节点想要自行检验该交易的有效性原本是不可能的,但通过追溯到链条的某个位置,它就能看到某个节点曾经接受过它,并且于其后追加的区块也进一步证明全网曾经接受了它。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

当此情形,只要诚实的节点控制了网络,检验机制就是可靠的。但是,当全网被一个计算力占优的攻击者攻击时,将变得较为脆弱。因为网络节点能够自行确认交易的有效性,只要攻击者能够持续地保持计算力优势,简化的机制会被攻击者焊接的(fabricated)交易欺骗。那么一个可行的策略就是,只要他们发现了一个无效的区块,就立刻发出警报,收到警报的用户将立刻开始下载被警告有问题的区块或交易的完整信息,以便对信息的不一致进行判定。对于日常会发生大量收付的商业机构,可能仍会希望运行他们自己的完整节点,以保持较大的独立完全性和检验的快速性。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

9. 价值的组合与分割(Combining and Splitting Value

虽然可以单个单个地对电子货币进行处理,但是对于每一枚电子货币单独发起一次交易将是一种笨拙的办法。为了使得价值易于组合与分割,交易被设计为可以纳入多个输入和输出。一般而言是某次价值较大的前次交易构成的单一输入,或者由某几个价值较小的前次交易共同构成的并行输入,但是输出最多只有两个:一个用于支付,另一个用于找零(如有)。

需要指出的是,当一笔交易依赖于之前的多笔交易时,这些交易又各自依赖于多笔交易,但这并不存在任何问题。因为这个工作机制并不需要展开检验之前发生的所有交易历史。

10. 隐私(Privacy

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

传统的造币厂模型为交易的参与者提供了一定程度的隐私保护,因为试图向可信任的第三方索取交易信息是严格受限的。但是如果将交易信息向全网进行广播,就意味着这样的方法失效了。但是隐私依然可以得到保护:将公钥保持为匿名。公众得知的信息仅仅是有某个人将一定数量的货币发所给了另外一个人,但是难以将该交易同特定的人联系在一起,也就是说,公众难以确信,这些人究竟是谁。这同股票交易所发布的信息是类似的,股票交易发生的时间、交易量是记录在案且可供查询的,但是交易双方的身份信息却不予透露。

作为额外的预防措施,使用者可以让每次交易都生成一个新的地址,以确保这些交易不被追溯到一个共同的所有者。但是由于并行输入的存在,一定程度上的追溯还是不可避免的,因为并行输入表明这些货币都属于同一个所有者。此时的风险在于,如果某个人的某一个公钥被确认属于他,那么就可以追溯出此人的其它很多交易。

11. 计算

设想如下场景:一个攻击者试图比诚实节点产生链条更快地制造替代性区块链。即便它达到了这一目的,但是整个系统也并非就此完全受制于攻击者的独断意志了,比方说凭空创造价值,或者掠夺本不属于攻击者的货币。这是因为节点将不会接受无效的交易,而诚实的节点永远不会接受一个包含了无效信息的区块。一个攻击者能做的,最多是更改他自己的交易信息,并试图拿回他刚刚付给别人的钱。

诚实链条和攻击者链条之间的竞赛,可以用二叉树随机漫步(Binomial Random Walk)来描述。成功事件定义为诚实链条延长了一个区块,使其领先性+1,而失败事件则是攻击者的链条被延长了一个区块,使得差距-1。

攻击者成功填补某一既定差距的可能性,可以近似地看做赌徒破产问题(Gambler’s Ruin problem)。假定一个赌徒拥有无限的透支信用,然后开始进行潜在次数为无穷的赌博,试图填补上自己的亏空。那么我们可以计算他填补上亏空的概率,也就是该攻击者赶上诚实链条,如下所示[8]

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

假定p>q,那么攻击成功的概率就因为区块数的增长而呈现指数化下降。由于概率是攻击者的敌人,如果他不能幸运且快速地获得成功,那么他获得成功的机会随着时间的流逝就变得愈发渺茫。那么我们考虑一个收款人需要等待多长时间,才能足够确信付款人已经难以更改交易了。我们假设付款人是一个支付攻击者,希望让收款人在一段时间内相信他已经付过款了,然后立即将支付的款项重新支付给自己。虽然收款人届时会发现这一点,但为时已晚。

收款人生成了新的一对密钥组合,然后只预留一个较短的时间将公钥发送给付款人。这将可以防止以下情况:付款人预先准备好一个区块链然后持续地对此区块进行运算,直到运气让他的区块链超越了诚实链条,方才立即执行支付。当此情形,只要交易一旦发出,攻击者就开始秘密地准备一条包含了该交易替代版本的平行链条。

然后收款人将等待交易出现在首个区块中,然后在等到z个区块链接其后。此时,他仍然不能确切知道攻击者已经进展了多少个区块,但是假设诚实区块将耗费平均预期时间以产生一个区块,那么攻击者的潜在进展就是一个泊松分布,分布的期望值为:

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

当此情形,为了计算攻击者追赶上的概率,我们将攻击者取得进展区块数量的泊松分布的概率密度,乘以在该数量下攻击者依然能够追赶上的概率。

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

化为如下形式,避免对无限数列求和:

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

写为如下C语言代码:

#include double AttackerSuccessProbability(double q, int z)

{

double p = 1.0 - q;

double lambda = z * (q / p);

double sum = 1.0;

int i, k;

for (k = 0; k <= z; k++)

{

double poisson = exp(-lambda);

for (i = 1; i <= k; i++)

poisson *= lambda / i;

sum -= poisson * (1 - pow(q / p, z - k));

}

return sum;

}

对其进行运算,我们可以得到如下的概率结果,发现概率对z值呈指数下降。

q=0.1时

z=0 P=1.0000000

z=1 P=0.2045873

z=2 P=0.0509779

z=3 P=0.0131722

z=4 P=0.0034552

z=5 P=0.0009137

z=6 P=0.0002428

z=7 P=0.0000647

z=8 P=0.0000173

z=9 P=0.0000046

z=10 P=0.0000012

q=0.3时

z=0 P=1.0000000

z=5 P=0.1773523

z=10 P=0.0416605

z=15 P=0.0101008

z=20 P=0.0024804

z=25 P=0.0006132

z=30 P=0.0001522

z=35 P=0.0000379

z=40 P=0.0000095

z=45 P=0.0000024

z=50 P=0.0000006

求解令P<0.1%的z值:

为使P<0.001,则

q=0.10 z=5

q=0.15 z=8

q=0.20 z=11

q=0.25 z=15

q=0.30 z=24

q=0.35 z=41

q=0.40 z=89

q=0.45 z=340

12.结论

我们在此提出了一种不需要信用中介的电子支付系统。我们首先讨论了通常的电子货币的电子签名原理,虽然这种系统为所有权提供了强有力的控制,但是不足以防止双重支付。为了解决这个问题,我们提出了一种采用工作量证明机制的点对点网络来记录交易的公开信息,只要诚实的节点能够控制绝大多数的CPU计算能力,就能使得攻击者事实上难以改变交易记录。该网络的强健之处在于它结构上的简洁性。节点之间的工作大部分是彼此独立的,只需要很少的协同。每个节点都不需要明确自己的身份,由于交易信息的流动路径并无任何要求,所以只需要尽其最大努力传播即可。节点可以随时离开网络,而想重新加入网络也非常容易,因为只需要补充接收离开期间的工作量证明链条即可。节点通过自己的CPU计算力进行投票,表决他们对有效区块的确认,他们不断延长有效的区块链来表达自己的确认,并拒绝在无效的区块之后延长区块以表示拒绝。本框架包含了一个P2P电子货币系统所需要的全部规则和激励措施。

注释 (↵ returns to text)

1.W Dai(戴伟),a scheme for a group of untraceable digital pseudonyms to pay each other with money and to enforce contracts amongst themselves without outside help(一种能够借助电子假名在群体内部相互支付并迫使个体遵守规则且不需要外界协助的电子现金机制), “B-money”, http://www.weidai.com/bmoney.txt, 1998

2.H. Massias, X.S. Avila, and J.-J. Quisquater, “Design of a secure timestamping service with minimal trust requirements,”(在最小化信任的基础上设计一种时间戳服务器) In 20th Symposium on Information Theory in the Benelux, May 1999.

3.S. Haber, W.S. Stornetta, “How to time-stamp a digital document,” (怎样为电子文件添加时间戳)In Journal of Cryptology, vol 3, No.2, pages 99-111, 1991.

4.D. Bayer, S. Haber, W.S. Stornetta, “Improving the efficiency and reliability of digital time-stamping,”(提升电子时间戳的效率和可靠性) In Sequences II: Methods in Communication, Security and Computer Science, pages 329-334, 1993.

5.S. Haber, W.S. Stornetta, “Secure names for bit-strings,”(比特字串的安全命名) In Proceedings of the 4th ACM Conference on Computer and Communications Security, pages 28-35, April 1997. on Computer and Communications Security, pages 28-35, April 1997.

6.A. Back, “Hashcash – a denial of service counter-measure,”(哈希现金——拒绝服务式攻击的克制方法)http://www.hashcash.org/papers/hashcash.pdf, 2002.

7.R.C. Merkle, “Protocols for public key cryptosystems,” (公钥密码系统的协议)In Proc. 1980 Symposium on Security and Privacy, IEEE Computer Society, pages 122-133, April 1980.

8.S. Haber, W.S. Stornetta, “Secure names for bit-strings,”(比特字串安全命名) In Proceedings of the 4th ACM Conference on Computer and Communications Security, pages 28-35, April 1997. on Computer and Communications Security, pages 28-35, April 1997.

9.H. Massias, X.S. Avila, and J.-J. Quisquater, “Design of a secure timestamping service with minimal trust requirements,”(在最小化信任的条件下设计一种时间戳服务器) In 20th Symposium on Information Theory in the Benelux, May 1999.

10.W. Feller, “An introduction to probability theory and its applications,” (概率学理论与应用导论)1957

04区域链技术资料网址汇总 (436)

1Blockchain For Dummies:初学者指南

http://byteacademy.co/blockchain-for-dummies-a-beginners-guide/

2、使用Python从零开始构建区块链 - 1部分

http://blockxchain.org/2017/06/04/building-a-blockchain-with-python-1/

3、如何建立自己的区块链第2部分 - 从不同节点同步链

https://bigishdata.com/2017/10/27/build-your-own-blockchain-part-2-syncing-chains-from-different-nodes/

4、通过Python实现区块链

https://github.com/daneah/toyblocks

5BUILD YOUR OWN BLOCKCHAIN: A PYTHON TUTORIAL

http://ecomunsing.com/build-your-own-blockchain

6BlockSci:区块链分析平台的设计和应用

https://arxiv.org/pdf/1709.02489.pdf

7Bitcoin and Blockchain for Pythoneers

https://ep2017.europython.eu/media/conference/slides/bitcoin-and-blockchain-for-pythoneers.pdf

8、通过机器学习算法自动化比特币交易

http://ai2-s2-pdfs.s3.amazonaws.com/e065/3631b4a476abf5276a264f6bbff40b132061.pdf

9、比特币高频价格预测基于机器学习

https://github.com/cbyn/bitpredict

10MIT计算机科学家可以预测比特币的价格

http://news.mit.edu/2014/mit-computer-scientists-can-predict-price-bitcoin

11、使用机器学习预测比特币的价格

http://trap.ncirl.ie/2496/1/seanmcnally.pdf

12Bloq Acquires Skry, Supercharges Blockchain Analytics With AI and Machine Learning

https://bitcoinmagazine.com/articles/bloq-acquires-skry-supercharges-blockchain-analytics-ai-and-machine-learning/

13、算法预测比特币的价格——开发商在50天内将投资额加倍

https://www.zmescience.com/research/technology/predict-bitcoin-price-423432/

14bitcoin-python - Easy-to-use Bitcoin API client.

https://laanwj.github.io/bitcoin-python/doc/

15Python Bitcoin Tools

https://pypi.python.org/pypi/bitcoin

16Python Bitcoin Tutorial for Beginners

https://www.youtube.com/watch?v=3xAO4K7FC6E

17SImple, common-sense Bitcoin-themed Python ECC library

https://github.com/vbuterin/pybitcointools

18MATLAB大数据与区块链技术的整合

https://cn.mathworks.com/products/connections/product_detail/agildata-consulting.html

19Understand the fundamentals of IBM Blockchain

https://www.ibm.com/blockchain/what-is-blockchain.html?S_PKG=AW&cm_mmc=Search_Google-_-Blockchain_Blockchain-_-WW_NA-_-+Blockchain_Broad_AW&cm_mmca1=000020YK&cm_mmca2=10005804&cm_mmca7=9003445&cm_mmca8=aud-371978962534:kwd-305134168301&cm_mmca9=c85d28c6-17be-45c1-acc5-3fc569d0abfa&cm_mmca10=218843303197&cm_mmca11=b&mkwid=c85d28c6-17be-45c1-acc5-3fc569d0abfa|1298|243&cvosrc=ppc.google.%2Bblockchain&cvo_campaign=000020YK&cvo_crid=218843303197&Matchtype=b

20The Blockchain Explained to Web Developers, Part 1: The Theory

https://marmelab.com/blog/2016/04/28/blockchain-for-web-developers-the-theory.html

21The Blockchain Explained to Web Developers, Part 2: In Practice

https://marmelab.com/blog/2016/05/20/blockchain-for-web-developers-in-practice.html

22The Blockchain Explained to Web Developers, Part 3: The Truth

https://marmelab.com/blog/2016/06/14/blockchain-for-web-developers-the-truth.html

23、面向Java开发人员的区块链代码

https://www.ibm.com/developerworks/library/j-chaincode-for-java-developers/index.html

24The Blockchain

http://chimera.labs.oreilly.com/books/1234000001802/ch07.html

25Blockchain Thinking: The Brain as a DAC (Decentralized Autonomous Organization)

http://www.the-blockchain.com/docs/Blockchain%20Thinking%20-%20The%20Brain%20as%20a%20DAC%20-%20Decentralized%20Autonomous%20Organization.pdf

26Product-centric Information Management: A Case Study of a Shared Platform with Blockchain Technology

https://escholarship.org/content/qt65s5s4b2/qt65s5s4b2.pdf

27Blockchain And Machine Learning

http://www.digitalistmag.com/digital-economy/2017/02/22/blockchain-and-machine-learning-04917258

28中国首个区块链标准《区块链参考架构》

https://pan.baidu.com/s/1o9M1Xii

29《大数据交易区块链技术应用标准》下载链接

http://pan.baidu.com/s/1eRUaH0Y密码:2jcn

参考文献(402)

1.新华网.World 1st Blockchain for Sustainable Development Goals Alliance established in Washington DC[EB/OL] http://www.xinhuanet.com/english/business/2017-01/23/c_136006946.htm2017-01-23

2. 新华网.Singapore experimenting with Blockchain technology[EB/OL] http://www.xinhuanet.com/english/2016-11/16/c_135834802.htm2016-02-11

3. 腾讯网.区块链技术到底是什么鬼,为何被疯炒?.[EB/OL] http://stock.qq.com/a/20160607/030548.htm2016-06-10

4. 澎湃新闻记者李莹莹.区块链来了|中国首个区块链联盟成立,欲复制R3模式.[EB/OL] http://www.thepaper.cn/newsDetail_forward_14585112016-04-19

5. 知行.区块链技术指南.[EB/OL] https://gitlore.com/subject/59/born/what.md2017-05-11

6. 百度百科.区块链技术.[EB/OL] https://baike.baidu.com/item/%E5%8C%BA%E5%9D%97%E9%93%BE%E6%8A%80%E6%9C%AF/195277082018-02-23

7. 数字医疗践行者.美国NIST区块链技术报告区块链技术概述.[EB/OL] https://mp.weixin.qq.com/s?__biz=MjM5MjE2MTQ0NA==&mid=2648682462&idx=1&sn=02fdffc02b5279f78eaaa132adef40082018-02-10

8. 老链哥比特币先驱人物志:戴伟.[EB/OL]https://mp.weixin.qq.com/s?__biz=MzI1Mzk4ODIwOA==&mid=2247483890&idx=2&sn=2b6025dd9547f0c69db66b7795f094222018-01-21

9. 买比特币的吴老师看了100篇区块链文章,强烈推荐这5篇干货.[EB/OL]https://mp.weixin.qq.com/s?__biz=MjM5MzYwMTE5OQ==&mid=2651768412&idx=1&sn=30bfb0be1dddf2c6ece0f4cc709d26762018-01-22

10. 维基百科、知行.区块链技术指南.[EB/OL] https://gitlore.com/subject/592018-02-18

11. 中本聪(Satoshi Nakamoto比特币白皮书:一种点对点的电子现金系统.[EB/OL]http://www.8btc.com/wiki/bitcoin-a-peer-to-peer-electronic-cash-system2016-05-23

12. 机器学习算法与自然语言处理资料|区域链相关资料汇总.[EB/OL]https://mp.weixin.qq.com/s?__biz=MzI4MDYzNzg4Mw==&mid=2247486839&idx=2&sn=16bf90fdd5587a4f1c6029af8f16857f2018-01-22

x. 秦陇纪数据科学与大数据技术专业概论;人工智能研究现状及教育应用;纯文本数据神经网络训练;大数据简化之技术体系[EB/OL]数据简化DataSimp(微信公众号)http://www.datasimp.org2017-06-06

区块链BlockChain技术概述 (16476)

秦陇纪

简介:区块链BlockChain技术概述。(文末阅读原文可下载18图1表3码27k字20页PDF)蓝色链接数据简化DataSimp关注后下方菜单项有文章分类页作者:秦陇纪2010数据简化DataSimp汇译编来源:百度百科、维基百科、中本聪、微信图文等,引文出处请看参考文献。版权声明:技术科普文章仅供学习研究,公开资料©版权归原作者,请勿用于商业非法目的。如出处有误或侵权,请联系沟通、授权或删除事宜、投稿邮箱DataSimp@126.com强烈谴责超市银行、学校医院、政府公司倒卖公民姓名、身份证号、手机号、住址隐私数据!数据简化DataSimp科学Sciences知识简化”新媒体聚集专业领域一线研究员;研究技术时也传播知识、专业视角解释和普及科学现象和原理,展现自然社会生活之科学面。秦陇纪发起,未覆盖各领域,期待您参与~欢迎转发。

目录

区块链BlockChain技术概述 (16476)1

01区块链BlockChain技术概述(5600)1

02维基百科:区块链技术指南(3131)6

03中本聪(Satoshi Nakamoto)比特币白皮书:一种点对点的电子现金系统 (7208)10

04区域链技术资料网址汇总 (436)18

参考文献(402)19

Appx(625).数据简化DataSimp社区简介20

Appx(625).数据简化DataSimp社区简介

信息社会之数据、信息、知识、理论持续累积,远超个人认知学习时间、精力能力。应对大数据时代数据爆炸、信息爆炸、知识爆炸,解决之道重在数据简化(Data Simplification)简化减少知识、媒体、社交数据使信息、数据、知识越来越简单,符合人与设备的负荷数据简化2018年会议(DS2018)聚焦数据简化技术(Data Simplification techniques):对各类数据从采集、处理、存储、阅读、分析、逻辑、形式等方面做简化应用于信息数据系统、知识工程、各类数据库、物理空间表征、生物医学数据,数学统计、自然语言处理机器学习技术、人工智能等领域。欢迎投稿数据科学技术、简化实例相关论文提交电子(最好PDF格式)填写申请表加入数据简化DataSimp社区至少一篇数据智能、编程开发IT文章:高质量原创翻译美欧数据科技论文社区网站义工或完善S圈型黑白静态和三彩色动态社区LOGO图标论文投稿加入数据简化社区详情访问www.datasimp.org社区网站网站维护请投会员邮箱DataSimp@163.com关注公众号“数据简化DataSimp”留言或加微信QinlongGEcai(备注:姓名/单位-职务/学校-专业/手机号)免费加入投稿群“科学Sciences学术文献读者微信群等。长按下识别图中二维码关注三个公众号(搜名称也行,关注后底部菜单有文章分类页链接

数据技术公众号数据简化DataSimp”:

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

科普公众号科学Sciences”:

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

社会教育知识公众号知识简化

区块链BlockChain技术概述(前边是铺垫,重点看中本聪论文)

(转载请写出处©秦陇纪2010-2018汇译编,欢技术、传媒伙伴投稿、加入数据简化社区!数据简化DataSimp、科学Sciences、知识简化投稿反馈邮箱DataSimp@126.com

普及科学知识,分享朋友圈