热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

可编辑区块链:打破你对“不可篡改”的认知,但这样的区块链还安全吗

很多人最初了解区块链是什么的时候,除了比特币和中本聪的白皮书,听到最多的说法应该是“去中心化且不可篡改的分布式账本”。由此,区块链“不可篡改”的特性一直都深入人心。不可篡改,我是这

很多人最初了解区块链是什么的时候,除了比特币和中本聪的白皮书,听到最多的说法应该是“去中心化且不可篡改的分布式账本”。由此,区块链“不可篡改”的特性一直都深入人心。

不可篡改,我是这么理解的

在我的理解中,区块链的不可篡改应当是从两个方面来完成的。

一是从分布式共识上提供的,通过共识机制让节点都来确认区块中交易的合法性,共识达成后交易池就会通知所有节点上链。即使修改了本地账本的交易和状态量,其他节点在验证merkle_root的时候也不会承认这种改变,就算是再次通过发起一笔交易来更正数据和结果,曾经的记录也会一直存在。

二是区块链的机制规定已经上链的区块是不能更改信息的,因为区块链是有序的,顺序在前面的如果能更改,那后面很多依赖于前面的交易才产生的新交易就不能通过验证了。

对区块信息进行编辑,是切实存在的需求

但是对区块信息进行编辑,很多场景中都存在的需求。

如果你错误发送了一笔交易,或者只是发起交易之后反悔了,要怎么补救呢?目前采取的措施是再发送一笔交易来制造双花,让两笔冲突的交易不能通过验证,就都不能上链了。但是这个办法只能在交易池中还没有形成共识的时候有效,如果已经上链了,那就药石罔医了。

如果你的区块里存的交易信息不是一笔A给B十元钱的转账记录,而是一条条需要存储的数据,“张三,23岁,男,数学专业”、“李四,19岁,女,日语专业”,那么可能面临着数据更新的需求。一些具备时效性的信息要更新,已经失效的信息要删除,即使发新的交易来给出新的记录,也无法避免别人看到旧的信息仍在使用过时、失效的数据。

还有就是监管,如果负责监管的机构发现有的区块信息里披露了敏感的数据,或者有一些违法违规、造成不良影响的数据,那就要从区块中把它们移除。

看吧,编辑的需求无处不在。

“不可篡改”已经被打破,还不止一个方案

在2019年的IEEE S&P上,有一篇论文提出了可编辑区块链的方案:

《可编辑区块链:打破你对“不可篡改”的认知,但这样的区块链还安全吗》

这个方案简单地说,就是让节点还是通过共识投票来决定区块信息可不可以修改,在实现的时候也比较便捷,因为共识过程就照一贯的机制来就好。唯一需要改变的是在区块结构中扩展了一个merkle树用来存储old state,这个root值用来做验证,矿工在自己挖出的下个区块中包含编辑请求的hash,就被认为是给编辑请求投赞成票了。

但是其中些问题还是挺让人担心的,虽说任何人都可以来提出编辑请求,但是执行区块编辑的人需不需要是这个区块的主人呢?不然要怎么签名?而区块信息的改变必然引起区块hash的改变,这个区块后面做的验证是不是也无效了呢?如果你对这些问题有高见,请在评论中告知。

这个方案虽然容易实现,但是看上去不是非常漂亮,而且里面有一些让人担忧的问题,下面这个就很炫酷了。第二个方案来自于2019年的NDSS论文:

《可编辑区块链:打破你对“不可篡改”的认知,但这样的区块链还安全吗》

这个论文涉及到的密码学方法是变色龙哈希,是十几年前就有的一个老技术,先简单回顾一下变色龙哈希的内容:哈希是一个单向映射,不能反向恢复,很少发生碰撞,所以能用来在不泄露数据的前提下,进行一些隐私的信息匹配,并验证数据没有被变更过。变色龙哈希是其中的一个异类,它存在的意义是给有私钥的用户提供一个能找到碰撞的方案,但没有私钥的人想找碰撞还是得大海捞针。

于是聪明的研究者想到这样的方案:

《可编辑区块链:打破你对“不可篡改”的认知,但这样的区块链还安全吗》

在构成merkle树的时候留出一些余地,让不同的交易A、B向上产生分支节点H(A||B)时因为有了变色龙哈希的加持,能够得到相等的结果,这样拿着密钥的人就可以把装着旧交易的区块A,更换成装有新交易的区块B,还能保证hash不发生改变。

