记账技术历史悠久,现代复式记账系统是由意大利数学家卢卡·帕西奥利,1494年在《Summadearithmetica,geometrica,proportionietproportionalità》一书中最早制定。复式记账法的基石是资产负债表等式,又称为会计恒等式。
即任何一项经济业务的发生,都会引起资产和负债的至少两个项目发生增减变动,而且增减的金额相等
复式记账法对每一笔账目同时记录来源和去向,首次将对账验证功能引入记账过程,提升了记账的可靠性。
从这个角度来看,区块链是首个自带对账功能的数字记账技术实现:在所有的交易都是通过一种有序的数据「块」进行登记,这个记录就被成为区块链。区块链是一个公共的分布式总账!更确切的说应该叫分布式的冗余的链式总帐本方案。
包含一个分布式数据库分布式数据库是区块链的物理载体,区块链是交易的逻辑载体,所有核心节点都应包含该条区块链数据的全副本区块链按时间序列化区块,且区块链是整个网络交易数据的唯一主体区块链只对添加有效,对其他操作无效基于非对称加密的公私钥验证记账节点要求拜占庭将军问题可解/避免共识过程(consensusprogress)是演化稳定的,即面对一定量的不同节点的矛盾数据不会崩溃。共识过程能够解决double-spending问题
比特币使用UXTO模型,以太坊和比特股使用账户余额模型。
UXTO模型:此模型表达了一种转移的概念,即任何产生的新币,在以后的生命周期中,只有转移,没有消亡,转移实质上是由加密算法的签名与验证控制的:
区块链基础设施提供商Bware Labs将于5月30日推出INFRA代币:5月28日消息,MN Trading CEO兼创始人Micha?l van de Poppe发推称,其投资的加密货币之一INFRA将于下周(5月30日)上线。据其介绍,INFRA背后团队Bware Labs是面向Web 3.0构建者的一站式解决方案提供商,此前已推出一个名为Blast的去中心化API平台,支持多链。
此前3月消息,区块链基础设施提供商Bware Labs宣布推出其区块链API平台的主网Blast。据介绍,使用Blast,开发人员可以通过几个简单的步骤让RPC、REST和WebSocket访问区块链网络。[2023/5/28 9:47:26]
账户余额模型:账户余额模型摒弃了这种强验证的账户模型,即账户余额回归到数字加减,这样做提升了交易的效率。
区块链的定义:
区块链是由包含交易信息的区块从后向前有序链接起来的数据结构。它可以被存储为flatfile,或是存储在一个简单数据库中。
区块被从后向前有序地链接在这个链条里,每个区块都指向前一个区块。区块链经常被视为一个垂直的栈,第一个区块作为栈底的首区块,随后每个区块都被放置在其他区块之上。用栈来形象化表示区块依次堆叠这一概念后,我们便可以使用一些术语,例如:“高度”来表示区块与首区块之间的距离;以及“顶部”或“顶端”来表示最新添加的区块。
对每个区块头进行SHA256加密哈希,可生成一个哈希值。通过这个哈希值,可以识别出区块链中的对应区块。同时,每一个区块都可以通过其区块头的“父区块哈希值”字段引用前一区块。也就是说,每个区块头都包含它的父区块哈希值。这样把每个区块链接到各自父区块的哈希值序列就创建了一条一直可以追溯到第一个区块的链条。
虽然每个区块只有一个父区块,但可以暂时拥有多个子区块。每个子区块都将同一区块作为其父区块,并且在“父区块哈希值”字段中具有相同的哈希值。一个区块出现多个子区块的情况被称为“区块链分叉”。区块链分叉只是暂时状态,只有当多个不同区块几乎同时被不同的矿工发现时才会发生。最终,只有一个子区块会成为区块链的一部分,同时解决了“区块链分叉”的问题。尽管一个区块可能会有不止一个子区块,但每一区块只有一个父区块,这是因为一个区块只有一个“父区块哈希值”字段可以指向它的唯一父区块。
动态 | 美盈森:不存在利用区块链等概念炒作股价配合股东减持的情形:10月30日消息,美盈森回复关注函称,公司参股甲骨文超级码、进入工业大麻产业领域并实现在人造肉、蛋白粉等产品中的应用,是公司在主营业务稳健发展的情况下,基于包装产业的升级及健康食品发展前景,为提高公司盈利水平,提升公司价值,实现广大投资者权益最大化的前瞻性布局和有益探索,公司发展新产业创造价值并积极践行社会责任的目标明确,不存在利用工业大麻、人造肉、区块链等概念炒作股价配合股东减持的情形。[2019/10/30]
由于区块头里面包含“父区块哈希值”字段,所以当前区块的哈希值因此也受到该字段的影响。如果父区块的身份标识发生变化,子区块的身份标识也会跟着变化。当父区块有任何改动时,父区块的哈希值也发生变化。父区块的哈希值发生改变将迫使子区块的“父区块哈希值”字段发生改变,从而又将导致子区块的哈希值发生改变。而子区块的哈希值发生改变又将迫使孙区块的“父区块哈希值”字段发生改变,又因此改变了孙区块哈希值,等等以此类推。一旦一个区块有很多代以后,这种瀑布效应将保证该区块不会被改变,除非强制重新计算该区块所有后续的区块。正是因为这样的重新计算需要耗费巨大的计算量,所以一个长区块链的存在可以让区块链的历史不可改变,这也是比特币安全性的一个关键特征。
你可以把区块链想象成地质构造中的地质层或者是冰川岩芯样品。表层可能会随着季节而变化,甚至在沉积之前就被风吹走了。但是越往深处,地质层就变得越稳定。到了几百英尺深的地方,你看到的将是保存了数百万年但依然保持历史原状的岩层。在区块链里,最近的几个区块可能会由于区块链分叉所引发的重新计算而被修改。最新的六个区块就像几英寸深的表土层。但是,超过这六块后,区块在区块链中的位置越深,被改变的可能性就越小。在100个区块以后,区块链已经足够稳定,这时Coinbase交易可以被支付。几千个区块后的区块链将变成确定的历史,永远不会改变。
区块链解决了啥问题?
根本还是解决买卖间彼此不信任的问题,在不依赖传统机构建立信任的情况下,成功完成一笔安全交易。
能够提供一个可信任的环境,使
声音 | 国家电网董事长:区块链等技术能为电力物联网提供有效的信息和数据支撑:3月8日国家电网有限公司董事长、党组书记寇伟表示,国家电网公司当前最紧迫、最重要的任务就是加快推进泛在电力物联网建设。泛在电力物联网,就是围绕电力系统各环节,充分应用移动互联、人工智能等现代信息技术、先进通信技术,实现电力系统各环节万物互联、人机交互。通过广泛应用区块链、大数据、物联网、边缘计算等信息技术和智能技术,汇集各方面资源,为规划建设、生产运行、经营管理、综合服务、新业务新模式发展、企业生态环境构建等各方面,提供充足有效的信息和数据支撑。[2019/3/10]
每个节点交换数据过程不被篡改;交换历史记录不可被篡改;每个节点的数据会同步到最新数据,且承认经过共识的最新数据;基于少数服从多数的原则,整体节点维护的数据本身客观反映了交换历史。拜占庭将军问题延伸到互联网生活中来,其内涵可概括为:在互联网大背景下,当需要与不熟悉的对手方进行价值交换活动时,人们如何才能防止不会被其中的恶意破坏者、迷惑从而做出错误的决策。进一步将拜占庭将军问题延伸到技术领域中来,其内涵可概括为:在缺少可信任的中央节点和可信任的通道的情况下,分布在网络中的各个节点应如何达成共识。区块链技术解决了闻名已久的拜占庭将军问题——它提供了一种无需信任单个节点、还能创建共识网络的方法。
维护一条不断增长的链,只可能添加记录,而发生过的记录都不可篡改;通过密码学的机制来确保交易无法抵赖和破坏,并尽量保护用户信息和记录的隐私性所有的结点都有能力去用计算能力投票,从而保证了得到承认的结果是大多数人公认的结果,不会因为少数结点作恶,而修改结果区块链的核心技术理论是啥?
去中心化,或者说多中心化,无需集中的控制而能达成共识,实现上尽量分布式。
从这个角度上看,区块链对于人类社会的意义在于,信任重新构建,而不依赖于中央银行、企业
区块链的优势在于能够用非常低的成本解决网络交易的身份识别和个人征信,以及使用点对点的交易避免了传统集中式的清算结构,从而能够大大提高金融系统甚至整个经济体系的运行效率
记账货币可以记载账务、价格以及一般购买力,是货币理论最基本的概念。从严格意义上说,货币只有在于记账货币的关系中才能存在。——凯恩斯
现场 | 嘉楠耘智区块链事业部负责人邵建良:比特币是杀手级应用 ?:金色财经现场报道,2018年8月10日,在2018纷智金融科技峰会(香港)上,嘉楠耘智区块链事业部负责人、比升资本创始人邵建良指出:竞争的赛道需要更多人加入才能把行业做得更好。如果我们对于区块链技术的理解不到位,那么可能只是有了牵强的区块链概念。目前,没有区块链技术,某些领域也能做得很好。我们探索区块链技术能与哪些领域相结合是非常有意义的,金融非常需要信任机制来保证我们可以相信彼此并进行高价值的交易。比特币是一个杀手级的应用,未来会渗透到保险、证券等领域中,未来还会延伸至知识产权等领域。[2018/8/10]
比特币只是记账的表征,而区块链就是其背后的一套由信用记录以及信用记录的清算构成的体系。
信任,其实就是彼此相信对方不会做出伤害到我的欺诈和违约行为。信任的产生包含三个层面,一是对方没有欺诈的动机;二是对方有欺诈的动机却不敢或者不愿意真的去行动;三是对方不仅有动机,还真的去做出了欺诈行为,但由于各种原因,不会对我做出伤害。区块链机制这个基础协议便通过分布式的信用公正,使互不信任的节点进行大规模协作成为可能,这可以激发共享经济和协同治理的巨大潜能。在这样一个去中心化的经济系统内部,在没有任何可信第三方担保的情况下,却没有发生过严重的欺诈行为,其主要原因在于,欺诈行为的成本往往远大于预期的收益。
显然,当欺诈的行为所要付出的成本远大于其所能带来的收益时,并且成本和收益都经过了精确的计算时,任何一个理性的参与者都不会有欺诈的动力。
以区块链为基础,人们正在互联网上建立起一套信用互联网治理机制。包括:
工作量证明互联网共识机制智能合约机制互联网透明机制密码学,非对称加密和公私钥等技术等区块链技术涉及的关键点包括:去中心化、去信任、集体维护、可靠数据库、时间戳、非对称加密等。
区块链最大特点是啥?
区块链是将所有数据都存储在每一个节点存储。每个节点的数据一致性,区块链是一个开放的数据库,任何服务器都可以加入区块链,并成为其中的一个节点,每个节点都保存着区块链的全部数据,而且是相同的
金色独家 北京大成律师事务所合伙人肖飒:篡改区块链数据在我国早已有相关法律规定:近日,密歇根州提交新法案:篡改区块链数据或面临14年以下监禁,金色财经特邀请北京大成律师事务所合伙人肖飒对此事件进行解读,肖飒表示:篡改区块链数据在美国将属于犯罪行为,而在我国已经是犯罪行为。违反国家规定,对计算机信息系统功能进行删除、修改、增加、干扰,造成计算机信息系统不能正常运行,后果严重的,处五年以下有期徒刑,特别严重的,处五年以上有期徒刑。也就是说,最高刑期为十五年。违反国家规定,对计算机信息系统中存储、处理或传输的数据和应用程序进行删除、修改、增加的操作,后果严重的,依照前款定罪处罚。如果修改区块链数据,导致共识机制出现问题,或者影响了链上其他应用程序,造成了财产权损失或者数据灭失,则可能构成我国刑法第286条破坏计算机信息系统罪。[2018/6/14]
如何保证全网交易数据客观记录并且不可篡改
,比特币使用工作量证明PoW,以太坊即将转换为权益证明PoS,比特股使用授权权益证明DPoS。
以上这些算法我称之为“经济学”的算法,所谓经济学的算法,是指让作弊成本可计算,且让作弊成本往往远大于作弊带来的收益,即作弊无利可图,通过这种思想构造一个用于节点之间博弈的算法,并使之趋向一个稳定的平衡。
相对应的我们还有计算机领域的分布式一致性算法,例如Paxos、Raft,我也称之为传统分布式一致性算法。他们之间的最大区别是:
系统在拜占庭将军情景下的可靠性,即拜占庭容错。然而无论是Paxos还是Raft算法,理论上都可能会进入无法表决通过的死循环(尽管这个概率其实是非常非常低的),但是他们都是满足safety的,只是放松了liveness的要求,PBFT也是这样。
下面是一些传统分布式一致性算法和区块链共识过程的异同点:
相同点:
Appendonly强调序列化少数服从多数原则分离覆盖的问题:即长链覆盖短链区块,多节点覆盖少数节点日志不同点:
传统分布式一致性算法大多不考虑拜占庭容错(ByzanetinePaxos除外),即假设所有节点只发生宕机、网络故障等非人为问题,并不考虑恶意节点篡改数据的问题;传统分布式一致性算法是面向日志的,即更通用的情况,而区块链共识模型面向交易的,所以严格来说,传统分布式一致性算法应该处于区块链共识模型的下面一层。如何确保每个节点数据一致的呢?
每个区块就是一个哈希值,哈希就是一串字母加数字,可以表示任何的事情。每个区块链都需要记录上一个区块链、生成时间、以及本区块链的一些信息。一旦一个区块链被修改了,那么它自己的哈希值就变了,因为下一个区块需要记录上个区块的哈希值,所以下一个区块的哈希也需要变化,依次类推,也就是一个区块链变了,全网都需要同步。所以每个节点都保存着完整的区块链,所以做到了节点间的一致性。
基本原理
区块链的基本原理理解起来并不难。基本概念包括:
交易:一次操作,导致账本状态的一次改变,如添加一条记录;
每一位电子货币所有者通过对前一次交易和货币接受者的公钥签署一个hash数字签名,然后发送给下一位所有者。收款人使用付款人的公钥校验,是否是正确的付款人发送由于交易中有收款人的公钥,所以只有收款人使用自己的私钥才能解锁并将该货币传递下去
但以上过程仍然有问题,无法解决双重支付问题,即货币所有者将同一电子货币签名后发送给多个收款人。传统金融:通过中介机构判断并确认用户是否进行双重支付比特币:通过公开宣布货币的所有交易,形成唯一公认的历史交易序列,由系统内所有参与者认同交易个人点评:通过非对称加密的公私钥,可以解决虚拟货币的归属权问题,但是同一个货币可以由归属人付给多个人,也就是双重支付,仅使用加密在货币体系里是不够的。
时间戳服务器(Timestampserver)。对区块形式存在的一组数据实施随机散列(HASH)加上时间戳,将区块连成一个链条,形成区块链
工作量证明(Proof-of-Work)计算一个随机数(Nonce),将随机数与区块头一起计算随机散列值,该散列值要满足以N个0开头,此即为“挖矿”的内部原理。
工作量证明的用途:保证区块链的不可篡改性,由于区块形成了链条,如果要修改区块,必须重新完成之前所有的工作量,所以随着区块链高度越高,越旧的区块越难以篡改。工作量证明的本质是一CPU一票,如果大多数的CPU为诚实节点,那么正确的链条将以最快的速度延长。
模型能保证账本的顺序和真实性,但是无法阻止人为的创造多个账本,而这些账本中只能有一个是被大家认可的,所以必须创造一种共识机制。比特币的共识机制即为工作量证明,即工作量最大的那个账本是大家公认的正确账本。
区块:记录一段时间内发生的交易和状态结果,是对当前账本状态的一次共识
链:由一个个区块按照发生顺序串联而成,是整个状态变化的日志记录。
区块链架构层面
一个区块链至少分为三层
最底层是一些通用的基础模块,比如基础加密算法,网络通讯库,流处理,线程封装,消息封装与解码,系统时间等中间一层是区块链的核心模块,一般包含了区块链的主要逻辑,如P2P网络协议,共识模块,交易处理模块,交易池模块,简单合约或者智能合约模块,嵌入式数据库处理模块,钱包模块等等最上面一层,往往都是基于JsonStandardRPC的交互模块,基于Json-RPC,我们还可以做出更好的UI界面,也可以是一个web-service。如果区块链支持智能合约,可能还要分更多的层,比如增加BaaS层,区块链上的智能合约提供自治的服务
以上无论哪种设计,一般都要从P2P网络协议作为切入,作为一个P2P钱包,既要提供Service也要提供Client,作为Service依赖P2P网络协议,作为Client依赖Json-RPC。
编程实现
比特币就是用C++语言开发的,而且目前为止,没有比比特币更加成功的区块链产品。比特币官方客户端钱包用的Qt,第三方钱包有Python语言开发的,特别是第三方整理的开发库很多是Nodejs设计的
C/C++:github.com/bitcoinNodejs/Javascript:github.com/EbookcoinPython:https://github.com/ethereum/pyethappGo:https://github.com/hyperledger个人觉得:区块链作为大众交易货币,困难点在于,
交易速度慢虽然是区中心,但是现在算力中心化,以后就变成寡头混战了丢掉密钥后,无法挽回损失违背宏观经济学,财富增加,货币等量增加(少了通缩,多了通胀).参考链接:
对"复式记账原理"的探讨fanwen.jianlimoban.net/625708/
中式簿记改良启示fanwen.jianlimoban.net/1044823/
https://www.zhihu.com/question/31112808/answer/350659756
https://www.zhihu.com/question/31112808/answer/309593837
转载本站文章《区块链技术原理、发展历史根由、应用场景》,请注明出处:https://www.zhoulujun.cn/html/theory/ComputerScienceTechnology/blockchain/8169.html
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。