作为orb区块链项目的安全顾问,我从客户那里听到的一个反复出现的问题是如何保护冷热钱包中的私钥。
硬件安全模块(HSM)是用于管理数字密钥的传统安全解决方案,广泛用于PKI环境和财务。
乍一看,使用HSM可能是区块链的完美解决方案。 HSM生成具有安全存储的密钥对,并且可以从整个系统卸载加密操作。
在一系列故事中,我将尝试通过描述真实用例,市场提供的分析,代码示例和未来预测来回答这一假设。
什么是HSM?
HSM是一种保护和管理数字密钥的物理设备或云服务。——有助于加密,解密,签名和身份验证。 HSM背后的动机是提供与私钥交互的安全环境。没有这种环境,关键是暴露的危险。这些模块通常以插件卡或直接连接到计算机或网络服务器的外部设备的形式出现。
HSM是一种加密设备,负责管理私钥的整个生命周期。此生命周期包括生成,分发,轮换,存储,销毁和归档。它经过专门设计和构建,可为快速安全的加密操作创建防篡改安全环境。
他们现在如何使用?
如今,HSM设备主要用于零售银行业,为磁条和EMV芯片卡发行中使用的密钥和客户PIN提供高水平的保护,以及随后的信用卡和借记卡支付交易。
人们通常会关注热钱包的私钥,因为他们具有在线实时交互功能。对于区块链项目,公共密钥可能意味着一天结束。当威胁演员有权访问私钥时,游戏通常会结束。这可能是一个专业的黑客,一个脚本小子,甚至可能滥用组织资金的内部人员。在这些情况下,HSM是私钥管理的一个很好的安全联盟。——区块链社区中的每个人都在考虑使用HSM。
HSM基于专用硬件构建,具有以安全为中心的操作系统。它具有有限的监控访问通道,并实现了设备操作和管理的角色分离机制。主要支持的加密操作是真随机数生成(NG),对称和非对称密钥生成,散列函数计算,加密和解密以及签名和签名验证。 HSM生成具有安全存储的密钥对,并且可以从整个系统卸载加密操作。
他们如何保护区块链钱包?
区块链中的帐户地址通常来自公钥的值。此公钥具有相应的私钥,该私钥指定应用程序区块链的规则,例如长度和编码模式。这种密钥对的生成应该考虑几个基本方面,例如真实随机源,生成算法和环境,分发过程等。
区块链解决方案通常将热钱包的私钥存储在数据库本地文件中。这些私钥通常是加密的,但有时以明文形式存储,即使是在公共Github存储库——的明文中也是如此。这是一个非常糟糕的主意。在这些体系结构中,安全漏洞或开发人员错误可能导致私钥泄露。
如何使用HSM来提高区块链的安全性?
在区块链中使用HSM设备的方法有很多种。毕竟,这个新兴行业需要更多更好的解决方案来保护货币并降低被盗,黑客或安全漏洞的风险。
下面,我将概述HSM硬件的六种潜在用途,以促进区块链的安全性。:
1.生成私钥和公钥对: HSM需要支持区块链特定的椭圆曲线,比特币和以太网区块链使用Secp256k1,Stellar使用Ed25519。
2.安全存储私钥:您的私钥必须保持安全且私密——就像您要保护信用卡的密码一样。如果不这样做可能会导致灾难性的后果。您的私钥可以解锁您的东西。保护您的私钥等同于在使用生物识别身份验证时保护您的指纹。
3.签名和验证事务:通过签名并根据需要验证事务,将有效事务签署到区块链。这是银行业中HSM的常见用例,人们将设备连接到自己的帐户以批准交易。
4.分层确定钱包:根据bip32,能够在安全环境中从单个主密钥对中导出密钥对。
5.加密,解密和使用密钥数据库中的密钥记录:维护大量密钥的解决方案需要密钥数据库来存储这些密钥。
HSM可以接收加密密钥并在安全的环境中使用它。
6.记录:以比正常记录更稳健的方式跟踪密钥的使用。能够审计和监视密钥的使用方式和时间可以提供额外的安全层。
区块链空间中存在许多安全漏洞,随着行业的发展,需要更好,更安全的方式来与区块链进行交互。从安全的加密传输到共享的机密企业数据,安全性始终处于议程的首位。
几十年来,银行和其他机构一直在努力应对这些挑战,区块链社区必须接受HSM等经过验证的解决方案,这可能对区块链的发展和成熟至关重要。