《用于验证便携式数据载体的方法》由会员分享,可在线阅读,更多相关《用于验证便携式数据载体的方法(4页珍藏版)》请在金锄头文库上搜索。
1、用于验证便携式数据载体的方法专利名称:用于验证便携式数据载体的方法技术领域:本发明涉及一种用于向终端设备验证(authenticate)便携式数据载体的方法,以及相应适配的数据载体和终端设备。背景技术:便携式数据载体(例如以电子身份证件的形式)包括具有处理器和存储器的集成电路。在存储器中,存储了关于数据载体的用户的数据。在处理器上可执行验证应用程序(application),数据载体可以经由该验证应用程序而向终端设备验证其自身(例如在身份证件的情况下的边境控制等中)。 在这种验证方法期间,通过用于被商定的随后数据通信的对称加密的保密通信密钥(例如通过根据迪菲和赫尔曼(Diffie and He
2、ilman)的已知密钥交换方法或其它合适方法)来准备数据载体和终端设备之间的安全数据通信。此外,至少终端通常核实(verify)数据载体的真实性(例如在证书的基础上)。为了执行用于商定保密通信密钥的方法,需要终端以及数据载体分别使保密密钥(secret key)和公开密钥(public key)可用。数据载体的证书例如可以与其公开密钥有关。当具有由公开密钥和保密密钥组成的特有(individual)密钥对的数据载体的集合或组中的每个数据载体被个性化(personalize)时,会产生关于数据载体的用户的匿名性(anonymity)的问题。接着可以将数据载体的每次使用唯一地与对应用户相关联,并且
3、以这种方式创建例如用户的完整动作设置文件(profile)。为了考虑这个方面,已经提出利用由公开组密钥和保密组密钥组成的相同的所谓组密钥对分别配备多个或一组数据载体。这至少在组内能够恢复用户的匿名性。这种解决方案的缺点是如果组中的一个数据载体受损(compromise),则必须替换数据载体的整个组。例如,如果组中的一个数据载体的保密组密钥已经被侦破,则组中的每个数据载体都不能再安全地使用。必要的替换工作的努力和成本可能是巨大的。发明内容本发明的目的是提出一种验证方法,其保护用户的匿名性,并且其中一个数据载体受损不会对其它数据载体的安全性产生反作用。通过具有独立权利要求特征的方法、数据载体、终端
4、设备以及系统实现这个目的。在从属权利要求中陈述有利的实施例和发展。根据本发明的用于向终端设备验证便携式数据载体的方法包括下列步骤在数据载体中,从数据载体特有的公开密钥导出公开会话密钥。这个数据载体特有的公开密钥已经从公开组密钥导出。此外,在数据载体中,保密会话密钥从数据载体特有的保密密钥导出,数据载体特有的保密密钥已经从保密组密钥导出。数据载体特有的公开密钥和数据载体特有的保密密钥被存储于数据载体中,而不是保密组密钥和公开组密钥被存储于数据载体中。在向终端设备的数据载体的验证的框架(framework)内,使用公开和保密会话密钥。数据载体将使用其保密会话密钥。数据载体使公开会话密钥对于终端设备
5、变为可用,所述终端设备在数据载体的验证的框架内使用它。特别地,可以在数据载体和终端设备之间商定保密通信密钥。为了这个目的,数据载体具有公开和保密会话密钥。为了这个目的,终端设备于是具有公开终端密钥和保密终端密钥。最后,终端设备核实数据载体的公开会话密钥。因此,根据本发明的便携式数据载体包括处理器、处理器和用于与终端设备数据通信的数据通信接口、以及验证装置。验证装置适配于从存储在存储器中的、数据载体特有的保密密钥导出保密会话密钥。验证装置还适配于从存储在存储器中的、数据载体特有的公开密钥导出公开会话密钥。此外,其可以与终端设备商 定保密通信密钥。为了这个目的,验证装置使用公开会话密钥和保密会话密
6、钥。最后,根据本发明的终端设备适配于与根据本发明的便携式数据载体的数据通信、以及使用公开终端密钥和保密终端密钥与数据载体协商保密通信密钥。终端设备还适配于核实数据载体的公开会话密钥,该公开会话密钥已经从公开组密钥经由数据载体特有的公开密钥导出。在根据本发明的方法中,不再需要在数据载体中存储保密组密钥。因此,不能在攻击数据载体时侦破这样的密钥。还可以使用数据载体组中的其它未被攻击的数据载体的保密会话密钥。不能在数据载体的保密会话密钥的基础上追踪数据载体的用户(其可能在用于向终端设备的验证的质疑-响应方法(challenge-response method)中被采用),因为这个会话密钥从一个使用到
7、下一个使用是变化的。优选地,终端设备通过公开组密钥的证书核实数据载体的公开会话密钥,该证书存储在数据载体上。为了这个目的,终端设备首先检查证书。此后,终端设备从公开组密钥经由数据载体特有的公开密钥重建公开会话密钥的推导。数据载体使得为此所必需的推导信息成为可用。以这种方式,数据载体可被验证为与组密钥对相关联的组的数据载体,但是不能在数据载体特有的证书的基础上被追踪,根据本发明不提供该证书。仅公开组密钥的证书被存储于数据载体上,所述证书对于组中的所有数据载体是相同的,因此保护了数据载体的用户的匿名性。根据优选实施例,数据载体特有的公开密钥和数据载体特有的保密密钥从公开组密钥和保密组密钥导出,并在
8、数据载体的个性化阶段被存储于数据载体中。公开组密钥的证书也可以被合并入数据载体中,并在此阶段存储。优选地,数据载体特有的保密密钥通过使用第一随机数而从保密组密钥导出。为了这个目的,可以使用将保密组密钥以及第一随机数等作为输入数据、(并且)将其处理为数据载体特有的保密密钥的任何合适的操作。例如,可以使用数学操作,诸如乘法、求幂等。接着可以通过之前导出的数据载体特有的保密密钥导出数据载体特有的公开密钥。例如当也使用保密组密钥形成了公开组密钥时,这是有利的,例如通过模数求幂(modularexponentiation),如从迪菲-赫尔曼密钥交换方法所知。也可以用不同方法从公开组密钥导出数据载体特有的
9、公开密钥。以相同的方式,从数据载体特有的保密密钥推导保密会话密钥以及从数据载体特有的公开密钥推导公开会话密钥也以随机方式(例如依赖于第二随机数)的进行。这里,也可以使用不同的推导操作,其至少分别允许数据载体特有的各个密钥和第二随机数作为输入数据。通常,保密会话密钥的推导不同于公开会话密钥的推导。然而,通常将相同的第二随机数用于会话密钥对的两个密钥的推导。因为在每次使用数据载体时(例如向终端设备的每次验证时)导出新的会话密钥对,所以不能在会话密钥的基础上追踪数据载体。根据本发明的方法的优选实施例,通过已知的迪菲-赫尔曼密钥交换方法的手段来协商保密通信密钥。这种方法基于以指定的素数为模的指定本原根
10、。数据载体特有的保密密钥从保密组密钥乘以第一随机数导出。数据载体特有的公开密钥通过数据载体特有的保密密钥对本原根的幂而计算。如此,通过保密组密钥对本原根的幂形成了公开组密钥。根据本发明的具有优选地以随机形式改变的会话密钥的方法可以因此在任何实质改变地情况下合并入已知的类似协议,其提供牢固地绑定到数据载体的密钥对并且使用迪菲-赫尔曼方法。可以通过将数据载体特有的保密密钥乘以第二随机数而形成保密会话密钥。接着 通过第二随机数对数据载体特有的密钥的幂而导出公开会话密钥。以这种方式,使得可以通过形成第一和第二随机数的乘积对公开组密钥的幂而计算公开会话密钥。为了终端能够核实数据载体的公开会话密钥,数据载
11、体将公开会话密钥、第一和第二随机数的乘积、以及公开组密钥的证书发送到终端设备。终端设备在检查公开组密钥的证书之后,通过形成两个随机数的乘积对公开组密钥的幂而核实公开会话密钥。如上所述,这个计算准确地产生公开会话密钥,只要该公开会话密钥已经以规定的方式从公开组密钥经由数据载体特有的公开密钥而导出了。因此可以仅使用公开组密钥来核实公开会话密钥。以这种方式,数据载体被验证为属于该公开组密钥,同时保持了数据载体的用户的匿名性并且无需数据载体特有的证书。这里,数据载体被理解为例如电子身份证件、芯片卡、SM卡、安全多媒体卡、或者安全USB令牌。终端可以是任意验证伙伴。特别地,其可以是本地或远程终端、远程服
12、务器、或者另一个数据载体。如以上多次指出的,相同的公开和保密组密钥分别用于导出形成数据载体组的多个不同数据载体的数据载体特有的保密密钥以及数据载体特有的公开密钥。当然可以提供数据载体的多个组,其分别与他们自身的组密钥对相关联。在下文中将通过参考附图的示例的方式描述本发明。其中示出图I以示意的形式示出根据本发明的数据载体的优选实施例,以及图2和图3是根据本发明用于向终端设备验证来自图I的数据载体的方法的优选实施例的步骤。具体实施例方式参考图1,这里表示为芯片卡的数据载体10包括数据通信接口 20、20 ;处理器30 ;以及不同的存储器40、50和60。数据载体10也可以以不同的设计而出现。作为数
13、据通信接口 20、20,数据载体10包括用于接触式数据通信的接触区域(contact pad) 20以及用于非接触式数据通信的天线线圈20。可以提供替代的数据通信接口。还可能的是,数据载体10仅支持一种数据通信,即接触式或非接触式。非易失不可重写ROM存储器40包括数据载体10的操作系统(0S)42,其控制数据载体10。操作系统42的至少一部分也可以存储在非易失可重写存储器50中。后者可以例如作为闪存而出现。存储器50包括验证装置52,通过验证装置52可以向终端设备执行数据载体10的验证。这样做使得同样存储于存储器中的、该数据载体特有(individual)的密钥54、56以及数字证书58找到
14、它们的应用程序。将参考图2和图3更详细地描述验证装置52、密钥54,56以及证书58的操作模式以及它们在验证处理过程中的角色。存储器50可以进一步包含数据,例如关于其用户的数据。易失性可重写RAM存储器60作为数据载体10的工作存储器。数据载体10当其例如构成电子身份证件时可以包括其它特征(未示出)。这些特征可以明显地施加于(例如压印在)数据载体10的表面上,并且例如通过他的姓名或照片而指定数据载体的用户。参考图2和图3,现在将更详细地描述用于向终端设备验证数据载体10的方法的实施例。在图2中示出预备步骤。这可以例如在数据载体10的制造期间(例如在个性化阶段中)执行。在第一步骤SI中,形成保密
15、组密钥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以
16、这种方式,由于密钥推导时的随机成分,组中的每个数据载体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使用在数据载体中。为了执行每个将