现在的手机具有许许多多的新运用,包含存储敏感数据,以及供给像移动付费这类的安全事务。跟着运用手机存储要害信息的现象前所未见地添加,怎么保护手机不受那些能够盗取或乱用信誉卡号码或安全数据内容密钥的流氓软件的损害,并保护数据的安全正变得日益重要。
手机需求一个可信赖的履行环境(EE),来确保敏感数据的安全存储和处理而不被盗用。一个可信赖的EE指的是使命的履行如预期所想。可信赖的运算组织(TCG)选用行为名声(behavioral reputation)的概念,此刻指的是文档中的“可信赖运算”。可信赖的行为是安全技能中的要害部分,因为它使人们信赖一个EE的行为,然后答应人们剖析环境安全的各个方面。完好了解怎么创立和保护一个可信赖的EE,将有助于像手机付出这类的运用。一旦客户、银行以及各种商业组织都能充沛信赖这些运用是安全的,这方面的运用将会添加。
在《移动手机的安全》一书中,Chris J. Mitchell以为下面的几个方面是与移动运算相关的首要安全问题:鉴权、数据完好性、数据保密性以及非狡赖性(non-repudiation)。文中阐释了安全存储器在供给作为一个可信赖EE的这些事务方面所扮演的要害作用,包含能够支撑多方相关者的丰厚拜访操控机制。
可信赖的履行环境
一个EE是一些界说一个运算架构的软硬件的调集。一个EE可所以一个带有存储器的简略CPU,或者是一个运转在担任办理一个处理器和各种外设的OS顶层JAVA虚拟机。一个可信赖的EE是一个其履行与预期相一致的运算环境。TCG所指的行为名声的概念,便是本文中的可信赖运算。
明显,供给安全事务需求行为名声。TCG以及其它组织所选用的评价行为名声的计划是界说一个安全的发动进程,来验证手机的发动处于可信赖状况。这个可信赖状况的承认是经过验证手机中所履行代码(OS及其它)的完好性来取得的。
可是,只是是供给安全发动关于供给一个可信赖的EE来说是不行的,因为体系在安全发动后会遭受流氓软件的进犯,在任何大型的OS中都有一些流氓软件能够运用的安全漏洞。主张选用运转期间的完好性查看来承认代码的完好性。这些查看能够周期性地进行,也能够在要害事情产生前进行。不过,运转期间的完好性查看只能在进犯产生时方可检测到。尽管这能够下降损坏性的危险,但在存在流氓软件的环境中还不能供给一个可信赖的EE。
依据闪存的安全性
许多对PC和手机的进犯能够追溯到进犯者修正非易失性存储器中的数据/代码。依据闪存的安全技能保护存储器免受这类进犯,避免未经授权的修正。单单是在基带处理器中提高安全保护的手机无法避免对闪存的修正。它只是能够查看到数据的修正而作为完好性查看的一部分,这种查看在某些情况下也显得有点太迟。
TCG创立了可信赖的渠道模组(TPM)的概念,当其与PC集成到一一起,为很多的运用供给了改善的依据硬件的安全性。TPM是一个存储密钥、暗码和数字鉴权的微操控器,一般安装到PC的主板上。TCG的手机工作组将TPM这一概念扩展到其MTM规范中手机的EE。与TPM和MTM不一样,依据闪存的安全不只是是检测完好性的失效,还确保完好性坚持在一个合理的要挟模型(threat model)之下。该功用叫做完好性保护存储器,对避开针对手机的非易失性存储器的进犯非常重要。一个没有依据闪存的安全体系的MTM只能够检测数据/代码的改动,却无法有用地避免。但MTM检测到数据/代码的改动时,损坏或许现已产生了。
依据闪存的安全所供给的完好性保护的另一个重要成果是数据的有用性。可信赖EE的其它解决计划会集在数据的保密性上。例如,它们确保流氓软件无法读取用户的信誉卡号码,但却无法确保信誉卡号码不被病毒所删去,然后导致不计其数的用户无法运用他们的手机来进行移动付出。而依据闪存的安全技能则能够一起供给上述保密性和有用性。
依据闪存的安全体系(图1)选用多芯片封装,包含非易失性存储器(闪存)以及一片供给对非易失性存储器的拜访操控的安全处理器。该安全处理器还用作为一个可信赖的EE,用于手机中供给安全事务。该安全处理器作为一个可信赖EE对错常抱负的,因为它最接近存储完好性保护代码、数据以及密钥的非易失性存储器。因为它也是一个阻隔的环境,只能履行依据闪存的安全体系所供给的专用软件,因此不会遭到像缓冲器溢出这类的进犯。
图1:怎么将依据闪存的安全体系嵌入到手机中。 |
图2所示的是一个安全体系的方框图。其间,CPU是一片ARM7-TDMI处理器,运转速率约60MHz。加密引擎支撑均衡加密(AES、DES、3DES)和非对称加密(PKI based on RSA)算法。安全处理器作为主处理器(基带处理器运用处理器)与闪存之间的看门狗,监控一切对闪存的拜访。由安全处理器所供给的安全服务包含加密和闪存器材保护。
图2:依据闪存的安全体系方框图。 |
安全处理器及安全闪存服务
安全处理器为手机上运转的运用供给一个可信赖的EE。手机OEM和网络运营商严格操控安全处理器上运转的软件,并且是与主机彼此阻隔的。只要经验证且信赖的程序才干安装到安全处理器上。安全处理器上运转的软件比手机上运转的一般OS要小得多,故软件的验证比较简单。安全处理器供给与手机安全相关的四种安全服务(鉴权、数据完好性、数据保密性和非狡赖性)。图3给出了依据闪存的安全体系的软件结构。在主机渠道上完成的API供给安全存储服务,以及加密服务。API将功用呼叫转换成经过存储器接口发往安全处理器的音讯。
为了消除对安全处理器的歹意音讯进犯,运用精心界说的语法和语义规划这些音讯被。在一个音讯中,每个变量长度的数据域的开端带有一个特别符号,随后是域长度,它在数据之前。这与C字符串不一样,其长度只要当你阅读字符串并发现一个无效字符后方可知道其长度。有一个音讯剖析器来剖析音讯并查看是否是有用的语法,直到语法查看经往后才对数据进行处理,这就对缓冲器溢出这类的进犯供给了保护。然后,才依据音讯中特定域将音讯分发到正确的中介(agent)。该中介依据音讯中的规定为缓冲器分配满足的空间,并经音讯剖析器验证。只要有限的中介来处理有限的音讯,这些中介将细心地剖析安全漏洞。音讯不能生成能够在安全处理器中履行的恣意的本地代码。音讯中没有功用指针。
安全处理器供给安全存储器服务,包含存储密钥、证书、代码和数据。能够依据运用中的安全需求来制定这些内容的拜访权限。
图3:依据闪存的安全软件结构。 |
安全分区
非易失性存储器能够被分红独立的存储器分区,每个分区具有独自的拜访操控。有一个独自的硬件强制性拜访操控来操控程序的读取、程序的擦除,以及改动分区的拜访权限的其它动作。拜访能够经过暗码操控,为了增强安全性,也能够选用PKI鉴权。在不同的寿数阶段,由不同的保管者来创立这些分区。例如,网络运营商能够创立一个代码分区,其间包含OS和运营商的其他验证软件。该分区将只要一个读取拜访,没有任何的鉴权,故代码能够恣意地履行。而一起,程序的擦除却需求运营商的PKI鉴权。这就避免了主机渠道上运转的任何流氓软件来修正代码分区。然后在并非只是发动进程中的一切时间内,坚持了OS和其他相关软件的完好性。
具有丰厚的拜访操控的安全分区供给了数据完好性和保密性。该分区能够被保护,免于未授权的人运用暗码或PKI鉴权来读取拜访。然后供给了所需数据的保密性。相似地,分区还能够被保护避免未授权的写操作,然后坚持了数据的完好性。
该拜访操控还具有一个附加功用,即界说了独自分区的可用性。例如,在经过SIM卡锁查看之前,主代码分区被确定到只能读取。这就迫使在SIM卡锁查看没有经过之前无法运用手机。
存储目标
依据闪存的安全体系被用来存储数据、代码、密钥、证书以及代币。移动设备一般将密钥存在ROM中,但与闪存比较其灵敏性较差且容量有限。在非易失性存储器中加密的密钥也能够供给保密性,但无法避免密钥被流氓软件擦除。而依据闪存的安全体系则答应存储一个虚拟的数量无限的密钥。在任何时候能够运用OTA更新来添加更多的密钥。经过将存储目标存储到适宜的分区中,能够供给保密性,完好性和鉴权。
动态加密和加密服务
安全处理器还供给一个动态加密功用。该功用答应主机向存储器发送纯文本,文本在写入闪存时被加密。所用的加密算法是AES-CTR。
暗码服务是PKCS#11 API的一个子集。API独立于主机渠道,并支撑对称密钥和公钥。API将功用呼叫转换成送往安全处理器的音讯,在这里运用加密闪存内核进行处理。密钥的完好性和保密性得到很好的保护,因为它们不会脱离安全处理器。由安全处理器供给的加密服务答应人们在安全处理器与外部服务器之间创立一个安全的通讯信道。该通讯通道的安全与主机渠道无关。然后能够完成FOTA和移动商业这类的运用。安全处理器供给一个高档的设备鉴权,这是因为根密钥底子不会脱离安全处理器。
定论
依据闪存的安全体系供给了一个可信赖的EE,以及一个具有丰厚的拜访操控机制的安全非易失性存储器,支撑多方保管。具有PKI的安全非易失性存储器意味着代码和数据的完好性得到保护,成果使数据完好性和保密性愈加安全。鉴权和非狡赖性是安全处理器的成果,构成一个具有嵌入式加密闪存内核的阻隔式可信赖EE。此外,安全非易失性存储器使得数据在任何时候都可用。只是运用编码是不或许完成这一功能的。运用加密学,像MTM这类的其它计划尽管能够监测到数据是否被篡改,但却无法避免篡改。假如没有保护,病毒还能炸毁不计其数手机上的信誉卡号,然后使得用户无法进行移动付出。
有依据闪存的安全体系供给的存储器完好性保护使得密钥的装备愈加灵敏。具有较大的容量来存储加密密钥和数字证书。更进一步,还能够经过空中无线接口进行密钥更新。
对PC和手机的许多进犯能够追溯到非易失性存储器中数据和代码的篡改。依据闪存的安全体系保护存储器免受这类进犯,而其他类型的手机安全计划则不能。像MTM或基带安全解决计划倚赖的是安全发动以及在运转时间内查看数据和代码有无改动。实际上,在查看时,修正的代码或许现已对敏感数据进行了篡改。而避免对数据和代码的篡改,构建一个可信赖的EE是至关重要的。
选用依据闪存的安全存储器来创立并保护一个可信赖EE将有助于完成更先进的手机运用,例如手机付出安全和可靠性运用,并添加公共组织和顾客的选用。
修改:博子