
比特币:一个点对点的电子现金系统8btc.com|关注虚拟经济
独家赞助商:Bitcoinblogger.com作者电子邮件:【Satoshin@gmx.comwww.bitcoin.org摘要】:本文提出了一种完全采用P2P技术实现的电子现金系统,它可以使在线支付由一方直接发起,并支付给另一方,而不需要任何金融机构。中本聪通过时间戳、工作量证明机制、非对称加密、UTXO等技术的集大成,而创造了比特币区块链。
我们还学习了比特币技术上存在 3 个主要问题,分别是:
1、脚本语言太复杂,开发难度大;
2、生态系统基础差,缺乏足够的参与者;
3、脚本语言不符合「图灵完备」标准,限制了进一步用途。
最后,我们学习了新的虚拟货币的产生。因为比特币算法效率的问题,导致了莱特币区块链的诞生。另外,为了针对性地解决比特币区块链存在的扩展性不足等问题,市场又产生了太坊区块链技术。

尽管数字签名(数字签名)部分解决了这个问题,但如果您仍然需要第三方支持来防止重复支付(双重支出)、那么这样一个系统将失去其价值。我们(we)提出了一种解决方案,以使现金系统能够在对等环境中操作,并防止双重支付问题。(散列)为所有事务添加时间戳(时间戳)并将它们合并到扩展的基于随机散列的工作量证明中。工作量证明链用作事务记录,除非重新完成所有的工作量证明,否则不能改变最长的链,最长的链不仅用作观察到的事件序列,(序列)并被视为来自最大的CPU计算能力池只要大多数CPU计算能力不打算在对整个网络的攻击中合作,诚实的节点将产生超出攻击者的最长链.系统本身需要很少的基础设施.信息尽可能在整个网络中传播,和重新加入网络,并采用最长的工作量证明链作为在该节点离线时发生的事务的证明。
1.几乎所有网上交易都依赖金融机构作为可信赖的第三者处理电子付款资料。虽然这些系统在大多数情况下运作良好,它们仍然固有地受制于以信贷为基础的模式(基于信任的模型)。人们不可能实现完全不可逆的交易,因为金融机构不可避免地会介入协调纠纷。金融中介的存在也会增加交易成本,限制实际最低交易规模和日常小额支付交易,而且潜在的损失是很多商品和服务无法退货,在没有不可逆支付手段的情况下,由于退款的可能性,互联网商务受到很大限制。
它需要交易双方的信任,此外,由于商家也必须谨慎对待自己的客户,会向客户索要完全不必要的个人信息,在实际商业实践中,一定比例的欺诈客户也被认为是不可避免的,相关损失作为销售费用处理,在实物现金的情况下,因为目前还没有第三方信用中介机构,因此非常需要一种基于密码而不是基于信用的电子支付系统,允许任何两方同意直接付款而无需第三方中介的参与。对于那些希望保护买方的人来说,在这种环境下建立通常的第三方担保机制是容易和愉快的.本文提出了一种对等分布式时间戳服务器,用于按时间顺序生成和记录电子交易凭证,以解决双重支付问题.只要诚实节点控制的计算能力之和,系统的安全性超过了合作攻击者的计算能力的总和。2.交易我们将电子硬币定义为如下的数字签名串:每个所有者通过在前一笔交易和下一个所有者的公钥上签署一个随机散列数字签名,并将此签名附加到电子货币的末尾,将电子货币发送给下一个所有者。收款人可以通过验证签名来验证链的所有者。

该过程的问题在于,接收者将难以验证先前的所有者是否对电子货币进行了双重支付。通常的解决方案是引入可信的第三方机构或类似造币厂的机构来验证每笔交易,以防止双重支付。在每笔交易结束时,电子货币由造币厂回收,该公司发行了一种新的电子货币。然而,这种解决方案的问题是,整个货币系统的命运完全取决于经营造币厂的公司,因为每笔交易都要由造币厂确认,我们需要某种方法让收款人确保以前的所有者没有签署以前的交易。为了做到这一点,我们真正需要关注的是在这个交易之前发生的交易,而不是在这个交易之后是否会有双重支付企图。要确保一个交易不存在,唯一的方法是知道所有以前的交易。在Mint模型中,铸币局知道所有的交易,它决定交易完成的顺序。如果你想把第三方中介排除在电子系统之外,那么交易信息应该公开宣布1。我们需要整个系统中的所有参与者。存在唯一识别的历史交易序列。收款人需要确保在交易期间绝大多数节点同意交易是第一次发生。3.时间戳服务器解决方案从“时间戳服务器”开始。时间戳服务器通过执行随机散列来对块形式的一组数据加时间戳,并广播该随机散列,就像在新闻或Usenet2345上张贴一样。显然,时间戳可以证明特定数据必须在特定时间出现,因为相应的随机散列值只有在它在那个时间存在的情况下才能被获得。每个时间戳应当在它的随机散列值中包括先前的时间戳,每个后续时间戳都会加强前一个时间戳,这就形成了一个链。
1 W Dai,一组不可追踪的数字假名用金钱彼此支付并在它们之间执行合同而无需外部帮助(外部辅助的电子现金机制)的方案,“B货币,”http://www.weidai.com/bmoney.txt2 H. Massias,X. S.阿维拉,和J.-J. Quisquater,“具有最小信任要求的安全时间戳服务的设计”,在比荷卢信息理论的第20次研讨会上,1999年5月。3 S. Haber,W. S. Stornetta,“如何对数字文档加时间戳”,在密码学杂志,第3卷,第2期,第99-111页。1991年4月,D. Bayer,S. Haber,W. S. Stornetta,“提高数字时间戳的效率和可靠性”,以及可靠性)在序列II:通信、安全和计算机科学中的方法,第329-334页,1993年。5 S. Haber,W.S. Stornetta,“位串的安全名称”,第四届ACM计算机和通信安全会议论文集,第28 - 35页,1997年4月。