失去了“不可篡改”特性,区块链还值得信任吗?

这个问题现在就能给出一个妥善的回答了:区块链还是值得信任的。通过上面我们已经了解到,区块信息的修改是有着严格的章程的,要么让社群里的大家都同意,要么你拿着密钥改你自己的交易,既不能给后面的验证带来麻烦,也不能去修改时间戳、区块高度这些交易信息以外的重要参数。

很多人觉得区块链领域的根基还不稳,比如它的性能表现太差了不能支撑真实场景中的金融应用,比如DAPP还没有一个像样的killing app。但是在议会向扎克伯格的Libra施加阻力的当口,这可能是我们赶超美国的一个好机会,我想这也是区块链被制定为核心战略技术的原因吧。

制定标准的才有肉吃,我们和中国一起加油呀!


推荐阅读
  • 深入解析闪电网络现状及其在CKB上的应用前景
    本文从技术实现、实际应用、对比特币的影响及在CKB上的潜在优势四个方面,全面分析了闪电网络的现状和发展潜力。 ... [详细]
  • 2018年3月31日,CSDN、火星财经联合中关村区块链产业联盟等机构举办的2018区块链技术及应用峰会(BTA)核心分会场圆满举行。多位业内顶尖专家深入探讨了区块链的核心技术原理及其在实际业务中的应用。 ... [详细]
  • 本文深入浅出地介绍了区块链的基本概念,探讨了这一技术如何通过去中心化的方式实现数据的可靠存储与传输。此外,文章还分析了区块链技术与比特币的关系,以及它在未来各行业的潜在应用。 ... [详细]
  • IOSG Weekly Brief | Fat NFT Thesis 与艺术朋克 #68
    IOSG Weekly Brief | Fat NFT Thesis 与艺术朋克 #68 ... [详细]
  • 本文深入探讨了MySQL中常见的面试问题,包括事务隔离级别、存储引擎选择、索引结构及优化等关键知识点。通过详细解析,帮助读者在面对BAT等大厂面试时更加从容。 ... [详细]
  • 2017成都物流技术创新峰会:深入探讨区块链应用
    2017年3月30日,第二届物流技术大会在成都成功举办,会上特别举办了关于区块链技术及其在物流行业应用的专题讨论,深入分析了区块链技术的发展历程、现状及未来趋势。 ... [详细]
  • a16z 宣布成立全新的加密研究实验室,旨在推动加密技术和 Web3 领域的科学发展。 ... [详细]
  • 强人工智能时代,区块链的角色与前景
    随着强人工智能的崛起,区块链技术在新的技术生态中扮演着怎样的角色?本文探讨了区块链与强人工智能之间的互补关系及其在未来技术发展中的重要性。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 本文作者分享了在阿里巴巴获得实习offer的经历,包括五轮面试的详细内容和经验总结。其中四轮为技术面试,一轮为HR面试,涵盖了大量的Java技术和项目实践经验。 ... [详细]
  • 算法稳定币:构建去中心化加密货币体系的新希望
    本文探讨了算法稳定币在加密经济中的潜力,分析其与传统稳定币及比特币等早期加密资产的区别,并展望其未来发展方向。随着DeFi的兴起,算法稳定币正逐渐成为实现中本聪最初愿景的关键角色。 ... [详细]
  • 智慧城市建设现状及未来趋势
    随着新基建政策的推进及‘十四五’规划的实施,我国正步入以5G、人工智能等先进技术引领的智慧经济新时代。规划强调加速数字化转型,促进数字政府建设,新基建政策亦倡导城市基础设施的全面数字化。本文探讨了智慧城市的发展背景、全球及国内进展、市场规模、架构设计,以及百度、阿里、腾讯、华为等领军企业在该领域的布局策略。 ... [详细]
  • 介绍一个基于区块链技术的分布式存储项目,其提供的网盘服务速度远超传统网盘,如百度网盘,最高可达5倍之多。 ... [详细]
  • 本文探讨了Go语言(Golang)的学习价值及其在Web开发领域的应用潜力,包括其独特的语言特性和为什么它是现代软件开发的理想选择。 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
author-avatar
yngbzl_165
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有