手机加密货币环境安全性对比:HTC Exodus、Samsung Galaxy S10、iPhone和Google Pixel 3

HTC Exodus

先来看看HTC宣称的区块链加密手机Exodus的特性,下面是内置的Zion钱包的介绍:

  • 当你启动Zion时,不论签核交易或是产生12字助记词组,都是被可信执行环境(TEE)保护。它能避免手机上的恶意程式窃取你的加密资产。 //如果使用imToken钱包则不能享受TEE安全环境了。HTC宣称将发布API,允许协力伙伴、开发者使用「EXODUS 1」手机来保护密钥以及签署交易。
  • 将你的私钥保存在可信执行环境(TEE)之下。不再需要额外低安全性的登录。而且,Zion不会搜集你的个人资料 //TEE环境使用 secure enclave:The secure enclave is a locked area of HTC EXODUS 1‍ hidden from Android and untrusted apps. This secure enclave will hold the keys to your crypto, whether currencies, tokens, or non-fungible tokens (NFTs).
  • 检视你的比特币,莱特币,以太币以及其他热门的ERC-20加密货币,资产以及ERC-721代币。管理你的加密资产就是如此简单!*只有受到支持的ERC-721代币会显示于保险库中 //Zion钱包不支持EOS等其他非ERC-20/ERC-721Token。HTC宣称将向拥有相同愿景的合作伙伴发布Zion密钥管理API和软体开发套件,以扩展区块链生态系统。
  • Zion拆解以及加密你的你所信任亲友的手机上。他们在你需要的时候可以协助你回复密钥。 //这一条是指把自己的密钥拆分几段后发给亲友管理。用户自主选择几位值得信赖的连络人保存密钥,每个连络人都必须下载密钥管理应用程式。随后,使用者使用秘密分享演算法对助记词组(seed)进行分割,并将其发送给所选连络人。如有获取密钥的需求产生,用户便可从信任的几位连络人处取得碎片,重获密钥。

TEE

可信执行环境TEE(Trusted Execution Environment)是移动设备主处理器上的一个安全区域,其可以保证加载到该环境内部的代码和数据的安全性、机密性以及完整性。TEE提供一个隔离的执行环境,提供的安全特征包含:隔离执行、可信应用的完整性、可信数据的机密性、安全存储等。

运行在TEE的应用称为可信应用(即TA,Trusted Apps),其可以访问设备主处理器和内存的全部功能,硬件隔离技术保护其不受安装在主操作系统环境的用户Apps影响。而TEE内部的软件和密码隔离技术可以保护每个TA不相互影响,这样可以为多个不同的服务提供商同时使用,而不影响安全性。

工业联盟GlobalPlatform(简称GP)和可信计算工作组TCG近年来都在开展TEE方面的工作,前者以制定TEE的标准规范为主,后者试着将TEE规范与其可信平台模块规范进行结合以加强移动设备的安全和可信,形成的最新规范为TPM 2.0 Mobile。

安全区域还可以保存对设备的访问。即使有人拥有您的设备并以折衷方案取代其操作系统,安全芯片也不会让他们一秒钟猜测一百万个PIN或密码。它会减慢它们并将它们锁定在您的设备之外。

ARM 处理器通过TrustZone技术来实现TEE。

手机安全环境设计方案

我们再来看看手机安全环境的设计方案,目前主要分为三类:

  • 第一类是GP TEE环境,如ARM TrustZone。苹果iPhone在处理器SoC中整合的Secure Enclave与GP TEE类似。此类是与一般应用程式与作业系统共用硬体资源,然以软体做切割。目前没有信息表明iPhone Secure Element 中运行的是 GP TEE 兼容的实现。不过,随着 Apple 作为 GP 组织的 Full member 加入到该组织中,以及要求 Secure Enclave 给 iOS 开放更多的安全功能的呼声越来越高,可以预想,Apple 实现完整的 GP TEE 规范是指日可待的事情。
  • 第二类是高通Snapdragon 845整合SPU,虽然是同一颗SoC,但SPU有独立的CPU与RAM可使用,在软硬体方面皆独立。由于并非所有Android品牌厂商皆有独立安全芯片设计能力,因此高通在Snapdragon 845发展的SPU,可降低Android相关装置业者在高级资讯安全防护的进入门槛。
  • 第三类则是独立芯片Google Titan M与苹果笔记本上的T2等。独立芯片最大优势在于不需要与主芯片组共用硬体资源,大幅降低旁路攻击(Side-Channel Attack)管道以控制风险。

对于HTC Exodus手机来说,属于第1类。不过,其自身的TEE环境设计的是否有bug还有待时间的检验。

iPhone

Apple的Secure Enclave和ARM的TrustZone在技术上并不是另一个“芯片”。相反,在设备的主系统级芯片上内置了一个独立的隔离处理器。内置时,它仍然有一个单独的处理器和一个内存区域。把它想象成主芯片内部的芯片。

Apple的Secure Enclave保留了您的Face ID生物识别数据的关键。 手机上的数据以加密方式存储在磁盘上。锁定数据的密钥存储在安全区域中。当您使用PIN,密码,面部识别码或点ID解锁手机时,安全区域中的处理器会验证您并使用您的密钥在内存中解密您的数据。 此加密密钥永远不会离开安全芯片安全区域。如果攻击者试图通过猜测多个PIN或密码来登录,则安全芯片可以减慢它们的速度并在尝试之间执行延迟。即使该人已经破坏了设备的主操作系统,安全芯片也会限制其访问安全密钥的尝试。 在iPhone或iPad上,Secure Enclave存储加密密钥,用于保护您的面部(面部ID)或指纹(Touch ID)信息。甚至有人偷走了手机并以某种方式危及主iOS操作系统也无法显示指纹信息。

