用于验证便携式数据载体的方法

文档序号:6359830阅读:197来源:国知局
专利名称:用于验证便携式数据载体的方法
技术领域
本发明涉及一种用于向终端设备验证(authenticate)便携式数据载体的方法,以及相应适配的数据载体和终端设备。
背景技术
便携式数据载体(例如以电子身份证件的形式)包括具有处理器和存储器的集成电路。在存储器中,存储了关于数据载体的用户的数据。在处理器上可执行验证应用程序(application),数据载体可以经由该验证应用程序而向终端设备验证其自身(例如在身份证件的情况下的边境控制等中)。 在这种验证方法期间,通过用于被商定的随后数据通信的对称加密的保密通信密钥(例如通过根据迪菲和赫尔曼(Diffie and Heilman)的已知密钥交换方法或其它合适方法)来准备数据载体和终端设备之间的安全数据通信。此外,至少终端通常核实(verify)数据载体的真实性(例如在证书的基础上)。为了执行用于商定保密通信密钥的方法,需要终端以及数据载体分别使保密密钥(secret key)和公开密钥(public key)可用。数据载体的证书例如可以与其公开密钥有关。当具有由公开密钥和保密密钥组成的特有(individual)密钥对的数据载体的集合或组中的每个数据载体被个性化(personalize)时,会产生关于数据载体的用户的匿名性(anonymity)的问题。接着可以将数据载体的每次使用唯一地与对应用户相关联,并且以这种方式创建例如用户的完整动作设置文件(profile)。为了考虑这个方面,已经提出利用由公开组密钥和保密组密钥组成的相同的所谓组密钥对分别配备多个或一组数据载体。这至少在组内能够恢复用户的匿名性。这种解决方案的缺点是如果组中的一个数据载体受损(compromise),则必须替换数据载体的整个组。例如,如果组中的一个数据载体的保密组密钥已经被侦破,则组中的每个数据载体都不能再安全地使用。必要的替换工作的努力和成本可能是巨大的。

