数据传送的加密方法 本发明涉及一种对正被传送在数据传送系统的数据通信设备之间的信息加密的方法,其中一个或多个数据帧由一应用形成信息的一个或多个数据包形成,并且这些数据帧包括至少一个标题字段和一个数据字段。本发明还涉及一种数据通信系统,该系统包括对正被传送在数据传送设备之间的信息加密的装置、由该信息形成一个或多个数据包的装置和由该数据包形成数据帧的装置。
在单独数据传送设备之间实现数据传送可以这种方法进行:对于数据传送所需的时间,在那时它们之间传送数据的这些数据传送设备被链接在一起。在这种情况,该链接被保持到用户停止数据传送为止。在这种情况,大部分链接时间化费在输入由用户提供的指令,而只有小部分时间是实际数据传送。这就限制了,例如同时用户的最大数目。另一个可能性是利用所谓分且交换数据传输。此时,在被传送的数据以包方式在传送设备之间传送,在那种情况,在包之间的时间可自由地利用,并能被其它数据传送设备所使用。此时,可增加同时用户的数目,尤其在无线数据传送网络,例如蜂窝式网络,由于此时处于同一蜂窝区域地移动台能使用同一传送信通。一个这种蜂窝式系统就是GSM系统(组特种移动),为此包方式数据传送业务GPRS(通用分组无线电业务)已经开发。图1表示在GPRS系统的工作中原理方框图。分组交换控制器SGSN(适合GPRS支持节点)控制在蜂窝网络侧分组交换业务的工作。该分组交换控制器SGSN控制移动台MS的广播开始和广播结束、更改移动台MS的位置和对它们的校正目的地发送数据包。该移动台MS通过无线电接口Um(图1)连接到基台子系统BSS。该基台子系统通过BSS-SGSM接口Gb接到分组交换控制器SGSM。在基台子系统BSS中,通过BTS-BSC接口Abis把基台BTS和基台控制器BSC相互连接在一起。在移动台网络中的分组交换控制器SGSN的位置能够改变,例如,根据正使用的技术实施。虽然在图1中该分组交换控制器SGSN已在基台系统BSS之外定位置,例如,分组交换控制器SGSN能设置作为与基台子系统BSS连接的基台BTS的一部分或作为基台控制器BSC的一部分。
例如,在本发明申请日期以前已过时的申请草案GSM01.60,GSM02.60,GSM03.60和GSM04.60中已描述了GPRS系统。
移动台MS和分组交换控制器SGSN二者的工作可分成各种层,每层提供不同的功能,如图2所示的。国际标准化组织ISO已订出OSI模型(开放系统互连),用于把数据传送分组成不同的功能层。在这模型中,有七层在所有数据通信系统中是未必需要的。
在移动台MS和分组交换控制器SGSN之间的可传送信息,例如由用户传送的控制信号和数据是以数据帧方式优选地交换。每层的数据帧由一个标题字段和一个数据字段组成。图2也表示以不同层正使用在GPRS系统中的数据帧的结构。
在数据字段中包含的信息可以是,例如由移动台的用户或信号数据输入的数据。该数据字段可包含在将它传送到无线电路径之前尽可能可靠地得到必须可靠的机密信息。在这种情况下,必须以这种方法进行加密:在分组交换控制器SGSN和与它连接的移动台MS之间的所有同时连接中,使用了单独加密键。因此,由于移动台MS使用共用的无线电路径,即在许多不同连接中的信息是在相同的信道中,例如以不同的时间间隔进行传送的,所以通过在数据字段的加密中所使用的相同加密键来加密数据帧的地址数据不是最好的。此时,每个移动台应接收在相关信道中传送的所有消息和解密至少地址数据的加密,以识别供移动台用的消息。该分组交换控制器SGSN也没有识别应使用的加密键。
下面将介绍GPRS系统的各层的操作功能。
最低层称为MAC层(介质存取控制),该层控制在移动台MS和基台子系统BSS之间通信的无线电路径的使用,例如分配传送和接收包的信道。
在最低层的基台子系统和分组控制器SGSN之间的数据传输是在使用层协议的L2层(链路层)执行的,例如根据标准Q.921的LAPD协议、帧中继协议或等效物。根据GPRS说明书该L2层附加还包含质量或路由数据。层L2具有OSI模型的物理层和链路层的性质。在基台子系统BSS和分组控制器SGSN之间的物理传输线,例如取决于已设置在系统中的分组控制器SGSN。
在MAC层上方有RLC层(无线链路控制),而其功能是把由LLC层形成的数据帧分成要传送到无线电路径的固定大小的包,当需要时它们传输或再传输。在GRPS系统中包的长度是一个GSM时隙的长度(约0.577ms)。
LLC层(逻辑链路控制)提供在移动台MS和分组控制器SGSN之间的可靠传输链路。该LLC层,例如,通过企图校正这些不正确接收的消息来增加发送消息误差检查数据,并当需要时可再发送该消息。
SNDC层(子网络从属会聚)包括来自上层的发送信息、压缩、分段和消息的分段的类似协议变换的作用。因此,在SNDC层完成加密和解密。在图2中已表示了SNDC帧的结构。SNDC帧包括一个SNDC标题字段(SNDC标题)和SNDC数据字段(SNDC数据)。该SNDC标题字段包括协议数据(网络层业务存取点识别符,NLSI)和SNDC控制数据,例如压缩、分段和加密的确定。该SNDC层在上层使用的协议和LLC层(链路层)的协议之间起协议适配器的作用。
发送信息最好按数据包按某些应用进到SNDC层,例如根据GPPS系统的消息或网间协议(IP)的包。该应用,例如可以是移动台的数据应用、电子邮政应用、对移动台具有数据传输链路的计算机程序等。
MAC层、RLC层、LLC层和L2层包含在OSI模型中在层2所描述的性质。然而,在OSI模型所描述的层和上面所述的层不是明显的相关。
SNDC帧传送到LLC层,在那里LLC标题字段与该帧相加。LLC标题字段包括暂时逻辑链路识别符(TLLI)和LLC控制部分。分组控制器GPRS对于在移动台MS和分组控制器GPRS之间的每个数据传输链路建立TLLI识别符。该数据使用在数据传输中,以便规定每个消息属于那一个数据传输链路。同时,相同的TLLI识别符只能使用在一个数据传输链路。在链路结束以后,在链路中使用的TLLI识别符可分配到被连续构成的新链路。LLC控制部分规定帧号数和指令类型(信息、确认、再传输请求等),以便保证无差错数据传送。
在GSM系统中加密是在物理层按每比特加密1比特来执行的,即发送到无线电路径的比特流是通过使用加密键Kc、使用本身公知的算子A5形成的发送数据加密比特的总和来形成的。算子A5加密在专用于数据传送的信道(业务信道、TCH或专用控制信道,DCCH)上的物理层的发送数据和信号信息。
保证传送消息的同步是以这种方法进行:用特定同步数据(COUNT)的方法求得算子A5。根据TDMA帧号形成同步数据COUNT。然后由算子A5形成的每114比特块的内容仅取决于帧编号和加密键Kc。
当专用信道的通信业务还没有加密和正被使用的移动台网络已识别移动台MS时,最好在该阶段执行加密键Kc的设置。在GSM系统的识别中,使用国际移动用户识别符,IMSI识别移动台并且存贮在移动台中,或使用根据用户识别符已形成的暂时移动用户识别符,TMSI。在移动台中,用户识别键Ki也已被存贮。该用户识别键Ki也被移动台网络所知道。
为保识加密键Kc仅被移动台MS和移动台网络识别,加密键从基台子系统BSS到移动台MS的传输是间接的。然后,在基台子系统BSS中,随机存取号,RAND被形成,传送到移动台MS。加密键Kc通过使用算子A8由随机存取号RAND和由用户识别键Ki形成,如图3所示。加密键Kc的计算和存贮在移动台MS和移动台网络二者中执行。
在移动台MS和基台子系统BSS之间的数据传送在连接的开始没有加密。对加密方式的转移最好以这种方法进行:基台子系统BSS对移动台传送某个指令(非加密的),在这个上下文中称为“起始密码”。在移动台MS已接收指令“起始密码”以后,它开始加密传送消息和解密接收消息。相应地,基台子系统BSS在基台子系统已接收由移动台传送的加密消息和解密正确的加密以后开始加密传送到移动台的消息。
在以上所述的加密中,例如该同步取决于物理层的TDMA帧编号。特别是当在如以分组交换数据传输方法之类的相同信道上传送属于不同连接的信息时,不可能将它使用在所有的应用中。
在欧洲专利申请EP-0689316中,已提出了一种用于数据传送的加密的方法,其中,例如加密数据包括连接到传送数据帧的加密键。美国专利US-5,319,712包括数据传送的加密方法和装置,以致于序列号连接到链路键的数据帧,并加密数据帧。根据现有技术的这些加密方法的缺陷是,例如在数据帧不需接收和解密使系统的效率变差的情况下,该接收机不能识别而没有解密试图接收的数据帧。
本发明的目的是提供一种在数据传送系统中数据传送的加密方法和装置,其中传送的数据处于数据帧方式和在数据帧结构在不同层可不相同的情况下,数据传送系统已被分成功能层。根据本发明的方法其特征在于:至少某些部分的数据包用加密键加密,并在于同步数据附属于数据帧和它的值至少在每个数据帧的传输处进行改变。根据本发明的系统其特征在于,加密信息的装置至少包括:
用加密键加密数据包的装置,
把同步数据连接到数据帧的装置,
改变在每个数据帧的传输处的同步数据的值的装置,和
在接收机的数据传送设备中译出的同步数据的装置。
与根据现有技术的加密方法相比较,很多优点可用本发明来实现。在根据本发明的方法中,可以不加密方式传送物理层的数据帧的标题字段,或目前公如的方法可用在加密中。在根据本发明的最佳实施例方法中,对于物理层的每个传输块改变加密键,在解密情况下不识别加密键实际上是不可能。通过使用根据本发明的方法,在仅加密传送数据帧的一部分的情况下,附加实施部分加密是可能的。此时,例如,广告仅能把非加密的和其它信息加密的传送到已正确接收加密的数据帧和解密它们的地方。
下面通过参照附图详细地描述本发明,其中
图1表示GPRS系统的逻辑结构的示意方框图,
图2表示GPRS系统的层结构和这些层的数据帧结构,
图3表示在移动台中和在移动台网络中根据现有技术的加密键的定义的示意方框图,
图4a表示根据本发明的最佳实施例的加密,
图4b表示根据本发明的另一最佳实施例的加密,
图5a-5d表示根据实施例的链路层的数据帧结构,
图6a表示根据实施例用点到点连接的适配层的数据帧结构,和
图6b表示根据实施例用多点连接的适配层的数据帧结构。
下面,本发明是通过在GSM系统中实施的分组交换业务GPRS的方法设想的,然而本发明不仅局限于这个系统。
在本发明中,目的在于实施,其中尽可能更多地利用现有加密技术,例如调节GSM系统的加密,以致于它能应用在例如GPRS系统中的数据帧的传输中。本发明的一个优点是,它能应用在许多操作模式中,例如点到点,PTP连接、多点连接(点到多点—多信道广播、PTM-M;点到多点组,PTM-G)等。加密方法主要根据TLLI识别符分类。对在移动台MS和分组交换控制器SGSN之间的每种连接类型分配各别的TLLI识别符。根据本标准,下面不同的类型适合于使用在GPRS系统中。
点到点(PTP)在移动台MS和分组交换控制器SGSN之间的通信中使用唯一的TLLI识别符。
点到多点多信道广播(PTM-M)使用对在移动台MS和多信道广播业务供给者之间的通信分配的TLLI。
点到多点组(PTM-G)使用对经在移动台组内移动台MS的多信道广播业务供给者相互通信分配的TLLI。
一般点到点连接在链路层级使用确认方式,即传输的接收机传送数据作为确认的正确接收。在点到多点连接处,数据帧通常通过使用其中不传送确认的操作方式来发送。
如在本说明书中前面已经阐述的那样,在同一信道中发送不同连接的数据的系统中,不是优先地对每个连接用唯一加密键加密数据帧的标题场。此时,该数据帧至少在与物理层不同的一些层部分地加密。在GPRS系统中,在LLC层执行加密。传送数据以这种方式加密:加密比特串与数据帧的每个比特加起来。通过使用单个和唯一的加密键Kc,用加密算法已优先地形成加密比特串。例如,加密算法是从GSM系统已知的A5算法。
除了正确地址以外,必须保证数据帧能排序在接收机中。以这种本身已知的方法就能实施,以致于在解密以后,接收机启动的情况下同步数据COUNT进入到加密算法,以求出数据帧的序列。例如,在类似GSM的TDMA系统(时分多址访问)中,TDMA帧编号能用于对物理层的数据帧编号。然而,GPRS系统的分组交换控制器SGSN不知道TDMA帧号,因此,在本发明中,用于同步数据帧的方法已经开发了,并且在这个方法中数据帧的序号(数据帧号)被用作同步数据。于是,每个传送块的内容是用,例如帧编号和加密键Kc来确定。
由于通过把传送数据优先地分成标准长度的子块来执行加密,所以要加密的数据量以不同的连接而改变,但是在本发明的应用中是没有意义的。然后,通过加密算法的第一比特来加密每个子块的第一比特,通过加密算法的第二比特来加密子块的第二比特等。在GPRS系统中,例如在本GSM系统中,子块的长度可以是114比特。子块的长度也是优先地用字节的长度可分的。在许多应用中,在子块的适当长度是64比特的情况下,字节的长度是8。
在GSM系统中,移动台MS一次只能使用一个加密键。在GPRS系统中,由于移动台同时能有许多不同类型的有效连接,而每个连接具有大多数优先由不同装置形成的单独加密键Kc,所以每个移动台MS的一个加密键不需要满足每一种情况。该加密数据帧包括正被使用的加密键Kc、同步数据COUNT和连接到TLLI的块计数器BLCNT的值COUNTb。图4a表示在不加密的子块(明文输入)从网络到移动台传送加密(加密正文)的情况下根据本发明的优选加密方法的示意方框图。在这个实施例中,块计数器的值COUNTb也使用在加密块BLOCK1的确定中。该块计数器可通过设置行“清零”设置到它的初始值,最好在每个适配层的数据帧的开始。在网络侧和在移动台MS中,同步数据COUNT的值对每个传送块用同步数据COUNT的值和输入到加密算子A5的加密键Kc进行计算。在传输侧,输出比特串(BLOCK1)和子块(明文输入)总和。加密子块在信道中传送到移动台MS。相应地,移动台MS通过加密算子A5的输出比特串(BLOCK1)与接收加密子块的总和,因此可得到相应于传送子块的不加密子块(明文输入)的总和。图4b表示根据本发明的另一最佳加密方法的示意方框图。该实施例与图4a的实施例主要的不同处在于:没有使用块计数器BLCNT。
帧序列号的典型长度是6到8比特。从加密保密的观点来看,仅作为COUNT变量的这个值是不满足的,因此,除了帧序列号,例如基台识别符以外,其它变量也可使用在同步数据的COUNT值的确定中。基台标识是由网络和移动台二者来识别,这由于正被使用的移动台把基台的改变通知分组交换控制器SGSN。于是基台的变化改变了在本实施例中的同步数据的COUNT值。
在点到点连接方式中,下面变量可用在同步数据的COUNT值的确定中。
a)逻辑链路控制层的帧号(UC帧号LLC#)传送到适配层(SNDC)。
b)适配层的数据帧号(SNDC数据块号SDU#)能被连接到传送数据帧或在当保持在连接的两端时连接的起始处初始化。
c)路由区域的识别符(Routing area#)在连接的二端识别,以致于识别符不必连接到传送数据帧。
d)分组交换控制器的区域的识别符(SGSN#)在连接的二端识别,以致于识别符不必连接到传送数据帧。
e)基台的识别符(Cell#)在连接的两端识别,以致于识别符不必连接到传输数据帧。
在点到多点连接方式中,下列变量可用在同步数据的COUNT值的确定中。
a)适配层的数据帧号(SNDC数据块号,SDU#)在SNDC数据帧内传送。
b)路由区域的识别符(Routing area#)在连接的两端识别,以致于识别符不必连接到传送数据帧。
c)分组交换控制器的区域的识别符(SGSN#)在连接的两端识别,以致于识别符不必连接到传送数据帧。
d)基台的识别符(Cell#)在连接的两端识别,以致于识别符不必连接到传送数据帧。
因此,在两个连接方式中,可使用块计数器BLCNT的值,由于相同加密比特串没有使用在序列数据字段的加密中,所以对于入侵者更难于使加密数据字段破裂。否则,对于适配层的数据帧的每个传输仅执行一次重算。适配层的数据帧的长度可以是成千上万的比特,以致于如果加密算子通常没有充分计算,就可能找出加密键。
上述提出的定义同步数据COUNT的变量或能单独使用或能组合使用。于是在数据帧内一些变量必须传递到接收机,并可局部地管理它们中的一些。局部管理变量的使用可增加保密的级别和在某种程度上它减少了传送数量的总量。下面的表给出了同步数据COUNT的内容。表1.1表示根据本发明的最佳实施例的一些同步数据和其中已使用块计数器BLCNT,和表1.2表示本发明另一最佳实施例和其中已使用基台的识别符代替块计数器COUNTb的值。
表1.1比特方式22212019181716151413121110 9 8 7 6 5 4 3 2 1 PTP SDU#(局部的或传递的)LLC#(传递的) COUNTb PTM SDU#(传递的) 1 1 1 1 1 1 COUNTb
表1.2比特方式222120191817161514 1312 1110 9 8 7 6 5 4 3 2 1 PTP SDU#(局部的或传递的)LLC#(传递的)单元#路由区域#或sGsn#(本地局部) PTM SDU#(传递的) 1 1 1 1 1 无 单元#路由区域#或 sgsn#(本地局部)
下面对加密键Kc的设置予以描述。每当网络操作员发现它需要时,加密键Kc的设置用该网络初始化。因此,对于每个TLLI连接必须产生唯一的加密键。加密键Kc-TLLI识别符对的表是最佳地保持在分组交换控制器GPRS和移动台MS二者。加密键对于不同连接类型是不同的。
在点到点连接中,加密键Kc通过使用随机存取号RAND间接地传送。该加密键Kc由随机存取号RAND和移动台的用户识别键Ki通过使用正象GSM系统中的算子A8优先地形成在GPRS系统中。移动台的识别键已存贮在移动台的SIM卡片上(用户识别符模块)和在网络的鉴别中心AuC。
在多点连接中,连接到相同业务的所有的移动台使用相同的加密键Kc。当对业务产生连接时启动加密键Kc。该加密键Kc通过使用不同的方法输入到移动台MS。在移动台MS通过点到点连接在获得多点连接的存取之前必须存入到分组交换控制器GPRS。当点到点连接的注册级期间,加密键Kc已定义为连接,并且当它传送到移动台MS时它被使用在多点连接的加密键的加密中。
多点连接的加密键也能,例如通过使用移动台MS的键控,例如PIN码,或能使用在已存贮加密键Kc的其它参数中的一种SIM卡被输入。
当移动台MS它的位置改变到另一分组交换控制器GPRS的区域时,因为加密键能从先前的分组交换控制器传递到新的分组交换控制器,就不必再产生加密键Kc。
从明文方式转到加密方式最好以这种方法进行:分组交换控制器GPRS以明文传送特种的“起始加密”指令。在移动台MS中,在“起始加密”指令以后传输的加密和接收起始的解密已由移动台正确地接收。在分组交换控制器GPRS侧,在分组交换控制器以后相应的加密起始已接收由移动台MS传送的消息和将它解密。上述所描述的操作,在其主要部分响应于GSM系统的加密的起始。
在一些分组交换应用中,加密也可采用这种方法:加密仅以一个方向传送的消息,即从移动台MS到分组交换控制器GPRS或从分组交换控制GPRS到移动台MS的消息。类似这种应用包括,例如通常不加密传送的信号的传递。
因此,根据本发明的加密也能采用这种方法:加密仅某些部分的适配层的传送数据帧SNDC。此时,一种加密比特优先地加到适配层的数据帧,并且它表示相关的数据帧是加密的还是不加密的。例如,当加密比特其值为零时,则数据帧是不加密的,当加密比特其值为1时,则数据帧是加密的。在登记的用户解密加密的数据帧的情况下,这能使用在,例如全程地存取业务请求登记或同等物的状态。对于其它用户,业务供给者能以不加密数据帧传送信息相关业务和信号。
图5a表示根据优选实施例的链路层的数据帧结构的一个实例。数据帧的标题字段(帧标题)包括三字节的TLLI识别符和两字节的控制部分(控制)。如本身所公知的,一字节包括八位二进制信息(比特)。数据帧的信息场包括传送信息。信息场的长度可以改变。数据帧不包含,例如包括纠错信息的两个字节的检查字段(检查序列)。
图5b表示当数据帧是信息传送和系统监视数据帧时图5a的数据帧控制部分的结构,其中:
C/R表示是指令还是响应的问题(指令/响应),
S1和S2描述监视指令的类型,
N(S)是发送序列号(发送序列号),
P/F表示是确认请求消息还是确认消息(F)的问题(查询/结束),和
N(R)是接收序列号(接收序列号)。
图5C表示当数据帧是系统监视数据帧(监视)时图5a的数据帧控制部分的结构。该比特的意义上面已经描述过。
图5d表示当数据帧是不编号数据帧(未编号)时图5a的数据帧控制部分的结构,其中:
M1-5是未编号指令和响应,
G/D表示是控制还是数据帧的问题(控制/数据),和
X比特是没有意义的。
图6a表示根据优选实施例具有适配层的点到点的数据帧结构的一个实施。第一字节包含控制数据,其中:
M表示是否是由该应用形成的最后段信息的问题,
E表示是否在使用中加密,
Pri表示优先分类,
NLSI是协议数据,它可以是例如:
TCP/P,
CLNP,
X.25,
GPRS,等
图6b表示根据优选实施例具有适配层的多点连接的数据帧结构的一个实例。该比特的意义上面已经描述过。
虽然上面已描述了本发明,在数据传送系统中,使用移动台MS、基台子系统BSS和GPRS系统的分组交换控制器SGSN,本发明也能用在其它的数据传送系统,例如在分组交换数据传送系统中最优选的TDMA和CDMA数据传送系统。
本发明不仅限于上面提出的实施例,而且在附加权利要求的范围内可进行改进。