用于在没有内部非易失性存储器的设备中提供防回滚保护的方法

文档序号:8476691阅读:357来源:国知局
用于在没有内部非易失性存储器的设备中提供防回滚保护的方法
【专利说明】
【背景技术】
[0001]本申请内容的方面涉及具有近场通信(NFC)技术的设备。NFC技术可以通过将不同设备触碰在一起或将它们非常靠近而在它们之间建立无线通信。NFC允许双向通信。例如,当两个设备都开启时可以进行NFC点对点通信。另外,通信也可能是在NFC设备和无源的NFC芯片之间的。例如,NFC可以涉及发起者和目标,其中发起者生成能够启动被动目标(例如、牌、钥匙扣、卡)的射频场。
[0002]NFC技术可以有助于安全业务(比如支付业务)中的信息交换。具有NFC功能的移动设备可以用于无接触支付系统,类似于那些当前用在信用卡和电子票智能卡中的移动设备。例如,具有NFC功能的移动设备允许用户将财务账户存储在虚拟钱包中,然后在接受这样的支付方法的终端处使用具有NFC功能的移动设备。具有NFC功能的移动设备还可以用作接入控制的标识,例如取代用于物理接入(例如,酒店房间)或控制(例如,发动汽车)的传统钥匙。NFC能够促进其它类型的信息(例如,在移动电话之间传输媒体、场地入口的门票)。
[0003]假定具有NFC功能的移动设备会涉及到安全业务中,保护具有NFC功能的移动设备不受恶意攻击是很重要的。尽管软件安全性一般是由在系统内对多个方法进行分层来提供的,但是关键的考虑是系统应该运行最新和最安全的软件版本。
[0004]系统上通常使用的攻击途径是回滚攻击,其中,使系统运行更旧的、不安全的软件版本而不是最新版本。运行较旧的软件版本可以使系统更容易受到潜在攻击。因此,为了防止回滚攻击,需要在更新或安装软件时安装最新软件版本。
[0005]防回滚保护的当前方法是由移动设备的操作系统来检查安装的或更新的软件的版本号。但是,攻击者能够很容易地找到操作系统中的易攻击点以操作代码并覆盖这一保护机制。
[0006]另一种方法是使用e-Fuse技术来提供“最近安装的版本”信息。因为e-Fuse无法被物理地重写,它们是相当安全的。但是,这一方法有一些缺点,因为通常有固定的相对较低数量的电熔丝可用,并且一旦这些耗尽就无法再提供防回滚保护。因此,一旦无法用正确的版本号更新e-Fuse,则有回滚攻击的潜在可能。
[0007]例如,每次有对版本号的更新,则用新的版本号更新e-Fuse。因此,如果e_Fuse技术允许十次更新,那么对于第十一次更新,新的版本号无法存储在e-Fuse上。
[0008]另外,在e-Fuse方法中,要求对芯片的物理访问,并且这只能实现在单个芯片上。因此,e-Fuse方法是无法扩展的。在e_Fuse方法中,该实现需要在芯片制造工厂中进行。

【发明内容】