4.工作量证明工作量证明要在对等基础上构建一组分散的时间戳服务器,仅仅像报纸或世界新闻网那样工作是不够的。(Adam Back)建议的哈希现金(Hashcash)6.工作量证明机制涉及在执行随机哈希操作时扫描特定值。例如,在SHA-256中,随机散列值以一个或多个零开始。随着零的数量增加,查找解所需的工作量呈指数增加,但只需要一次随机散列操作来验证结果。我们向块中添加一个随机数(Nonce),该随机数应使给定块的随机散列值出现所需数量的零。我们通过重复尝试找到该随机数,直到找到为止。这样,我们构造了一个工作量证明机制,只要CPU消耗的工作量能够满足工作量证明机制,除非等价的工作量被再次完成,否则该块中的信息不能被更改,并且由于后续的块都链接到该块,要更改该块中的信息,需要对所有后续的块重做整个工作量。

同时,工作量证明机制也解决了集体投票中谁是多数的问题,如果决定多数
6 A. Back,“Hashcash -一种拒绝服务对策”,http://www.hashcash.org/papers/hashcash.pdf,2002年
数的方式是以IP地址为基础的,一个IP地址一票,因此如果有人有权分配大量的IP地址,那么机器的工作量证明机制实质上就是一个CPU一票。“多数”的决策被表示为最长的链,因为最长的链包含了最多的工作。如果大多数CPU都是由诚实节点控制的,则诚实链将尽可能快地扩展并超过其他竞争链。如果攻击者想要修改现有块,该块的工作负载加上该块之后的所有块的工作负载必须重做,并最终赶上和超过诚实节点We'稍后我们将展示,如果一个速度较慢的攻击者试图追上一个后续的区块,那么成功的概率将呈指数级下降。另一个问题是硬件的计算速度在迅速增加,节点参与网络的程度也在波动。为了解决这个问题,工作量证明的难度将使用移动平均目标来确定。也就是说,难度点是以每小时预定的平均速率生成块。如果块生成得太快,则难度增加。5.网络运行网络:
新的事务被广播到整个网络;
各节点将接收到的事务信息进行分块;
每个节点试图在其自己的块中找到具有足够难度的工作证明;
当节点发现工作量证明时,它会将其广播到整个网络。
当且仅当块中包含的所有事务都有效并且在块有效之前不存在时,其他节点才同意;
The other nodes indicate that they accept the block, and the method that indicates acceptance follows the end of the block, making a new block is added to extend the chain and the random hash value of the accepted block is considered to precede the random hash value of the new block. The nodes always regard the longest chain as the correct chain and continue to work and lengthen it. If two nodes are wide at the same time broadcast a different version of the new block, other nodes will receive the block at different times. In this case, he They will work on the first block received, but will also keep another chain in case it becomes the longest. The tie is broken until the next proof-of-work is found, and one of the chains turns out to be the longer one Then the node working on the other branch of the chain will switch sides and start working on the longer chain. The new transaction does not need to reach all nodes, as long as it reaches enough nodes The broadcast of a block is fault-tolerant to discarded messages
. If a node does not receive a particular block, the node will find that it is missing a block and can Make your own request to download the block. 6. excitation The agreement is that the first transaction of each block is specialised, and that transaction generates a transaction that is generated by the block 's creator This increases the incentive for nodes to support the network and issue money without a central authority The invention provides a method for distributing the electronic money into the circulation field under the condition that a certain amount of new money is continuously added. into the monetary system in much the same way that resources are expended to mine gold and inject it into circulation. CPU time and power consumption are the resources consumed. Another source of incentive is transaction fees, where the output of a transaction is less than the input. The difference is the transaction fee, which is added to the incentive for that block. Into circulation, then the incentive mechanism can be gradually converted to completely rely on transaction costs, then the monetary system can be free from inflation Swelling. The incentive system also helps encourage nodes to remain honest. If there is a greedy attacker who can mobilize more than all honest nodes Add up more CPU computing power, then he faces a choice: or use it for honest work to generate new electronics he will find it more profitable to play by that rule and work honestly profitable, because the rules allow him to have more electronic money, rather than breaking the system and making his own fortune is compromised. 7. Reclaim hard disk space If the most recent transaction has been included in enough blocks, the data before that transaction can be discarded to Reclaim hard disk space. To also ensure that the random hash value of the block is not corrupted, when the transaction information is randomly hashed, it is constructed as a Merkle tree 7 such that only the root is included in the random hash value of the block. The old block can be compressed by stubbing the branches of the tree. The internal random hash value is not necessary Saved.
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. 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. 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.7 R.C. Merkle, "Protocols for public key cryptosystems,"(Protocols for Public Key Cryptosystems) In Proc. 1980 Symposium on Security and Privacy, IEEE Computer Society, pages 122-133, April 1980. 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. H. Massias, X.S. Avila, and J.-J. Quisquater, "Design of a secure timestamp service with minimal trust requirements," In 20th Symposium on Information Theory in the Benelux, May 1999.

