安全会话密钥生成

申请号 CN200980118701.2 申请日 2009-04-07 公开(公告)号 CN102037707B 公开(公告)日 2015-06-03
申请人 交互数字专利控股公司; 发明人 L·J·古乔内; Y·多迪斯; Y·C·沙阿; I·查;
摘要 公开了一种用于在无线通信中确保通用 集成 电路 卡 (UICC)和终端之间的 接口 安全的方法和设备。认证和密钥协议(AKA)和基于UICC增强的通用自举架构(GBA)(GBA_U)程序的安全性被提高。安全共享会话密钥被用来加密UICC和终端之间的通信。安全共享会话密钥使用认证和非认证程序来生成。
权利要求

1.一种用于确保通用集成电路卡(UICC)和终端之间的通信安全的方法,该方法包括:
生成第一安全共享会话密钥,其中该第一安全共享会话密钥被配置成在需要所述UICC和所述终端之间的通信的程序期间,使能所述UICC和所述终端之间的安全通信,其中所述程序是认证和密钥协议(AKA)程序或通用自举架构(GBA)程序中的至少一者,其中生成所述第一安全共享会话密钥包括:
产生一所产生的密钥协商参数;
将所述所产生的密钥协商参数报告给所述UICC;
接收一所接收的密钥协商参数;以及
使用所述所产生的密钥协商参数和所述所接收的密钥协商参数来创建所述第一安全共享会话密钥,
使用所述第一安全共享会话密钥来对所述UICC和所述终端之间的通信进行加密以建立所述UICC和所述终端之间的安全通道;以及
通过在所述UICC和所述终端之间建立的安全通道来执行所述AKA程序或所述GBA程序中的所述至少一者。
2.根据权利要求1所述的方法,其中生成所述第一安全共享会话密钥包括从共享密文中导出所述第一安全共享会话密钥。
3.根据权利要求2所述的方法,其中从所述共享密文中导出所述第一安全共享会话密钥包括从密文中生成所述共享密文。
4.根据权利要求2所述的方法,其中导出所述第一安全共享会话密钥包括使用所述共享密文来执行伪随机函数(PRF)。
5.根据权利要求1所述的方法,其中所述GBA程序包括具有基于UICC增强的应用层GBA(GBA_U)程序。
6.根据权利要求1所述的方法,该方法还包括:
在所述UICC和所述终端之间的接口上创建隧道。
7.根据权利要求1所述的方法,其中生成所述第一安全共享会话密钥包括:
确定所述UICC和所述终端之间是否存在已有的安全共享会话密钥;以及在所述UICC和所述终端之间不存在已有的安全共享会话密钥的条件下,生成所述第一安全共享会话密钥。
8.根据权利要求1所述的方法,其中所述创建包括:
确定所述所产生的密钥协商参数与所述所接收的密钥协商参数是否相同;以及在所述所产生的密钥协商参数与所述所接收的密钥协商参数相同的条件下,导出所述第一安全共享会话密钥。
9.根据权利要求1所述的方法,其中所述产生包括:
选择随机质询(RAND)和序列号(SQN);
计算匿名密钥(AK)、消息认证码(MAC)、期望响应(XRES)和期望序列(XSQN);以及结合所述RAND、所述MAC和所述XSQN以产生所述所产生的密钥协商参数。
10.根据权利要求9所述的方法,其中所述计算包括:
使用共享密文和所述RAND来计算所述AK;
使用所述共享密文、所述RAND和所述SQN来计算所述MAC;
使用所述共享密文和所述RAND来计算所述XRES;以及
使用所述SQN和所述AK来计算所述XSQN。
11.根据权利要求1所述的方法,其中所述产生包括:
选择随机数;
计算认证值(Tag);以及
结合所述随机数和所述Tag以产生所述所产生的密钥协商参数。
12.根据权利要求1所述的方法,其中所述产生包括:
选择会话密钥;
计算已加密会话密钥;以及
使用所述已加密会话密钥来产生所述密钥协商参数。
13.根据权利要求1所述的方法,其中所述生成包括执行棣弗-赫尔曼密钥交换协议。
14.一种无线发射/接收单元(WTRU),该WTRU包括:
通用集成电路卡(UICC),被配置为:
生成第一安全共享会话密钥,其中该第一安全共享会话密钥被配置成在需要所述UICC和所述终端之间的通信的程序期间,使能所述UICC和所述终端之间的安全通信,其中所述程序是认证和密钥协议(AKA)程序或通用自举架构(GBA)程序中的至少一者,以及所述终端,被配置为:
产生一所产生的密钥协商参数;
将所述所产生的密钥协商参数报告给所述UICC;
从所述UICC接收一所接收的密钥协商参数;
使用所述所产生的密钥协商参数和所述所接收的密钥协商参数,生成所述第一安全共享会话密钥;
使用所述第一安全共享会话密钥来对通信进行加密以建立所述终端和所述UICC之间的安全通道;以及
通过在所述UICC和所述终端之间建立的安全通道执行所述AKA程序或所述GBA程序中的所述至少一者。
15.根据权利要求14所述的WTRU,其中所述UICC被配置为通过从共享密文中导出所述第一安全共享会话密钥来生成所述第一安全共享会话密钥,并且所述终端被配置为通过从所述共享密文中导出所述第一安全共享会话密钥来生成所述第一安全共享会话密钥。
16.根据权利要求15所述的WTRU,其中所述UICC被配置为通过从第一密文中生成所述共享密文而从所述共享密文中导出所述第一安全共享会话密钥,并且所述终端被配置为通过从第二密文中生成所述共享密文而从所述共享密文中导出所述第一安全共享会话密钥。
17.根据权利要求15所述的WTRU,其中所述UICC被配置为通过使用所述共享密文执行伪随机函数(PRF)来导出所述第一安全共享会话密钥,并且所述终端被配置为通过使用所述共享密文执行伪随机函数(PRF)来导出所述第一安全共享会话密钥。
18.根据权利要求14所述的WTRU,其中所述UICC被配置为建立与所述终端之间的安全通道。
19.根据权利要求18所述的WTRU,其中所述GBA程序包括具有基于UICC增强的应用层通用自举架构(GBA)(GBA_U)程序。
20.根据权利要求14所述的WTRU,其中所述终端被配置为:
确定所述所产生的密钥协商参数与所述所接收的密钥协商参数是否相同;以及在所述所产生的密钥协商参数与所述所接收的密钥协商参数相同的条件下,生成所述第一安全共享会话密钥。
21.根据权利要求14所述的WTRU,其中所述终端被配置为:
选择随机质询(RAND)和序列号(SQN);
计算匿名密钥(AK)、消息认证码(MAC)、期望响应(XRES)以及期望序列(XSQN);以及使用所述RAND、所述MAC和所述XSQN来产生所述所产生的密钥协商参数。
22.根据权利要求21所述的WTRU,其中所述终端被配置为:
使用共享密文和所述RAND来计算所述AK;
使用所述共享密文、所述RAND和所述SQN来计算所述MAC;
使用所述共享密文和所述RAND来计算所述XRES;以及
使用所述SQN和所述AK来计算所述XSQN。
23.根据权利要求14所述的WTRU,其中所述终端被配置为:
选择随机数;
计算认证值(Tag);以及
使用所述随机数和所述Tag来产生所述所产生的密钥协商参数。
24.根据权利要求14所述的WTRU,其中所述终端被配置为:
选择会话密钥;
计算已加密会话密钥;以及
使用所述已加密会话密钥来产生所述所产生的密钥协商参数。
25.根据权利要求14所述的WTRU,其中所述UICC被配置为执行棣弗-赫尔曼密钥交换协议,并且所述终端被配置为执行棣弗-赫尔曼密钥交换协议。

