首页> 中国专利> IC卡及其IC卡之间的加密通信方法

IC卡及其IC卡之间的加密通信方法

摘要

本发明涉及一种在电子票销售系统的IC卡之间的加密通信方法,其中当每个IC卡所连接的服务器和用户终端开始进行相互之间的数据通信或当IC卡和电子票汇总机开始相互之间的数据通信时,它们都能够根据相互间在开始认证时所交换的通用加密算法信息,来动态地改变相互认证的加密算法以及对要发送的内容进行隐藏,从而在相互之间开始认证时产生高速和安全的加密通信。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-08-03

    未缴年费专利权终止 IPC(主分类):H04K1/00 授权公告日:20100203 终止日期:20150610 申请日:20030610

    专利权的终止

  • 2010-02-03

    授权

    授权

  • 2004-03-31

    实质审查的生效

    实质审查的生效

  • 2004-01-21

    公开

    公开

说明书

技术领域

本发明涉及IC卡及其IC卡之间的加密通信方法。特别是涉及用于通信终端的IC卡以及IC卡之间或一个IC卡与IC卡具有等同功能的防篡改设备之间的加密通信方法。本发明还进一步涉及用于电子票销售系统中的加密通信方法。

背景技术

如今公知的加密通信技术,如“因特网草案SSL协议3.0版”和“RFC2246 TLS协议1.0版”。因为这些协议没有很大程度上改变目前的网络技术和网络协议的体系,因此它们用于在开放性的网络如因特网上秘密地发送关键性的信息如个人信息和信用卡帐号是非常有效的。如今已开发出了安装软件和安装硬件如PCI类型的加密密钥,以及可以获得的各种商业产品。

然而,用于IC卡上的加密通信技术仍然不为所知。此外,在IC卡上没有通用的接口用于加密算法。因此,当所使用的加密算法发生改变时,总是需要重新配置加密算法的调用端口。

发明内容

本申请是基于并要求享有在先的申请号为2002-169193申请日为2002年6月10日的日本专利申请。该申请的全部内容在此作为参考。

本发明的目的是提供IC卡之间的加密通信技术从而能够在改变使用的加密算法时而不必改变预先定义好的加密协议。

上述的目的是通过在第一个IC卡和第二个IC卡之间的加密通信方法而实现,该方法包括以下步骤:(1)在第一个IC卡和第二个IC卡之间通信开始时进行相互的认证,其包括在第一个IC卡和第二个IC卡之间交换可使用的加密算法的信息,从而可以在第一个IC卡和第二个IC卡之间选择一个通用的加密算法;(2)在第一个IC卡中,使用所选择的通用加密算法将要发送的明文数据加密成加密数据;使用预先定义好的加密协议将加密数据变换成要发送的所要求格式的数据;并且将要发送的数据发送到通信媒介中;(3)在第二个IC卡中,从通信媒介中接收发送数据;将接收到的数据反向转换为与第一个IC卡所发送的原始加密数据相同的加密数据;并且使用所选择的通用加密算法将加密数据解密成明文数据,该明文数据与第一个IC卡所发送的原始明文数据相同。

在上述第一个IC卡和第二个IC卡之间的加密通信方法中,第一个和第二个IC卡可以含有与IC卡功能相同的设备。

在上述第一个IC卡和第二个IC卡之间的加密通信方法中,第一个和第二个IC卡都可以根据多个加密算法的使用优先级来含有信息;并且在第一个IC卡和第二个IC卡之间开始时通信所进行相互认证中,交换第一个和第二个IC卡间的可以利用的加密算法信息,从而从第一个和第二个IC卡间通用的加密算法中选择具有最高使用优先级的加密算法。

上述的目的也可以通过在第一个IC卡和第二个IC卡之间使用加密通信方法而实现,其中第一个IC卡和第二个IC卡都具有加密算法的切换设备和协议处理设备,该方法包括以下步骤:(1)在第一个IC卡和第二个IC卡之间通信开始时进行相互的认证,其包括在第一个IC卡和第二个IC卡之间交换可使用的加密算法的信息,从而通过它们的加密算法的切换设备可以在第一个IC卡和第二个IC卡之间选择一个通用的加密算法;(2)在第一个IC卡中,将要发送的明文数据传入到加密算法的切换设备中;(3)在第一个IC卡的加密算法的切换设备中,使用通用加密算法将要发送的明文数据加密成加密数据;使用预先定义好的加密协议将加密数据变换成要发送的所要求格式的数据;并且将要发送的数据发送到第一个IC卡的协议处理设备中;(4)在第一个IC卡的协议处理设备中,按照预先定义好的协议将要发送的数据转换为发送数据信号并且将其发送到通信媒介中;(5)在第二个IC卡的协议处理设备中,从通信媒介中接收所发送的数据信号并将接收到的数据反向转换为与第一个IC卡所发送的原始发送数据相同的发送数据,并且将其传送给第二个IC卡的加密算法的切换设备;(6)在第二个IC卡的加密算法的切换设备中,将接收到的发送数据反向转换为与第一个IC卡所发送的原始加密数据相同的加密数据;并且使用所选择的通用加密算法将加密数据解密成与原始明文数据相同的明文数据。