Block header without transaction information The size of the Block header is only 80 bytes. If we set the block generation rate to one every 10 minutes, then 4.2 MB of data bits are generated per year.(80 bytes * 6 * 24 * 365 = 4.2MB). In 2008, the typical memory capacity of PC systems was 2GB, and Moore 's Law predicted that even storing all block headers in memory would not be a problem. 8. Simplified payment confirmation A user needs to keep a copy of the block header of the longest proof-of-work chain, and it can keep asking the network until it is convinced that it has the longest chain. It would have been impossible for a node to check the validity of the transaction itself, but by tracing back somewhere in the chain, it could see that a node had accepted it, and that the block appended to it was further proof that the network had accepted it.

在这种情况下,只要诚实的节点控制着网络,验证机制就是可靠的,但是当整个网络受到计算能力上级的攻击者的攻击时,就变得更加脆弱,因为网络节点可以自己确认交易的有效性,只要攻击者能够保持计算能力的优势,简化的机制就可以被攻击者焊接(捏造的)交易欺诈。一种可能的策略是一旦他们发现无效块就发送警报,并且接收到警报的用户将立即开始下载被警告有问题的块或交易的完整信息,这样就可以判断出不一致的地方,对于每天都有大量资金收付的业务,可能还是希望运行自己的complete节点,以保持更大的独立完整性和校验快速性。

9.价值的组合与分割(合并和分割价值)虽然可以单独处理电子货币,但单独为每种电子货币启动交易是笨拙的。为了使价值易于联合收割机和分割,交易被设计为合并多个输入和输出。一般来说,一个输入由一个较大值的前一个事务组成,或者一个并行输入由几个较小值的前一个事务组成。但是,最多有两个输出:一个用于支付,一个用于找零(如果有的话)。应当注意,虽然一个事务依赖于多个先前的事务,每个先前的事务依赖于多个事务,但是这不是问题,因为该机制不需要扩展所有先前事务的历史。
10.隐私权

传统的造币厂模型为交易参与者提供了一定程度的隐私,因为从可信第三方获取交易信息的尝试受到严格限制。但向整个网络广播交易信息意味着这种方法是无效的。但隐私仍然可以得到保护:保持公钥的匿名性,公众只知道某人向另一个人发行了一定数量的钱,但很难将交易与特定的人联系起来,即,公众很难确定这些人是谁,这就像证券交易所公布的信息,每一次股票销售的时间和数量都有记录,可供查询。但是交易双方的身份并没有被公开。作为额外的预防措施,用户可以为每笔交易生成一个新的地址,以确保交易不会被追溯到共同的所有者。但是,由于并行输入,某种程度的可追溯性是不可避免的,因为并行输入意味着货币属于同一个所有者,风险在于如果某人的一个公钥被确定为属于他,很多其他交易都可以追溯到那个人。
11.计算假设以下情况:攻击者试图以比诚实节点创建链更快的速度创建替代区块链。即使这样,系统也不会完全任由攻击者摆布,凭空创造价值或掠夺不属于攻击者的金钱。这是因为节点不会接受无效交易,而诚实节点永远不会接受包含无效信息的区块。攻击者所能做的,最多,他改变自己的交易信息,并试图拿回他刚刚支付给别人的钱。诚实链和攻击者链之间的竞赛可以描述为二进制随机游走。成功事件定义为诚实链延伸一个区块,使其领先+1,而失败事件是攻击者链
攻击者成功填补缺口的概率可以近似为赌徒破产问题,假设一个赌徒有无限的透支信用,并开始进行无限次的下注,试图填补他的缺口,那么我们可以计算他填补缺口的概率,即攻击者赶上诚实链的概率,如下所示:=𝑝诚实节点生成下一节点的概率𝑞=攻击者生成下一节点的概率𝑞𝑧=攻击者最终闭合z个块差距的概率

如果付款人没有足够的运气迅速成功,他成功的机会会随着时间的推移而变得越来越小。让我们考虑收款人要等多久才能充分确信付款人已经使交易难以改变。让我们假设付款人是一个付款攻击者,他想让收款人相信他已经付款一段时间了。然后,它立即将付款偿还给自己。虽然收款人会在那时发现这一点,但为时已晚。收款人生成一个新的密钥对,然后有很短的时间将公钥发送给付款人。这防止了以下情况:付款人提前准备好一条区块链,继续运行该区块,直到运气让他的区块链超越诚实之链,在这种情况下,交易一发出,攻击者就秘密准备一条包含交易替代版本的平行链,收款人随后等待交易出现在第一个区块,然后等待z个区块跟随,此时,他仍然不知道攻击者已经前进了多少个区块,但是假设诚实的区块将花费平均期望时间来产生一个区块,攻击者的潜在进展是泊松分布,期望为

在这种情况下,为了计算攻击者追上的概率,我们将攻击者已经取得进展的区块数量的泊松分布的概率密度乘以攻击者仍将追上该数量的概率。

