比特币-架构原理

流程:

1、用户发出交易请求,放到交易请求临时池里。2、矿工不断计算下一块区块的值,计算出来后,把交易临时池的单子放到区块来。3、其他矿工停止计算,验证计算出来区块,验证包括前一区块是否匹配,计算出来的区块的账单是否正确。4、如果其他矿工验证通过,则根据此区块继续计算下一区块。以此类推。

备注:每个矿工都有完整的区块链,包含所有的账单每个用户的账户其实就是生成的一个私钥,当然你可以生成多个,然后账单上也会留存你多个私钥的交易记录。验证区块的关键是:计算出区块需要一定的算力,如果该区块后续的区块被计算出来,证明被很多算力验证过了矿工挖矿的动力:计算出新区块,有奖励,但是这个奖励会逐渐减少,只能靠手续费维持。矿工永远只跟随最长的那个区块链去继续。作弊的可能:数据作假不可能,因为每个矿工的数据都需要去验证账单,才接受你的区块和后续计算下一区块。盗号不可能,除非你有别人的私钥唯一情况是,先正常交易完比特币,拿到交易的利益后,撤销交易账单。撤销交易单的可能是,从交易单的前一区块另外开分支,然后努力计算该分支超过主分支。假如作弊计算出几个区块,然后随意修改这几个区块的数据,但是数据一改,因为账单的数据需要私钥合法加密,计算历史账单的时候,就会出错,作弊失败。修改数据不可能,只能是撤销这一方法作弊。

参考资料:http://blog.codinglabs.org/articles/bitcoin-mechanism-make-easy.html
时间: 2024-08-29 11:23:48

比特币-架构原理的相关文章

以属性为核心驱动的 全领域通用架构设计原理 (简称:属性架构原理)

以属性为核心驱动的全领域通用架构设计原理 (简称:属性架构原理) 联系方式:13547930387 Email:[email protected] 一.个人声明 我,参加工作也有5年多了,是一名普通的不能在普通的程序员,一直在使用公司自己的产品进行开发,因此技术比较菜,此设计完全是按照自己天真的想法而设计的,如果有不合理或很搞笑的地方,请轻拍,由衷的希望大家能提出宝贵的意见: 根据此设计原理我也做了一个简单的(demo)架构来支撑和验证此理论的可行性,由于技术功底不太好,有不合理之处请大家谅解,

【转】.NET/ASP.NET Routing路由(深入解析路由系统架构原理)

阅读目录: 1.开篇介绍 2.ASP.NET Routing 路由对象模型的位置 3.ASP.NET Routing 路由对象模型的入口 4.ASP.NET Routing 路由对象模型的内部结构 4.1]UrlRoutingModule 对象内部结构 4.2]RouteBase.Route.RouteCollection.RouteTable 路由核心对象模型 4.3]RouteValueDictionary.RouteData.RequestContext 路由数据对象模型 4.4]IRou

区块链:一个故事告诉你比特币的原理及运作机制

一个故事告诉你比特币的原理及运作机制 周末花时间看了一些比特币原理相关的资料,虽然不敢说把每个细节都完全搞懂了,不过整体思路和关键部分的主要原理还是比较明白.写一篇文章分享给大家.这篇文章的定位会比较科普,尽量用类比的方法将比特币的基本原理讲出来.这篇文章不会涉及算法和协议中比较细节的部分,打算后面会再写一篇程序员视角下的比特币原理,那里会从技术人员的视角对比特币系统中较为关键的数据结构.算法和协议进行一些讲解. 在这篇文章中我会给出一个虚拟的村庄叫"比特村",整个文章会以讲故事的方式

NET/ASP.NET Routing路由(深入解析路由系统架构原理)(转载)

NET/ASP.NET Routing路由(深入解析路由系统架构原理) 阅读目录: 1.开篇介绍 2.ASP.NET Routing 路由对象模型的位置 3.ASP.NET Routing 路由对象模型的入口 4.ASP.NET Routing 路由对象模型的内部结构 4.1UrlRoutingModule 对象内部结构 4.2RouteBase.Route.RouteCollection.RouteTable 路由核心对象模型 4.3RouteValueDictionary.RouteData

【转载】比特币的原理以及运作机制

转载来源: http://blog.codinglabs.org/articles/bitcoin-mechanism-make-easy.html 记录一下感谢原作者. 简单看完,发现自己有一个理解的不清楚的地方: 旷工在work的时候,是否是将要记账的交易记录到一个未知的区块,然后同时计算lucknumber, 如果在某个时间段正好计算出来这个随机数,那么这个区块应该就锁定不能再变化了吗? 然后将这个区块加入到blockchain? 然后hash一下,获取到他的hash值,然后大家再新的挖矿

appium 架构原理

Appium是在手机操作系统自带的测试框架基础上 实现的,Android和ios的系统上使用 的工具是: Android(版本>4.2):UIAutomator,Android4.2之后系统自带 的UI自动化测试工具. IOS:UIAutomation,IOS系统自带的UI自动化测试工具. Appium的架构原理如图,由客户端和服务器两部分组成,客户端与服务器通过 JSON Wire协议进行通信: Appium 在Android上基于UIAutomator实现了测试代理程序(Bootstrap.

(2)LVS+Keepalived高可用负载均衡架构原理及配置

1.keepalived 介绍2.keepalived 优缺点3.keepalived 应用场景4.keepalived 安装配置5.keepalived+lvs 高可用6.keepalived+nginx 高可用7.keepalived 切换原理8.性能优化9.常见故障 一.keepalived 介绍 1.keepalived 定义keepalived是一个基于VRRP(virtual route redundent protocol)协议来实现的LVS服务高可用方案,可以利用其来避免单点故障

Kafka架构原理

对于kafka的架构原理我们先提出几个问题? 1.Kafka的topic和分区内部是如何存储的,有什么特点? 2.与传统的消息系统相比,Kafka的消费模型有什么优点? 3.Kafka如何实现分布式的数据存储与数据读取? Kafka架构图 1.kafka名词解释 在一套kafka架构中有多个Producer,多个Broker,多个Consumer,每个Producer可以对应多个Topic,每个Consumer只能对应一个ConsumerGroup. 整个Kafka架构对应一个ZK集群,通过ZK

Hive的配置| 架构原理

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能. 本质是:将HQL转化成MapReduce程序 1)Hive处理的数据存储在HDFS 2)Hive分析数据底层的实现是MapReduce 3)执行程序运行在Yarn上 Hive架构原理 Hive安装及配置 (1)把apache-hive-1.2.1-bin.tar.gz上传到linux的/opt/software目录下 (2)解压apache-hive-1.2.1-bin.tar.gz到/o