在上面所提及的第一个IC卡和第二个IC卡之间的加密通信方法中,第一个和第二个IC卡可以含有与IC卡功能相同的设备。

在上述第一个IC卡和第二个IC卡之间的加密通信方法中,第一个和第二个IC卡都可以根据多个加密算法的使用优先级来含有信息;并且在第一个IC卡和第二个IC卡之间开始时通信所进行相互认证中,交换第一个和第二个IC卡间的可以利用的加密算法信息,从而从第一个和第二个IC卡间常用的加密算法中选择具有最高使用优先级的加密算法。

上述目的也可以通过在一电子票销售系统中的IC卡间的加密通信方法而实现,其中电子票销售系统包括:具有防篡改设备的服务器,该设备发行并且发售电子票,并且其具有与IC卡等同的第一功能设备;具有电子通信设备以及与IC卡进行信号交换接口的用户终端,其中IC卡被连接到接口上并且完成电子票的购买和存储;以及一个电子票汇总机,其具有与IC卡等同的第二功能设备,用于根据电子票的用途来对电子票进行汇总;该方法包括以下步骤:在IC卡和与IC卡具有等同功能的第一或第二功能设备之间开始进行通信时相互交换通用的加密算法的信息;并且根据在IC卡和与IC卡具有等同功能的第一或第二功能设备之间开始进行相互认证时的交换信息来选择它们之间通用的加密算法,并将其用于IC卡和与IC卡具有等同功能的第一或第二功能设备之间的相互认证以及发送数据的隐藏。

通过一IC卡也可以实现上述目的,其包括:一加密算法选择器,根据在IC卡与相对的IC卡之间开始进行相互认证时可使用的加密算法的信息交换,选择通用的加密算法来作为IC卡与其相对的IC卡进行通信的加密算法;使用所选择的加密算法将要被发送的明文数据加密成第一加密数据的加密设备;使用所选择的加密算法将从通信媒介接收到的第二加密数据进行解密的解密设备;转换设备,其使用加密设备将第一加密数据转换为第一发送数据,并且将第一发送数据发送到通信媒介;以及反向转换设备,其将从通信媒介接收到的第二发送数据转换为第二加密数据,并且将第二加密数据传给解密设备。

在上述的IC卡中,有可能使得加密算法选择器存储多个加密算法使用优先级的信息,以及在与相对的IC卡开始进行通信时,交换与相对的IC卡通常使用的加密算法的信息,并且在该IC卡与相对的IC卡之间所常用的加密算法中选择具有最高使用优先级的加密算法。

在上述的IC卡中,该IC卡与相对的IC卡可以包括具有与IC具有相同功能的设备。

通过使用上述的第一个IC卡和第二个IC卡之间的加密通信方法,在第一个IC卡等(下文称之为第一个IC卡)卡中的加密信息通过通信媒介被发送到第二个IC卡等(下文称之为第二个IC卡)卡中,并且在第二个IC卡中,来自于第一个IC卡的加密数据被解密成原始明文数据。并且在第一个和第二个IC卡之间开始进行通信时的相互认证过程中,在第一个和第二个IC卡中的加密算法的切换设备交换关于可使用的加密算法的信息并且在它们的相互通信中选择一个通常使用的加密算法。然后,第一个IC卡使用所选择的通常使用的加密算法,从内存中将要被发送的明文数据传给加密算法的切换设备。第一个IC卡的协议处理设备将发送数据转换为符合预先定义的协议的发送数据信号,并且通过通信媒介将其发送到第二个IC卡。

当第二个IC卡从第一个IC卡中接收数据时,第二个IC卡的协议处理设备将发送数据信号反向转换为第一个IC卡的原始发送数据并且将其传给第二个IC卡的加密算法的切换设备。第二个IC卡的加密算法的切换设备将发送数据反向转换为原始加密的数据,并且使用所选择的通用的加密算法将该加密数据解密为原始明文数据,该数据与第一个IC卡中的原始明文数据相同。