通过将其简化为以下形式,避免对无穷级数求和:

编写以下C代码:
#包括
双倍攻击者成功概率(double q,int z)

sum -=泊松 *(1 -幂(q / p,z-k));}返回总和;}
在此基础上,我们可以得到以下概率结果,并发现概率随z的值呈指数下降。


12.结语
我们在这里提出一种不需要信用中介的电子支付系统。我们首先讨论传统电子货币的电子签名原理。虽然这种系统提供了对所有权的强有力控制,但不足以防止重复支付。为了解决这个问题,
本文提出了一种带有工作量证明机制的P2P网络,它记录了交易的公开信息.只要诚实节点能够控制大部分CPU计算能力,攻击者就很难修改交易记录.网络的健壮性在于它的结构简单,节点之间的大部分工作是相互独立的,几乎不需要合作,每个节点不需要识别自己,对交易信息的流动路径没有要求,只需要尽可能的传播,节点可以随时离开网络,并且由于它们只需要在离开网络期间补充工作量证明链,所以重新加入网络非常容易。节点通过它们的CPU计算能力来投票确认它们的有效块,并且他们继续扩展有效的区块链以表示他们的确认,并且拒绝扩展无效区块之后的区块以表示拒绝。
该框架包含P2P电子货币系统所需的所有规则和激励措施。

Discord 培训课程
从0到1构建Discord社群Discord是一款专为社群设计的免费网络实时通话软件与数字发行平台,主要针对游戏玩家、教育人士、朋友及商业人士,用户之间可以在软体的聊天频道通过消息、图片、视频和音频进行交流。这款软件可以在Microsoft Windows、macOS、Android、iOS、Linux和网页上运行(包括Firefox浏览器、Google Chrome与Opera电脑浏览器)。软件起源Discord 的概念由创建了手机游戏社交网络平台OpenFeint的杰森·施特朗构思得出。他在2011年将 OpenFeint 以1.04亿美元的价格卖给了GREE[21],并用这笔钱在2012年创建了游戏开发工作室 Hammer & Chisel。[22]他们的第一个游戏是于2014年发布的永恒命运,施特朗预计这款游戏将成为移动平台上的第一个多人在线战斗竞技场游戏,不过由于受欢迎程度较低他们并没有成功。然而在开发过程中,为了开发出更好的游戏,施特朗注意到他的团队在尝试玩其他热门游戏如最终幻想XIV和英雄联盟时遇到了困难,并特别强调了在网络实时通话方面存在较严重问题。一些网络实时通...

吾国教育病理
由中国著名社会学专家——郑也夫先生著于 2013 年 。此书反当时不涉病灶 、 不究病理 , 治标不治本的教育论述 。直指中国教育的病因 , 直陈其解决之道 , 言辞犀利 ,一针见血 , 穷根问底 , 论据详实 。 既呈现了对教育病理的追问 , 也体现了对当下国情的关怀 。“写作这本书的动力是愤懑 , 一个超龄愤青的双重愤懑之情 。 愤懑之一是对中国教育走 到这步田地 , 搞成这幅模样;之二是目睹管理者解答中国教育困境之弱智 。 ”这是此书前言部分的开篇 , 郑也夫先生用极其犀利的言辞来说明写此书的原因 。 这是我在市面上看到少数 , 能有如此犀利的言辞之书出版 , 估计也是现在为什么停版 , 不再印刷的原因!所以 , 我花了高于此书 3 倍的价格 ,从市场买来了别人读过的二手原著 ,看完之后大呼过瘾 , 一点也不觉得亏!本书主要分为两大篇幅 、 十四章内容 , 上半篇名为“分流” , 下半篇名为“放权” ,上下两篇各七章 。这是作者对中国教育病理提出的核心药方:一方面是从学生教育分流机制出发 ,另一方面是呼吁减少行政对教育的干预 。两大篇幅的阐述 , 遵循“寻找真问题——解释其...

web3赛道指南
Web 3.0 技术发展现状。在“认识 Web 3.0”这个模块里,我会为你阐述基于公链、账户和身份认证技术的组合,并会带你了解如何构建 Web 3.0 的新型基础设施,以此实现理解 Web 3.0 技术基础逻辑的目标。探究:Web 3.0 新玩法与新物种。在这里,你可以了解到 DeFi 是如何通过和传统金融的结合,实现进一步的扩张的;NFT 作为新型的数据确权制度,是如何打造“数字版迪士尼”的;新的去中心化应用,是如何在游戏、商业、社交等领域开创新的商业模式的;以及 DAO 是如何打造“工具 + 社群”新业态的。洞悉:Web 3.0 未来应用趋势。在区块链之外,人工智能、物联网等数据技术,是如何与 Web3.0 结合为互联网带来新的发展空间的?传统互联网公司、政府部门、金融机 构、投资机构,会如何融入 Web 3.0 实现自我升级?在“风险与机会”这个模块里,你会通过我的梳理,参透“上车”的主要路径和避免踩坑的几种逻辑。去中心化实际上是一种协调机制,去中心化也分不同程度。 要想搞清楚是什么推动了 Web 3.0 的诞生,我们要回到互联网的发展历程和现状中来。我们知道,互联网的发...
It is better to manage the army than to manage the people. And the enemy.

