首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一切不谈密钥保护的加密都是耍流氓!你的区块链可信吗?

一切不谈密钥保护的加密都是耍流氓!你的区块链可信吗?

作者头像
安智客
发布2018-02-24 14:53:46
2K0
发布2018-02-24 14:53:46
举报
文章被收录于专栏:安智客安智客安智客

一、区块链的价值与疯狂

2009年,中本聪提出的比特币构想给人类带来了全新的数字货币观,时至今日依然热度不减。与比特币目前停留在虚拟货币、投资品等不同,作为比特币的底层技术——区块链技术,以其所特有的分布式、去中心化、不可篡改、永续存储、智能合约等特性,被称为“信任的机器”,并由此创造出广阔的市场想象空间,迅速成为全球信息技术关注的热点。

在产业界各方的努力下,我国区块链技术与应用发展迅速,从底层的技术框架到上层的应用实践均取得了丰富的实践成果。在互联网存证、跨境转账汇款、互助保险、证券交易、知识产权交易甚至项目融资等方面,均开展了大胆的尝试。飞速发展的背后,行业也呈现过热的隐忧,甚至一些公司开始开始利用区块链概念来包装“私货”。关于金融诈骗、非法集资等问题也日益增多。甚至利用区块链进行ICO(Initial Coin Offering虚拟币首次公开发售)融资也已经进入了疯狂的状态。项目质量与风控完全被抛在脑后,投机心态日渐疯狂。一个初创区块链公司的融资速度和规模足以让IPO门前排队等上市的企业泪流满面!(比如3月16日,量子链Qtum在5天时间里融到价值1500万美元的比特币和以太币,而该项目启动只有1年的时间。4月26日Gnosis 仅15分钟ICO就圆满成功, 首次释放出来5%的代币以1200万美金(等值以太币)被认购一空。以当天市值计算, 该项目价值2.8亿美金)

区块链的价值是信任,所以可信是区块链的核心价值。市场疯狂的时候更需要从业者的冷静。今天笔者就以资深密码行业从业者的视角和大家聊聊区块链的安全那点事。

二、区块链信任的脆弱点

“区块链采用P2P技术、密码学和共识算法等技术,具有数据不可篡改、系统集体维护、信息公开透明等特性。区块链提供一种在不可信环境中,进行信息与价值传递交换的机制,是构建未来价值互联网的基石。”

区块链凭借完善的协议与架构设计,构筑了安全、可信的存储与交易网络。然而,区块链的核心是密码算法,密码算法的核心是算法本身和密钥的生命周期管理。密钥的生命周期包括:密钥的生成(随机数的质量)、存储、使用、找回等。虽然区块链协议设计的非常严谨,但作为用户身份凭证的私钥安全却成为整个区块链系统的安全短板。通过窃取或删除私钥,就可轻易地攻击数字资产权益,给持有人带来巨大的损失。这样的恶性事件已经不止一次的出现,足以给人们敲响警钟。

(1)2014年2月24日,当时世界上最大的比特币交易所运营商Mt.Gox 宣布其交易平台的85万个比特币被盗一空,随后火速下线并申请破产保护。

(2)2016年8月3日凌晨,最大的美元比特币交易平台Bitfinex官网挂出公告,由于网站出现安全漏洞,导致用户持有的比特币被盗,被盗的比特币共119756枚,当时总价值约为6500万美元。

一系列盗窃事件背后折射出影响区块链网络可信性的重要环节——用户私钥的安全保护问题。在区块链网络中,唯一证明你拥有该数字资产的就是私钥,一旦私钥丢失或泄漏,则永远无法找回。而传统中心化的机构,例如银行,则可以通过实名认证等手段,实现相关账户的冻结和恢复,并一定程度上可以恢复数字资产。

以上问题的出现,不能简单归结为区块链不安全,其核心问题是忽视了用户的私钥保护。传统交易中,大多是通过“用户名+口令”的方式托管了用户的私钥,私钥存储在了服务后台,则必然存在监守自盗以及黑客入侵的风险。

三、区块链的私钥安全

私钥在其生命周期中如何确保安全是密码系统安全的基础,也是区块链可信的基石。正如笔者有句常说的话:“一切不谈密钥保护的加密都是耍流氓!”

区块链私钥的安全涉及私钥的生成、存储、使用、找回、销毁、更新等几个环节。

1.私钥的生成安全

区块链的私钥是非对称算法(ecc),私钥自身的质量取决于产生私钥的随机数的质量。

可以说:随机数是以现代密码学为基础的信息安全系统的基石,整个系统的安全性完全依赖于随机数序列的生成效率和质量。高质量的随机数的核心是“不可预测性”。对于随机数来说分为两种:伪随机和真随机。

伪随机顾名思义就是假随机。一般依靠种子和算法,知道种子或者已经产生的随机数,可以获得接下来的随机数,具有可预测性。这种随机数玩玩游戏可以,用于区块链的私钥则太不安全了。一般软件操作系统提供的随机数函数都是伪随机。当前主流的区块链系统是用该方法生成的私钥,安全性堪忧。

真随机数一般基于硬件的设计,根据外界的温度、电压、电磁场、环境噪声等产生随机数,随机的不可预测性大大增加。金融领域的安全密码芯片均是采用此设计。国家密码局颁发的《随机性检测规范》至少包括15项检测项目,只有自检合格的随机数才可以被使用。

2.私钥的存储安全

私钥的存储和使用一般分为软实现和硬实现。

