区块链 - 技术教程文章

默克尔树(merkle tree)——就是hash树,比特币区块链里用于校验完整性的【图】

区块链技术架构分析(3)-默克尔树(merkle tree)默克尔树(Merkletree,MT)是一种哈希二叉树,1979年由RalphMerkle发明。在计算机科学中,二叉树是每个节点最多有两个子树的树结构,每个节点代表一条结构化数据。通常子树被称作“左子树”(leftsubtree)和“右子树”(right subtree)。二叉树常被用于实现数据快速查询。二叉树如下图所示。A、Merkle树结构由一个根节点(root)、一组中间节点和一组叶节点(leaf)组成。叶节点...

[老k说区块链]区块链中的共识(1)— 免信任的共识机制

老k,柏链道捷CTO、清华阿尔山区块链研究中心高级工程师,超过17年的系统软件开发经验,在操作系统、编译器、虚拟机和符号执行方面都有实战经验。主持开发多个开眼项目,目前主要从事区块链底层系统开发工作。这个系列的文章主要谈一下我对区块链中的共识机制的理解,欢迎跟大家一起交流、探讨。前言当今区块链的概念和产业已经遍布神州大地,创业言必区块链,在各种咖啡厅中你都可以听到周围的人谈论区块链,大部分从业者对区块链...

区块链:技术驱动金融

在一个不确定的世界里我们无法准确预测未来,但获取更多的信息比无知和莽撞更有意义。现在比特币一成为共识,共识决定价值。  (一)一个中心:“信任”合作不一定建立在感情的基础上,敌对的双方也可能产生信任。区块链技术目的:通过制度设计让本来互不信任的主体达成信任和守护信用。  (二)第一个基本点:“安全”防止食言:一个哈希函数就相当于一个承诺。防止伪造:通过私钥和公钥两个参数构成你的签名。防止赖账:只要...

孤荷凌寒自学python第111天区块链025eth智能合约004

【主要内容】今天先继续理解使用Solidity编程语言来发布一个智能合约的基本概念,将昨天理解得不很透彻的地方通过阅读其它博文进行深入理解,学习共用时34分钟。(此外整理作笔记花费了约70分钟)今天的学习显得非常凌乱,感觉像是在漫无目的的不断看别人的代码案例,不过这种泛学,确实激发了我的灵感,因此发现从别人的代码开始看起的学习方式是比较适合入门的。详细学习过程见文末学习过程屏幕录像。 【学习笔记】一、修改整理并...

区块链学习一基本知识【图】

一、什么是区块链在符合现实社会法律法规前提下,可治理的,依赖于密码学算法和博弈经济性设计,基于共识算法,对发生在主体间的价值创造,价值转移,价值交换,以及涉及到各个价值主体由机器驱动的业务流程,在多个对等的主体间形成的共识,从而达到共享业务状态,共享价值状态,即共享账本,加速资源配置和价值流通,最终提高生产力的目的。区块链的本质是共识,共识才能形成公认的价值。 二、区块链的共性1、共识(consensus)区...

从混乱无序到标准统一,可信区块链如何扭转乾坤?【图】

9月4日,ICO被监管叫停,并被定义为非法公开融资行为。一时风光无限的首次货币发行被打入牢底,永世不得见天日。对长期被收割的韭菜们来说,这实在是一件大快人心的好事。不过,正因如此,支持比特币等虚拟货币的底层技术——区块链也被不少不明就里的人拉入黑名单。在一个技术无罪的时代中,区块链技术被牵连实在是不应该。然而,区块链市场的确存在诸多乱象,不但造成了公众对这项技术的误解,也阻碍了区块链技术的普及和应用。区...

区块链学习(4)交易(二)【图】

上次大致讲了比特币的交易模式。接着讲讲比特币的交易。比特币的交易验证引擎依赖于两类脚本来验证比特币交易:一个锁定脚本和一个解锁脚本。锁定脚本锁定了一个输出值,同时它明确了今后花费这笔输出的条件。锁定脚本往往含有一个公钥(即比特币地址)。解锁脚本是解开输出上设定的花费条件的脚本,同时它将允许输出被消费。解锁脚本是每一笔比特币交易输入的一部分,而且含有一个通过用户的私钥生成的数字签名。每次交易都会通过...

1.3.1 区块链中的加密算法——Hash算法(更新)【代码】【图】