根据本发明的加密通信技术,仅仅通过在每个IC卡中安装加密算法的切换设备,其中该设备在多个加密算法和预先定义的单独的公共通信协议之间具有相应的转换规则,IC卡能够根据预先定义的公共通信协议,在不改变其中提供的通信功能的情况下,使得加密通信出现在IC卡所连接的用户终端之间。

此外,根据本发明的加密通信技术,通过设置存储在每个IC卡内的多个加密算法的优先级顺序,并且根据通信媒介中的通信速度或在IC卡间发送的内容,在IC卡间常使用的多个加密算法中选择具有最高优先级的加密算法,从而有可能实现IC卡间的非常有效和高速的通信。

通过在电子票销售系统中的IC卡之间使用加密通信方法,其中IC卡所连接到的服务器和用户终端开始进行相互之间的数据通信或当IC卡和电子票汇总机开始相互之间的数据通信时,它们都能够根据相互间在开始认证时所交换的通用的加密算法信息,来动态地改变相互认证的加密算法以及对要发送的内容进行隐藏的加密算法。

根据本发明中上面所述的IC卡,通过将多个IC卡分别连接到第一个和第二个用户终端,连接到各自用户终端的IC卡上的加密算法选择器在开始进行相互认证时交换有用的加密算法的信息,并且选择一个通用的加密算法作为相互进行通信时的加密算法。下一步,在连接到第一个用户终端的第一个IC卡中,加密设备使用所选择的加密算法将需要被发送的明文数据加密为加密数据,并且转换设备将加密后的数据转换为发射数据,该发射数据符合第一个用户终端中的预先所确定的协议。第一个用户终端将发送数据从第一个IC卡发送到通信媒介中。

第二个IC卡所连接的第二个用户终端从通信媒介中接收被发送的发送数据,并且将该数据传给第二个IC卡的反向转换设备。反向转换设备将发送数据反向转换成原始的加密数据并将该数据传给第二个IC卡的解密设备。解密设备使用所选择的加密算法将原始的加密数据解密成原始的明文数据,得到的明文数据与第一个IC卡中的明文数据相同。

根据IC卡所实现的加密通信过程,仅仅在每个IC卡中安装加密算法的切换设备,其中该设备在多个加密算法和预先定义的单独的公共通信协议之间具有相应的转换规则,IC卡能够根据预先定义的公共通信协议,在不改变其中提供的通信功能的情况下,使得加密通信出现在IC卡所连接的用户终端之间。

附图说明

图1为本发明一个实施例的IC卡之间的加密通信系统的方块图。

图2为本发明中的IC卡所实现的通信过程的方块图。

图3为实施例中所使用的IC卡的功能结构的方块图。

图4为示意方块图,示出在实施例的加密通信系统中所使用的IC卡内的IC芯片的内部配置。

图5为实施例的电子票销售系统的示意图。

图6为在实施例的IC卡之间的加密通信方法的顺序流程图。

图7为与实施例的加密通信方法相对应的加密数据的转换过程以及反向转换过程的流程图。

图8为实施例的加密通信方法中的IC卡所使用的加密算法的列表。

图9为实施例的加密通信方法中所使用的加密算法以及参数的列表。

具体实施方式

下面参考附图对本发明的实施例进行详细说明。

在图1-3中显示本发明的一个实施例的IC卡之间的加密通信系统。在IC卡之间的加密通信系统可用于图4中的电子票销售系统的加密认证和加密数据发送,其中电子票销售系统包括电子票服务器101、票发行服务器102、认证服务器103、一个或多个用户终端11和11’、以及票汇总机104。这些组件可以连接到信息网络105上进行相互通信。信息网络105包括因特网、移动网络以及其它的有线或无线网络。

在图5所示的电子票销售系统中,电子票服务器101具有一个防篡改设备110,该设备具有与IC卡相同的功能并且出售电子票。票发行服务器102根据来自于电子票服务器101的请求发行电子票给预定用户。认证服务器103对公共密钥和电子签名进行认证。在下文中,为了简单起见,将这些服务器101、102和103称为电子票销售服务器100。