软实现即存储和使用都以软件形式。密钥生成后作为文件或字符串保存在用户终端或者托管到服务器,使用时直接或通过简单的口令控制读取到私钥明文到内存,通过CPU完成私钥计算。这种存储和使用方式显然有很多安全风险,容易被黑客或内鬼复制、窃取、暴力破解等。

硬实现一般是依托专用密码安全芯片或者密码设备作为载体,一般有物理保护、敏感数据保护、密钥保护等机制,确保私钥必须由专用硬件产生。在任何时间、任何情况下,私钥均不能以明文形式出现在密码设备外;密码设备内部存储的密钥应具备有效的密钥保护机制,防止解剖、探测和非法读取。私钥不可导出,仅可计算输出签名值。比如金融领域常见的U盾(UKEY)、金融IC卡、加密机等均属于此类方式。

3.私钥的使用安全

从密码破译角度来说,私钥在使用一定周期后,应该更换密钥,这就是涉及私钥销毁和更新的问题。在金融领域,一般是通过数字证书的有效期来绑定密钥的有效期,比如一年。一年后密钥更新,重新申请证书,应用系统重新绑定该密钥。在区块链领域,私钥唯一代表用户身份或数字资产,如果更新密钥需要重新绑定注册或者数字资产转移。但在区块链网络里看起来是一个新的,所以区块链私钥的更新会更加复杂一点。

私钥的找回在区块链领域也是个问题。传统中心化的银行如果U盾丢失或者忘记密码,则可以通过账户系统重新绑定一个新的U盾(私钥)即可。账户和私钥是逻辑上的绑定关系,由中心化的银行在满足风控要求下操作。而比特币或区块链的私钥是直接操作数字货币的钥匙,万一丢失了就等于钱消失了。所以,一个完善的落地的区块链网络,应该设计一种机制:私钥由用户拥有和控制,但在风险发生时,可以通过一种线下实名的方式或者国家权威机构参与的方式或其他更高代价的方式能够找回该密钥。比如通过门限算法,把密钥分拆成5份,独立保存在某些权威机构,其中任意3份即可恢复密钥。同时,密钥恢复应有线下严格的手续。

四、区块链 VS PKI/CA

虽然区块链技术是刚刚起步,但作为区块链基础安全架构的现代密码体系已经发展数十年,相对成熟。比如上个世纪兴起的PKI/CA领域,从密码算法、密码设备到行业标准、监管以及产业链等方面均达到了较高的成熟度,行业规模达到数百亿元,成就了数十家上市公司。比如HTTPS服务器证书已经成为各网站标配,网银的U盾数字证书也普及了亿万大众。U盾、IC卡、加密机等密码设备都非常成熟。国家密码局作为密码管理机构,负责密码标准和密码产品的管理。国家正在大力推广国产密码算法SM2(非对称算法)、SM3(摘要算法)等。

PKI/CA领域对私钥的生命周期保护,刚刚开始的时候也和区块链类似使用软实现。像国内某大行曾发生过软证书被黑客复制破解盗用的案例,该行直到2008年6月14日起才正式停止软文件证书客户的网上支付功能。当前银行领域绝大部分都在使用U盾和密码机作为终端和云端私钥的载体。

针对区块链的私钥安全,区块链行业完全可以借鉴和复用PKI/CA的经验和教训,利用已有成熟的产业链提升密钥安全,从起步阶段即构建较为完善的安全体系,不能总是等到出了安全事件以后才想起来弥补,那样只会对行业、品牌以及客户的信任带来巨大的负面效应。

五、移动化场景下的区块链私钥安全

随着智能终端的普及,以及移动化生存时代的到来,移动智能终端已经成为人们身体的延伸。手机作为数字身份的令牌正逐渐成为主流,“Mobile as token”时代已经到来。传统PC时代的密钥保护工具由于成本高、适配型差、携带使用不便等已无法被人们所接受。安全、随身、易用的可信移动“token”必须摒弃一切手机外置认证令牌(各种外置的蓝牙盾、SD盾等的推广窘境已经说明了移动时代的用户需求),充分利用手机的安全芯片功能,使之成为可信的身份凭证。

北京信任度科技有限公司作为国内领先的移动数字身份服务平台,专注于移动数字身份与区块链密码应用,创新性地提出了手机盾的移动安全解决方案。系统通过专利的密码算法,充分利用手机安全芯片功能,配合云密码机以及综合的移动安全技术,实现了云+端的协同认证与密钥安全保护功能,安全性能媲美传统U盾。由于不需要额外的介质,手机变U盾,其安全性和易用性得到大大的提升。该系统已经通过银行卡检测中心的安全检测并在银行手机网银中应用,真正达到了金融级安全。目前,系统已经帮助最高人民检察院、万达网络科技、PDX区块链系统、信链区块链平台等机构实现可信的区块链私钥安全保护与可靠电子签名应用,成为区块链项目合法、合规、安全落地的重要伙伴。

六、关于区块链私钥安全的建议

基于前述分析,区块链系统中,私钥安全是关系数字资产安全、用户隐私的核心环节。在日益严峻的移动安全形势下,及时建立可信的私钥安全机制是区块链应用落地的关键因素之一。为了更好地推动区块链应用,创造更加丰富、可信的区块链应用,我们建议区块链行业企业:

1、站在巨人的肩膀上,利用已有成熟的产业链提升密钥安全。

2、抓住产业爆发式增长的战略机遇,提前规划移动端密钥保护和云端密钥保护方案。

3、积极进行密码算法的国产化改造,替换ECC和SHA256为SM2、SM3,真正实现合法合规落地。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-12-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 安智客 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档