比特币:一个点对点的电子现金系统8btc.com|关注虚拟经济
独家赞助商:Bitcoinblogger.com作者电子邮件:【Satoshin@gmx.comwww.bitcoin.org摘要】:本文提出了一种完全采用P2P技术实现的电子现金系统,它可以使在线支付由一方直接发起,并支付给另一方,而不需要任何金融机构。中本聪通过时间戳、工作量证明机制、非对称加密、UTXO等技术的集大成,而创造了比特币区块链。
我们还学习了比特币技术上存在 3 个主要问题,分别是:
1、脚本语言太复杂,开发难度大;
2、生态系统基础差,缺乏足够的参与者;
3、脚本语言不符合「图灵完备」标准,限制了进一步用途。
最后,我们学习了新的虚拟货币的产生。因为比特币算法效率的问题,导致了莱特币区块链的诞生。另外,为了针对性地解决比特币区块链存在的扩展性不足等问题,市场又产生了太坊区块链技术。

尽管数字签名(数字签名)部分解决了这个问题,但如果您仍然需要第三方支持来防止重复支付(双重支出)、那么这样一个系统将失去其价值。我们(we)提出了一种解决方案,以使现金系统能够在对等环境中操作,并防止双重支付问题。(散列)为所有事务添加时间戳(时间戳)并将它们合并到扩展的基于随机散列的工作量证明中。工作量证明链用作事务记录,除非重新完成所有的工作量证明,否则不能改变最长的链,最长的链不仅用作观察到的事件序列,(序列)并被视为来自最大的CPU计算能力池只要大多数CPU计算能力不打算在对整个网络的攻击中合作,诚实的节点将产生超出攻击者的最长链.系统本身需要很少的基础设施.信息尽可能在整个网络中传播,和重新加入网络,并采用最长的工作量证明链作为在该节点离线时发生的事务的证明。
1.几乎所有网上交易都依赖金融机构作为可信赖的第三者处理电子付款资料。虽然这些系统在大多数情况下运作良好,它们仍然固有地受制于以信贷为基础的模式(基于信任的模型)。人们不可能实现完全不可逆的交易,因为金融机构不可避免地会介入协调纠纷。金融中介的存在也会增加交易成本,限制实际最低交易规模和日常小额支付交易,而且潜在的损失是很多商品和服务无法退货,在没有不可逆支付手段的情况下,由于退款的可能性,互联网商务受到很大限制。
它需要交易双方的信任,此外,由于商家也必须谨慎对待自己的客户,会向客户索要完全不必要的个人信息,在实际商业实践中,一定比例的欺诈客户也被认为是不可避免的,相关损失作为销售费用处理,在实物现金的情况下,因为目前还没有第三方信用中介机构,因此非常需要一种基于密码而不是基于信用的电子支付系统,允许任何两方同意直接付款而无需第三方中介的参与。对于那些希望保护买方的人来说,在这种环境下建立通常的第三方担保机制是容易和愉快的.本文提出了一种对等分布式时间戳服务器,用于按时间顺序生成和记录电子交易凭证,以解决双重支付问题.只要诚实节点控制的计算能力之和,系统的安全性超过了合作攻击者的计算能力的总和。2.交易我们将电子硬币定义为如下的数字签名串:每个所有者通过在前一笔交易和下一个所有者的公钥上签署一个随机散列数字签名,并将此签名附加到电子货币的末尾,将电子货币发送给下一个所有者。收款人可以通过验证签名来验证链的所有者。

该过程的问题在于,接收者将难以验证先前的所有者是否对电子货币进行了双重支付。通常的解决方案是引入可信的第三方机构或类似造币厂的机构来验证每笔交易,以防止双重支付。在每笔交易结束时,电子货币由造币厂回收,该公司发行了一种新的电子货币。然而,这种解决方案的问题是,整个货币系统的命运完全取决于经营造币厂的公司,因为每笔交易都要由造币厂确认,我们需要某种方法让收款人确保以前的所有者没有签署以前的交易。为了做到这一点,我们真正需要关注的是在这个交易之前发生的交易,而不是在这个交易之后是否会有双重支付企图。要确保一个交易不存在,唯一的方法是知道所有以前的交易。在Mint模型中,铸币局知道所有的交易,它决定交易完成的顺序。如果你想把第三方中介排除在电子系统之外,那么交易信息应该公开宣布1。我们需要整个系统中的所有参与者。存在唯一识别的历史交易序列。收款人需要确保在交易期间绝大多数节点同意交易是第一次发生。3.时间戳服务器解决方案从“时间戳服务器”开始。时间戳服务器通过执行随机散列来对块形式的一组数据加时间戳,并广播该随机散列,就像在新闻或Usenet2345上张贴一样。显然,时间戳可以证明特定数据必须在特定时间出现,因为相应的随机散列值只有在它在那个时间存在的情况下才能被获得。每个时间戳应当在它的随机散列值中包括先前的时间戳,每个后续时间戳都会加强前一个时间戳,这就形成了一个链。
1 W Dai,一组不可追踪的数字假名用金钱彼此支付并在它们之间执行合同而无需外部帮助(外部辅助的电子现金机制)的方案,“B货币,”http://www.weidai.com/bmoney.txt2 H. Massias,X. S.阿维拉,和J.-J. Quisquater,“具有最小信任要求的安全时间戳服务的设计”,在比荷卢信息理论的第20次研讨会上,1999年5月。3 S. Haber,W. S. Stornetta,“如何对数字文档加时间戳”,在密码学杂志,第3卷,第2期,第99-111页。1991年4月,D. Bayer,S. Haber,W. S. Stornetta,“提高数字时间戳的效率和可靠性”,以及可靠性)在序列II:通信、安全和计算机科学中的方法,第329-334页,1993年。5 S. Haber,W.S. Stornetta,“位串的安全名称”,第四届ACM计算机和通信安全会议论文集,第28 - 35页,1997年4月。