为了为保证存储于区块链中的信息的安全与完整,区块链中使用了包含密码哈希函数和椭圆曲线公钥密码技术在内的大量的现代密码学技术,同时,这些密码学技术也被用于设计基于工作量证明的共识算法并识别用户。  在前边的文章中已经系统的讲述了密码学中的哈希算法,在本节,将会给大家介绍Hash算法在区块链中的应用! 概念回顾:  哈希函数:是一类数学函数,可以在有限合理的时间内,将任意长度的消息压缩为固定长度的二进制串,...

速度提升50%!宜信区块链Blockworm BaaS平台的架构与特性解析【图】

2008年,中本聪发表了一篇题为《比特币:点对点的电子现金系统》的论文,首次提出了关于区块链概念的描述。从2008年至今,区块链技术因其去中心化、不可篡改、可追溯等技术特性,获得了越来越多的关注,也逐渐被应用于各个领域。2018年,工业和信息化部信息中心编写发布了《2018年中国区块链产业白皮书》,白皮书中提到,区块链作为一项颠覆性技术,正在引领全球新一轮技术变革和产业变革,有望成为全球技术创新和模式创新的“策源...

区块链开发(五)区块链ICO:互联网进化的驱动力

区块链开发(五)区块链ICO:互联网进化的驱动力李赫 2016年10月8日由于区块链不可篡改的特性,在众多区块链组织和公司的共同努力下,互联网将逐步从中心化的信任进化到由算法、数据为核心的去中心化信任。随着中心化的信任中介被逐渐削弱和替代,互联网的运作方式将被以区块链为代表的系统所改变。因此,区块链不仅是一种技术,更是一个关于互联网进化的故事,尽管这个故事还有些遥远,但它已经有了萌芽和初步的发展。区块链ICO,...

区块链共识机制及其迭代【图】

共识,Consensus,故名思义,共同的认识,共识问题研究的就是多个成员如何达成一致,典型的比如投票选举。区块链是一种去中心化的分布式账本系统,区块链的共识问题实际上来源于分布式系统的一致性问题。分布式一致性问题区块链是一种去中心化的分布式账本系统,由于点对点网络下存在较高的网络延迟,各个节点所观察到的交易事务先后顺序不可能完全一致。 因此区块链系统需要设计一种机制对在一定的时间内发生的事务的先后顺序进行...

区块链技术公司区块链给医疗行业带来的影响

在药品的生产、运输和交付过程中,仅靠制药公司进行实时追踪难免捉襟见肘,这样造假者便有了可乘之机。 其实假冒伪劣问题不仅存在于药品,医疗器械也不能幸免。世界卫生组织(WHO)的一项评估显示,市场上流通的医疗器械中有8%是假冒产品。假冒伪劣药品和医疗器械不仅扰乱市场,损害企业的合法权益,而且给消费者带来了巨大的人身风险。各国利用法律和行政手段对制假售假严厉打击,但是由于巨额利益驱使,还是有不法分子铤而走险,这...

《区块链100问》第57集:股份授权证明机制是什么?【图】