说明书全文

安全会话密钥生成

技术领域

[0001] 本申请涉及无线通信

背景技术

[0002] 认证和密钥协议(AKA)程序被用来在第三代合作伙伴计划(3GPP)通信网络中为无线发射/接收单元(WTRU)建立认证和共享安全密钥。AKA提供在两方之间安全的相互认证。另外,基于AKA程序的基于UICC增强的应用层通用自举架构(GBA)(GBA_U)提供了启动应用安全性的方式。然而,AKA和基于UICC增强的应用层通用自举架构(GBA)(GBA_U)程序不保护连接WTRU的通用集成电路卡(UICC)和终端的接口的安全性。在AKA和GBA_U过程期间,关键密钥相关材料从UICC传递到终端。因此,当本地密钥还没有被建立和当建立的本地密钥过期时,会话密钥(例如CK/IK和Ks_ext_NAF)在销售点处对终端的初始化规定期间被暴露。
[0003] 现行的被设计来保护UICC和终端之间的连接的协议不能被初始化直到AKA和GBA_U过程结束。因此,这些协议允许密钥的窃听。在AKA和GBA_U过程之后,通过与无线网络元件的交互和通过无线网络元件的参与而为其他应用层过程来确保终端和UICC之间的链路安全的尝试不能解决这些缺陷
[0004] 因此,存在对确保终端和UICC之间通信安全的改进的方法和设备的需要。发明内容
[0005] 公开了一种用于确保通用集成电路卡(UICC)和终端之间的接口安全的方法和设备。认证和密钥协商(AKA)和具有基于UICC增强的应用层通用自举架构(GBA)(GBA_U)程序的安全性被提高。安全共享会话密钥被用来加密UICC和终端之间的通信。安全共享会话密钥使用认证或非认证程序来生成。附图说明
[0006] 从以下描述中可以更详细地理解本发明,下面的描述是以实例的形式给出的,并且可以结合附图加以理解,其中:
[0007] 图1显示的是用于执行安全会话密钥生成的无线发射/接收单元的示例;
[0008] 图2显示的是被配置作为执行无线通信的手持话机的终端的示例;
[0009] 图3显示的是与所连接设备共同执行安全会话密钥生成的无线发射/接收单元的示例;
[0010] 图4显示的是执行无线通信的网络的示例;
[0011] 图5显示的是确保通用集成电路卡和终端之间通信安全的会话密钥生成的示例;
[0012] 图6显示的是使用AKA程序的显式相互认证的示例;
[0013] 图7显示的是使用一次认证加密的显式相互认证的示例;
[0014] 图8显示的是使用一次认证加密和重放保护的显式相互认证的示例;
[0015] 图9显示的是隐式相互认证的示例;
[0016] 图10显示的是具有重放保护的隐式相互认证的示例;
[0017] 图11显示的是在无认证情况下共享密文密钥建立的示例。