Apple also lets apps on your phone store their keys in the Secure Enclave for additional security(Use SecAccessControlCreateWithFlags(:::🙂 to create a suitable object). The Secure Enclave ensures its own software is signed by Apple before booting, so it can’t be replaced with modified software.

Google Pixel 3

Google的Titan M-chip还可以保护Android应用上的敏感交易。应用程序可以使用Android 9的新“StrongBox KeyStore API”在Titan M中生成和存储自己的私钥。它还可以用于其他类型的敏感交易,从投票到汇款。

在Pixel 3手机上,当您启动手机时,Titan M可确保您运行最新的安全Android版本。有权访问您手机的任何人都无法将您降级到已知安全漏洞的旧版Android。除非您输入密码,否则Titan M固件无法更新,因此攻击者甚至无法为Titan Ms.固件创建破坏性的替代品。

Samsung Galaxy S10

ARM的TrustZone与Secure Enclave非常相似。它使用主处理器中的安全区域来运行关键软件。安全密钥可以存储在这里。 Samsung KNOX安全软件在ARM TrustZone区域运行,因此它与系统的其他部分隔离。 Samsung Pay还使用ARM TrustZone安全地处理支付卡信息。

另外,还有一家叫做Sirin的以色列公司推出了加密货币专用手机Finney,其将加密货币钱包作为一个完全独立于主设备的硬件钱包运行,有单独的屏幕,旨在保护私钥并生产、签名区块链交易,而且仅在用户进行交易的时候才会访问联网原生钱包。有点像Android手机 + imKey硬件钱包的合体吧。

由以上信息可见,对于imToken这类热钱包,如果想变得更安全,就需要和这三种安全环境方案进行对接。目前,业界已经有一款叫做 TrustVault 的热钱包支持iPhone的 Secure Enclave,并且将支持Pixel 3,下面再详细介绍。

TrustVault

TrustVault 是由Trustology.io推出的,18年底Trustology 在ConsenSys 和 Two Sigma Ventures 领头之下,在种子轮募得800万美元。

目前,TrustVault 仅与iPhone 兼容。该公司表示是因为从过去的纪录来看,iPhone 提供的隔离安全环境(Secure Enclave)是目前最受信任的。 不过,Tru​​stology 的首席执行长艾力克斯・巴特林Alex Batlin也表示 Google Pixel 3 手机有「Titan M 晶片」,这种晶片能提供比iPhone 更安全的隔离环境。他接着说道: 「我们很快就会推出跟Andriod 兼容的版本。」早期使用者每个月的收费为「4.99 英镑」,这种收费模式很难让用户接受。

如果手机遗失,Trustology 可以帮客户恢复帐户,因为密码钱包的私钥不存放在手机里。 实现方式是其设置了两把私钥,步骤如下:

  • 首先,打开应用后需要KYC认证,在完成KYC 之后,会在手机内的隔离安全环境(Secure Enclave)创建用户身份私钥,TrustVault 会将这把私钥锁定该用户身份,注意这个私钥并不是区块链钱包私钥。
  • 接下来在 TrustVault 建立区块链帐户,而建立区块链帐户是需要签下在手机内的隔离安全环境(Secure Enclave)的用户身份私钥。接下来就会在硬体安全模块(HSM – Hardware security module)创建一把区块链钱包私钥。备注:An HSM is a physical computing device that safeguards and manages digital keys for strong authentication and provides crypto processing. Our HSM are hosted in secure data centres.

ConsenSys 的创办人鲁宾(Joseph Lubin)形容 Trustology 是「企业等级的安全性,但是人人都可以用。」他接着说: 「从现在开始,密码货币钱包将重新定义,热钱包就是新的冷钱包。」

这种相当于把私钥存到了交易所,或者银行,主要看其HSM的安全性是否能比交易所高,是否能达到银行安全级别,我们需要对HSM进一步了解。

HSM硬件安全模块

来自维基百科的介绍:

硬件安全模块(英语:Hardware security module,缩写HSM)是一种用于保障和管理强认证系统所使用的数字密钥,并同时提供相关密码学操作的计算机硬件设备。硬件安全模块一般通过扩展卡或外部设备的形式直接连接到计算机或网络服务器。

由于HSM通常是公钥基础设施(PKI)或网上银行一类关键基础设施的一部分,一般会同时使用多个HSM以实现高可用性。一些HSM具备双电源、无需停机更换配件(如冷却风扇)等设计,以确保在数据中心等环境中的高可用性要求。

考虑到硬件安全模块(HSM)在应用程序与基础设施的安全中扮演的关键角色,此类密码学模块通常都会经过Common Criteria、FIPS 140等受到国际承认的认证。这将为用户提供产品设计与实现上的保障,同时确保相应的密码学算法能按预期方式正确工作。FIPS 140安全认证最高认证等级为Level 4(整体),当前仅有极少数HSM成功通过这一等级的认证,大部分设备处于Level 3等级。

由此可见,我们需要关注 Trustology 是否拿到了相关的安全认证。

参考材料

可信执行环境总结:Trusted Execution Environment Survey
http://www.vonwei.com/post/TEESurvey.html

Trustology 发布了在可运行在iPhone 上的「金融机构」等级密码货币钱包
https://www.blocktempo.com/huobi-hbus-institutional-otc-crypto-lending

About 通证“通”

微信公众号: 通证通 (ID : TokenHand)

View all posts by 通证“通” →