通常引用的表达方式“不是你的密钥,不是你的加密”,在这种钱包安全模型中,只有个人才能直接且唯一地控制自己的私钥,因此,拥有其加密资产的真正所有权。遵循这种强硬方法的加密钱包被称为“非托管”,这意味着外部各方无法访问密钥。
只不过,没那么快。情况并不那么简单。一系列备受瞩目的“非托管”钱包黑客攻击,包括8月份导致8,000多个账户受损的Slope钱包黑客攻击、2020年损失价值超过200万美元IOTA代币的Trinity钱包黑客攻击、导致2020年损失超过200万美元IOTA代币的Parity钱包黑客攻击2017年,攻击者窃取了150,000ETH,再加上各种硬件钱包漏洞的发现以及其他事件,破坏了托管钱包和非托管钱包之间的传统区别。在许多此类案例中,认为自己使用非托管钱包的受害者发现攻击者能够劫持他们梦寐以求的密钥。矛盾吧?
事实上,这个故事比一句流行语更复杂。非托管钱包并不能真正让用户完全控制他们的密钥。这是因为钱包通常是由其他人的软件或硬件创建和操作的。用户不断地信任其他人、产品和计算机程序。他们接受使用区块链命令行界面、钱包软件和设备、集中式平台、智能合约代码、去中心化应用程序以及其间的所有各种钱包连接集成。每个接触点都会增加风险;所有这些环环相扣的部分的总和打破了非托管钱包的幻想。
事实上,监护权是非二元的。乍一看似乎非托管的东西实际上可能涉及许多托管要素,人们通常认为这些要素的可靠性是理所当然的。传统的二分法——托管与非托管——是错误的。
相反,最好更细致地对待钱包。要问的关键问题是:我愿意接受多大的攻击面,以及在消除对第三方的信任的过程中我愿意承担多少责任?一般来说,密钥管理——钱包安全的基础——可以分为三个领域,每个领域都有独特的暴露机会。子类别如下:
QuickSwap 已重新获得网址控制权,用户资金未受影响:5月15日消息,QuickSwap 于约 6 小时前发推称已重新获得网址控制权,并设置了预防措施:未来用户在使用 QuickSwap 时需要确认是否有图中所示的「绿点」,若没有该绿点,用户需要手动清除浏览器缓存直至绿点出现后再使用。本次攻击中流动性池等资金未受影响。此前报道,QuickSwap 于昨日称托管在 GoDaddy 上的域名已被劫持。[2022/5/15 3:16:50]
密钥生成
密钥存储
钥匙使用
本概述旨在帮助web3用户更好地理解通过上述规则保护其资产所涉及的复杂性。此外,我们的目标是帮助工程师识别并解决钱包开发中的常见故障点。我们希望应用本指南将帮助人们避免安全事故,无论他们是在交互、参与还是参与构建web3技术。
下面,我们将介绍目前存在的加密钱包安全和托管平台的常见功能和陷阱。我们还涵盖了我们认为在未来几个月和几年内最需要关注和开发的领域,以提高用户web3体验的安全性。
密钥生成:钱包安全
任何关于钱包安全性的讨论都必须从密钥生成开始,即创建加密密钥的过程。无论钱包被视为托管还是非托管,密钥生成步骤的安全属性对于此后密钥的安全至关重要。在密钥生成过程中,需要牢记三个首要问题:使用可靠的代码、正确实现代码以及安全地处理输出。
如果您不是加密货币专家,则可能很难验证本书是否已完成以下所有因素。检查您是否可以访问可信的审计报告,一些钱包提供商在其官方网站或Github存储库上发布了该报告。相反,您可以自己进行研究,以确定钱包背后是否有信誉良好的公司。如果信息稀疏,重要的用户和开发人员活动可能是声誉的下一个指标。
请遵循这些指南来减少您的风险暴露。如果钱包未通过以下检查,请逃跑!
动态 | Kava与Tendermint协商后确认存在安全漏洞 主网重新上线推迟72小时至11月15日:Kava 项目 CEO Brian Kerr 今日在官方社群表示,在与Tendermint团队协商确认之后,确认目前 Kava 主网代码中存在一个潜在的安全漏洞,为了安全起见主网上线将推迟 72 小时,之后将以新的链 ID 重启,同时给验证者足够的时间更新创始文件。(区块律动)[2019/11/12]
使用不推出自己的加密货币的钱包
密码学家有句话:“不要推出自己的密码。”其要点类似于格言“不要重新发明轮子”。轮子本来就很好,任何从头开始重建轮子的尝试都可能会导致更糟糕的产品。加密货币也是如此,这是一门很难完全正确的科学。组成钱包的代码应该具有运行良好的声誉。选择编写质量较差的软件,或者尝试从头开发自己的替代软件,可能会导致密钥泄露或向未经授权的各方泄露秘密信息等事故。这就是Profanity虚荣地址工具最近被利用的漏洞背后的原因。首先,应该明确相关钱包使用经过审计且信誉良好的密钥生成库和流程。
使用测量两次并反复切割的钱包
即使代码使用了信誉良好的加密库,它仍然必须正确集成。经过审查的软件通常会默认设置正确的参数,但执行过程中可能存在差距。例如,需要强大的熵源或数学随机性,才能使生成的密钥不可预测,从而更加安全。对于某些密钥生成过程,例如许多多方计算算法,其中必须生成和协调许多单独的密钥,钱包应该遵循由算法。该算法还可能需要多轮计算以及刷新密钥,钱包必须正确集成这些密钥以维护资金的安全。
使用可以保守秘密的钱包
密钥生成过程的最后阶段涉及软件的实际操作和输出。请注意密钥的生成位置和形式。
理想情况下,密钥应在隔离的硬件中生成,并且应使用信誉良好的算法对信息进行加密。需要避免的弱加密标准的一个例子是数据加密标准,如今该标准被认为已被破坏。以明文形式留下的密钥——尤其是在内存、磁盘上或这两个地方之间的中间区域——是一个重大的安全风险。一般来说,密钥材料不应离开其生成的硬件,也不应逃逸到其他人可访问的网络上。
分析 | BTC在重新测试突破8948美元之前 即将回调至8500美元:据Zcrypto消息,加密货币交易员兼投资者Josh Rager总体上对比特币的长期前景持乐观态度,并一直呼吁比特币尽早突破9000美元的关口。在短期内,Rager预计阻力位将突破8500美元大关。他发推表示,8566美元阻力战可能会有两种结果:1. 收盘高于这一水平,并继续高达8750美元以上;2. 收盘低于该水平,重新测试8000美元区域,然后涨回至8750美元以上。接下来的几个小时将是4小时和每日收盘的关键。此外,他在另一条推文中称,希望在重新测试突破8750美元之前,看到价格回落到8500美元。8948美元以上的收盘价是看涨的。[2019/6/15]
今年夏天被黑客攻击的钱包Slope的密钥在生成后以明文形式记录到外部服务器。这种安全漏洞可能会在代码的审计或开源实现中出现。缺乏透明度的钱包——具有闭源代码、没有向公众提供的第三方安全审计——应该引起警惕。
密钥存储:钱包安全
生成密钥后,它们需要存放在某个地方——永远不要以明文形式,总是加密的。但仅仅拥有存储密钥的设备并不一定等于密钥的所有权和控制权。必须考虑许多因素,例如设备的供应链安全性、设备的连接方式以及设备与哪些其他组件交互。此外,每种存储方法在安全性、可访问性、可维护性和可用性之间都有自己的一套权衡。
下面,我们根据感知风险的相关级别对最常见的类别进行了细分。
更高的风险:“热”钱包
这个概念实际上与温度没有太大关系。当谈到密钥存储选项时,如果钱包连接到互联网,则被认为是“热门”钱包。另一方面,如果钱包离线且孤立,则被认为是“冷”的。在其他条件相同的情况下,冷钱包比热钱包更安全,但也更难以访问和使用。连接到任何网络的钱包更容易受到黑客攻击,因为它使攻击者有更多机会发现和利用漏洞。
热钱包有几种形式。
动态 | 加密新闻网站CCN前域名重新出现在谷歌搜索上:6月12日,加密新闻网站CCN发文称,其网站前域名“CryptoCoinsNews.com”最近重新出现谷歌搜索中,且该域名网站中出现CCN网站(现域名为CCN.com)2019年的文章。目前网站正在查询具体原因。此前6月11日消息,CCN的创始人Jonas Borchgrevink发文称,受谷歌6月3日推出的核心更新影响,加密货币新闻网站CCN正在关闭。此后,谷歌一名代表称,谷歌并非针对加密货币网站CCN,核心更新可能会对网站产生不同的影响。[2019/6/12]
连接的软件:在线数据库、电话或网络服务器应用程序内存、浏览器扩展
这些是风险最高的选择。在这里,钱包软件,无论是否托管,都可以直接访问密钥——同时连接到外部互联网。理想情况下,密钥应进行加密,用于加密密钥的另一组密钥应存储在具有高度受限访问控制的专用密钥管理系统(KMS)中,例如操作系统钥匙串或云密钥管理系统。
对于基于软件的热钱包,将密钥管理和授权与其他软件组件隔离至关重要。日志记录、错误管理和内存管理可能会出现问题,所有这些都可能错误地泄漏密码、加密密钥、签名密钥或其他敏感信息密码材料。发生这种情况时,入侵者可以通过连接的应用程序或Web服务器、旁道攻击或内部威胁获得未经授权的访问。
无论服务如何标记自己,如果在线系统内存中的签名密钥随时未加密,则该模型应被视为热软件钱包。
连接硬件:专用设备、移动安全飞地、在线硬件安全模块(HSM)
人们通常认为联网硬件的风险低于联网软件,但它仍然不如冷存储那么安全。在连接的硬件中,密钥仅在专用硬件设备内生成和存在。然后可以将它们连接到内部或公共网络。此类设备通常承担与密钥管理相关的多种职责,包括密钥生成、签名和存储的安全性。
连接硬件有多种类型。有硬件钱包,例如Trezor和Ledger设备,稍微复杂的加密用户通常使用这些设备。还有硬件安全模块,通常用于更传统的业务设置,例如处理敏感数据处理的设置,如信用卡付款。
本周比特币可能第二次重新测试7200美元的阻力位:据分析师Ollie Leech分析,鉴于今日买家对市场的信心增长,本周比特币可能第二次重新测试7200美元的阻力位,这个突破对于按市值计算的数字货币至关重要,因为它在接近6000美元的危险区域内震荡。在这个下跌趋势的底部,我们看到BTC触及6000美元的关键支撑,在许多人认为是 心理支撑 之前,迅速回到早先的0.5斐波那契水平进入点,达到11500美元。这个基础支撑位是BTC的阿拉莫点,其中任何移动都可能对比特币的价格造成致命影响。3月初完成看跌双头格局后,BTC继续下滑至0.786斐波那契水平,收于6600美元。有望未来几周有可能出现反弹迹象。有可能形成一个完整的艾略特波形成,其中纠正波跟随脉冲波。如果比特币突破7200美元以上,该币有望在4月中旬回调至0.618美元水平至9500美元,并且在5月中旬之后将修正波回调至C点0.5美元水平(11500美元)。[2018/4/3]
设备的安全性取决于生产和配置它们的供应链。在考虑连接的硬件时,问问自己:设备或固件在您拥有之前被篡改的可能性有多大?为了降低这种风险,最好直接从值得信赖的供应商那里购买设备。让它们直接从源头发货。确保包装没有破损——没有撕裂、撕破、密封破损等——这可能表明运输过程中被篡改。还建议在使用前验证固件版本和配置。执行此操作的步骤因硬件而异,但都应提供说明。
当然,硬件钱包以后总是有可能被盗或被未经授权的一方访问。考虑到这些威胁,确保硬件钱包也具有安全的访问控制层非常重要-确保它们不会盲目地签署任何和所有交易。控制措施可以包括密码要求、要求交易每一步明确许可的提示以及描述交易实际执行情况的简单英语摘要。此外,大多数硬件钱包都支持私钥加密,也称为“密钥包装”。更好的是,安全钱包不允许以原始明文形式导出密钥,即使人们希望如此。
这是真正保护加密资产所需的安全级别。
风险较小:“冷”钱包
热量更少,风险更低。在其他条件相同的情况下,冷钱包通常被认为比热钱包更安全,尽管它们通常也不太实用。冷钱包通常被称为“气隙”钱包,这意味着它们与任何内部或公共网络没有连接。
在这种情况下,孤独是一种美德。气隙涉及实施严格的物理隔离和授权措施。这些措施可以包括使用法拉第笼、生物识别访问、运动传感器以及SCIF或敏感隔离信息设施。
让我们更详细地回顾一些冷钱包选项。
Airgrapped软件:离线服务器应用
由于攻击者可以随时窃取机器或使机器上线,因此冷钱包的设计应具有安全系统,即使它们上线也能保持安全。密钥应该通过标准方法分割成密钥碎片。强烈建议使用HSM等专用硬件,而不是连接软件,因为它们通常提供更多控制。
Airgrapped硬件:离线硬件钱包、离线硬件安全模块
该解决方案被认为是最安全的。与前一类别类似,人们应该假设硬件可以被窃取并在线获取。因此,如前所述,这些系统包含正确实施的访问控制层也很重要。许多HSM供应商需要一定数量的物理智能卡聚集在一起才能解锁密钥。即使设备没有显示屏,它也应该为用户提供某种方式来验证交易的详细信息。
由于冷钱包或气隙钱包是最安全的类别,因此大公司管理的大多数资金都以这种方式存储。Coinbase、Gemini、Kraken等主要零售服务以及Anchorage等机构用户服务均属于这样做的服务。许多玩家选择以备份和恢复的形式建立另一道防线,以防万一他们失去访问权限,或者机器被损坏、被盗或毁坏。
备份和恢复
签名密钥在加密后应始终进行备份。加密签名密钥和密钥包装密钥的冗余至关重要。备份签名密钥的方法各不相同,但人们应该始终首选硬件本机解决方案。
对于硬件钱包,备份通常涉及从中派生私钥的12字纯文本种子短语。该种子短语应以非数字方式存储并以最安全的方式存储。该短语可以分成地理分布的部分,以防止整个秘密轻易泄露。
许多HSM本身就可以处理与备份和恢复相关的一些挑战。标准的机制可以导出默认情况下使用访问控制加密的密钥。如果满足访问控制要求,则可以将密钥导入到其他HSM中。有用的是,还可以为HSM群配置从智能卡法定数量派生的通用加密密钥。以这种方式将硬件与关键材料分离有助于避免单点故障。
最后,人为因素需要解决。恢复机制应该能够承受参与账户管理操作的任何个人暂时或永久无法使用的情况。个人应确保为亲密家庭成员或其他受信任方提供在死亡或其他紧急情况下恢复密钥的方法。与此同时,团体运营应该定义一个法定人数——比如三分之二或五分之三——尽管存在生活事件、旅行、疾病或事故,但仍能合理运作。
关键用途:钱包安全
生成并存储密钥后,它们可用于创建授权交易的数字签名。混合的软件和硬件组件越多,风险就越大。为了降低风险,钱包应遵守以下授权和身份验证指南。
信任但要验证
钱包应该需要身份验证。换句话说,他们应该验证用户是否是他们所说的人,并且只有授权方才能访问钱包的内容。这里最常见的保护措施是PIN码或密码。与往常一样,这些内容应该足够长和复杂——使用许多不同类型的字符——才能发挥最大的效果。更高级的身份验证形式可以包括生物识别或基于公钥加密的批准,例如来自多个其他安全设备的加密签名。
不要推出自己的加密货币
钱包应使用完善的密码学库。进行一些研究以确保它们经过审核且安全,以避免密钥材料泄漏或私钥完全丢失。使问题变得复杂的是,即使是受信任的库也可能具有不安全的接口,就像最近这些Ed25519库的情况一样。当心!
随机数重用
一个经过充分研究的密钥使用陷阱是无意中重复使用某些加密签名参数。某些签名方案可能需要一个随机数,意思是“使用一次的数字”,一个任意数字仅意味着在系统中使用一次。椭圆曲线数字签名算法就是这样一种签名方案。如果随机数与ECDSA一起重复使用,可能会导致密钥泄露。各种其他算法不受影响,因此,像往常一样,确保使用完善的加密库。但这种攻击向量之前已在web3之外的备受瞩目的黑客攻击中被利用,例如2010年索尼PlayStation3黑客攻击。
每个用途一键
另一个最佳实践是避免将密钥重复用于多个目的。例如,应保留单独的密钥用于加密和签名。这遵循在发生妥协时的“最小特权”原则,这意味着对任何资产、信息或操作的访问应仅限于绝对需要系统运行的各方或代码。如果实施得当,“最小特权”原则可以极大地限制成功攻击的影响范围。不同的密钥根据其用途对备份和访问管理有不同的要求。在web3的背景下,最佳实践是将资产和钱包之间的密钥和种子短语分开,因此一个帐户的泄露不会影响任何其他帐户。
结论
密钥所有权的托管或非托管性质并不像传统思维所认为的那样非黑即白。由于密钥管理涉及从密钥生成到存储到使用的许多移动部分,情况变得更加复杂。链条上的每一个硬件或软件都会带来风险,甚至使所谓的非托管钱包选项也面临托管类型的危险。
未来,我们预计将开展更多开发工作,以确保钱包免受攻击并减轻上述风险。需要改进的领域包括:
跨移动和桌面操作系统共享安全开源密钥管理和交易签名库
共享开源交易审批框架
具体来说,我们将特别高兴地看到共享和开源的发展:
密钥生成库可跨不同存储后端实现一流的安全性
适用于移动和桌面操作系统的密钥管理和交易签名库
交易审批流程框架实施强因素验证,例如生物识别、基于PKI的审批、授权恢复等。
上面的列表并不详尽,但它是一个很好的起点。所有这一切都意味着,情况比“不是你的密钥,不是你的加密”这一口号所表明的更为复杂。考虑到从生成、存储到使用的许多相互作用的部分和阶段,密钥的拥有是一件棘手的事情。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。