用户终端11和11’中的每一个都具有电子通信设备和接口如连接端口以及与所连接的IC卡1和1’进行信号交换的IC卡槽。用户终端11和11’中的每一个都能够实现与IC卡1或1’相一致的电子票的购买和存储,其中这些IC卡连接到每一个用户终端。票汇总机104具有与IC卡相同的功能,并且在使用电子票时通过与IC卡的加密通信来从IC卡中收集电子票。

参考图1-3,IC芯片2集成在每个IC卡1和1’中。一个接触式或非接触式的接口3集成在每个IC卡1和1’中。如图4中详细所示,IC芯片2含有存储操作程序及其它固定程序和固定数据的ROM 21,作为工作存储器的RAM 22,存储应用程序的EEPROM 23,以及进行处理操作的CPU24。

当一个用户想购买电子票时,首先,该用户将IC卡1插入到用户终端11的卡槽中,使用用户终端11中提供的相应的接口连接到接口3从而进行相互之间的通信。下一步,用户将用户终端10连接到信息网络105,从而可对电子票销售服务器100进行访问,并从用户终端11进行必要的购买过程。通过来自于用户终端11的用户操作,所购买的电子票从电子票销售服务器100中发送到IC卡1的IC芯片2的RAM中,并且将其存储在其中。与电子票数据一起发送的还有通用密钥或保密信息数据。通用密钥或保密信息也被存储在RAM中。根据对称密钥加密系统,通用密钥或保密信息用于IC卡1和票汇总机104之间的相互认证。

存储在IC卡1中的加密密钥数据4的信息内容为:(1)在对称密钥加密系统中所必须要使用的用户的私有密钥信息以及电子票销售服务器100的公共密钥信息,以及(2-1)在IC卡1和票汇总机104之间使用公共密钥加密系统进行通信时,用户的私有密钥信息以及票汇总机的公共密钥信息,或(2-2)在IC卡1和票汇总机104之间进行使用公共密钥系统进行通信时,用于生成加密密钥所必需的公共密钥信息或共享的保密信息。

加密算法的切换单元5作为应用软件内建于芯片2中,其包括一个或多个加密算法A、B和C以及用于每个加密系统6的接口。用于每个加密系统6的接口具有转换加密数据的处理功能,其中加密数据是在IC芯片中通过其中的一个加密算法加密成预先定义的通信协议的数据,并且将接收到的预先定义的通信协议的数据反向转换成原始的加密数据,该加密数据符合芯片2中所存储的一种加密算法。接口6的作用将在下文详述。

值得一提的是,使用IC卡1购买电子票时,在IC卡1和电子票销售服务器100之间使用的每一种加密算法被用于通过用户终端11和11’进行相互通信的IC卡1和另一个IC卡1’之间,从而传送电子票,并且对电子票进行验证的过程中,在IC卡1和票汇总机104之间使用的加密算法可能因为服务器100的类型、IC卡1和1’的类型、票汇总机104的类型而各不相同。

例如,如图8所示,可用于对称密钥加密系统的加密算法如“Camellia”和“AES”和可用于公共密钥加密系统或其它系统的加密算法如“三重数据加密标准(Triple DES)”。优选为根据IC卡的类型和票汇总机的类型对相互通信的加密算法排定优先级顺序。确定的优先级的顺序应与速度优先还是安全优先一致,并且还应当考虑机器的性能。在IC卡之间或IC卡与防篡改设备之间开始进行相互通信时,对存储在其中的加密算法的类型和加密算法的优先级的顺序的信息进行交换,如图8所示。在相互可使用的加密算法中,选择具有最高优先级顺序的加密算法用于相互之间的认证和通信。在图8中列出的数据被存储在IC卡的IC芯片2的ROM21或EEPROM23中。

参考图3,在IC卡1的加密算法的切换单元5中,在通信协议处理部分8和加密算法的切换部分9之间含有一个共同接口,并且在此使用加密类型、加密数据/明文数据、加密密钥和加密/解密的四个参数。加密算法的切换部分9变换数据从而使其满足加密算法的参数、从图9的参数变换表中所选择的参数,并且将参数传给指定的加密算法。

在下文中,将对本实施例的IC卡间的加密通信系统执行的加密通信方法进行解释。参考图3,IC卡1具有加密密钥A和B。加密算法A和B的各自的加密密钥A和B用于加密和解密。加密算法的切换部分9将通信协议处理部分8接收的预先确定协议的数据变换成加密数据。该加密数据能够被IC卡1通过加密算法A和B进行解密。加密算法的切换部分9也可以将IC卡1中加密算法A和B加密后的加密数据变换成发送数据,其中该发送数据符合预先确定的协议,并且将该数据传给通信协议处理部分8。在用户终端11通过一个非接触式的接口执行无线通信的情况下,通信协议处理部分8对那些符合预先确定的无线通信协议的无线信号进行发送和接收。在用户终端11通过一个接触式的接口执行无线通信的情况下,通信协议处理部分8对那些符合预先确定的有线通信协议的通信信号进行发送和接收。