[0009]描述了在没有内部非易失性存储器的设备中提供防回滚保护的某些实施例。
[0010]本发明的各个实施例确保被下载到设备上的新的固件版本高于先前版本,以便防止回滚攻击。由于固件版本逐渐增加,通过将潜在的固件升级版本与安全元件环境中存储的版本号进行比较,可以防止该设备受到回滚攻击。另外,由于该版本号存储在移动设备的安全元件环境中,因此本发明在启动阶段就提供防回滚保护,甚至当设备没有内部非易失性存储器时也提供防回滚保护。此外,本发明的实施例可以防止软件和硬件攻击。
[0011]一个实施例包括用于在设备中提供防回滚保护的方法,包括:获取与针对所述设备的第一固件安装相关联的固件版本号(FVN),其中,所述设备是在不包括非易失性存储器的基底上实现的;获取最低可接受固件版本号(LAFVN),其中,所述LAFVN存储在安全元件环境中,其中,所述安全元件环境利用独立于所述基底的存储器;以及比较所述FVN和所述LAFVN,其中,如果所述FVN小于所述LAFVN,则不允许所述第一固件安装。
[0012]另一个实施例包括用于提供防回滚保护的设备,包括:一个或多个处理器;以及存储计算机可读指令的存储器,当所述计算机可读指令由所述一个或多个处理器执行时,使得所述设备进行以下操作:获取与针对所述设备的第一固件安装相关联的固件版本号(FVN),其中,所述设备是在不包括非易失性存储器的基底上实现的;获取最低可接受固件版本号(LAFVN),其中,所述LAFVN存储在安全元件环境中,其中,所述安全元件环境利用独立于所述基底的存储器;以及比较所述FVN和所述LAFVN,其中,如果所述FVN小于所述LAFVN,则不允许所述第一固件安装。
[0013]另一个实施例包括存储计算机可执行指令的一个或多个计算机可读介质,当所述计算机可执行指令被执行时使得设备进行以下操作:获取与针对所述设备的第一固件安装相关联的固件版本号(FVN),其中,所述设备是在不包括非易失性存储器的基底上实现的;获取最低可接受固件版本号(LAFVN),其中,所述LAFVN存储在安全元件环境中,其中,所述安全元件环境利用独立于所述基底的存储器;以及比较所述FVN和所述LAFVN,其中,如果所述FVN小于所述LAFVN,则不允许所述第一固件安装。
[0014]另一个实施例包括用于提供防回滚保护的设备,包括:一个或多个处理器;用于获取与针对所述设备的第一固件安装相关联的固件版本号(FVN)的单元,其中,所述设备是在不包括非易失性存储器的基底上实现的;用于获取最低可接受固件版本号(LAFVN)的单元,其中,所述LAFVN存储在安全元件环境中,其中,所述安全元件环境利用独立于所述基底的存储器;以及用于比较所述FVN和所述LAFVN的单元,其中,如果所述FVN小于所述LAFVN,则不允许所述第一固件安装。
【附图说明】
[0015]以举例说明的方式示出本公开内容的方面。在附图中,相同的引用序号指示相似的元件,并且:
[0016]图1A示出了可以合并一个或多个实施例的有具有NFC功能的移动设备的系统的简化图;
[0017]图1B示出了可以合并一个或多个实施例的有至少两个具有NFC功能的移动设备的对等通信系统的简化图;
[0018]图2A依照本发明的一个实施例示出了展示具有NFC功能的移动设备的框图;
[0019]图2B依照本发明的另一个实施例示出了展示具有NFC功能的移动设备的框图;
[0020]图2C依照本发明的另一个实施例示出了展示具有NFC功能的移动设备的框图;
[0021]图3依照一些实施例示出了提供防回滚保护的示例方法;
[0022]图4依照一些实施例示出了系统级流程图的示例;
[0023]图5依照一些实施例示出了 NFCC启动、固件安装和签名认证的示例;
[0024]图6是依照一些实施例的更新安全环境中存储的最近安装的固件版本号的示例性方法;
[0025]图7是依照一些实施例的在强制更新之后更新安全环境中存储的最近安装的固件版本号的示例性方法;以及
[0026]图8示出了可以实现一个或多个实施例的计算系统的示例。
【具体实施方式】
[0027]下面将针对附图描述几个解释说明性的实施例,附图是实施例的一部分。下面虽然描述了可以在其中实现本申请内容的一个或多个方面的特定实施例,但是也可以使用其它实施例并且可以在不脱离本申请内容的范围或所附权利要求的精神的前提下做出各种修改。
[0028]NFC技术可以要求NFC控制器(NFCC)用作对敏感的或有价值的信息(例如,支付业务)的传输途径。但是,NFC技术也可能容易被窃听。因此,NFCC需要不受窃听的安全性,比如被用作对其被用于传输的数据的攻击途径。具体来讲,需要确保NFCC无法用作针对其传输的数据的中间人(MITM)攻击的主机。
[0029]MITM攻击是一种活跃的窃听形式,其中,攻击者与受害者(例如,发起者、目标)进行独立连接并且在它们之间中继消息,使受害者相相信它们在直接相互交谈,但实际上其对话是由攻击者控制的。
[0030]如果该NFCC运行较旧的固件版本,MITM攻击可能是由NFCC控制的,尤其是在较旧版本具有已知的安全问题时。例如,在固件升级过程中,运行在移动设备上的高等级应用可以配置NFCC并请求在该NFCC上进行固件安装(例如,补丁)。但是,攻击者可以使用该固件安装请求将NFCC上的固件回滚到较旧的版本。该高等级应用可以使用标准协议与NFCC(例如,NFC控制器接口(NCI))通信或者它可以使用专有机制。本发明可以提供固件安装过程中的防回滚保护。
[0031]图1A示出了可以合并一个或多个实施例的有具有NFC功能的移动设备的系统的简化图。
[0032]图1A中示出的依照本发明的一个实施例的NFC模块140可以被安装在移动设备110中。移动设备110还可以包括应用处理器120和用户识别模块(SM)卡130。NFC模块140可以通过接触或非接触NFC来与读卡器150通信。NFC模块140可以包括NFC控制器(NFCC) 145。根据这一实施例,NFCC 145是嵌入在NFC模块140中的。应用处理器可以包括高级应用(例如,支付处理应用、操作系统)以便与NFC模块140和NFCC 145通信。
[0033]具有NFC功能的移动设备通信的示例可以包括想要使用该移动设备为所购买的商品向零售商进行支付的用户。移动设备可以向位于结账台处的销售读卡器150的点发送个人财务信息(例如,信用卡账号信息)。用户可以将配备有NFC模块140的移动设备110靠近读卡器150以完成购买。读卡器150通过NFC接收用户的信用卡细节(通常存储在移动设备110的安全环境中),并且用传统方法处理该支付,并向用户返回可以存储在该移动设备110中的电子收据。
[0034]此外,依照本发明的一个实施例,第二 NFC模块190可以被安装在第二移动设备160中,并且能够实现与移动设备110的对等通信,如图1B中所示。类似于移动设备110,第二移动设备160还可以包括应用处理器170、SIM卡180和第二 NFC模块190。该第二 NFC模块190可以包括第二 NFCC195。
[0035]点对点通信的例子可以包括:一个用户通过NFC向第二用户传输图片、视频和其它信息,这是由它们双方将各自的具有NFC功能的移动设备相互非常靠近来进行的。当设备非常靠近时,NFC模块140可以尝试向第二 NFC模块190发送信息(包括认证信息)。在第二 NFC模块190接收该消息并执行认证之后,这两个设备可以共享信息。
[0036]依照一些实施例,移动设备110利用NFC模块140来协同在安全环境中取回或存储数据。例如,移动设备I1可以获取安全元件环境中存储的信用卡数据并通过NFC模块140来传输它。另外,具有NFC功能
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1