区块链是一个具有颠覆性的技术,我们容易关注到他给我们发来的巨大利益,却会忽视背后存在的设计缺陷。
区块链是加密货币背后的技术,是当下与VR虚拟现实等比肩的热门技术之一。但区块链或分布式记账技术存在设计缺陷,必须引起重视。
区块链或分布式账簿既不是分布式的,也不是记账簿,它是通过集中处理的方式,对所有交易历史记录进行处理后而产生的,并以此来计算当前状态值。在工程或计算机科学定义中,分布式系统通常由几个分区组成,其面临的挑战是通过分区内以及分区之间的数据交换而作出全局最佳决策。
目前许多商业银行参与的支付系统就是一种分布式系统,这是因为管理、法律、IT、客户偏好、地理分布、人口分布等问题,不可能建立一个由中央银行设立并提供全国所有人账号的系统。而这种一部拥有所有人账号的系统正是这些区块链倡导者所倡导的:整个系统所有状态的副本将对每个独立的分区(甚至所有分区的成员)都是可见的。然而,由于过高的成本以及并不如预期的简化,这种中心化处理全用户备份的系统,实现起来既不实际也不必要。事实上,互联网就是一个分级的分布式系统,具有足够的冗余度满足某些应用程序对分布式系统的需求。例如,DNS服务是一组具有严格分级控制的去中心化系统服务。与许多区块链和DLT倡导者所不同的是,互联网并非没有一个对其核心服务进行控制的中心,也不是没有对第三方的信任。
账户余额包含其所有账户的当前状态,因为影响这些状态的所有交易,已经被处理并且使用迭代方法对当前状态进行了更新。在使用区块链算法时,或者根据自己算法的正确性来选择信任所有数据的当前状态值,或者每次在有新的交易发生时从整个分类账记录中重新计算当前状态。在这方面,计算机科学的目标是开发出根据输入数据迅速给出最简单结果的优化算法,而不是固执地利用多个区块链系统所使用的“蛮”力算法。可以信任自己的算法进行迭代,并且只保留账单的当前状态,或者不信任自己的算法,每次都通过整个交易历史重新计算当前状态。由于开始计算时拥有所有交易历史并不能保证得到正确的当前状态,如果不信任计算当前状态的迭代算法而选择相信“蛮力”算法,那又如何证明“蛮力”算法会给出正确的答案呢?数学中最简单的真理是:应信任作出结论所依据的证据,而不是回到所谓的“常识”纠结于诸如“因为从开始就有某地方的所有数据,就能正确估计当前状态”。认识到这点非常重要,尤其是区块链现在被认为是从物联网到医疗系统,甚至政府治理的“救世主”,就好像区块链产生之前,整个计算机科学领域对算法复杂性的研究和算法简化都是不需要的。
那么,如何对被认为是正确的状态估计实施保护,并且传输给每个参与者?用于计算当前状态的客户端数据副本都必须是安全可靠的,否则基于这些数据作出的状态估计就不可信。正因为安装在电脑或智能手机上的所有客户端都可以访问这个副本(即使该副本可以被质疑),不能保证它能给你带来不被篡改的结果。因为对于数据的保护涵盖了对通信信道、数据传输以及客户端所使用的代码,因此保护并安全传输的过程必将是十分艰难的。
除了使用“分布式”和“账单”定义的错误之外,许多可以通过区块链系统去解决的问题在现有的金融系统中并不存在。例如,区块链应用的一个假设就是,在纯粹的点对点的支付系统中,由于没有一方,或者没有可以信任的一方来计算和维护用户在当前状态的余额,因此用户当前的余额必须根据历史交易数据进行计算,最终导致每一笔交易都需要为所有人提供可验证的签名。而在许多采用区块链技术进行清算和结算的银行应用中,首先不存在这些用户不信任金融机构结算的问题,跨银行的交易系统已经运行多年,并没有区块链推崇者假设的不信任或业务问题。当然,所有系统都有改进的空间,但是正确地提高跨银行结算系统效率的方法是:要么发现和定位已经存在的系统设计问题,并通过技术手段去解决它们;要么改进交易流程或者围绕交易设计新的流程去解决业务问题。多年以来,企业级应用的架构上都会通过改进非最优化的交易流程,并采用新的信息技术来设计和搭建企业级的信息技术系统。而通过使用一种原本是用来解决用户之间交易互信问题的设计来解决交易流程或IT架构问题,看起来是非常奇怪的。另外,区块链需要在一部分参与者之间建立加密通信信道,以防止通信内容被无权知悉的其他参与者获取,这会带来一系列新的问题,而且不可能通过最简单的系统解决。任何设计过加密系统的人都知道管理密钥的重要性不亚于保障算法及相关协议的安全性。在这样的系统中加上几个私密共享协议、多重签名、同态加密以及共识算法,是不可能在一群预先毫不信任的区块链参与者之间,实现安全的密钥配布和生命周期管理的。
一旦了解并更正了这些区块链文献中使用的术语和定义的错误,大家便可以像分析其他交易系统一样来分析区块链的应用,并认识到其在安全性和架构方面中的一些设计缺陷。
以下对区块链和DLT技术缺陷作一简要总结:
第一,单点故障。对于比特币这样一个昂贵系统(消耗的电力相当于一个小国家)而言,致命弱点却在于其安全性。用于交易签名的非对称算法和哈希算法都会在一定的正常使用期限以后存在缺陷。比特币、区块链的所有算法和不同的密钥长度都已经完全包含在它近8年的历史。而根据区块链的算法,必须信任整个区块链的交易历史的不可篡改性,才能信任当前状态的计算结果。不难看出:部分早期比特币与区块链由于当时使用的算法或者密钥长度已经过时,因而此部分交易历史就有可能被伪造,这将导致以此得到的当前状态也不可以被信任,这种系统设计导致一个危险的单点故障状态。
第二,混用认证密钥和签名密钥。非对称密钥可以用于认证和签名(如果需要时可用于加密)。根据加密安全设计原则的要求,不同的密钥应该用于不同的目的,以避免将密钥用于多用途而导致数据泄漏。在比特币与区块链实际操作中还存在更严重的问题:用户需要保护好自己的私钥,因为私钥不仅用于验证身份(发件人和收件人身份验证),还被绑定到其所拥有的比特币上。通常企业系统设计中,用户丢失了身份验证密钥还可以通过回答一些安全问题得以恢复。然而,丢失了比特币或区块链的私钥,就意味着永久地失去对比特币的使用权限。
第三,垂直耦合设计而非分层架构。像区块链技术这样复杂的技术都应具有分层架构设计,而不是使用垂直的紧密耦合的系统架构。互联网设计具有七层(OSI模型)或四层(TCP/IP)。这些层完全不存在耦合,因而可以支持每层具有最大的灵活性和交互性。
相关推荐
过去三十年的发展,从互联网到无线互联网,到传感器,数字化转型,大数据计算等等。这些逐步增强了软件世界....
发表于 2023-10-24 14:34•
61次阅读
用于加密ADS-B传输的区块链正处于测试阶段。虽然这是目前的解决方案,但我们需要展望未来,了解区块链....
发表于 2023-10-23 11:08•
32次阅读
应用场景 江苏荣泽信息科技股份有限公司(简称:荣泽科技),依托区块链和人工智能的人才和技术储备,专注....
发表于 2023-10-21 15:29•
148次阅读
在Linux中使用fork创建进程,返回进程id。通过id的不同让父子进程各干其事,然后使用exec....
发表于 2023-10-20 11:10•
23次阅读
在国内,拉取 Docker 镜像速度慢/时不时断线/无账号导致限流等,比较痛苦. 这里提供加速/优化....
发表于 2023-10-19 10:02•
57次阅读
只用Tomcat,不用Nginx搭建Web服务,行不行?我曾经提出的愚蠢问题,今天详细给自己解释下,....
发表于 2023-10-17 10:54•
112次阅读
DNS 调度 基于请求端 local DNS 的出口 IP 归属地以及运营商的 DNS 调度。 DN....
发表于 2023-10-09 16:07•
216次阅读
CDN工作原理 接入CDN 在接入CDN前,当我们访问某个域名,直接拿到第一个真实服务器的IP地址,....
发表于 2023-10-09 15:41•
162次阅读
近年来,开源软件的力量日益凸显,而开源软件、开源项目的快速发展离不开开源基金会的支持,从资金支持、法....
发表于 2023-09-25 14:48•
88次阅读
要实现一个域名对应多个 IP 地址的效果,只需要在 DNS 解析操作平台,添加一条解析记录,将网站的....
发表于 2023-09-19 17:05•
111次阅读
发现能正确修改,故判断代码没有问题,问题肯定是网卡层或者协议栈有限制
发表于 2023-09-18 17:45•
623次阅读
Viswesh表示,这种不均衡的分布虽然不知道中国在制造业领域能否占据优势,但可以看出其他国家和地区....
发表于 2023-09-11 11:42•
482次阅读
在一次日常渗透过程中,发现了一台机器可以利用jndi命令执行,但是无法注入内存马,也无法直接上线,所....
发表于 2023-09-05 11:05•
207次阅读
答案是不会。本题的考察点其实就是 DNS 负载均衡。
发表于 2023-09-04 10:18•
162次阅读
1、车联网隐私安全威胁privacy security threat
2、车辆跟踪攻击平台Vehi....
发表于 2023-08-31 11:14•
261次阅读
nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。
目前支持tcp、udp流量转发,可....
发表于 2023-08-31 10:32•
279次阅读
新加坡时间8月29日,嘉楠科技(NASDAQ:CAN)公布2023年第二季度财报数据,财报显示,嘉楠....
发表于 2023-08-30 09:59•
169次阅读
电子产品故障类型有哪些? 随着科技不断发展,电子产品已经成为了我们日常生活中不能缺少的一部分,我们....
发表于 2023-08-29 16:46•
475次阅读
随着人工智能、物联网、区块链等技术的飞速发展,智能技术正成为推动未来科技发展的重要引擎。本文将探索智....
发表于 2023-08-29 11:31•
2621次阅读
火伞云为大家整理的CDN、DNS、ADN、SCDN、DCDN、ECDN、PCDN、融合CDN基本差异....
发表于 2023-08-24 10:22•
480次阅读
每当我们单击网站上的链接时,我们的计算机都会搜索其DNS信息。DNS是互联网地址的数据库。在互联网上....
发表于 2023-08-14 17:40•
409次阅读
在通过 PROFINET 在驱动上转入在线前,必须为驱动的 PROFINET 接口分配合适的 IP ....
发表于 2023-08-12 10:31•
907次阅读
疫情后,人们意识到自身的健康状况对疾病的抵抗能力有着重要的影响,因此人们更明白健康监测存在的重要性。....
发表于 2023-08-08 08:19•
246次阅读
pfSense是一个基于FreeBSD,专为防火墙和路由器功能定制的开源版本。它被安装在计算机上作为....
发表于 2023-08-03 12:26•
1176次阅读
或者七层,但是便于大家理解,基本上都是用四层模型,如:数据链路层,网络层,传输层和应用层。
发表于 2023-08-01 17:21•
722次阅读
在相同的测试站点下,保持测试点信号条件不变。分别使用了运营商D和运营商L的SIM卡对比测试,能看到使....
发表于 2023-07-31 10:45•
100次阅读
我们开发的面向普通用户的应用程序,目前看来几乎都是互联网应用程序,也就是说,用户操作的应用程序,不管....
发表于 2023-07-31 09:57•
282次阅读
vhDNS系统是一套新型稳定的DNS系统软件,可使用WEB界面在线操作管理,支持域名定向解析或自定义....
发表于 2023-07-26 17:18•
257次阅读
银河麒麟操作系统版本为桌面版V10.1。
发表于 2023-07-25 10:00•
3685次阅读
动态域名解析需要专用的域名服务器( DNS server )运行域名解析服务器程序,提供从域名到 I....
发表于 2023-07-24 12:55•
516次阅读
据报道,拥有3.8万个英伟达gpu的hive区块链在密码货币市场崩溃后,正在重新考虑gpu资产处理,....
发表于 2023-07-17 10:38•
4429次阅读
要实现一个域名对应多个 IP 地址的效果,只需要在 DNS 解析操作平台,添加一条解析记录,将网站的....
发表于 2023-07-15 15:37•
235次阅读
DNS 数据可以让您了解一段时间内的平均查询量。对于大多数企业来说,这将是一个相对稳定的数字。可能会....
发表于 2023-07-15 12:26•
279次阅读
在回答这个问题之前,我们需要先回顾一些基本概念。DNS 是一种分层结构,这种层级就体现在域名的『点』....
发表于 2023-07-11 10:58•
752次阅读
传输层除了TCP协议,还有个很重要的协议:UDP协议。接下来看下UDP协议是个什么东西,它又是怎么工....
发表于 2023-07-10 15:50•
394次阅读
互联网基于 TCP/IP 协议。为了方便管理网络内的主机,整个互联网分为若干个域 (domain),....
发表于 2023-07-10 10:53•
580次阅读
发展元宇宙面临的一个挑战是,它需要大量的新基础设施来承载其组成技术。元宇宙平台需要连接物理设备、小工....
发表于 2023-07-03 10:14•
337次阅读
DNS 是网络堆栈中一个关键但经常被忽略的组件。监控 DNS 查询异常可以帮助您检测和纠正潜在问题。
发表于 2023-07-02 11:47•
180次阅读
“数实融合”,长沙经开区催生千亿数字产业 2022年长沙经开区经数字赋能后的智能制造示范企业产值超过....
发表于 2023-07-01 15:40•
5169次阅读
网上很多人都说 DNS 根服务器只有 13 台,中国一台也没有。在网络世界,中国被美国卡住了脖子。那....
发表于 2023-06-26 10:54•
415次阅读
刷新本地 DNS 缓存可以解决 HTTP 错误并保护您免受 DNS 欺骗。以下是在 Linux ....
发表于 2023-06-26 10:52•
1307次阅读
这个整数表示方法对我来说真的很奇怪 —— 为什么不用更有效率的二进制来存储整数呢?在早期的计算机中,....
发表于 2023-06-15 09:26•
343次阅读
在WLAN连接设备时,请多次测试IP地址是否有效,确保您可以稳定地访问因特网。 总之,设置有效的IP....
发表于 2023-06-14 17:16•
2862次阅读
随着全球 Web3 浪潮经由数字藏品、元宇宙的日渐普及而实现落地,区块链在“信息互联网”转向“价值互....
发表于 2023-06-08 10:31•
348次阅读
天成通链总经理吕文天表示:“在数字经济时代,应该依靠数码驱动的创意性思考和技术成果。”天成通链扎根副....
发表于 2023-06-08 09:51•
1405次阅读
4月12日-4月15日,由万向区块链实验室、HashKeyGroup联合举办,W3ME承办的2023....
发表于 2023-04-17 10:19•
193次阅读
我正在尝试让 espidf-http-request 示例正常工作,但它总是失败,DNS 查找失败 err=202。它实际上是一个 [url]pl...
发表于 2023-04-13 06:40•
73次阅读
我正在运行 i.MX8M Quad - 带有 CYW54591 模块的内核 5.10.72 我遇到了问题。
我通过以下配置为 eth0 设置静态...
发表于 2023-03-29 07:16•
52次阅读
请问有mDNS协议说明吗?
我只想宣传一些服务,但我不想运行 mDNS 服务器,跟踪网络上的其他设备等等。
所...
发表于 2023-03-02 08:18•
42次阅读
我使用 IDF_V4.4.1
我尝试使用 WIFI 发送一些文件
我使用 2AP(wifi 路由器)
首先我的 esp 已连接...
发表于 2023-03-02 07:47•
47次阅读
什么时候使用DNS服务器合适?在 ap 模式下使用 esp8266 作为强制门户时,我只使用了 dns 服务器。还有其他情况需要...
发表于 2023-02-24 08:22•
162次阅读
大家好,按照网上的代码的写法写的
Code:
// 1、定义一个hints结构体,用...
发表于 2023-02-20 07:35•
42次阅读
使用PPPdevice软件包拨号成功了,获取到了IP和DNS但是无法ping通外网,在check_netdev_internet_up_work进行连...
发表于 2023-02-09 11:41•
327次阅读
1.虚拟机--->设置--->网络适配器--->网络连接:桥接模式(自动)
2.WIN10---> 网络链接--->以太网(...
发表于 2022-11-02 16:40•
3157次阅读
8月正是盛夏,近年来夏季天气愈加炎热,全国多地出现极端高温的频次也逐渐增加,今年我国南方更有多地平均....
发表于 2022-08-12 09:21•
364次阅读
什么是域名解析在深入研究如何测试DNS服务器之前,让我们先讨论一下DNS是什么以及它是如何工作的。....
发表于 2022-07-07 14:30•
314次阅读
什么是域名解析在深入研究如何测试DNS服务器之前,让我们先讨论一下DNS是什么以及它是如何工作的。D....
发表于 2022-07-02 11:30•
310次阅读
请问各位朋友
CH57xNET_InitDNS
CH57xNET_GetHostName
有用这两个函数实现DNS的吗?为啥有这接...
发表于 2022-05-13 07:17•
602次阅读
作者|墨斗编辑|小沐出品|智哪儿(ID:smartanywhere)疫情当下,国际形势风云变幻,市场....
发表于 2022-04-14 09:29•
238次阅读
kernel目录结构以及功能是什么?
发表于 2022-03-03 06:16•
1437次阅读
评论