发明内容
本发明的目的是提出一种验证方法,其保护用户的匿名性,并且其中一个数据载体受损不会对其它数据载体的安全性产生反作用。通过具有独立权利要求特征的方法、数据载体、终端设备以及系统实现这个目的。在从属权利要求中陈述有利的实施例和发展。根据本发明的用于向终端设备验证便携式数据载体的方法包括下列步骤在数据载体中,从数据载体特有的公开密钥导出公开会话密钥。这个数据载体特有的公开密钥已经从公开组密钥导出。此外,在数据载体中,保密会话密钥从数据载体特有的保密密钥导出,数据载体特有的保密密钥已经从保密组密钥导出。数据载体特有的公开密钥和数据载体特有的保密密钥被存储于数据载体中,而不是保密组密钥和公开组密钥被存储于数据载体中。在向终端设备的数据载体的验证的框架(framework)内,使用公开和保密会话密钥。数据载体将使用其保密会话密钥。数据载体使公开会话密钥对于终端设备变为可用,所述终端设备在数据载体的验证的框架内使用它。特别地,可以在数据载体和终端设备之间商定保密通信密钥。为了这个目的,数据载体具有公开和保密会话密钥。为了这个目的,终端设备于是具有公开终端密钥和保密终端密钥。最后,终端设备核实数据载体的公开会话密钥。因此,根据本发明的便携式数据载体包括处理器、处理器和用于与终端设备数据通信的数据通信接口、以及验证装置。验证装置适配于从存储在存储器中的、数据载体特有的保密密钥导出保密会话密钥。验证装置还适配于从存储在存储器中的、数据载体特有的公开密钥导出公开会话密钥。此外,其可以与终端设备商 定保密通信密钥。为了这个目的,验证装置使用公开会话密钥和保密会话密钥。最后,根据本发明的终端设备适配于与根据本发明的便携式数据载体的数据通信、以及使用公开终端密钥和保密终端密钥与数据载体协商保密通信密钥。终端设备还适配于核实数据载体的公开会话密钥,该公开会话密钥已经从公开组密钥经由数据载体特有的公开密钥导出。在根据本发明的方法中,不再需要在数据载体中存储保密组密钥。因此,不能在攻击数据载体时侦破这样的密钥。还可以使用数据载体组中的其它未被攻击的数据载体的保密会话密钥。不能在数据载体的保密会话密钥的基础上追踪数据载体的用户(其可能在用于向终端设备的验证的质疑-响应方法(challenge-response method)中被采用),因为这个会话密钥从一个使用到下一个使用是变化的。优选地,终端设备通过公开组密钥的证书核实数据载体的公开会话密钥,该证书存储在数据载体上。为了这个目的,终端设备首先检查证书。此后,终端设备从公开组密钥经由数据载体特有的公开密钥重建公开会话密钥的推导。数据载体使得为此所必需的推导信息成为可用。以这种方式,数据载体可被验证为与组密钥对相关联的组的数据载体,但是不能在数据载体特有的证书的基础上被追踪,根据本发明不提供该证书。仅公开组密钥的证书被存储于数据载体上,所述证书对于组中的所有数据载体是相同的,因此保护了数据载体的用户的匿名性。根据优选实施例,数据载体特有的公开密钥和数据载体特有的保密密钥从公开组密钥和保密组密钥导出,并在数据载体的个性化阶段被存储于数据载体中。公开组密钥的证书也可以被合并入数据载体中,并在此阶段存储。优选地,数据载体特有的保密密钥通过使用第一随机数而从保密组密钥导出。为了这个目的,可以使用将保密组密钥以及第一随机数等作为输入数据、(并且)将其处理为数据载体特有的保密密钥的任何合适的操作。例如,可以使用数学操作,诸如乘法、求幂等。接着可以通过之前导出的数据载体特有的保密密钥导出数据载体特有的公开密钥。例如当也使用保密组密钥形成了公开组密钥时,这是有利的,例如通过模数求幂(modularexponentiation),如从迪菲-赫尔曼密钥交换方法所知。也可以用不同方法从公开组密钥导出数据载体特有的公开密钥。以相同的方式,从数据载体特有的保密密钥推导保密会话密钥以及从数据载体特有的公开密钥推导公开会话密钥也以随机方式(例如依赖于第二随机数)的进行。这里,也可以使用不同的推导操作,其至少分别允许数据载体特有的各个密钥和第二随机数作为输入数据。通常,保密会话密钥的推导不同于公开会话密钥的推导。然而,通常将相同的第二随机数用于会话密钥对的两个密钥的推导。因为在每次使用数据载体时(例如向终端设备的每次验证时)导出新的会话密钥对,所以不能在会话密钥的基础上追踪数据载体。根据本发明的方法的优选实施例,通过已知的迪菲-赫尔曼密钥交换方法的手段来协商保密通信密钥。这种方法基于以指定的素数为模的指定本原根。数据载体特有的保密密钥从保密组密钥乘以第一随机数导出。数据载体特有的公开密钥通过数据载体特有的保密密钥对本原根的幂而计算。如此,通过保密组密钥对本原根的幂形成了公开组密钥。根据本发明的具有优选地以随机形式改变的会话密钥的方法可以因此在任何实质改变地情况下合并入已知的类似协议,其提供牢固地绑定到数据载体的密钥对并且使用迪菲-赫尔曼方法。可以通过将数据载体特有的保密密钥乘以第二随机数而形成保密会话密钥。接着 通过第二随机数对数据载体特有的密钥的幂而导出公开会话密钥。以这种方式,使得可以通过形成第一和第二随机数的乘积对公开组密钥的幂而计算公开会话密钥。为了终端能够核实数据载体的公开会话密钥,数据载体将公开会话密钥、第一和第二随机数的乘积、以及公开组密钥的证书发送到终端设备。终端设备在检查公开组密钥的证书之后,通过形成两个随机数的乘积对公开组密钥的幂而核实公开会话密钥。如上所述,这个计算准确地产生公开会话密钥,只要该公开会话密钥已经以规定的方式从公开组密钥经由数据载体特有的公开密钥而导出了。因此可以仅使用公开组密钥来核实公开会话密钥。以这种方式,数据载体被验证为属于该公开组密钥,同时保持了数据载体的用户的匿名性并且无需数据载体特有的证书。这里,数据载体被理解为例如电子身份证件、芯片卡、SM卡、安全多媒体卡、或者安全USB令牌。终端可以是任意验证伙伴。特别地,其可以是本地或远程终端、远程服务器、或者另一个数据载体。如以上多次指出的,相同的公开和保密组密钥分别用于导出形成数据载体组的多个不同数据载体的数据载体特有的保密密钥以及数据载体特有的公开密钥。当然可以提供数据载体的多个组,其分别与他们自身的组密钥对相关联。