4.工作量证明工作量证明要在对等基础上构建一组分散的时间戳服务器,仅仅像报纸或世界新闻网那样工作是不够的。(Adam Back)建议的哈希现金(Hashcash)6.工作量证明机制涉及在执行随机哈希操作时扫描特定值。例如,在SHA-256中,随机散列值以一个或多个零开始。随着零的数量增加,查找解所需的工作量呈指数增加,但只需要一次随机散列操作来验证结果。我们向块中添加一个随机数(Nonce),该随机数应使给定块的随机散列值出现所需数量的零。我们通过重复尝试找到该随机数,直到找到为止。这样,我们构造了一个工作量证明机制,只要CPU消耗的工作量能够满足工作量证明机制,除非等价的工作量被再次完成,否则该块中的信息不能被更改,并且由于后续的块都链接到该块,要更改该块中的信息,需要对所有后续的块重做整个工作量。

同时,工作量证明机制也解决了集体投票中谁是多数的问题,如果决定多数
6 A. Back,“Hashcash -一种拒绝服务对策”,http://www.hashcash.org/papers/hashcash.pdf,2002年
数的方式是以IP地址为基础的,一个IP地址一票,因此如果有人有权分配大量的IP地址,那么机器的工作量证明机制实质上就是一个CPU一票。“多数”的决策被表示为最长的链,因为最长的链包含了最多的工作。如果大多数CPU都是由诚实节点控制的,则诚实链将尽可能快地扩展并超过其他竞争链。如果攻击者想要修改现有块,该块的工作负载加上该块之后的所有块的工作负载必须重做,并最终赶上和超过诚实节点We'稍后我们将展示,如果一个速度较慢的攻击者试图追上一个后续的区块,那么成功的概率将呈指数级下降。另一个问题是硬件的计算速度在迅速增加,节点参与网络的程度也在波动。为了解决这个问题,工作量证明的难度将使用移动平均目标来确定。也就是说,难度点是以每小时预定的平均速率生成块。如果块生成得太快,则难度增加。5.网络运行网络:
新的事务被广播到整个网络;
各节点将接收到的事务信息进行分块;
每个节点试图在其自己的块中找到具有足够难度的工作证明;
当节点发现工作量证明时,它会将其广播到整个网络。
当且仅当块中包含的所有事务都有效并且在块有效之前不存在时,其他节点才同意;
The other nodes indicate that they accept the block, and the method that indicates acceptance follows the end of the block, making a new block is added to extend the chain and the random hash value of the accepted block is considered to precede the random hash value of the new block. The nodes always regard the longest chain as the correct chain and continue to work and lengthen it. If two nodes are wide at the same time broadcast a different version of the new block, other nodes will receive the block at different times. In this case, he They will work on the first block received, but will also keep another chain in case it becomes the longest. The tie is broken until the next proof-of-work is found, and one of the chains turns out to be the longer one Then the node working on the other branch of the chain will switch sides and start working on the longer chain. The new transaction does not need to reach all nodes, as long as it reaches enough nodes The broadcast of a block is fault-tolerant to discarded messages
. If a node does not receive a particular block, the node will find that it is missing a block and can Make your own request to download the block. 6. excitation The agreement is that the first transaction of each block is specialised, and that transaction generates a transaction that is generated by the block 's creator This increases the incentive for nodes to support the network and issue money without a central authority The invention provides a method for distributing the electronic money into the circulation field under the condition that a certain amount of new money is continuously added. into the monetary system in much the same way that resources are expended to mine gold and inject it into circulation. CPU time and power consumption are the resources consumed. Another source of incentive is transaction fees, where the output of a transaction is less than the input. The difference is the transaction fee, which is added to the incentive for that block. Into circulation, then the incentive mechanism can be gradually converted to completely rely on transaction costs, then the monetary system can be free from inflation Swelling. The incentive system also helps encourage nodes to remain honest. If there is a greedy attacker who can mobilize more than all honest nodes Add up more CPU computing power, then he faces a choice: or use it for honest work to generate new electronics he will find it more profitable to play by that rule and work honestly profitable, because the rules allow him to have more electronic money, rather than breaking the system and making his own fortune is compromised. 7. Reclaim hard disk space If the most recent transaction has been included in enough blocks, the data before that transaction can be discarded to Reclaim hard disk space. To also ensure that the random hash value of the block is not corrupted, when the transaction information is randomly hashed, it is constructed as a Merkle tree 7 such that only the root is included in the random hash value of the block. The old block can be compressed by stubbing the branches of the tree. The internal random hash value is not necessary Saved.
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. 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. 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.7 R.C. Merkle, "Protocols for public key cryptosystems,"(Protocols for Public Key Cryptosystems) In Proc. 1980 Symposium on Security and Privacy, IEEE Computer Society, pages 122-133, April 1980. 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. H. Massias, X.S. Avila, and J.-J. Quisquater, "Design of a secure timestamp service with minimal trust requirements," In 20th Symposium on Information Theory in the Benelux, May 1999.