具体实施方式

[0018] 当在下文中提及时,术语“无线发射/接收单元(WTRU)”包括但不局限于用户设备(UE)、移动站、固定或移动用户单元、传呼机、蜂窝电话、个人数字助理(PDA)、计算机、或能在无线环境中运行的任何其它类型的设备。当在下文中提及时,术语“基站”包括但不局限于节点B、站点控制器、接入点(AP)或能在无线环境中运行的任何其它类型的接口设备。术语“WTRU”和“基站”并不是相互排斥的。
[0019] 图1是用于执行安全会话密钥生成的无线发射/接收单元(WTRU)100的示例框图。WTRU 100包括通用集成电路卡(UICC)110和终端120。UICC与终端通过接口130进行通信。为示例性说明的目的,示出了WTRU 100包括UICC 110和终端120。UICC 110或终端120可以以任何方式被配置,只要它们能如在这里所描述的一样进行通信。例如,图3示出的例子,在其中终端120被设置在连接设备上。
[0020] 图2是配置为用于执行无线通信的手持话机的终端120的示例框图。终端120包括处理器210、天线220、用户接口230和显示器240。
[0021] 图3是与连接设备300共同执行安全会话密钥生成的无线发射/接收单元(WTRU)100的示例框图。在WTRU 100中的UICC 10与在连接设备300中的终端120通过接口130进行通信。连接设备300可以是个人电脑(PC),或者被配置作为终端120的任何其它设备。接口130可以是有线或无线接口。被列举在这里的方式和设备包括UICC 110和终端120的任意其它组合或配置。可选择的,终端120可以包括内部的或外部的UICC读取器。
[0022] 例如,连接设备300可以是手提式电脑。手提式电脑可以通过以太网连接而被连接到互联网。手提式电脑也可以通过蓝牙接口130被连接到WTRU 100。在WTRU 100中的UICC 110还可以使用在手提式电脑中的终端120以执行需要安全连接的通信。可替代地,手提式电脑中的终端120可以使用WTRU 100中的UICC 110以执行需要安全连接的通信。
[0023] 图4是用于执行无线通信的网络400的示例框图。网络400包括WTRU 100、无线电接入网(RAN)及核心网络(CN)420。RAN 410包括基站430和无线电网络控制器(RNC)440。CN 420包括访问位置寄存器(VLR)450和归属位置寄存器(HLR)460。网络400也包括窃听器(EVE)490。基站430充当RAN 410的网络实体点。RNC 440在无线通信中实现多种功能,如无线电资源管理、移动性管理功能及加密功能。VLR 450存储用来进行无线通信的关于WTRU 100的信息,如用户服务简档及设备位置区域的拷贝。存储用户服务简档的原版拷贝的HLR 460实现切换功能并且管理WTRU 100和网络400之间的无线通信。
[0024] 图5是用于确保UICC 110和终端120间的接口130安全的会话密钥生成的实例。在510中,终端120识别可以被用来加密与UICC 110的通信的密文。类似地,在515中,UICC识别可以被用来加密与终端120的通信的密文。可选择地,识别后的密文是预先设置的共享密文。在520中,使用密文在接口130建立隧道(tunnel),因此在UICC 110和终端
120之间的通道由于各自的密文而确保安全。在525中,隧道被用来共享在获得安全共享会话密钥中使用的数据。
[0025] 接下来,在530中,终端120从它的密文中获得安全共享会话密钥ST。类似地,在535中,UICC 110从它的密文中获得安全共享会话密钥SU。可选择地,在530、535中,UICC
110和终端120也执行相互认证。在540中,安全会话密钥ST、SU 被用来建立UICC 110和终端120之间的安全通道,由此通过安全通道传递的信息的保密性和完整性被保护。然后,在550中,UICC 110和终端120通过安全通道实现AKA 300和GBA_U 400过程。
[0026] 在一些实施例中,共享密文K被用来执行具有适应任意长度输入能的关键伪随机函数(PRF),如使用SHA-256的HMAC,使用AES-128的加密的CBC MAC,或者AKA安全函数。使用共享密文K和输入x的PRF可以被表示为fK(x)。类似地,表示法fK(x,y)表示在所示的参数的级联上执行PRF。PRF族是相关单向、不可逆PRF的集合,在其中可变比特长度的值被转换为固定长度的比特序列(即,128或256)。例如在PRF族中的第一个PRF可以被表示为fκ(0,Y,Z),并且在PRF族中的第二个PRF可以被表示为fκ(1,Y,Z),由此具有首项0的PRF与具有首项1的PRF产生不同的结果。
[0027] 在一些实施例中,终端120被配置来生成随机质询(RAND),匿名密钥(AK)以及序列号(SQN)。终端120也被配置来计算消息认证码(MAC),期望响应(XRES),期望序列号(XSQN)或认证值(Tag)。类似地,UICC110被配置来生成响应(RES)或期望认证值(XTag)。本领域普通技术人员可以理解RAND、AK、SQN、MAC和XRES可以依照现有技术中的多种相应函数中的任一些而被生成。可选择地,这些函数可以是由第三代合作伙伴计划(3GPP)定义的密钥生成函数。终端120也可以被配置来发送计算的值给UICC 110。终端120也可以被配置接收来自UICC 110的响应(RES)并且为UICC 110的认证来比较计算的值与接收到的值。同样地,UICC 110被配置来发送值给终端120,并且为UICC 110的认证来比较计算的值与接收到的值。终端120和UICC 110也被配置来独立地导出共享值,如共享会话密钥及匿名密钥。为了清楚起见,UICC 110产生的值可以用下标U表示,同时在终端120产生的值可以用下标T表示。例如,在UICC 110中的AKU有与终端120中的AKT相同的值。
[0028] 图6示出了显式的相互认证和会话密钥生成方法600的实例。首先,在610,终端120生成RAND和SQNT。在620,终端120也计算MAC、XRES、AKT和XSQN。基于共享密文K、RAND及SQNT来计算出MAC。XRES表示认证代码,并且通过使用共享密文K和RAND被计算出。使用共享密文K和RAND来生成AKT。可选择地,AKT与SQNT大小相同。通过执行SQN和AKT的按位异或(XOR or ⊕)来计算出XSQN。
[0029] 然后,在630,终端120通过接口130发送MAC、RAND及XSQN到UICC 110。在640,UICC 110计算出AKU、SQNU及期望的MAC(XMAC)。使用共享密文K和接收到的RAND来计算AKU。通过执行AKU和XSQN的按位异或来计算出SQNU。使用共享密文K、RAND及SQNU来计算出XMAC。可选择地,在UICC 110中被用来计算AKU的函数是与在终端120中计算AKT的函数相同的。
[0030] 然后,在650,UICC 110比较XMAC与MAC。如果XMAC与MAC不相等,则在655,认证过程失败并且以失败状态终止。可选择地,在预定的间隔时间之后认证过程可以被重新启动。否则,在660,终端120被证实,并且UICC 110使用共享密文K和RAND来计算RES。在670,UICC 110发送RES到终端120,并且在680,导出共享会话密钥SU。例如,使用RAND和共享密文K来导出共享会话密钥。
[0031] 最后,在690,终端120比较RES和XRES。如果RES和XRES不相等,则在691,认证过程失败并且以失败状态终止。可选择地,,在预定的时间间隔之后认证过程可以被重新启动。否则,在692,UICC 110被证实,并且终端120导出共享会话密钥ST。UICC 110和终端120然后使用共享会话密钥SU、ST来执行GBA_U 400和AKA 300程序。
[0032] 图7示出了使用一次认证加密的显式的相互认证和会话密钥生成方法700的实例。在705,终端120生成会话密钥ST和随机数R。可选择地,使用计数器来选择随机数R(nonce),并且计数器是增量型的。在710,终端120使用共享密文K、随机数R来计算会话密钥ST的加密会话密钥e,并且计算随机数R以及加密会话密钥e的元组(tuple)E。依照下面的向量表示法通过加密过程来生成元组E:
[0033] E=(R,e=fK(0,R)⊕ST)。 方程式(1)
[0034] 然后在720,终端120依照下面的方程式使用共享密文K、随机数R和加密会话密钥3来计算认证值Tag:
[0035] Tag=fK(0,R,e)。 方程式(2)
[0036] 然后,在730,终端120通过接口130发送元组E和认证值Tag给UICC 110。在740,UICC 110使用共享密文K和接收到的元组E来验证接收到的认证值Tag。验证可以被表示为:
[0037] Tag==fK(0,R,e)。 方程式(3)
[0038] 如果接收到的认证值Tag未通过验证,则在745,认证过程失败并且以失败状态终止。可选择地,认证过程可以在预定的时间间隔后重新启动。否则,在750,终端120通过认证,并且UICC依据下面的方程式解密会话密钥SU:
[0039] SU=fK(0,R)⊕e。 方程式(4)
[0040] 然后,在760,UICC 110计算期望认证值(XTag)。该计算可以被表示为:
[0041] XTag=fK(1,R)。 方程式(5)
[0042] 在770,UICC 110通过接口130发送期望认证值XTag给终端120。在780,终端120使用共享密文K和随机数R来验证接收到的Xtag。该验证可以被表示为:
[0043] XTag==fK(1,R)。 方程式(6)
[0044] 如果XTag通过验证,则在790,UICC 110通过认证。否则,在791,认证过程失败并且以失败状态终止。可选择地,认证过程可以在预定的时间间隔之后被重新启动。
[0045] 图8示出了使用一次认证加密和重放攻击保护的显式的相互认证和会话密钥生成方法800。在805,UICC 110生成随机数N。虽然随机数在图8中被示出,但是可以使用任何适当的预置密钥协商参数。可选择地,随机数N使用计数器来生成,并且该计数器是增量型的。然后在810,UICC 110通过接口130发送随机数N到终端120。
[0046] 在820,终端120生成会话密钥ST和随机数R。可选择地,随机数R被使用计数器来生成,并且计数器是增量型的。在830,终端120使用共享密文K和随机数R依据方程式1来计算会话密钥ST的加密会话密钥e。然后在840,终端120使用共享密文K、随机数R、加密会话密钥e以及随机数N来计算认证值Tag。该计算可以被表示为:
[0047] Tag=fK(0,R,e,N)。 方程式(7)
[0048] 然后,在850,终端120通过接口130向UICC 110发送认证值Tag和随机数R的元组E以及加密会话密钥e。在860,UICC 110使用共享密文K、接收到的元组E和随机数N来验证接收到的认证值Tag。该验证可以被表示为:
[0049] Tag==fK(0,R,e,N)。 方程式(8)
[0050] 如果接收到的认证值Tag未通过验证,则在865,认证过程失败且以失败状态终止。可选择地,认证过程可以在预定间隔时间之后重新启动。否则,在870,UICC根据方程式4解密会话密钥SU。然后,在880,UICC 110根据方程式5来计算期望认证值XTag。
[0051] 在890,UICC 110通过接口130发送XTag给终端120。在892,终端120使用随机数R根据方程式6来验证接收到的XTag。如果XTag被验证,则在894,UICC通过认证。否则,在896,认证过程失败且以失败状态终止。可选择地,认证过程可以在预定间隔时间之后被重新启动。
[0052] 图9示出了隐式相互认证和会话密钥生成的实例。在900,终端120生成随机数R。可选择地,随机数R被使用计数器来生成,并且该计数器是增量型的。在910,终端120然后使用共享密文K和随机数R来计算认证值Tag。该计算可以被表示为:
[0053] Tag=fK(0,R)。 方程式(9)
[0054] 然后,在920,终端120通过接口130发送随机数R和认证值Tag给UICC 110。在930,UICC 100使用共享密文K和随机数R来验证接收到的认证值Tag。该验证可以被表示为:
[0055] Tag==fK(0,R)。 方程式(10)
[0056] 如果接收到的认证值Tag未通过验证,则在935,认证过程失败且以失败状态终止。可选择地,认证过程可以在预定间隔时间之后重新启动。否则,在940,终端120通过认证且UICC 110使用共享密文K和随机数R来计算会话密钥SU。会话密钥计算可以被表示为:
[0057] SU=fK(2,R)。 方程式(11)
[0058] 然后,在950,UICC 110依据方程式5来计算期望认证值XTag。在960,UICC 110通过端口130发送期望认证值XTag给终端120。在970,终端120依据方程式6使用随机数R来验证接收到的期望认证值XTag。如果接收到的期望认证值XTag未通过验证,则在975,认证过程失败且以失败状态终止。可选择地,认证过程可以在预定间隔时间之后被重新启动。否则,在980,UICC 110通过验证,且终端120使用共享密文K和随机数R来计算会话密钥ST。会话密钥计算可以被表示为:
[0059] ST=fK(2,R)。 方程式(12)
[0060] 图10示出了使用重放保护的隐式相互认证和会话密钥生成的实例。在1005,UICC110生成随机数N。可选择地,随机数N被使用计数器来生成,并且该计数器是增量型的。然后在1010,UICC 110通过接口130发送随机数N给终端120。
[0061] 在1020,终端120生成随机数R。可选择地,随机数R被使用计数器来生成,并且该计数器是增量型的。然后在1030,终端120使用随机数R和随机数N来计算认证值Tag。该计算可以被表示为:
[0062] Tag=fK(0,R,N)。 方程式(13)
[0063] 然后,在1040,终端120通过接口130发送随机数R和认证值Tag给UICC 110。在1050,UICC 110使用共享密文K、随机数R和随机数N来验证接收到的认证值Tag。该验证可以被表示为:
[0064] Tag==fK(0,R,N)。 方程式(14)
[0065] 如果接收到的期望认证值XTag未通过验证,则在1055,认证过程失败且以失败状态终止。可选择地,认证过程可以在预定间隔时间之后被重新启动。否则,在1060,终端120通过验证,且UICC 110依据方程式11使用共享密文K和随机数R来计算会话密钥SU。然后,在1070,UICC 110依据方程式5来计算期望认证值XTag。在1080,UICC 110通过接口130来发送期望认证值XTag给终端120。
[0066] 然后,在1090,终端120依据方程式6使用随机数R来验证接收到的期望认证值XTag。如果接收到的期望认证值XTag未通过验证,则在1091,认证过程失败且以失败状态终止。可选择地,认证过程可以在预定间隔时间之后被重新启动。否则,在1092,UICC 110通过验证,且终端120使用共享密文K和随机数R来计算会话密钥ST。该会话密钥计算可以被表示为:
[0067] ST=fK(2,R)。 方程式(15)
[0068] 图11示出了在无认证情况下使用棣弗-赫尔曼(Diffie-Hellman)密钥交换协议的共享密钥的实例。首先,在1100,UICC 110和终端120就非常大的质数p和发生器g达* *成一致。使用的代数结构是来源于域Fp的乘法群Fp。Fp是周期性的,并且包含发生器g,* n
使得对于Fp中的任意成员a,可以找到使a=g mod p的整数n。值p和g是公知的,并且代表密钥对的公共密钥部分。
[0069] 然后,在1110,终端120随机选择私有密钥RANDi,使得私有密钥RANDi比非常大的质数p至少小1,并且小的量不大于2。在1120,终端120根据私有密钥RANDi来计算gRANDi。该计算可以被表示为:
[0070] 方程式(16)
[0071] 同样地,在1130,UICC 110选择私有密钥FRESH,使得私有密钥FRESH比非常大的质数p至少小1,并且小的量不大于2。然后在1140,UICC 110根据私有密钥FRESH来计算gFRESH。该计算可以被表示为:
[0072] gFRESH≡gFRESH mod p 方程式(17)
[0073] 然后,在1150,UICC 110和终端120通过接口130交换gRANDi和gFRESH。
[0074] 然后,在1160,终端120使用私有密钥RANDi和接收到的gFRESH来计算共享密文K。该计算可以被表示为:
[0075] 方程式(18)
[0076] 同样地,在1170,UICC 110使用私有密钥FRESH和接收到的gRANDi来计算共享密文K’。该计算可以被表示为:
[0077] 方程式(19)
[0078] 在1165、1175,终端120和UICC 110现在持有共享密文K’=K,然后该共享密文被用来计算安全密文会话密钥S。在1180,安全密文会话密钥S被用来通过确保接口130安全来执行GBA_U和AKA过程。
[0079] 虽然本发明的特征和元素以特定的结合在以上进行了描述,但每个特征或元素可以在没有其它特征和元素的情况下单独使用,或在与或不与本发明的其它特征和元素结合的各种情况下使用。本发明提供的方法或流程图可以在由通用计算机或处理器执行的计算机程序软件固件中实施,其中所述计算机程序、软件或固件是以有形的方式包含在计算机可读存储介质中的,关于计算机可读存储介质的实例包括只读存储器(ROM)、随机存取存储器(RAM)、寄存器、缓冲存储器、半导体存储设备、内部硬盘和可移动磁盘之类的磁介质、磁光介质以及CD-ROM碟片和数字多功能光盘(DVD)之类的光介质。
[0080] 举例来说,恰当的处理器包括:通用处理器、专用处理器、常规处理器、数字信号处理器(DSP)、多个微处理器、与DSP核心相关联的一个或多个微处理器、控制器、微控制器专用集成电路(ASIC)、现场可编程阵列(FPGA)电路、其它任何一种集成电路(IC)和/或状态机。
[0081] 实施例
[0082] 1、一种用于确保通用集成电路卡(UICC)和终端之间的通信安全的方法。
[0083] 2、根据前述任一实施例所述的方法,其中确保通信安全包括生成安全共享会话密钥。
[0084] 3、根据前述任一实施例所述的方法,其中确保通信安全包括使用所述安全共享会话密钥来对所述UICC和所述终端之间的通信进行加密。
[0085] 4、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括从共享密文中导出安全共享会话密钥。
[0086] 5、根据前述任一实施例所述的方法,其中从共享密文中导出安全共享会话密钥包括生成根据密文的会话密文。
[0087] 6、根据前述任一实施例所述的方法,其中导出安全共享会话密钥包括使用共享密文执行伪随机函数(PRF)。
[0088] 7、根据前述任一实施例所述的方法,其中对通信进行加密包括建立安全通道。
[0089] 8、根据前述任一实施例所述的方法,进一步包含:使用所述安全通道来执行基于UICC增强的应用层通用自举架构(GBA)(GBA_U)程序。
[0090] 9、根据前述任一实施例所述的方法,进一步包含:使用所述安全通道来执行认证和密钥协商(AKA)程序。
[0091] 10、根据前述任一实施例所述的方法,进一步包含:在UICC和终端间的接口上建立隧道。
[0092] 11、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括确定安全共享会话密钥是否存在于所述UICC和所述终端之间。
[0093] 12、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括在安全共享会话密钥不存在的条件下,生成新的安全共享会话密钥。
[0094] 13、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括产生一所产生的密钥协商参数。
[0095] 14、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括将所述所产生的密钥协商参数报告给UICC。
[0096] 15、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括接收一所接收的密钥协商参数。
[0097] 16、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括使用所述所产生的密钥协商参数和所述所接收的密钥协商参数来建立安全共享会话密钥。
[0098] 17、根据前述任一实施例所述的方法,其中所述创建包括确定所产生的密钥协商参数与所接收的密钥协商参数是否相同。
[0099] 18、根据前述任一实施例所述的方法,其中所述创建包括在所产生的密钥协商参数与所接收的密钥协商参数相同的条件下导出安全共享会话密钥。
[0100] 19、根据前述任一实施例所述的方法,其中所述产生包括选择随机质询(RAND)和序列号(SQN)。
[0101] 20、根据前述任一实施例所述的方法,其中所述产生包括计算匿名密钥(AK)。
[0102] 21、根据前述任一实施例所述的方法,其中所述产生包括计算消息认证码(MAC)。
[0103] 22、根据前述任一实施例所述的方法,其中所述产生包括计算期望响应(XRES)。
[0104] 23、根据前述任一实施例所述的方法,其中所述产生包括计算期望序列(XSQN)。
[0105] 24、根据前述任一实施例所述的方法,其中所述产生包括结合RAND、MAC和XSQN以产生所述所产生的密钥协商参数。
[0106] 25、根据前述任一实施例所述的方法,其中所述计算包括使用共享密文和RAND来计算AK。
[0107] 26、根据前述任一实施例所述的方法,其中所述计算包括使用共享密文、RAND和SQN来计算MAC。
[0108] 27、根据前述任一实施例所述的方法,其中所述计算包括使用共享密文和RAND来计算XRES。
[0109] 28、根据前述任一实施例所述的方法,其中所述计算包括使用SQN和AK来计算XSQN。
[0110] 29、根据前述任一实施例所述的方法,其中所述产生包括选择随机数。
[0111] 30、根据前述任一实施例所述的方法,其中所述产生包括计算认证值(Tag)。
[0112] 31、根据前述任一实施例所述的方法,其中所述产生包括结合随机数和Tag来产生所述所产生的密钥协商参数。
[0113] 32、根据前述任一实施例所述的方法,其中所述产生包括选择会话密钥。
[0114] 33、根据前述任一实施例所述的方法,其中所述产生包括计算已加密会话密钥。
[0115] 34、根据前述任一实施例所述的方法,其中所述产生包括使用已加密会话密钥来产生密钥协商参数。
[0116] 35、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括接收一所接收的密钥协商参数。
[0117] 36、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括产生一所产生的密钥协商参数
[0118] 37、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括将所述所产生的密钥协商参数报告给终端。
[0119] 38、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括使用所接收的密钥协商参数和所产生的密钥协商参数来创建安全共享会话密钥。
[0120] 39、根据前述任一实施例所述的方法,其中所述创建包括确定所产生的密钥协商参数与所接收的密钥协商参数是否相同。
[0121] 40、根据前述任一实施例所述的方法,其中所述创建包括在所产生的密钥协商参数与所接收的密钥协商参数相同的条件下导出安全共享会话密钥。
[0122] 41、根据前述任一实施例所述的方法,其中所述产生包括从接收到的密钥协商参数中提取随机质询(RAND)。
[0123] 42、根据前述任一实施例所述的方法,其中所述产生包括从所接收的密钥协商参数中提取消息认证码(MAC)。
[0124] 43、根据前述任一实施例所述的方法,其中所述产生包括从所接收的密钥协商参数中提取期望序列(XSQN)。
[0125] 44、根据前述任一实施例所述的方法,其中所述产生包括计算匿名密钥(AK)。
[0126] 45、根据前述任一实施例所述的方法,其中所述产生包括计算期望消息认证码(XMAC)。
[0127] 46、根据前述任一实施例所述的方法,其中所述产生包括计算序列号(SQN)。
[0128] 47、根据前述任一实施例所述的方法,其中所述产生包括确定XMAC与MAC是否相同。
[0129] 48、根据前述任一实施例所述的方法,其中所述产生包括在XMAC与MAC相同的情况下,使用共享密文和RAND计算响应(RES)。
[0130] 49、根据前述任一实施例所述的方法,其中所述计算包括使用共享密文和RAND来计算AK。
[0131] 50、根据前述任一实施例所述的方法,其中所述计算包括使用XSQN和AK来计算SQN。
[0132] 51、根据前述任一实施例所述的方法,其中所述计算包括使用共享密文、RAND和SQN来计算XMAC。
[0133] 52、根据前述任一实施例所述的方法,其中所述产生包括从接收到的密钥协商参数中提取随机数和Tag。
[0134] 53、根据前述任一实施例所述的方法,其中所述产生包括验证Tag。
[0135] 54、根据前述任一实施例所述的方法,其中所述产生包括在Tag有效的条件下,导出会话密钥并且计算期望认证值(XTag)。
[0136] 55、根据前述任一实施例所述的方法,其中所述产生包括使用XTag产生所产生的密钥协商参数。
[0137] 56、根据前述任一实施例所述的方法,其中所述产生包括从所接收的密钥协商参数中提取已加密会话密钥。
[0138] 57、根据前述任一实施例所述的方法,其中所述产生包括获取会话密钥包括解密已加密会话密钥。
[0139] 58、根据前述任一实施例所述的方法,其中所述生成安全共享会话密钥包括生成预置密钥协商参数。
[0140] 59、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括将预置密钥协商参数报告给所述终端。
[0141] 60、根据前述任一实施例所述的方法,其中生成安全共享会话密钥包括接收来自UICC的预置密钥协商参数。
[0142] 61、根据前述任一实施例所述的方法,其中生成包括执行Diffie-Hellman密钥交换协议。
[0143] 62、一种无线传输/接收单元(WTRU),被配置来执行前述任一实施例的至少一部分。
[0144] 63、一种基站,被配置来执行前述任一实施例的至少一部分。
[0145] 64、一种集成电路,被配置来执行前述任一实施例的至少一部分。
[0146] 与软件相关的处理器可用于实现射频收发信机,以便在无线发射接收单元(WTRU)、用户设备(UE)、终端、基站、无线电网络控制器(RNC)或是任何一种主机计算机中加以使用。WTRU可以与采用硬件和/或软件形式实施的模结合使用,例如相机、摄像机模块、视频电话、扬声器电话、振动设备、扬声器、麦克、电视收发信机、免提机、键盘、蓝牙模块、调频(FM)无线电单元、液晶显示器(LCD)显示单元、有机发光二极管(OLED)显示单元、数字音乐播放器、媒体播放器、视频游戏机模块、因特网浏览器和/或任何一种无线局域网(WLAN)模块或无线超宽带(UWB)模块。
QQ群二维码
意见反馈