在下文中将通过参考附图的示例的方式描述本发明。其中示出图I以示意的形式示出根据本发明的数据载体的优选实施例,以及图2和图3是根据本发明用于向终端设备验证来自图I的数据载体的方法的优选实施例的步骤。
具体实施例方式参考图1,这里表示为芯片卡的数据载体10包括数据通信接口 20、20’ ;处理器30 ;以及不同的存储器40、50和60。数据载体10也可以以不同的设计而出现。作为数据通信接口 20、20’,数据载体10包括用于接触式数据通信的接触区域(contact pad) 20以及用于非接触式数据通信的天线线圈20’。可以提供替代的数据通信接口。还可能的是,数据载体10仅支持一种数据通信,即接触式或非接触式。非易失不可重写ROM存储器40包括数据载体10的操作系统(0S)42,其控制数据载体10。操作系统42的至少一部分也可以存储在非易失可重写存储器50中。后者可以例如作为闪存而出现。存储器50包括验证装置52,通过验证装置52可以向终端设备执行数据载体10的验证。这样做使得同样存储于存储器中的、该数据载体特有(individual)的密钥54、56以及数字证书58找到它们的应用程序。将参考图2和图3更详细地描述验证装置52、密钥54,56以及证书58的操作模式以及它们在验证处理过程中的角色。存储器50可以进一步包含数据,例如关于其用户的数据。易失性可重写RAM存储器60作为数据载体10的工作存储器。
数据载体10当其例如构成电子身份证件时可以包括其它特征(未示出)。这些特征可以明显地施加于(例如压印在)数据载体10的表面上,并且例如通过他的姓名或照片而指定数据载体的用户。参考图2和图3,现在将更详细地描述用于向终端设备验证数据载体10的方法的实施例。在图2中示出预备步骤。这可以例如在数据载体10的制造期间(例如在个性化阶段中)执行。在第一步骤SI中,形成保密组密钥SK以及公开组密钥PK。密钥PK被计算为以指定的素数P为模的指定本原根(primitive root) g的幂(exponentiation)的结果。所有以下描述的计算都以素数P为模而读取,而不需要总是明确地声明。两个密钥SK和PK形成组密钥对并且提供以下描述的用于相同类型的数据载体10的组的密钥结构的基础。在步骤S2中形成证书Cpk,其用于公开组密钥PK的核实。步骤S3在数据载体10的个性化期间发生。这样做使得构成指定组的数据载体的数据载体的数据载体10配备有该数据载体特有的密钥对SKi、PKi,以随机方式由组密钥对SK、PK生成密钥对SKi、PKi,例如依赖于第一随机数RNDitl以这种方式,由于密钥推导时的随机成分,组中的每个数据载体10配备有该数据载体特有的其自己的密钥对,其不同于组中的另一个数据载体的对应密钥对。另一方面,组中的所有数据载体10通过它们的密钥对已从相同的组密钥对SK、PK导出的事实而连接。在子步骤TS31中,通过将保密组密钥SK乘以随机数RNDi而得到该数据载体特有的保密密钥SKitj随后,在子步骤TS32中,将该数据载体特有的公开密钥PKi计算为以前形成的该数据载体特有的保密密钥SKi对如上所述的本原根g的幂。在子步骤TS33中,将这样得到的SKi和PKi与数据载体10中的随机数RNDi和证书Cpk —起存储。数据载体10因此适合于用其验证装置52执行向终端设备的验证,如将参考图3更详细地描述。为了准备与终端设备的密钥协议(参照步骤S7),验证装置52在步骤S4中导出保密会话密钥SKSessim。这个保密会话密钥SKsessim与以下所述的公开会话密钥PKsessim —起形成会话密钥对(参照步骤S5)。然而,这个密钥对仅与向终端设备的单次验证相关地被验证装置52使用在数据载体中。为了执行每个将来的其它验证,验证装置52以如下所述的方式分别从数据载体特有的密钥对SKpPKi得到新的会话密钥对。
也使用随机成分形成会话密钥对。为了这个目的,第二随机数RNDsessim被生成或者可被验证装置52使用。接着通过将该数据载体特有的保密密钥SKi乘以第二随机数RNDsession而计算保密会话密钥SKSessim。在步骤S5中,通过第二随机数RNDsessira^t该数据载体特有的公开密钥PKi的幂而得到公开会话密钥PKSessim。在步骤S6中,验证装置52将公开会话密钥PKsessim、第一和第二随机数相乘得到的值RND^RND—、以及证书Cpk发送到终端设备。在步骤S7中,现在在数据载体10的验证装置52和终端设备之间商定通信密钥KK。这个密钥通过对称加密方法对数据载体10和终端设备之间的随后数据通信加密。可以通过已知方法执行密钥协议(agreement),例如迪菲-赫尔曼(Diffie-Hellman)密钥交换方法。最后,在步骤S8中,终端设备检查数据载体10的真实性(authenticity)。为了这个目的,终端设备在第一子步骤TS81中检查终端已知的公开组密钥PK的证书CPK。随后, 终端设备核实数据载体10的公开会话密钥PKs_im。为了这个目的,终端设备计算两个随机数的乘积RNDjRNDsessim对公开组密钥的幂的结果,并将该结果与公开会话密钥PKsessim作比较。通过该计算,终端设备从公开组密钥PK开始经由该数据载体特有的公开密钥PKi,重建公开会话密钥PKsessim的推导。这由于如下而实现PKsession=PKi' (RNDsession) (参照步骤 S5)= (g~ (SKi)) ~ (RNDsession) (参照子步骤 TS32)= (g~ (SK^RNDi)) ~ (RNDsession) (参照子步骤 TS31)= (g~SK) ~ (RNDi^RNDsession) (数学形式变化)=PK~ (RNDi^RNDsession) (参照步骤 SI).如果结果与公开会话密钥PKsessim匹配,则认为数据载体10被核实。在相反情况下,终端设备停止验证处理。该方法因此使数据载体10的用户可以至少在与相同组密钥对SK、PK相关联的数据载体的组内保持匿名性。不可能将对数据载体10的使用追踪回到用户,因为,一方面,每个会话使用变化的会话密钥SKSessim、PKsession ;并且另一方面,仅通过公开组密钥PK的证书Cpk (其对于组中的所有数据载体是相同的)、而不通过数据载体特有的证书,进行数据载体10的核实。此外,可以省去在组中的数据载体10中存储保密组密钥SK是有利的。在本解决方案的框架内,乘法可以是任意组特定的乘法,并且幂可以是任意组特定的幂。可以基于离散对数或者基于椭圆,执行乘法和求幂。此外,当例如推导特有密钥SKi=SK^RNDi时,可以使用修正的推导,从而使计算SK更困难。例如,可以选择SKi=RNDi ~ SK。
权利要求
1.一种用于向终端设备验证便携式数据载体(10)的方法,其特征在于以下步骤 -在所述数据载体(10)中,从公开组密钥(PK)导出(TS32)的所述数据载体特有的公开密钥(PKi)导出(S5)公开会话密钥(PKsessim),并且从保密组密钥(SK)导出(TS31)的所述数据载体特有的保密密钥(SKi)导出(S4)保密会话密钥(SKsessim); -使用所述数据载体(10)中的所述保密会话密钥(SKsessim)和/或所述终端设备中的所述公开会话密钥(PKsessim),向所述终端设备匿名地验证(S8)所述数据载体(10)。
2.如权利要求I所述的方法,其特征在于,通过所述终端设备首先检查(TS81)所述公开组密钥(PK)的证书(CPK)、并且此后从所述公开组密钥(PK)经由所述数据载体特有的公开密钥(PKi)重建(TS82)所述公开会话密钥(PKsessim)的推导,所述终端设备通过所述公开组密钥(PK)的证书(Cpk)核实所述公开会话密钥(PKsessim),所述证书(Cpk)存储在所述数据载体(10)中。
3.如权利要求I或2所述的方法,其特征在于,所述数据载体特有的公开密钥(PKi)和所述数据载体特有的保密密钥(SKi)分别从所述公开组密钥(PK)和所述保密组密钥(SK)导出,并且在所述数据载体(10)的个性化阶段将所述数据载体特有的公开密钥(PKi)和所述数据载体特有的保密密钥(SKi)存储(S3 )在所述数据载体(10 )中。
4.如权利要求I至3中任意一项所述的方法,其特征在于,使用第一随机数(RNDi),从所述保密组密钥(SK)导出所述数据载体特有的保密密钥(SKi)。
5.如权利要求I至4中任意一项所述的方法,其特征在于,使用第二随机数(RNDsessim),分别从所述数据载体特有的公开密钥(PKi)和所述数据载体特有的保密密钥(SKi)导出所述公开会话密钥(PKsessim)和所述保密会话密钥(SKsessim)。
6.如权利要求I至5中任意一项所述的方法,其特征在于,使用所述数据载体(10)的公开会话密钥(PKsessim)和保密会话密钥(SKSessim)、以及所述终端设备的公开终端密钥和保密终端密钥时,在所述数据载体(10)和所述终端设备之间商定(S7)通信密钥(KK); 其中优选地,通过迪菲-赫尔曼密钥交换方法商定所述通信密钥(KK),所述迪菲-赫尔曼密钥交换方法基于以指定的素数为模的指定本原根(g),通过乘以所述第一随机数(RNDi)而从所述保密组密钥(SK)导出(TS31)所述数据载体特有的保密密钥(SKi),并且通过所述数据载体特有的保密密钥(SKi)对所述本原根(g)的幂而形成(TS32)所述数据载体特有的公开密钥(PKi),其中通过由所述保密组密钥(SK)对所述本原根(g)的幂而形成(SI)所述公开组密钥(PK)。
7.如权利要求I至6中任意一项所述的方法,其特征在于,通过将所述数据载体特有的保密密钥(SKi)乘以所述第二随机数(RND-)而导出(S4)所述保密会话密钥(SKsessim),并且通过所述第二随机数(RNDsessim)对所述数据载体特有的公开密钥(PKi)的幂而导出(S5)所述公开会话密钥(PKs_im)。
8.如权利要求I至7中任意一项所述的方法,其特征在于,所述数据载体(10)将所述公开会话密钥(PKSessim)、所述第一随机数(RNDi)和所述第二随机数(RNDsessim)的乘积(RNDi^RNDsession),以及所述公开组密钥(PK)的证书(Cpk)发送到所述终端设备。
9.如权利要求I至8中任意一项所述的方法,其特征在于,为了核实所述公开会话密钥(PKsessim),所述终端设备形成所述第一随机数(RNDi)和所述第二随机数(RNDsessim)的乘积(RNDi^RNDsession)对所述公开组密钥(PK)的幂。
10.如权利要求I至9中任意一项所述的方法,其特征在于,为了导出多个不同数据载体(10)的数据载体特有的公开密钥(PKi)和数据载体特有的保密密钥(SKi),分别使用相同的公开和保密组密钥(PK ;SK)。
11.一种便携式数据载体(10),包括处理器(30)、存储器(50)、和用于与终端设备进行数据通信的数据通信接口(20 ;20’)、以及验证装置(52),其特征在于所述数据载体(10)的验证装置(52)适配于从存储在所述存储器(50)中的、所述数据载体特有的公开密钥(PKi)导出公开会话密钥(PKsessim),从存储在所述存储器(50 )中的、所述数据载体特有的保密密钥(SKi)导出保密会话密钥(SKs_im),以及在向所述终端设备的验证的框架内使用所述保密会话密钥(SKsessim)。
12.如权利要求11所述的数据载体(10),其特征在于,所述数据载体(10)适配于根据权利要求I至10中任意一项所述的方法,向终端设备验证其自身。
13.一种用于与如权利要求11或12所述的便携式数据载体(10)进行数据通信的终端设备,其中所述终端设备适配于使用公开终端密钥和保密终端密钥与所述便携式数据载体(10)商定通信密钥(KK),以及核实已经从公开组密钥(PK)经由所述数据载体特有的公开密钥(PKi)导出的、所述数据载体(10)的公开会话密钥(PKSessim)。
14.如权利要求13所述的终端设备,其特征在于,通过所述终端设备首先检查所述公开组密钥(PK)的证书(CPK)、并且此后从所述公开组密钥(PK)经由所述数据载体特有的公开密钥(PKi)重建所述公开会话密钥(PKsessim)的推导,所述终端设备适配于通过所述公开组密钥(PK)的证书(Cpk)核实所述数据载体(10)的公开会话密钥(PKsessim),所述证书(Cpk)被存储在所述数据载体(10)中。
15.一种系统,包括如权利要求11或12所述的便携式数据载体(10)和如权利要求13或14所述的终端设备,其适配于执行如权利要求I至10中任意一项所述的方法。
全文摘要
本发明涉及一种用于关于终端验证便携式数据载体(10)的方法,包括下列步骤在所述数据载体(10)中,从所述数据载体特有的公开密钥(PKi)导出(S5)公开会话密钥(PKSession)。从公开组密钥(PK)导出(TS32;S1)所述数据载体特有的公开密钥(PKi)。此外,从所述数据载体的特有的保密密钥(SKi)导出(S4)保密会话密钥(SKSession),从保密组密钥(SK)导出(TS31)所述数据载体特有的保密密钥(SKi)。随后在所述数据载体(10)和所述终端之间商定(S7)保密通信密钥(KK)。最后,所述终端核实(S8)所述数据载体(10)的公开会话密钥(PKSession)。
文档编号G06F21/34GK102792312SQ201180013064
公开日2012年11月21日 申请日期2011年3月7日 优先权日2010年3月10日
发明者G.迈斯特, J.埃科霍尔兹 申请人:德国捷德有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1