Block header without transaction information The size of the Block header is only 80 bytes. If we set the block generation rate to one every 10 minutes, then 4.2 MB of data bits are generated per year.(80 bytes * 6 * 24 * 365 = 4.2MB). In 2008, the typical memory capacity of PC systems was 2GB, and Moore 's Law predicted that even storing all block headers in memory would not be a problem. 8. Simplified payment confirmation A user needs to keep a copy of the block header of the longest proof-of-work chain, and it can keep asking the network until it is convinced that it has the longest chain. It would have been impossible for a node to check the validity of the transaction itself, but by tracing back somewhere in the chain, it could see that a node had accepted it, and that the block appended to it was further proof that the network had accepted it.

在这种情况下,只要诚实的节点控制着网络,验证机制就是可靠的,但是当整个网络受到计算能力上级的攻击者的攻击时,就变得更加脆弱,因为网络节点可以自己确认交易的有效性,只要攻击者能够保持计算能力的优势,简化的机制就可以被攻击者焊接(捏造的)交易欺诈。一种可能的策略是一旦他们发现无效块就发送警报,并且接收到警报的用户将立即开始下载被警告有问题的块或交易的完整信息,这样就可以判断出不一致的地方,对于每天都有大量资金收付的业务,可能还是希望运行自己的complete节点,以保持更大的独立完整性和校验快速性。

9.价值的组合与分割(合并和分割价值)虽然可以单独处理电子货币,但单独为每种电子货币启动交易是笨拙的。为了使价值易于联合收割机和分割,交易被设计为合并多个输入和输出。一般来说,一个输入由一个较大值的前一个事务组成,或者一个并行输入由几个较小值的前一个事务组成。但是,最多有两个输出:一个用于支付,一个用于找零(如果有的话)。应当注意,虽然一个事务依赖于多个先前的事务,每个先前的事务依赖于多个事务,但是这不是问题,因为该机制不需要扩展所有先前事务的历史。
10.隐私权

传统的造币厂模型为交易参与者提供了一定程度的隐私,因为从可信第三方获取交易信息的尝试受到严格限制。但向整个网络广播交易信息意味着这种方法是无效的。但隐私仍然可以得到保护:保持公钥的匿名性,公众只知道某人向另一个人发行了一定数量的钱,但很难将交易与特定的人联系起来,即,公众很难确定这些人是谁,这就像证券交易所公布的信息,每一次股票销售的时间和数量都有记录,可供查询。但是交易双方的身份并没有被公开。作为额外的预防措施,用户可以为每笔交易生成一个新的地址,以确保交易不会被追溯到共同的所有者。但是,由于并行输入,某种程度的可追溯性是不可避免的,因为并行输入意味着货币属于同一个所有者,风险在于如果某人的一个公钥被确定为属于他,很多其他交易都可以追溯到那个人。
11.计算假设以下情况:攻击者试图以比诚实节点创建链更快的速度创建替代区块链。即使这样,系统也不会完全任由攻击者摆布,凭空创造价值或掠夺不属于攻击者的金钱。这是因为节点不会接受无效交易,而诚实节点永远不会接受包含无效信息的区块。攻击者所能做的,最多,他改变自己的交易信息,并试图拿回他刚刚支付给别人的钱。诚实链和攻击者链之间的竞赛可以描述为二进制随机游走。成功事件定义为诚实链延伸一个区块,使其领先+1,而失败事件是攻击者链
攻击者成功填补缺口的概率可以近似为赌徒破产问题,假设一个赌徒有无限的透支信用,并开始进行无限次的下注,试图填补他的缺口,那么我们可以计算他填补缺口的概率,即攻击者赶上诚实链的概率,如下所示:=𝑝诚实节点生成下一节点的概率𝑞=攻击者生成下一节点的概率𝑞𝑧=攻击者最终闭合z个块差距的概率

如果付款人没有足够的运气迅速成功,他成功的机会会随着时间的推移而变得越来越小。让我们考虑收款人要等多久才能充分确信付款人已经使交易难以改变。让我们假设付款人是一个付款攻击者,他想让收款人相信他已经付款一段时间了。然后,它立即将付款偿还给自己。虽然收款人会在那时发现这一点,但为时已晚。收款人生成一个新的密钥对,然后有很短的时间将公钥发送给付款人。这防止了以下情况:付款人提前准备好一条区块链,继续运行该区块,直到运气让他的区块链超越诚实之链,在这种情况下,交易一发出,攻击者就秘密准备一条包含交易替代版本的平行链,收款人随后等待交易出现在第一个区块,然后等待z个区块跟随,此时,他仍然不知道攻击者已经前进了多少个区块,但是假设诚实的区块将花费平均期望时间来产生一个区块,攻击者的潜在进展是泊松分布,期望为

在这种情况下,为了计算攻击者追上的概率,我们将攻击者已经取得进展的区块数量的泊松分布的概率密度乘以攻击者仍将追上该数量的概率。

通过将其简化为以下形式,避免对无穷级数求和:

