
区块链有哪些安全软肋
区块链是比特币中的核心技术,在无法建立信任关系的互联网上,区块链技术依靠密码学和巧妙的分布式算法,无需借助任何第三方中心机构的介入,用数学的方法使参与者达成共识,保证交易记录的存在性、合约的有效性以及身份的不可抵赖性。
区块链技术常被人们提及的特性是去中心化、共识机制等,由区块链引申出来的虚拟数字货币是目前全球最火爆的项目之一,正在成就出新的一批亿万级富豪。像币安交易平台,成立短短几个月,就被国际知名机构评级市值达400亿美金,成为了最富有的一批数字货币创业先驱者。但是自从有数字货币交易所至今,交易所被攻击、资金被盗事件层出不穷,且部分数字货币交易所被黑客攻击损失惨重,甚至倒闭。
一、 令人震惊的数字货币交易所被攻击事件
从最早的比特币,到后来的莱特币、以太币,目前已有几百种数字货币。随着价格的攀升,各种数字货币系统被攻击、数字货币被盗事件不断增加,被盗金额也是一路飙升。让我们来回顾一下令人震惊的数字货币被攻击、被盗事件。
2014年2月24日,当时世界最大的比特币交易所运营商Mt.Gox宣布其交易平台的85万个比特币已经被盗一空,承担着超过80%的比特币交易所的Mt.Gox由于无法弥补客户损失而申请破产保护。
经分析,原因大致为Mt.Gox存在单点故障结构这种严重的错误,被黑客用于发起DDoS攻击:
比特币提现环节的签名被黑客篡改并先于正常的请求进入比特币网络,结果伪造的请求可以提现成功,而正常的提现请求在交易平台中出现异常并显示为失败,此时黑客实际上已经拿到提现的比特币了,但是他继续在Mt.Gox平台请求重复提现,Mt.Gox在没有进行事务一致性校验(对账)的情况下,重复支付了等额的比特币,导致交易平台的比特币被窃取。
2016年8月4日,最大的美元比特币交易平台Bitfinex发布公告称,网站发现安全漏洞,导致近12万枚比特币被盗,总价值约为7500万美元。
2018年1月26日,日本的一家大型数字货币交易平台Coincheck系统遭遇黑客攻击,导致时价580亿日元、约合5.3亿美元的数字货币“新经币”被盗,这是史上最大的数字货币盗窃案。
2018年3月7日,世界第二大数字货币交易所币安(Binance)被黑客攻击的消息让币圈彻夜难眠,黑客竟然玩起了经济学,买空卖空“炒币”割韭菜。根据币安公告,黑客的攻击过程包括:
1) 在长时间里,利用第三方钓鱼网站偷盗用户的账号登录信息。黑客通过使用Unicode字符冒充正规Binance网址域名里的部分字母对用户实施网页钓鱼攻击。
2) 黑客获得账号后,自动创建交易API,之后便静默潜伏。
3) 3月7日黑客通过盗取的API Key,利用买空卖空的方式,将VIA币值直接拉暴100多倍,比特币大跌10%,以全球总计1700万个比特币计算,比特币一夜丢了170亿美元。
二、黑客攻击为什么能屡屡得手
基于区块链的数字货币其火热行情让黑客们垂涎不已,被盗金额不断刷新纪录,盗窃事件的发生也引发了人们对数字货币安全的担忧,人们不禁要问:区块链技术安全吗?
随着人们对区块链技术的研究与应用,区块链系统除了其所属信息系统会面临病毒、木马等恶意程序威胁及大规模DDoS攻击外,还将由于其特性而面临独有的安全挑战。
1. 算法实现安全
由于区块链大量应用了各种密码学技术,属于算法高度密集工程,在实现上比较容易出现问题。历史上有过此类先例,比如NSA对RSA算法实现埋入缺陷,使其能够轻松破解别人的加密信息。一旦爆发这种级别的漏洞,可以说构成区块链整个大厦的地基将不再安全,后果极其可怕。之前就发生过由于比特币随机数产生器出现问题所导致的比特币被盗事件,理论上,在签名过程中两次使用同一个随机数,就能推导出私钥。
2. 共识机制安全
当前的区块链技术中已经出现了多种共识算法机制,最常见的有PoW、PoS、DPos。但这些共识机制是否能实现并保障真正的安全,需要更严格的证明和时间的考验。
3. 区块链使用安全
区块链技术一大特点就是不可逆、不可伪造,但前提是私钥是安全的。私钥是用户生成并保管的,理论上没有第三方参与。私钥一旦丢失,便无法对账户的资产做任何操作。一旦被黑客拿到,就能转移数字货币。
4. 系统设计安全
像Mt.Gox平台由于在业务设计上存在单点故障,所以其系统容易遭受DoS攻击。目前区块链是去中心化的,而交易所是中心化的。中心化的交易所,除了要防止技术盗窃外,还得管理好人,防止人为盗窃。
总体来说,从安全性分析的角度,区块链面临着算法实现、共识机制、使用及设计上挑战,同时黑客通过利用系统安全漏洞、业务设计缺陷也可达成攻击目的。目前,黑客攻击已经在对区块链系统安全性造成越来越大的影响。
三、如何保证区块链的安全
为了保证区块链系统安全,建议参照NIST的网络安全框架,从战略层面、一个企业或者组织的网络安全风险管理的整个生命周期的角度出发构建识别、保护、检测、响应和恢复5个核心组成部分,来感知、阻断区块链风险和威胁。
除此之外,根据区块链技术自身特点重点关注算法、共识机制、使用及设计上的安全。
针对算法实现安全性:一方面选择采用新的、本身经得起考验的密码技术,如国密公钥算法SM2等。另一方面对核心算法代码进行严格、完整测试的同时进行源码混淆,增加黑客逆向攻击的难度和成本。
针对共识算法安全性:PoW中使用防ASIC杂凑函数,使用更有效的共识算法和策略。
针对使用安全性:对私钥的生成、存储进行保护,敏感数据加密存储。
针对设计安全性:一方面要保证设计的功能尽量完善,如采用私钥白盒签名技术,防止病毒、木马在系统运行过程中提取私钥;设计私钥泄露追踪功能,尽可能减少私钥泄露后的损失。另一方面,应对某些关键业务设计去中心化,防止单点故障攻击。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
当 “算法” 成为数据科学、人工智能、业务决策领域的高频词时,一种隐形的认知误区正悄然蔓延 —— 有人将分析结果不佳归咎于 ...
2025-09-22在数据分析、金融计算、工程评估等领域,“平均数” 是描述数据集中趋势最常用的工具之一。但多数人提及 “平均数” 时,默认指 ...
2025-09-22CDA 数据分析师:参数估计助力数据决策的核心力量 在数字化浪潮席卷各行各业的当下,数据已成为驱动业务增长、优化运营效率的核 ...
2025-09-22训练与验证损失骤升:机器学习训练中的异常诊断与解决方案 在机器学习模型训练过程中,“损失曲线” 是反映模型学习状态的核心指 ...
2025-09-19解析 DataHub 与 Kafka:数据生态中两类核心工具的差异与协同 在数字化转型加速的今天,企业对数据的需求已从 “存储” 转向 “ ...
2025-09-19CDA 数据分析师:让统计基本概念成为业务决策的底层逻辑 统计基本概念是商业数据分析的 “基础语言”—— 从描述数据分布的 “均 ...
2025-09-19CDA 数据分析师:表结构数据 “获取 - 加工 - 使用” 全流程的赋能者 表结构数据(如数据库表、Excel 表、CSV 文件)是企业数字 ...
2025-09-19SQL Server 中 CONVERT 函数的日期转换:从基础用法到实战优化 在 SQL Server 的数据处理中,日期格式转换是高频需求 —— 无论 ...
2025-09-18MySQL 大表拆分与关联查询效率:打破 “拆分必慢” 的认知误区 在 MySQL 数据库管理中,“大表” 始终是性能优化绕不开的话题。 ...
2025-09-18DSGE 模型中的 Et:理性预期算子的内涵、作用与应用解析 动态随机一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明确:TIF 中的地名有哪两种存在形式? 在开始提取前,需先判断 TIF 文件的类型 —— ...
2025-09-17CDA 数据分析师:解锁表结构数据特征价值的专业核心 表结构数据(以 “行 - 列” 规范存储的结构化数据,如数据库表、Excel 表、 ...
2025-09-17Excel 导入数据含缺失值?详解 dropna 函数的功能与实战应用 在用 Python(如 pandas 库)处理 Excel 数据时,“缺失值” 是高频 ...
2025-09-16深入解析卡方检验与 t 检验:差异、适用场景与实践应用 在数据分析与统计学领域,假设检验是验证研究假设、判断数据差异是否 “ ...
2025-09-16CDA 数据分析师:掌控表格结构数据全功能周期的专业操盘手 表格结构数据(以 “行 - 列” 存储的结构化数据,如 Excel 表、数据 ...
2025-09-16MySQL 执行计划中 rows 数量的准确性解析:原理、影响因素与优化 在 MySQL SQL 调优中,EXPLAIN执行计划是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 对象的 text 与 content:区别、场景与实践指南 在 Python 进行 HTTP 网络请求开发时(如使用requests ...
2025-09-15CDA 数据分析师:激活表格结构数据价值的核心操盘手 表格结构数据(如 Excel 表格、数据库表)是企业最基础、最核心的数据形态 ...
2025-09-15Python HTTP 请求工具对比:urllib.request 与 requests 的核心差异与选择指南 在 Python 处理 HTTP 请求(如接口调用、数据爬取 ...
2025-09-12解决 pd.read_csv 读取长浮点数据的科学计数法问题 为帮助 Python 数据从业者解决pd.read_csv读取长浮点数据时的科学计数法问题 ...
2025-09-12