股份授权证明机制,简称DPoS,类似于董事会投票,持币者投出一定数量的节点,代理他们进行验证和记账。为了激励更多人参与竞选,系统会生成少量代币作为奖励。比特股、点点币等数字资产都采用该方式。  DPoS有点像议会制度或人民代表大会制度。如果代表不能履行他们的职责,比如轮到他们记账时,他们没能完成则会被除名,网络会选出新的节点来取代他们。  DPoS的每个客户端都有能力决定哪些节点可以被信任。相较PoW(工作量证明...

区块链跨界应用——对接司法鉴定,服务民生【图】

近年来,随着区块链技术的完善 ,许多的平台将区块链技术运用到不同的服务中。如平安、招商银行、京东、蚂蚁金融 等都在区块链技术减低金融、慈善、供应链等领域的信任成本。 浙江鉴信科技有限公司是第一个将区块链技术与司法鉴定相结合,由杭州千麦检测技术有限公司、浙江数秦科技有限公司联合开发的基于区块链技术搭建的鉴定咨询平台--千信网。平台专业的司法鉴定业务,提供专业咨询服务,实现在最短时间内把相关证据上传到平台上...

区块链技术心得

区块链发展到今天,能在今天这个节点产生如此大的轰动效应,不得不说比特币功不可没!中本聪功不可没!提到中本聪,在这不得不多说两句,本来我以为他一定是个什么大公司的老板,在我了解他之后,我非常震惊:他原来是个穷困潦倒的人。网上对他的介绍是,他是个物理学家,工程师。他本来完全可以借助比特币成为一个亿万富翁,可是他却让人不可思议的放弃了,一夜之间突然消失在人们的视线之外。我在想,一个人来到这个世界,每天忙...

《区块链100问》第68集:硬分叉之以太经典【图】

以太坊(ETH)和以太经典(ETC)是硬分叉的典型案例。  The DAO计划基于以太坊智能合约建立一个众筹平台,于2016年5月正式发布,截止当年6月,募集资金超过1.6亿美元。之后,The DAO被黑客利用智能合约的漏洞,转移了市值五千万美元的以太币。为了挽回投资者资产,以太坊社区投票表决决定将更改以太坊代码,希望索回资金。为此,以太坊在第1920000区块进行硬分叉,回滚所有以太币(包括被黑客占有的)。  但是,有一部分人认为...

区块链技术基础语言(三十二):Go语言网络编程(下)【图】

本文紧接上文所述,讲解socket编程和HTTP编程。一、socket编程在上一节我们介绍了网络体系的五层模型,介绍了每层模型所遵守的协议。TCP/IP是一个协议族,它由网络层的IP协议和传输层的TCP协议组成,其中网络层建立了主机到主机的通信,传输层建立了端口到端口的通信。只要确定主机和端口,就能实现程序之间的交流。因此,Unix系统把主机+端口,叫作“套接字(socket)”,而socket本质上是编程接口(API),它是对TCP/IP的封装。有了...

区块链技术语言(二十三)——Go语言面向对象:方法【图】

封装是面向对象三大特性之一。封装的好处,一个是增加代码内聚性,就是将数据和对数据的操作封装在一起,提高可复用性和可维护性;还有就是信息隐藏,就是把不该暴露的信息藏起来,通过访问控制来隐藏数据,不被外界干扰。也就是说,一个对象就是一个封装了数据和操作这些数据的代码的逻辑实体。Go语言没有封装这个名词,但它通过方法实现了封装的特性。一、Go语言方法方法,本质上是一个函数。与普通函数的格式有一点不同,它在关...

[区块链] 拜占庭将军问题

接触区块链的同学,多少都听说过拜占庭将军问题,经常看到或听到某某区块链使用某某算法解决了拜占庭将军问题,那么究竟什么是拜占庭将军问题呢?什么是拜占庭将军问题:  “拜占庭将军问题”也被称为“拜占庭容错”。  拜占庭将军问题是Leslie Lamport(2013年的图灵讲得住)用来为描述分布式系统一致性问题(Distributed Consensus)在论文中抽象出来一个著名的例子。  这个例子大意是这样的:  拜占庭帝国想要进攻一个强...

区块链和数据库,技术到底有何区别?【图】

区块链和数据库,技术到底有何区别?  区块链其实是一种数据库,因为他是数字账本,并且在区块的数据结构上存储信息。  关于数据库和区块链,总会有很多的困惑。区块链其实是一种数据库,因为他是数字账本,并且在区块的数据结构上存储信息。数据库中存储信息的结构被称为表格。但是,区块链是数据库,数据库可不是区块链。他们虽然都是存储信息的,但是设计却完全不同,所以不可以互换。而且,这两者存在的目标也不同,所以对...

[币严BIZZAN区块链]Java生成ETH钱包助记词、私钥、地址【代码】【图】

本文主要介绍在Java工程中如何生成ETH钱包的助记词、私钥、地址。一、在之前创建的spring boot 项目中的 pom.xml文件中加入需要的依赖<dependency><groupId>org.bitcoinj</groupId><artifactId>bitcoinj-core</artifactId><version>0.14.7</version></dependency><dependency><groupId>org.web3j</groupId><artifactId>core</artifactId><version>3.6.0</version></dependency>二、创建一个Wallet.java类1、定义一个path路径常量/*...

认识一下区块链

兴趣所致入门摸一下炽手可热区块链领域,整理一下概念。我从一个哈希函数的概念入手f(x) = y一个接受输入值的函数,哈希函数需要输入数据/数字/文件等输出一个通常为16进制的哈希值哈希函数不可逆,无法通过输出确定输入,除非遭受暴力攻击(尝试所有可能的输入)这就关乎到下面BlockChain的加密算法了区块链概念一种去中心化的分布式账本数据库,数据存储的每个节点都同步赋值整个账本可帮助多个节点达成共识去记录和token相关的事...

区块链开发_以太坊多重签名【图】

假想这么一个场景:有一天,你的朋友A来找你开公司,但是钱不够,希望你能在找一个人入伙。然后,你就找了你另一个朋友C。你们三个人分别出了500W开公司。但是由于公司资金流动性大,每次拿钱都要三个人分别拿钱,很不方便。经过你们协商,就让你的朋友A管理公司财政。结果,不久你的朋友A就带着公司的钱跑路了。估计,你的朋友C会把你点天灯。 所以,以太坊上有一个很重要的功能,就是多重签名。就是,建立一个合约钱包,这个钱包...

基于区块链资产交易系统【图】

基于区块链资产交易系统今天先到这儿,希望对您 区块链, 技术领导力, 企业管理,系统架构设计与评估,团队管理, 项目管理, 产品管理,团队建设 有参考作用 , 您可能感兴趣的文章: 领导人怎样带领好团队构建创业公司突击小团队国际化环境下系统架构演化微服务架构设计视频直播平台的系统架构演化微服务与Docker介绍Docker与CI持续集成/CD互联网电商购物车架构演变案例互联网业务场景下消息队列架构互联网高效研发团队管理演进之一...

区块链教程Fabric1.0源代码分析ECDSA椭圆曲线数字签名算法【代码】

兄弟连区块链教程Fabric1.0源代码分析ECDSA椭圆曲线数字签名算法,2018年下半年,区块链行业正逐渐褪去发展之初的浮躁、回归理性,表面上看相关人才需求与身价似乎正在回落。但事实上,正是初期泡沫的渐退,让人们更多的关注点放在了区块链真正的技术之上。 Fabric 1.0源代码笔记 之 ECDSA(椭圆曲线数字签名算法)1、椭圆曲线算法概述1.1、无穷远点、无穷远直线、射影平面平行线相交于无穷远点;直线上有且只有一个无穷远点;一组...

区块链技术框架发展特点:比特币/以太坊/Fabric【图】

区块链1.0架构 比特币系统(2009)产生概念:去中心电子记账系统/分布式账本密码学挖矿/共识机制 区块链2.0架构 以太坊(2013)产生概念(上一代基础上新增/改进):智能合约/EVM虚拟机/Gas不同类型帐号(外部账户/合约账户)改进的PoW共识 区块链3.0架构 Hyperledger及其他除货币以外的领域(2015)产生概念(上一代基础上新增/改进):成员管理,接入认证可拔插共识机制:PBFT/Paxos/Raft分区/channel更好的性能与扩展性 原文:https://www....

区块链

区块链最大的作用是解决了闻名已久的拜占庭将军问题。什么是拜占庭将军问题呢?话说在东罗马帝国时期,拜占庭城邦非常富庶,它的周围有十个城邦,都希望攻占拜占庭。但拜占庭的防御非常强大,只有十个邻居的一半以上同时进攻,才能攻破它。这十个城邦之间也互相觊觎对方的财富。如果少于一半的城邦攻打拜占庭,这次攻打就会失败,且被拜占庭击败后,失败的城邦就会被其他城邦吞并。十个城邦之间约定攻击时间的唯一途径是通过信使来...

区块链公司谈区块链技术对未来行业的影响【图】

2017年是比特币和其他加密货币蓬勃发展的一年,而2018年是区块链对技术世界颠复迈出的第一步。很多建立在区块链上的项目都在2019年发布他们的产品,并为区块链开发新的功能,我们将会看到很多不同的应用。与物联网的集成分散的物联网方法可以解决集中式模型的许多问题。采用一种标准化的对等通信模型来处理设备之间数千亿的交易,将大大减少与安装和维护大型集中数据中心相关的成本,并将在构成物联网的几十亿台设备上分配计算和存...

蚂蚁区块链BaaS平台应用开发指南(四):JavaSDK的接入【代码】【图】

在尝试本节的样例代码前,需要保证目标智能合约已经按照蚂蚁区块链BaaS平台应用开发指南(三):从一个简单合约开始中的做法编译部署成功。基于JavaSDK的接入在上一节里,我们通过Cloud IDE部署了一个最简单的智能合约,并且通过Cloud IDE成功的调用了合约的方法。拿传统应用的开发来类比,这就像在数据库上增加了一个存储过程,然后通过外部应用来触发这个存储过程的执行。那么,对于区块链来说,外部应用又如何来调用部署好的智能...

Node.js区块链开发pdf

下载地址:网盘下载开发人员。本书涉及前端、后台的方方面面,无论是前端开发人员,还是后台开发者都可以学习参考。 架构师。区块链本身是分布式、云计算的典范,本书详细描述了一款区块链产品的架构设计,他们可以通过本书学习掌握区块链是如何基于P2P网络构建复杂的自适应系统的。 高校学生、教师、科研人员等。本书内容在网络上分享的过程中,已经有大学老师作为教参用在实际教学之中,本书从概念到代码实现,理论与实践结合紧密...