在下文中,将对加密算法的切换单元5所执行的加密通信程序进行说明。参考图1,假设与IC卡1连接的用户终端11同与IC卡1’连接的用户终端11’进行相互通信,通过无线方式来传送电子票。

在流程图6的步骤S1中,IC卡1和1’在开始进行通信时交换关于通用加密算法的信息,从而选择相互认证过程中使用的加密算法以及对发送的数据进行隐藏时所使用的加密算法。可以通过参考图8中的加密算法列表以及优先级来确定加密算法。在这里,可选择三重数据加密标准算法用于相互认证过程以及对发送的数据进行隐藏。

在步骤S2到S5中,当IC卡1确定所使用的加密算法时,在加密算法的切换单元5中的每个加密系统6的接口读取用于所选择的加密算法和预先确定的通信协议之间数据变换的参数,并且使用所选择的参数对加密数据进行变换。

在所选择的加密算法为三重数据加密标准时,在图7流程图的步骤S21中,确定参数的块大小为64位,密钥长度为128位以及密钥地址为ZZZ,如图9中的表所示。此外,传送包的块大小为128位。

在图7的流程图的步骤S22中,为了生成每单位128位的数据,每个加密系统6的接口在65位的加密数据的第65位到第128位上填0,其中需要发送到通信媒介上的块大小为128位的数据长度。对于要发送到相对的IC卡上的加密密钥信息或保密信息,为了生成每单位128位的数据,每个加密系统6的接口在112位的加密数据的第113位到第128位上填0。每个加密系统6的接口将每单位128位的数据传给通信协议处理部分8。每个加密系统6的接口将用于变换的加密算法的信息加到变换后数据上。

通信协议处理部分8从加密算法的切换部分9中取得变换后数据,并将其传给用户终端11。用户终端11将数据变换成发送数据信号并且发送给相对的用户终端11’(图6的流程图步骤S6和图7的流程图步骤S23)。

在图6的流程图步骤S7中,从相对的用户终端11’中取得发送数据信号并且将该信号传给通信协议处理部分8。通信协议处理部分8将接收的数据信号反向变换成预先确定的通信协议的原始数据并且将该原始数据传给加密算法的切换部分9。

在相对的IC卡1’中,加密算法的切换部分9使用与步骤S4中相同的方法读取加密算法的参数,并且将接收的每单位128位的包数据反向变换成原始加密数据(图6的流程图步骤S8和S9以及图7的流程图步骤S24和S25)。此外,在相对的IC卡1’中,所选择的加密算法将原始加密数据解密成原始明文数据,其中该明文数据由IC卡1产生(图6的流程图步骤S10和S11)。

当相对的IC卡1’发送加密的数据到IC卡1中时,相同的方法可用于加密过程、遵循预先定义的通信协议的数据变换、根据预先定义的通信协议的数据发送/接收、将接收的数据反向变换成原始的加密数据并且将加密数据解密成原始的明文数据。

根据本发明的加密通信技术,仅仅通过在每个IC卡中安装加密算法的切换设备,其中该设备在多个加密算法和预先定义的单独的公共通信协议之间具有相应的转换规则,IC卡能够根据预先定义的单独的公共通信协议,在不改变其中提供的通信功能的情况下,使得加密通信出现在IC卡所连接的用户终端之间。

此外,根据在电子票销售系统中的IC卡之间使用加密通信方法,其中IC卡所连接到的服务器和用户终端开始进行相互之间的数据通信或当IC卡和电子票汇总机开始相互之间的数据通信时,它们都能够根据相互间在开始认证时所交换的通常使用的加密算法信息,来动态地改变相互认证的加密算法以及对要发送的内容进行隐藏的加密算法,从而在相互之间开始认证时产生高速和安全的加密通信。

此外,根据本发明所提及的IC卡,仅仅通过在每个IC卡中安装加密算法的切换设备,其中该设备在多个加密算法和预先定义的单独的公共通信协议之间具有相应的转换规则,IC卡能够根据预先定义的公共通信协议,在不改变其中提供的通信功能的情况下,使得加密通信出现在IC卡所连接的用户终端之间。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号