编写以下C代码:
#包括
双倍攻击者成功概率(double q,int z)

sum -=泊松 *(1 -幂(q / p,z-k));}返回总和;}
在此基础上,我们可以得到以下概率结果,并发现概率随z的值呈指数下降。


12.结语
我们在这里提出一种不需要信用中介的电子支付系统。我们首先讨论传统电子货币的电子签名原理。虽然这种系统提供了对所有权的强有力控制,但不足以防止重复支付。为了解决这个问题,
本文提出了一种带有工作量证明机制的P2P网络,它记录了交易的公开信息.只要诚实节点能够控制大部分CPU计算能力,攻击者就很难修改交易记录.网络的健壮性在于它的结构简单,节点之间的大部分工作是相互独立的,几乎不需要合作,每个节点不需要识别自己,对交易信息的流动路径没有要求,只需要尽可能的传播,节点可以随时离开网络,并且由于它们只需要在离开网络期间补充工作量证明链,所以重新加入网络非常容易。节点通过它们的CPU计算能力来投票确认它们的有效块,并且他们继续扩展有效的区块链以表示他们的确认,并且拒绝扩展无效区块之后的区块以表示拒绝。
该框架包含P2P电子货币系统所需的所有规则和激励措施。

Discord 培训课程
从0到1构建Discord社群Discord是一款专为社群设计的免费网络实时通话软件与数字发行平台,主要针对游戏玩家、教育人士、朋友及商业人士,用户之间可以在软体的聊天频道通过消息、图片、视频和音频进行交流。这款软件可以在Microsoft Windows、macOS、Android、iOS、Linux和网页上运行(包括Firefox浏览器、Google Chrome与Opera电脑浏览器)。软件起源Discord 的概念由创建了手机游戏社交网络平台OpenFeint的杰森·施特朗构思得出。他在2011年将 OpenFeint 以1.04亿美元的价格卖给了GREE[21],并用这笔钱在2012年创建了游戏开发工作室 Hammer & Chisel。[22]他们的第一个游戏是于2014年发布的永恒命运,施特朗预计这款游戏将成为移动平台上的第一个多人在线战斗竞技场游戏,不过由于受欢迎程度较低他们并没有成功。然而在开发过程中,为了开发出更好的游戏,施特朗注意到他的团队在尝试玩其他热门游戏如最终幻想XIV和英雄联盟时遇到了困难,并特别强调了在网络实时通话方面存在较严重问题。一些网络实时通...

吾国教育病理
由中国著名社会学专家——郑也夫先生著于 2013 年 。此书反当时不涉病灶 、 不究病理 , 治标不治本的教育论述 。直指中国教育的病因 , 直陈其解决之道 , 言辞犀利 ,一针见血 , 穷根问底 , 论据详实 。 既呈现了对教育病理的追问 , 也体现了对当下国情的关怀 。“写作这本书的动力是愤懑 , 一个超龄愤青的双重愤懑之情 。 愤懑之一是对中国教育走 到这步田地 , 搞成这幅模样;之二是目睹管理者解答中国教育困境之弱智 。 ”这是此书前言部分的开篇 , 郑也夫先生用极其犀利的言辞来说明写此书的原因 。 这是我在市面上看到少数 , 能有如此犀利的言辞之书出版 , 估计也是现在为什么停版 , 不再印刷的原因!所以 , 我花了高于此书 3 倍的价格 ,从市场买来了别人读过的二手原著 ,看完之后大呼过瘾 , 一点也不觉得亏!本书主要分为两大篇幅 、 十四章内容 , 上半篇名为“分流” , 下半篇名为“放权” ,上下两篇各七章 。这是作者对中国教育病理提出的核心药方:一方面是从学生教育分流机制出发 ,另一方面是呼吁减少行政对教育的干预 。两大篇幅的阐述 , 遵循“寻找真问题——解释其...

web3赛道指南
Web 3.0 技术发展现状。在“认识 Web 3.0”这个模块里,我会为你阐述基于公链、账户和身份认证技术的组合,并会带你了解如何构建 Web 3.0 的新型基础设施,以此实现理解 Web 3.0 技术基础逻辑的目标。探究:Web 3.0 新玩法与新物种。在这里,你可以了解到 DeFi 是如何通过和传统金融的结合,实现进一步的扩张的;NFT 作为新型的数据确权制度,是如何打造“数字版迪士尼”的;新的去中心化应用,是如何在游戏、商业、社交等领域开创新的商业模式的;以及 DAO 是如何打造“工具 + 社群”新业态的。洞悉:Web 3.0 未来应用趋势。在区块链之外,人工智能、物联网等数据技术,是如何与 Web3.0 结合为互联网带来新的发展空间的?传统互联网公司、政府部门、金融机 构、投资机构,会如何融入 Web 3.0 实现自我升级?在“风险与机会”这个模块里,你会通过我的梳理,参透“上车”的主要路径和避免踩坑的几种逻辑。去中心化实际上是一种协调机制,去中心化也分不同程度。 要想搞清楚是什么推动了 Web 3.0 的诞生,我们要回到互联网的发展历程和现状中来。我们知道,互联网的发...
Share Dialog
Share Dialog
It is better to manage the army than to manage the people. And the enemy.

Subscribe to leaf

Subscribe to leaf
<100 subscribers
<100 subscribers
No activity yet