数字蜂窝状通信的鉴别系统的制作方法

文档序号:7560806阅读:186来源:国知局
专利名称:数字蜂窝状通信的鉴别系统的制作方法
技术领域
本发明涉及数字蜂窝状通信系统,尤其涉及在这种系统中加强数字通信的保密性的一种方法和装置。
蜂窝状无线电通信也许是世界电信工业中发展最快的领域。虽然蜂窝状无线电通信系统目前仅占运行的电信系统的一小部分,但可相信,这部分将稳定地增长,不久的将来将代表整个电信市场的主体。这种信念是基于传统电话通信网络主要依靠有线技术与网络中的用户相连接的固有局限性。例如,标准的家用或办公电话,通过定好最大长度的电话线连接到墙孔或电话插孔上,同样,从电话插孔连到本地区电话公司的交换台的电话线也是如此。于是电话用户的行动不仅受到电话线长度的限制,而且也受到与当地交换台相连的电话孔的具备与否的限制。的确,无线电系统的产生很大程度上是基于需要克服上述局限性,并且使电话用户可自由行动或离开住处或办公室而不牺牲与他人进行有效通信的能力。在典型的蜂窝状无线电系统中,用户或用户的车辆带着一种相当小的无线装置,该装置与一个基地站通信并使用户与系统中的其它活动站以及公共交换电话网络(PSTN)相沟通。
现有蜂窝状无线电通信系统的一大缺点是模拟式无线电发送容易被截听。尤其是,在活动站和基地站之间的部分或整个通信,不经授权,只需简单地把一个适当的电子接收器的频率调谐到该通信频率就可进行监听。因此,任何具备这种接收器和有意偷听的人,实际上能够任意地和不受惩罚地侵犯通信隐私权。尽管已竭尽努力把电子偷听定为非法,但这种活动的诡密性通常意味着,即使不是全部也是绝大多数的偷听情况得不到检测而继续存在,因此也不受处罚和制止。竞争对手或敌方可能会对他人似乎是私密的电话交谈进行“调谐”,这种可能的存在如今已妨碍蜂窝状无线电通信系统的推广,如果任其不受检查,势必将继续威胁着这种系统在商业和政府部门应用的生存力。
最近更清楚,未来的蜂窝状无线电电信系统将用数字技术而不是模拟技术实现。转向数字技术主要是出于系统速度和容量的考虑。在单个模拟或声音无线电频率(RF)通道能容纳4到6路数字或数据RF通道。于是,在由音频通道发送之前,先对语言数字化,则通道容量、继而整个系统容量,可以不用增加音频频道的通带宽度而显著地增加。结果,该系统可以相当低的成本调度实质上更多的活动站。
虽然从模拟转到数字蜂窝状无线电系统稍微改善了基地站和活动站之间通信的保密泄漏的可能性,但电子偷听的风险远未排除。可以做出一个数字接收器以解码数字信号并产生原语言。其硬件比模拟发送情况可能更复杂并费用更昂贵,但是在数字蜂窝状无线电系统中高度私人的和敏感的交谈仍然存在被第三者监听的可能性、并潜在被用来对系统用户造成危害。而且第三者偷听电话交谈的甚大可能性,排除了蜂窝状电信作为某些政府通信的工具。某些商业用户甚至对机密泄漏的可能性也一样敏感。于是,为了使蜂窝状系统能成为传统的有线网络有活力的更替,通信的保密性必须至少在某些线路具备。为解缓对无线电等在保密性方面的关心,已提出各种解决发送保密数据方案。现有通信系统实行的已知的一种方案,是在发送之前用秘密算法把数字数据编码(量化编码)成难懂的形式。例如,由瑞克·格雷汉(Rick Grehan)在《字节杂志》(BYTE Magazine)1990年第6期第311-324页上发表的题为“伪装和数据”(Cloak and Data)的文章中,概论了密码系统。在现用的大多数系统中,语言经数字化再通过编码装置处理,产生一种以随机或伪随机出现的通信信号,直到它在授权的接收机中被解码。编码装置所用的特定算法可以是独有的算法或公开范围中可找到的算法。这种技术的背景又可从马丁E.诲尔曼(Martin E.Hellman)在《科学的美国人》(Scientific American),1979年8月第146-167页上发表的题为“公共关键密码术的数学”(“The Mathematics of Public-Key Cryptography”)文章中看到。
有一种数据密码技术是依靠由关键字流产生器(Keystream generators)驱动的“时刻”(time-of-day)或“帧数”(frame number)来产生伪随机二进制位的关键字流;这种关键字流与待编码数据组合。这种关键字流产生器可以与时刻计数器,即时、分和秒同步,或与简单的数字计数器同步,而且密码和解码装置可通过把发送机的计数器的当前计数值发送给接收机在相互不同步时来实现同步。
为了对利用关键字流产生器来驱动时刻或帧数的系统增加通信的安全保密性,在这种伪随机关键字流中的每个二进位的值,最好作成密码关键字中的所有关键字位的数值函数。这样一来,对加密的信号蓄意解密的人,就必须“解译”或“破译”这种其数量在50至100位甚或更多位的密码关键字的所有的位。这种类型的关键字流一般是按照所选择的与时刻计数器的计数相结合的算法,用数学方法对密码关键字进行扩展产生的。然而,如果密码关键字的每一位要影响关键字流中的每一位,并且如果该关键字流要按照一对一加到数据流位上,则每秒关键字扩展计算所需的数量是巨大的,而且很容易超出系统实际时间计算能力。上面提到的共同待批的题为“数字蜂窝状通信的密码系统”的申请案中,用传统的微处理器在传统的微处理器速度下做到了该关键字流的扩展。
使用密码关键字来产生一个作为所有关键字位的复杂函数的伪随机关键字流,是保密数字通信的极有用的工具。其它工具可包括确保分配给每个活动站的保密关键字(永久关键字)从不直接应用于局内网络(即活动站的正常服务和记帐区域)以外的一种布置。然而,该永久关键字却用来产生其它位(保密关键字),这种其它位用于对特殊的呼叫以及可从局内网络发送到被访网络(即正常记帐区域以外的该活动站正在游动的区域)的呼叫进行加密。这种布置减少了未经许可将永久关键字泄露给可利用该关键字使加密过程失效的第三者的风险。
数字蜂窝状系统的保密通信的另一工具是活动站在登记、呼叫始发或呼叫接收时进行鉴别。鉴别可简单地认为对活动站标识的认定过程。鉴别和加密两者需要在被访网络和局内网络之间通信,这里活动站有永久登记,以便获得活动-特定信息,如用以加密保密关键字。按照本发明,鉴别和加密码的功能是连在一起的,这样单个网络间处理同时建立两个功能。如下面所详细描述,本发明做到这种综合是通过在一处理中不仅产生对随机询问(RAND)的关键字相关响应(RESP)而且也产生用于对用户通话加密的保密关键字(S-Key)。
在目前发展中的美国数字蜂窝状(ADC)系统中,仅对空中接口(air interface)直接作出规定。然而,在ADC系统中所需要的保密功能的技术要求,如鉴别和加密,可简接地决定网络的保密结构。对鉴别而言,结构任选涉及到应在局内网络亦或在被访网络中执行鉴别算法,对两任选之间作一选择对于限定适当的算法是必需的,这是由于局内网络可用的输入到算法的可能参数未必需要与用于被访网络中的那些参数相同。按照后面的说明,本发明已考虑到在局内网络中执行鉴别算法所带来的显著的保密利益。
现有的蜂窝状系统的严重问题是所谓的“假活动站”综合症。至今,已能够拷贝出活动站的整个存储器内容,并且使用该信息去制造出可要求和接收网络服务的克隆(Clones)。所提出的一种解决方案是,给每个授权的活动站一特定的其永久关键字具有只写入入口的鉴别模块或灵巧卡。然而,这种方案使活动站更复杂、更昂贵。本发明包括提供一个成本效益更高的防止假活动站的“翻滚关键字”(rolling key)。另外,为应付网络中的“假基地站”,本发明包括一个当把翻滚关键字作适时修正时使用的双向(bilateral)鉴别步骤。这种双路鉴别步骤增强了保密性,且允许在呼叫(打电话)期间的任何时候在系统的专用通话通道上进行双向鉴别。每一鉴别步骤可由网络操作者任选下执行,但必须在首次在网络中检测到一有效活动站之后至少进行一次,以便产生首次呼叫的S关键字。
一个活动站可偶尔进入一个小的、孤立的、与局内网络没有通信线路的被访网络,以便按照本发明的总系统对鉴别和加密予以必需的支持。这样的被访网络可能会接收该活动站的呼叫或登记而不进行鉴别,并且用通话通道定义的一个二进制位来表明,该活动站的活动标识号(MIN)可当作欠费(default)S关键字使用。
本发明的系统将就整个数字蜂窝状系统以及一个产生伪随机关键字流用于对蜂窝状系统中对通话数据进行加密的系统说明以下。为说明背景和/或作比较之需要,只要适当或有用处均参照电子工业联合会(Electronic Industries Association)1990年5月出版的EIA/TIA暂行标准“蜂窝状系统对偶式活动站-基地站兼容标准”IS-54(下面称为“IS-54”,且这里用作为参照)。
一方面,本发明的系统包含产生多个参数用于增强数字蜂窝状通信系统的通信保密,在这数字蜂窝状通信系统中每个活动站被分配一个单一的多位保密永久关键字,且采用按周期变化的多位翻滚关键字以增加保密性。永久关键字和翻滚关键字两者都储存在每个活动站和该活动站的局内网络中。这里使用多个多位输入信号,该信号包含一个表示来自被访网络的随机鉴别查询的信号和一个表示特定活动站连同该特定活动站的多位永久关键字及与该特定活动站在特定时刻相联系的多位翻滚关键字的信号。上述输入信号的位数安排在第一组中,并且从该输入信号组和永久的及翻滚关键字的位数按第一算法计算出第一输出值。包含所述第一输出值的顺序安排的位数组分配给所选定的参数以便应用于该系统中,包括由活动站使用的回答被访网络提出的鉴别查询的鉴别响应和被访网络使用的以对活动站进行鉴别的鉴别信号。然后,输入信号的位数安排到第二组中,且从该输入信号组和永久及翻滚关键字位数按第二算法计算出第二输出值。包含所述第二输出值顺序安排的位数组分配给选定的参数以便应用于所述系统中,包括用于计算系统中加密通信数据的伪随机位的关键字流的保密关键字和拟与特定活动站在下一个特定时刻相联系的新翻滚关键字。
本发明的另一方面,在第一和第二算法中使用的某些随机数,可从一个查找表获得,该查找表也用于获得计算该系统中加密通信数据的伪随机位流的算法中所用的随机数。
本发明的再一方面,还包括实现数字蜂窝状通信系统的系统,该系统包括通信通话加密和产生双向鉴别及加密关键字。
参照下面的附图,对于本技术领域中的技术人员将会更好地理解本发明并能清楚地看到它的许多目的和优点。


图1是表示包括活动交换中心、多个基地站和多个活动站的蜂窝状无线电通信系统的示图;
图2是根据本发明系统的一实施例所使用的活动站设备的示意方框图;
图3是根据本发明系统的一实施例所使用的基地站方框图;
图4是已有技术关键字流产生器的方框图;
图5是按照本发明所构成的加密系统的关键字流产生器电路的方框图;
图6是图5中所示关键字流产生器的第二展开级的部分方框图;
图7是表示根据已知标准鉴别算法的图示;
图8是表示按照本发明的鉴别算法的示图;
图9是表示使用本发明的鉴别算法和加密技术的活动蜂窝状系统的示图;
图10是本发明的鉴别算法中所用的混频处理的方框图;
图11是表示在图10中的混频处理的混频单元的示意方框图;
首先参看图1,其中表明了一般适合本发明的传统的蜂窝状无线电通信系统。图1中,任意的几何图形面积可看出来是被分割成多个相邻接的无线电覆盖区域,或单元C1-C10。虽然,图1系统表明仅包括10个单元,但应清楚地理解,在实际上单元的数目可以多得多。
位于单元C1-C10的每一个之中并与其相关联的有一个指定基地站系多个基地站B1-B10的相应的一个。基地站B1-B10的每一个包含发射机、接收机和控制器,如众所周知的已有技术那样。图1中,基地站B1-B10分别位于各单元C1-C10的中央,并配有无定向性天线。然而,在其它蜂窝状无线电系统结构中,基地站B1-B10可位于靠近外围,或偏离单元C1-C10的中央,并且用无线电信号或者无定向地或者定向地辐照该单元C1-C10。因此,图1所代表的蜂窝状无线电系统其目的仅为了说明而不作为对可能实现的蜂窝状无线电系统的限定。
继续参见图1,在单元C1-C10中可看到多个活动站M1-M10。再说一次,图1中仅表明10个活动站,但应理解到,在实践上活动站的数目可多得多并且肯定超过基地站的数目。而且,尽管可看到单元C1-C10中的某些没有活动站M1-M10,在单元C1-C10的任何特定的一个有或没有活动站M1-M10应理解为实际上取决于活动站M1-M10的每一个的各自需要,它们可从单元中的一个位置进入到另一个位置,或从一个单元到另一个邻接的或附近的单元中去。
活动站M1-M10的每一个能通过基地站B1-B10的一个或多个以及通过活动交换中心MSC起始或接收电话呼叫。活动交换中心MSC用通信线路如电缆连接到所示的基地站B1-B10的每一个,以及连接到未图示的固定的公共交换电话网络(PSTN),或连接到可包括完整的系统数字网络(ISDN)设施的类同的固定网络。活动交换中心MSC和基地站B1-B10之间、或活动交换中心MSC和PSTN或ISDN之间的有关连接没有完全表明在图1中,但这是该领域普通技术人员所周知的。同样也是公知的是,在一个蜂窝状无线系统中可包括多于一个活动交换中心,并把每个附加的活动交换中心经电缆或无线线路连接到不同的基地站组和其它活动交换中心。
单元C1-C10的每一个配给多个声音或语言通道以及至少一个出入口或控制通道。该控制通道利用送到和接收到的来自这些单元的信息来控制或监督活动站的工作。当活动站跑出一个单元的无线电覆盖区并进入另一单元的无线电覆盖区时,这些信息可包括进来的呼叫信号,出去的呼叫信号,调度信号,调度响应信号,位置注册信号,音频通道分配,维护指令和“传送”(“handoff”)指令。该控制或音频通道可用或者模拟或者数字或者两者的组合进行进工作。用数字方式时,模拟信息如语言和控制信号在通过RF通道传送之前转换为相应的数字信号表示。纯数字信息,诸如由计算机或由数字化语言装置产生的,可予以格式化并直接在数字通道上发送。
在使用时分多路转换的蜂窝状无线电系统中,多个数字通道可共享一个公用RF通道。该RF通道被分割成一串“时间槽”(“timeslots”),每个时间槽包含来自不同数据源的信息脉冲串,而且时间槽相互之间由保护时间(guard time)隔开,而且该时间槽分组成如该领域中共知的“帧”(frames)。每帧时间槽的数目变化取决于拟由RF通道容纳的数字通道的带宽。例如,帧可以由3个(3)时间槽组成,该时间槽的每一个分配到一个数字通道。于是,RF通道将容纳3个数字通道。在这里讨论的本发明的一实施例中,一帧指定包含3个时间槽。然而,本发明的说明应清楚地理解为,同样可适用于每帧使用任何数目的时间槽的蜂窝状无线电系统。
活动站下面参看图2,其中表明了按照本发明的一实施例所使用的活动站设备的示意方框图。图2所示设备可用于在数字通道的通信。由微音器100检测到的和指定由活动站发送一音频信号作为输入供给语言编码器101,该编码器把模拟音频信号转换为数字数据位流。然后数据位流按照数字通信的时分多通路(TDMA)技术分为数据包或信息(messages)。快速相联控制通道(FACCH)产生器102与蜂窝状无线电系统中的基地站进行控制或监督信息的交换。传统的FACCH产生器以“空白和脉冲串”方式工作,由此,用户的数据帧得到静调制,而由FACCH产生器102产生的控制信息则以快速发送。
与FACCH产生器102的空白和脉冲串工作相对照,低速相联控制通道(SACCH)产生器103则是连续地与基地站进行控制信息交换。SACCH产生器的输出指配一个固定长度的字节,如12位,并且作为每个时间槽的一部分包含在信息序列(帧)中。通道编码器104、105、106分别连接语言编码器101、FACCH产生器102和SACCH产生器103。通道编码器104、105、106的每一个用传统的编码技术通过控制输入数据完成保护语言码中的重要数据位的误差检测和复原以及循环冗余校验(SRC),后者中语言编码器帧中最重要的位,如12位,被用来计算7位误差校验。
再看图2,通道编码器104、105连到多路转接器107,该转接器107用于对具有FACCH监督信息的数字化音频信息进行时分多路转换。多路转接器107的输出耦连到2脉冲串交错器(interleaver)108,该交错器将由活动站要发送的每个数据信息(如,一个含260位的信息)分隔成相等的但是分开的、按两个连续的时间槽安排的两个部分(每部分包含130位)。用这种方式,雷利衰落恶化效应可显著地减少。2脉冲串交错器108的输出输给模2加法器109,在那里要发送的数据用下面描述的本发明的系统产生的伪随机关键字流逐位地按照逻辑模2相加进行加密译码。
通道编码器106的输出输给22脉冲串交错器110。该22脉冲串交错器110把SACCH数据分成22个连续的时间槽,每个占有由控制信息的12位组成的字节。该被交错的SACCH数据形成输给脉冲串产生器111的一个输入。输给脉冲串产生器111的另一个输入由模2加法器109的输出提供。脉冲串产生器111产生数据“信息脉冲串”,每个脉冲串包含一时间槽标识(TI)、一数字音频彩色码(DVCC)、控制或监督信息以及要发送的数据,其进一步详细说明如下。
在一帧中的每个时间槽中,所发送的是用于时间槽的识别和接收机的同步的时间槽标识(TI)和保证特定的RF通道被解码的数字音频彩色码(DVCC)。在本发明的示例帧中,规定了一组三个不同的28位TI,每个时间槽一个,同时在三个时间槽的每一个中发送同一的8位DVCC。TI和DVCC在活动站中由连接于脉冲串产生器111的同步字/DVCC产生器112提供,如图2所示。该脉冲串产生器111将模2加法器109、22脉冲串交错器110和同步字/DVCC产生器112的输出进行组合以产生一系列的信息脉冲串,每个脉冲串包含数据(260位)、SACCH信息(12位)、TI(28位)、编码的DVCC(12位)和12定界符位共324位,它们按照由EIA/TIA IS-54标准规定的格式集合在一起。
信息串的每一个在一帧中的三个时间槽的某一个予以发送,如上面所讨论的。脉冲串产生器111连接到均衡器113,该均衡器113提供为一个时间槽的发送与其它两时间槽的发送进行同步所需的时间间隔。均衡器113检测从基地站(主控)发送给活动站(从动)的时间间隔信号,并由此同步脉冲串产生器。均衡器113也可用来校验TI和DVCC的值。脉冲串产生器111也连接到20ms帧计数器114,该计数器114用于对活动站每20ms应用一次,即每发送一帧应用一次的密码进行适时修正。该密码由密码单元115使用数学算法及在各活动站均唯一的关键字116的控制下产生的。按照本发明和下面进一步讨论的,这种算法可用来产生伪随机关键字流。
由脉冲串产生器110产生的信息脉冲串输入给RF调制器117。RF调制器117用来按照/4-DQPSK技术(/4移位的差分编码的正交移相键控法)调制载频。这种技术的应用意味着将由活动站发送的信息被差分编码,即两个位符号按4个可能的相位变化发送+或-/4和+或-3/3。所选发送通道的载频由发送频率合成器118加给RF调制器117。RF调制器117的脉冲串调制载波信号输出由功率放大器119放大,然后经天线120发送给基地站。
活动站经连接于接收机122的天线121接收来自基地站的脉冲串调制信号。所选择的接收通道的接收机载频由接收频率合成器123产生,并加给RF解调器124。RF解调器124用来将接收到的载波信号解调为中频信号。中频信号然后由IF解调器125进一步解调,它恢复原数字信息。象/4-DQPSK调制之前存在的那样。该数字信息再通过均衡器113加到符号检测器126,后者将均衡器114提供的数字数据两位符号格式变换为单一位数据流。
符号检测器126产生两路不同的输出第一输出,包含数字化语言数据和FACCH数据;而第二输出,包含SACCH数据。第一输出加给与2脉冲串解交错器128连接的模2加法器127。模2加法器127连接到密码单元115,而且通过逐位地减去基地站中给数据加密时由发射机所使用的以及按照本发明以下将叙述的方法所产生的伪随机关键字流而用于对4加密发送数据进行解密。模2加法器127和2脉冲串解交错器128把由数字数据的两个连续帧导出的信息予以组合和重新安排而再建立语言/FACCH数据。2脉冲串解交错器128耦连到两个通道解码器129、130,这解码器129、130用编码的逆过程对卷积编码的语言/FACCH数据进行解码,并且校验循环冗余校验(CRC)位,以确定是否有任何误差出现。通道解码器129、130,一方面检测语言数据间的差别,另一方检测任何FACCH数据间的差别,且把语言数据和FACCH数据分别加给语言解调器131和FACCH检测器132。语言解码器131拥有按照语言编码器算法如VSELP由通道解码器129供给的语言数据,并且产生由基地站发送和由活动站接收的语言信号的模拟信号表示。在由扬声器133播出之前,可采用滤波技术增强模拟信号的质量。由FACCH检测器所检测到的任何FACCH信息均送给微处理器134。
符号检测器126的第二输出(SACCH数据)加给22脉冲串解交错器135。22脉冲串解交错器135对分布在22个连续帧中的SACCH数据进行重新组合和排列。22脉冲串解交错器135的输出输入给通道解码器136。FACCH信息由SACCH检测器137检测而控制信息则传送给微处理器134。
微处理器134控制活动站的活动和活动站与基地站之间的通信。微处理器134根据从基地站接收到的信息和活动站完成的测量作出决定。微处理器134也设有终端键盘输入和显示输出单元138。键盘和显示单元138允许活动站用户与基地站交换信息。
基地站下面参看图3,这儿显示了用于本发明的基地站设备的简略框图。将图2所示的活动站设备与图3所示的基站设备相比较,就可看到活动站和基地站所用的多数设备在结构和功能上基本相同。为方便和保持一致起见,这相同的设备在图3中与图2中相对应的指定相同的标号,只是在图3中的字码右上角加撇号(')以予区别。
然而,在活动站和基地站设备之间有些微小的差异。例如,基地站有两个而不是一个接收天线121'。与接收天线121'的每个相关联的是接收机122'、RF解调器124'和IF解调器125'。而且,基地站包括一个与发送频率合成器118'相接的可编程频率组合器118A'。频率组合器118A'和发送频率合成器118'根据可使用的蜂窝状频率复用图对基地站拟使用的RF通道进行选择。然而,基地站并不包含类似于活动站中的用户键盘和显示单元138的用户键盘和显示单元。然而,它却包含一个信号电平表100'连接用来测量两接收机122'的每一个所接收的信号,并把输出加给微处理器134'。在活动站和基地站之间还有的设备上的其它差别是本领域已众所周知的。
直到现在,讨论是集中在本发明系统的工作环境。本发明特定实施例的具体描述如下。如上所述和后面所用,术语“关键字流”是指在发送或存入易遭未授权而存取的介质中如RF通道之前,用于对已数字编码的信息或数据信号进行加密的伪随机二进制位的序列或二进制位组。“关键字流产生器”是指通过处理包含多位(bits)保密关键字来产生关键字流的装置。加密可直接通过把关键字流模2加到要加密的数据上来完成。同样,解密可通过从已加密的数据中的同一关键字流的拷贝的模2减法来完成。
关键字的产生一般而言,关键字流产生器提供了分别由图2和图3中的部件115和115'表示的一种机制,用于扩展一个相当小的保密位数即部件116和116'表示的保密关键字使成为相当大数的关键字流位,然后把它用来在发送(或存贮)之前对数据信息加密。为了对已编码信息解密,接收机必须“知道”用于加密信息的关键字流动的变址(index)。换言之,接收机必须不仅有同发射机相同的关键字流产生器和产生相同的关键字流,而且,如果要使信息恰当地解码的话,接收机关键字流产生器还必须与发射机关键字流产生器同步运行。同步一般通过从编码系统到解码系统周期地发送每个内部存储装置的内容,如参与产生关键字流位的位、组成信息计数器来实现。然而,通过使用如二进制计数器等算法位组计数器和每当产生新的关键字流位组时给这些计数器增加一个确定的数量的方法可使同步简化。这样的计数器可以形成实时即时、分、秒的一部分的时钟链。依赖后者计数器类型的关键字流产生器称为“时刻”(“time-of-day”)驱动关键字流产生器,以上就是以此为参照。
应该注意,关键字流产生器使用的逐位或逐组推进的确切方法,和用于使发送电路与接收电路同步的特定方法是共同待批的专利、申请号_、名称“蜂窝状通信系统的连续密码同步”的主题,如前面所述。本发明的系统,如下面详细描述的,直接针对可用于例如蜂窝状电信系统中RF通道的保密数字通信的加密系统的有效实现。该加密系统包括关键字流产生器,该产生器通过在一个保密关键字中包含的多个关键字位每秒进行大量布尔运算而每秒产生大量高关键字流位。本发明的关键字流产生器用具有简单的微处理器结构的集成电路构成。
现在参看图4,可以见到一种已有技术的关键字流产生器的简略框图。一任选字块计数器201提供第一多位输入给复合逻辑电路202。多个一位存储元件或触发器m1,m2,m3…mn提供第二多位输入给复合逻辑电路202。复合逻辑电路202的部分输出即一位输出d1,d2,d3…dn反馈给触发器m1-mn。在一系列位时钟输入脉冲203的每个时钟脉冲加给触发器m1-mn后,输出d1-dn分别变成触发器m1-mn的下一个状态。对复合逻辑电路202进行适当构筑,触发器m1-mn可布置成普通二进制计数器、执行最大长度顺序的线性反馈移位寄存器、或任何其它形式的线性或非性线顺序计数器。在任何情况下,接收机端的触发器m1-mn的每个状态和字块计数器201的状态必须使之相等于发射机端的相应元件的状态。同步机构204用来使接收机与发射机同步。
继续参看图4,多个保密关键字位K1,K2,K3…Kn形成第三多位输入给复合逻辑电路202。保密关键字位的数n一般在100位范围内再加或减(+/-)一个因子2。要求每个保密关键字位K1-Kn须至少对每个关键字流中的位有影响潜力。否则,偷听者仅需破开保密关键字位K1-Kn的一个小小的子集就能破译和监听加密数据。然而,如果使关键字流中的每位值(逻辑状态)不仅取决于特定保密关键字位,而且也取决于所有其它保密关键字位的值以及字块计数器201的状态和其它内部存储器状态,则未授权的窃听的风险可以大大减少。至今,建立这种依赖关系将需几乎不可实现的大量的布尔运算。例如假设保密关键字由100个保密关键字位组成。如果要使每个这些保密关键字位能影响关键字流中的每一位,则每个关键字流位将需要总数100个组合操作。于是,为了产生一万个关键字流位,将需要总数一百万个组合操作。如果使每个关键字流位还依赖于一个或更多个内部存储器状态,则操作数会更大。本发明的目的之一是,在保持每个关键字流位依赖于每个保密关键字位的同时,要大大减少每个关键字流位所需的组合操作数量。
例如,从50到100个保密关键字位产生成千上万个伪随机关键字流位可看作是一项多级展开过程。多个展开级分级地连在一起,每个级有一个连续的更小的展开系数。第一级展开的频度低于后续各级,以便使每个关键字流位所需布尔运算数减至最小。另外,第一展开级的构成提供多个对保密关键字位依赖性更大的输出,进而减少了必须由后续级完成的逻辑操作数。
下面参看图5,这儿显示了关键字流产生器系统的简略框图。多个关键字位K1,K2,K3……用来输入第一级展开205。保密关键字位可通过下面将要进一步说明的鉴别算法从永久关键字位产生。保密关键字位K1,K2,K3……的输入可包括一些个,但最好是全部的保密关键字位K1,K2,K3……Kn,下文有时称为“保密”关键字位。另外,或任选地,对第一展开级205的输入可包括信息计数器的、字块计数器的、在帧起始时代表时间或字块计数的日期-时间印记的输出,或其它各种可由发射机和接收机同步的输出。随时间缓慢变化的任何内部存储器输出可用于输入给第一级展开205。需要慢变化输入是因为第一级展开205不应该频繁操作,如每个信息一次。
第一级展开205产生一个在范围上比保密关键字位K1,K2,K3……的数大得多的展开输出。该输出贮存在一个可由复合逻辑电路207存取的存储装置206中。复合逻辑电路207执行如下进一步说明的第二级展开。计数器或寄存器208的输出输入给复合逻辑207。寄存器208在每个关键字流位的字块产生之前预置一新起始状态。起始值产生器209提供寄存器208的起始状态。起始状态对关键字流位的每个特定的字块将是不同的,它是特定字块的字块数的函数,而且可能也是保密关键字位K1-Kn的某一子集的函数。
复合逻辑207的第一输出210反馈给寄存器208。输出210在每个操作周期后变成寄存器208的新状态。复合逻辑207的第二输出211产生将与上述图2和图3中所示的数据流相混合的关键字流位。输出211每周期产生的关键字流位的数可以是2的任意倍数,如8,16,32,56等。这样的位统称“关键字”。在寄存器208再预置之前在输出211上产生的关键字的一些或全部被组合为一个关键字块212。例如,关键字块212在寄存器208再预置之前,可以包含每个(周)期中或每个其它周期中产生的所有关键字。
本技术领域中的技术人员应理解,图5中描绘的和上面讨论的关键字流产生器系统的通常实施需要大量复杂的复合逻辑线路,这些线路,如果通过互连多个逻辑门即AND或OR分立实现的话,将会需要大量和昂贵的,仅能用于非常特殊的应用的芯片。另一方面,运算器(ALU)是标准元件,小型、成本低及多用途的各种微处理器。本发明提供了一种使用这种ALU实现全部所需要的复合逻辑功能的装置。
在程序控制下进行操作的传统的ALU,能在任何两个8位或16位二进制字之间完成加、减、按位异或、与、或的复合功能。如果ALU用来连续执行图5装置中所需全部布尔功能,则按每秒可执行的完整周期数测定的ALU操作速度,将会大大下降。然而,用于本系统的多级展开,通过第一级展开205中的对大量关键字相依函数的不频繁周期计算来减少最频繁操作的复合逻辑207的每周期程序指令数,即ALU的利用次数,从而防止这种ALU速度极度下降的情形。上面句中的词“大量”是指,例如一数量级大于保密关键字位的数n。
一旦寄存器208由起始值被预置,则复合逻辑207将在输出端211产生关键字流,并且每当寄存器208在输出端210被反馈值加载时,复合逻辑207将连续产生另外的关键字。然而,困难将发生,使关键字产生过程的完整性受挫。例如,当寄存器208的内容一回到其起始值时,由此产生的关键字序列将再次重复。同样、如果寄存器208的内容回到当前关键字块产生时先前遇到过的某个值(不一定是起始值),则称系统“短周转”(“Short Cycling”)。由于前面提到过的原因,例如容易未经授权而解译,在单个关键字块产生过程中不需要关键字序列再开始重复,或发生短周转。而且,如果寄存器208在某点上(例如在第m个关键字产生之后的内容,在另一个关键字产生期间,变得与该第m个关键字之后出现或将会出现的某个值相等时,则两关键字块,从那点开始将会相同,这也是不希望的。
因此,复合逻辑207和相关寄存器(复合逻辑/寄存器组合)于连续运行大量次数之后,应该(1)不产生比每个字块的关键字数更短的周期数;和(2)对寄存器208的每个单一起始状态产生单一的关键字序列。为了满足后者的要求,两个不同的起始状态应不会汇集成相同的状态。而且,对于上述两个要求,应该应用内容上不相关的存储器26。按照下面更详细的解释,本发明缓和了上述关系并增强了关键字产生过程的完整性。
当复合逻辑/寄存器组合的状态过渡图有已汇集成交叉时,由于取那一通道变得模糊,该组合不可能通过该交叉而反向运行。因此,如果该组合的操作过程能够表明其为清楚的或可反向的,这证明在状态过渡图中不存在汇集交叉。这过程在下面描述和讨论。
下面参照图6,现在可看到图5中所示关键字流产生器的第二展开级的部分简略方框图。在图6中,图5的寄存器208已分成三个字节长度的寄存器208A,208B,208C。寄存器208A,208B,208C可以是例如8位寄存器。寄存器208A,208B和208C的预置之后,接着,新的状态值从下面的公式计算(1)A′=A#[K(B)+K(C)](2)B′=B#R(A)(3)C′=C+1这里,A′是寄存器208A的新的状态值;
B′是寄存器208B的新的状态值;
C′是寄存器208C的新的状态值;
A是寄存器208A的当前状态值;
B是寄存器208B的当前状态值;
C是寄存器208C的当前状态值;
+是指字长模加法,例如字节宽模256加法;
#是指+(如上定义)或按位异或(XOR);
K(B)是图5所示存储器206的位于地址B处的值K;
K(C)是图5所示存储器206的位于地址C处的值K;
应注意到,通过图5所示第一级205展开,存贮在存储器206的每个K值先前已算出是所有保密关键字的复杂函数。R(A)是在固定查表R中位于地址A的值,该表可以是下面就鉴别算法所使用的S-框的内容所述的同一表。另一方面,A的位作为输入加给将产生输出的R的组合逻辑框。查表R,或代之以组合逻辑框应提供大于或等于A字长并低于或等于B字长的输出位数。在A和B两者均为8位字节的情况下,R也将是8位字节而查表R将包含256个值。
从输入到输出值R应有1∶1的映象(mapping);就是说,输入位的每个可能状态应映象同一输出值。这保证R功能可逆,依次保证可由下面的关系式逆转整个过程(1)C=C-1(2)B=B##R'(A)(3)A=A##[K(B)+K(C)]这里,“-”指字长模减法;
##指#的逆操作,即或者为“-”(如上定义)或者为按位XOR;R'是1∶1查检表或复合逻辑R的逆向。
这种可逆性证明在复合逻辑/寄存器组合的状态过渡图中没有汇集交叉,因此保证每个起始状态将产生单一的关键字序列。而且,这过程保证最小周期长度,因为C仅增量1且直到2W迭代完之后才会返回到它的初始值,这里W是所使用的字长。例如,如果所有A、B、C、R和K的值为8位字节,则最小周期长度为256。如果,在每次迭代(周期)下,提取出一个关键字(字节),则总计可提取256字节而不会出现过早序列重复的危险。另一方面,如果关键字是在每隔一个迭代提取,则总计128个关键字可提取而不会出现过早序列重复。前两句中“提取”这一词是指收集并把关键字放进如图5中的关键字块212中。本发明中所用的关键字提取的特定方法直接在下面描述。
结合图6,来描述反馈到寄存器208的复合逻辑207的输出端210的计算过程。一般说来,任何一个中间量A、B或C是可直接被提取,并用作每次迭代的关键字。让S=(A、B、C)代表复合逻辑/寄存器组合的当前状态。该组合经状态序列S0,S1,S2,S3,S4,S5,S6,S7……过渡到下面的初始状态S0。然而,如果在连续的关键字块的计算中寄存器208被预置,例如到S2,则形成的序列S2,S3,S4,S5,S6,S7……将与第一个序列一致,但有两个关键字(S0,S1)的移位。因此,如果来自状态S的值A,B或C直接用作关键字,这种同一性可能出现在不同的关键字块之间。为避免这种情况,本发明的系统按照关键字块中的值位置,修改所提取的每个值,以便如果在另一个字块中对不同关键字位置提取该同一值时,会产生不同的关键字。下面将说明做到后一目标的典型方法。
设N为当前计算的关键字块中的关键字的数目,而S=(A,B,C)为在关键字N被提取期间的迭代中的寄存器208的当前状态。关键字W(N)的值可按如下计算W(N)=B+′K[A+N]这里,+指XOR;
+′指+(如上直接定义的)或字长模加法;
其它适合的关键字提取的典型方法可包括W(N)=B+K[R(A+N)]或W(N)=R[A+N]+K[B+N]等等。作为推荐,为获得系统最好密码特性,所提取的关键字应该是关键字块中的它们各自位置的函数。
描述了产生大量复杂的关键字相依伪随机(PR)位以用于加密数据以及可在传统的微处理器中执行的加密系统之后,下面紧接说明一种具有加密和鉴别功能并改进了数字蜂窝系统的整体保密性的系统。
鉴别按照本发明的鉴别过程一般涉及下面步骤序列(1)活动站通过发送一个未加密形式的活动标识数(MIN)对网络自行验定本身标识,以便网络能从本地或贮存他们的数据库检索出与那活动站有关的信息,如保密关键字。
(2)网络发送一个随机查询信号(RAND)给活动站。
(3)活动站和网络每一方使用保密的永久鉴别关键字位,仅活动站和网络能识别而决不向空中发射,以便按照公开的算法(下面称AUTH1)对RAND计算响应信号(RESP)。在活动站产生的RESP发送给网络。
(4)网络将从活动站接收到的RESP与其内部产生的版本进行比较,如比较成功,则授与活动站进行登记的通道,起动仅一个呼叫或接收仅一个呼叫。
按IS-54标准,MIN是一个34位二进制字,是从活动站的10个数字索引电话号,即地区码和电话号导出的。请看IS-54,§2.3.1第78-79页。活动站在随机查询存储器中贮存16位值,该值代表在周期地附加到辅加信息序列的随机查询全球(global)作用信息中所接收到的最后RAND。活动站用这些信息来修正查询存储器。RAND的现值用作输入送给鉴别算法AUTHI。见IS-54§2.3.12第83-84页。于是,在IS-54中,在活动站发送MIN之前,RAND被发送给活动站,而且,在网络中任何特定时间上,仅一个RAND用于所有活动站,包括假活动站,由此减低了系统的保密水平。而且,因为活动站予先知道RAND,所以先算出RESP并将其与MIN一起发送给网络。然而,网络没有接收到MIN时不能予先计算RESP,除非活动站已前已登记在网络中。
用于IS-54系统的AUTHI中的鉴别关键字有一个人标识号(PIN),该标识号是系统操作者掌握的每个用户的保密号。IS-54AUTHI也使用一个厂家设置的电子列系号(ESN),它对任何蜂窝状系统,唯独地识别活动站。由IS-54 AUTHI计算的RESP依赖于(ⅰ)PIN;(ⅱ)ESN;(ⅲ)拨号数字(活动站原始呼叫)或MIN(活动站结束呼叫)。活动站按照IS-54发送的RESP与依赖于RAND的随机确认(RANDC((8位)一起构成AUTHI(AUTHR)(18位)的输出,总共26位。在AUTHR和RANDC之间没有密码术上的差别,且这些值的每一个可取决于RAND、PIN、ESN以及也许还有呼叫号码的值。于是,AUTHR和RANDC可认为仅构成一个26位RESP,其特性由所使用的算法AUTHI决定。
按照IS-54,拨号数字的使用,为了在活动站原始呼叫建立的情况下影响RESP,这种使用有某些不希望的或值得重视的后果,如以下所列(1)由于网络不能予先识别拨号数字,网络不能对给定的任何特定的MIN的RAND予先计算出所期望的RESP。因此,直到拨号数字从活动站发送给可能延迟呼叫建立的网络后,才能进行鉴别算法AUTHI。另一方面,如果不包含拨号数字,只要RAND保持不变,则同一活动站将产生相同的RESP。在这种情况下,有可能造成窃听和使用RESP进行不正当呼叫,于是,根本上废除AUTH1。
(2)应用拨号数字输入AUTHI防止了局内网络产生RAND和RESP配对以及把它们发送给被访网络。
(3)这种应用一般也防止了对RAND和RESP配对的预先计算,而这对于节省呼叫建立时间是需要的。
(4)这种应用蕴含关于网络间的保密相关通信和/或位置鉴别功能的一些设定。尤其是,蕴含或者局内网络发送保密关键字(和ESN)给被访网络以便被访网络完成鉴别,或者另一方面,拨号数字对每个呼叫均从被访网络发送给局内网络,以便局内网络可执行鉴别。局内网络一般不需要预先知道被呼叫的用户号码。
(5)因为按照IS-54,拨号数字必须以不加密形式发送,所以假活动站能够对一个相同号发出呼叫,然后,通过“特急电”(flash)或会议电路连络过程(conferenceing procedure)连接到另一个他所选择的号码上。
(6)至少在一个现有网络中,已被认为必须引入“被呼叫用户识别保密”,即伪装拨号数字,以便防止滥用,而且AUTHI的规定必须适应这种要求的伪装。
本发明系统通过确定一种其拨号数字不影响RESP的算法AUTHI,对上述所有列出的有关方面进行寻址。因从AUTHI排除拨号数字所致的任何弱点,例如只要RAND保持不变就产生相同的RESP,均通过定义一个第二个任选的、通话通道中可能具有的双向鉴别步骤予以补偿。进一步的防护是通过对通话数据的加密处理实现的。应当指出,本发明可在基本上不改变IS-54的规定加以应用。
不论于任何位置,局内网络或被访网络被认为是更方便执行鉴别算法,如果必须作鉴别或加密,则不可避免地要在网络之间进行一些保密相关的用户信息交换。在IS-54的鉴别过程规定中,被访网络须周期地测定并发送RAND,如果在局内网络进行鉴别算法,则被访网络至少需发送MIN和RAND给局内网络,以便接收RESP和一个暂时保密加密关键字(S-关键字或呼叫变量)。另一方面,如果在被访网络中执行鉴别算法,则该网络必须至少发送MIN给局内网络,而局内网络本身又必须把鉴别关键字、ESN(如果在AUTHI中应用ESN)、和永久加密关键字发送给被访网络。从保密观点看,并不希望仅因被访网络要求,局内网络就释放用户永久关键字。这关键字应该构成用户的长期保密保证而不是短期(暂时)呼叫变量。因此,更希望局内网络在收到来自被访网络的来访活动站的MIN、由被访网络发送的RAND和由被访网络从活动站接收到的RESP时,产生一短期(临时)加密关键字(S-关键字或电话呼叫变量),并仅当RESP被认为有效时才释放S-关键字给被访网络。
在局内网络中执行鉴别算法允许鉴别算法使用这里称其为A-关键字的长期(永久)保密关键字,它对每个活动站是唯独的。A-关键字决不释放到局内网络以外,也决不直接用来进行加密,而是用来产生这儿称其为S-关键字的短期加密关键字。S-关键字仅用于由被访网络确定的有限的时期。如果被访网络已经获得先前已登记的来访活动站的S-关键字,则第一鉴别步骤的功能是任选的,而呼叫建立可直接送到加密通话通道。因此,不需要在每次来访活动站发出一呼叫时网络间就得作交换。另一方面,如果被访网络决定请求一个AUTHI第一鉴别步骤,则活动站和局内网络将使用被访问网络的当前RAND来产生一个新的S-关键字,而其它对AUTHI算法的输入不变。
鉴别算法的保密分析特性参看图7,现在看按照IS-54鉴别算法的图示。当活动站起动一呼叫时,活动站使用它的PIN或鉴别关键字、它的ESN、RAND和拨号数字以便按照鉴别算法AUTHI计算一个RAND响应。活动站然后把AUTHI的输出与随机确认(RANDC)、拨号数字、活动站的个体呼叫履历参数(COUNT)和MIN一起发送给网络。允许拨号数字去影响活动站原始呼叫的鉴别响应(AUTHR和RANDC)所引起的后果,上面已讨论并且认为是不希望的。另一方面,应被呼叫用户识别伪装的可能性则认为是需要的。以活动站结束呼叫的情况,用MIN去影响鉴别响应收效甚小,因为PIN/Key(关键字)是充分活动特异的。
现在参看图8,可看到按照本发明的鉴别算法的示图。活动站原始呼叫的拨号数字和活动站结束呼叫的MIN,都不作为输入送给AUTHI。而且,按照本发明的AUTHI的输出不仅包括鉴别响应(RESP),而且也包括被呼叫用户伪装,这种伪装用来在活动站原始呼叫中对拨号数字进行伪装。下面列出并解释AUTHI的一个特定的实施例。
活动站可以是借用的、偷窃来的或合法得到的,它的整个存储器内容可以被拷贝,包括其ESN、保密关键字、PIN码等等、并且用来制造大量的孪生产品(clone,指前面的“克隆”)。这种孪生制造过程可以非常精湛,并且包括软件修改,这种修改可用电子存贮信息替代实质存贮的ESN信息,以致大量贮存的活动站识别码可在某个假活动站中不断运行并用来伪造几个真活动站。
呼叫编号已提出作为可使网络能鉴别是否有孪生台存在的一种手段。在呼叫编号中,一个模64的计数设在活动站中,并且在每呼叫后或由网络命令时产生一次增量。一个同样的计数也设在网络中。活动站在呼叫建立时将它的呼叫号发送给网络,而网络将接收到的呼叫号与内部产生的版本进行比较。然而,此比较以下几个原因之一而不成功(1)由于异常结束如电源故障,活动站未能在上次呼叫后修正它的呼叫计数。
(2)活动站可能已适时修正其呼叫计数,但由于不正常结束,网络不接收活动站已做的该确认。
(3)一个克隆(孪生)活动站已发出一个或多个呼叫并使网络计数器计数。
(4)活动站本身是一个克隆,而“真”活动站这时已使计数器计数。
不幸的是,呼叫计数器在两任一方向都太容易被修改,以致网络不能确定哪个预先已出现,因而网络可能被迫拒绝对活动站提供服务。为避免这种严重后果,给予活动站另外一个途径,例如通过发送一个不贮存在活动站存储器中的短的保密数,以人工方式使网络识别他(或她)。本发明的系统根据动态“翻滚关键字”(rolling KeY)提供另一个反克隆安全装置,这种“翻滚关键字”贮存在每个局内网络和活动站中,且与永久保密关键字一起用来计算鉴别响应和临时加密关键字。虽然这种翻滚关键字先前已单独用于鉴别,但它们一直没有用来同时产生鉴别和加密参数。
这种翻滚关键字概念的依据原理,是要在每个网络和活动站中的某种覆历信息以作为一种抗克隆手段进行匹配,且作为对活动站存储器需要复杂的和昂贵的实质性防护的另外的一种手段。尤其,克隆活动站如要获得对系统的接通,它必须拦截在拷贝的当时系真活动站的现时关键字状态以后所发生的鉴别查询的整个履历。按照本发明,鉴别是在局内网络中使用包含履历信息的在此称B-关键字的翻滚关键字和永久保密用户关键字(A-关键字)的组合进行的,该A-关键字从不直接用于加密算法,而是仅用于产生一个或多个操作关键字。本发明系统的鉴别算法也为每当活动站和局内网络在一项适时修正上一致就变成翻滚关键字的当前值计算出翻滚关键字的一新值。这种更新可由被访网络或局内网络为执行双向鉴别过程而提出的请求来触发其执行,下面进一详细描述。
翻滚关键字的适时修正可以在被访网络决定更新局内网络中和活动站中的呼叫计数器时的一次交谈期间的任何时间上进行。在更新它的呼叫计数器之前,局内网络可请求活动站的双向鉴别。然后,活动站的正确响应得出呼叫计数器更新、翻滚关键字更新和产生新交谈保密关键字(S-关键字)借发送到被访网络用作此后的呼叫。同样,只当双向鉴别过程证明被访网络真正处于与局内网络联系之中,则活动站将适时修正其呼叫计数器。根据证明,活动站也更新它的呼叫计数器和翻滚关键字(B-关键字)并产生新的会话保密关键字(S-关键字)用于由同一被访网络服务的此后的呼叫。可以理解,由于呼叫计数器和翻滚关键字同时被更新,活动站和局内网络呼叫计数器的校验也可用来表明活动站和局内网络是否处于相同的翻滚关键字状态。
双向鉴别双向鉴别,即活动站和网络两者的鉴别,可区别于单向鉴别在于前者在两个方向发送的鉴别信息是关键字相依的(Keydependent),而后者仅在从活动站到网络的方向上发送的信息是关键字相依的。按照本发明,RAND信号用来输入给鉴别算法AUTH2,后者产生一个长RESP信号,其一部分从网络送给活动站使网络生效,而其它部分由活动站送给网络使活动站生效。例如,算法AUTH2能从RAND计算RESP,然后接着用该RESP作为新的RAND输入给随后计算RESPBIS信号的算法AUTH2。网络把RAND和RESPBIS发送给活动站,该活动站用RAND按照AUTH2计算RESP和RESPBIS。只当内部产生的RESPBIS与从网络接收到的RESPBIS相匹配,活动站才把内部产生的RESP发送给网络。这就防止假基地站从活动站提取到RAND、RESP配对,而活动站和网络识别的验证允许保密状态更新在相对安全的以后方便的时点上继续进行。
加密关键字(呼叫变量或S-关键字)的产生当在被访网络中要求进行保密通信时,保密关键字必须从局内网络送到被访网络。如所述,永久保密用户A-关键字非常不希望它在网络之间没有特殊防护的线路上运行。而是,按照本发明,局内网络从不释放给定用户的A-关键字,而仅用A-关键字产生临时的谈话-变量保密关键字(S-关键字),后者随后被用来产生伪随机关键字流对特定的呼叫或呼叫群进行加密。应理解,先前讨论的本发明的伪随机关键字流产生技术中提到的“保密关键字”是代表直接加密用的S-关键字,而不是推导出S-关键字的永久保密A-关键字。S-关键字是在接收到有效MIN、RAND和RESP时被计算并从局内网络发送到被访网络。
因为S-关键字是在和鉴别查询响应信号(RESP)相同的时间和相同处理进行计算的,所以成功的鉴别保证网络和活动站将有相同的加密关键字(S-关键字),因而一旦鉴别完成就开始对用户数据进行加密。由此可见,本发明系统中的鉴别和加密的联合把必须由活动站和基地站识别的不同保密、特征组合的数量,从4个减至2个。
输入和输出位计数谈话-变量(S-关键字)可由上述产生RESP和RESPBIS参数的同一鉴别算法作为副产物来产生。由该算法产生的其它需要的输出可包括(1)足够的位用于伪装被呼叫用户的号码;和(2)如果网络已通过双向鉴别为有效和/或呼叫计数器的更新指令已经发出,替换当前状态的翻滚关键字(B-关键字)下一状态。
作为例子而且对本发明的技术说明没有任何限定,下表表示算法输出的位和字节计数输出 位数 字节数RESP 32 4RESPBIS 32 4被呼叫号码伪装 64 8S-关键字 64 8下一个B-关键字 64 8总计位 256 总计字节32下表表明算法输入的位和字节计数输入 位数 字节数A-关键字 128 16B-关键字 64 8RAND 32 4
ESN 32 4拨号数字 0 0总计位 256 总计字节32上述数值经化整以给出一个具有32-字节输入和32-字节输出的算法。如果用更短的变量则它们可用常数来扩展。具有上述输入和输出字节计数的算法以及适合活动站中常见的简单8位微处理器按字节宽度运算而予以快速执行的算法,在下面以“鉴别算法的定义”为题另起段落加以叙示。
本发明鉴别系统的一般特性本发明提供可由网络操作者任选的两种鉴别步骤。第一步在前面的说明中称为AUTHI。在题为“鉴别算法的定义”部分中所述算法可用于AUTHI。在这算法中,拨号数字不影响输出。在控制通道中播出的16位RAND予以使用并且两次包括以提供32-位输入。算法输出参数包括由活动站在呼叫通道上发送给网络的RESP和MIN及在转接到TDMA通话通道后立即用于对用户数据加密的呼叫变量(S-关键字)。在活动站起始呼叫情况下,n附加输出参数用来对被呼叫的用户号码进行伪装。该参数可从局内网络发送到被访网络以便被呼叫号码能被解除伪装。
第二鉴别步骤,在前面描述中称AUTH2,是一种双向鉴别过程,一旦通话通道上已建立通信可由网络任选执行。双向鉴别步骤的目的是触发活动站和局内网络两者中的翻滚关键字(B-关键字)的更新,而与此同时,使它们相互生效,于是防止了假基站以某种形式对系统的保密性的攻击。算法AUTH2与下文“鉴别算法的定义”中所述的算法AUTH1恰恰相同,不同点只是RAND值是由局内网络决定并与RESPBIS一起发送给被访网络,且从那儿发送给活动站。如果活动站使RESPBIS生效,则活动站将发送RESP给被访站,后者又发送RESP给局内网络。如果局内网络使RESP生效,则局内网络把将在下一次呼叫使用的S-关键字发送给被访网络。
现在参看图9,显示有表示使用本发明的鉴别算法和加密技术的活动蜂窝状系统的示图。为了方便,图9中仅画出一个活动站、一个被访网络和一个局内网络。应理解,实际上通常会有大量的活动站、被访网络和局内网络。如图9所见,下面的缩写具有如下内容A1和A2分别为AUTH1和AUTH2A3本发明的加密技术IVCD初始声道分配MS活动站VLR被访站HLR局内网络在图9中,来访网络周期地给在它服务区域内的所有活动站播送新的RAND1值。每个活动站计算出一个响应RESP1,把它的MIN和呼叫履历参数COUNT一起发送给被访网络(注意,某些应用中,RESP1、MIN、和COUNT可分开发送)。被访网络向活动站的局内网络请求特定活动站的加密关键字(S-关键字)。局内网络将所接收到的响应RESP1与通过把RAND1、ESN、A-关键字和B-关键字加给鉴别算法A已获得的参数进行比较,并确定该活动站是否真的,据此该局内网络释放一个临时加密关键字(S-关键字)给被访网络。如果被访网络不接收加密关键字,则被访网络可拒绝对活动站接供服务。
如果被访网络批准接通并分配一TDMA通道(或在某些应用中为控制通道)给活动站,定义该通道的参数,即频率、时间槽和DVCC均从被访网络发送给调谐到被指定通话(或控制)通道的活动站。此后,被访网络和活动站可以使用S-关键字进行保密通信。被访网络在未加密的SACCH上发送它的帧计数器值,并且也以固定数的未加密的FACCH信息发送帧计数同步信息,一如在题为“蜂窝状通信系统的连续密码同步”的相关的共同待批专利申请中所述,以上已提到并引用作参考。进一步的FACCH发信或通话的交换可以加密形式进行。
双向鉴别和翻滚关键字适时修正一旦活动站和基地站已在通话通道上建立通信,被访网络可以在任何时候通过把RAND2发送给活动站以及从局内网络接收到RESP3来请求执行双向鉴别和翻滚关键字以及呼叫计数器修正。活动站使用在A2中的RAND2、ESN、A-关键字、和B-关键字产生所希望的RESP3和RESP2。如果内部产生的RESP3与所接收的RESP3一致,则活动站发送RESP2给被访网络。被访网络发送RESP2给局内网络,并且,如果局内网络的内部产生的RESP2与所接收的RESP2一致,则新计算的呼叫变量S-关键字将从局内网络发送给被访网络。被访网络贮存S-关键字用于将来涉及来访活动站的呼叫。当前的呼叫继续用老S-关键字进行加密。在转移或结束之际,新S-关键字将进入使用。
鉴别算法和定义概述本发明的鉴别算法可用于呼叫通道(AUTH1)的鉴别和通话通道(AUTH2)的双向鉴别。典型的算法编码是举一些普通微处理器所实行的。在下面描述中,为算法的输入和输出变量已选定某些字节计数。然而应清楚地理解到,这样的字节计算仅作为示例,而不打算也不应该认为是对本发明鉴别算法应用的限制。
算法的输入和输出变量本发明的系统的算法使用总数为32个字节的输入信号并产生32个字节的输出参数。这是通过算法的两项应用获得的,该算法用16个字节作输入变量和产生16个字节输出变量。该输入变量是
RAND配给达4个字节(不保密)ESN配给达4个字节(变量)Ka永久关键字(A-关键字)16字节(保密)Kb翻滚关键字(B-关键字)8字节(变量)该325输出字节指定作为下面的参数用于系统0-3鉴别响应(RESP)4-7RESPBIS(用于双向鉴别)8-15被呼叫用户号码伪装(如果使用的话)16-23如果发生关键字修正为下一个Kb24-31对此呼叫加密的(S-关键字)谈话变量输入给算法的32字节分为16字节的组,然后用于算法的第一应用以产生第一16字节输出(字节0-15)。然后32字节的输入按不同方式组并用于算法的第二应用以产生第二16字节输出(字节16-31)。
算法的一般结构本发明算法(二进制码)是用于在蜂窝状无线电话的那类简单的微处理器上进行非常有效和快速执行。循环使用一个小小的内部码环(code loop)使该码限定在100-字节范围内。外部环(outer loop)包含迭代地执行5项混合处理。这种混合处理表示在图10中。
现在参见图10,那儿显示了用于本发明鉴别算法的混合处理的简单方框图。混合处理300有第一16个关键字字节输入和第二16个输入字节的输入。第一迭代的16个输入字节构成4字节RAND、4字节ESN和8字节翻滚关键字字节Kb(0-7),顺序如下RAND 4字节(16位RAND重复两次)ESN 4字节Kb(1)Kb(2)
Kb(3)Kb(4)Kb(5)Kb(6)Kb(7)Kb(0)用来输入给混合过程的每次迭代的16个关键字字节是来自8个翻滚关键字字节Kb(0-7)和16个永久关键字字节Ka(0-15)的循环选择。在算法的第一应用中,16个关键字字节的应用顺序如下迭代序号 应用的关键字字节1 Ka(0)→Ka(15)2 Kb(0)→Kb(7);Ka(0)→Ka(7)3 Ka(8)→Ka(15);Kb(0)→Kb(8)4 Kb(4)→Kb(7);Ka(0)→Kb(11)5 Ka(4)→Ka(11);Kb(0)→Kb(3)上面的关键字序列可简单地这样来取得,按照Kb、Ka、Kb顺序把关键字变量再次拷贝到暂存存储器区域中以及对每次迭代从该存储器的适当地方开始顺序地选择它们即可。
算法的混合处理混合处理300使用例如字节宽度加法指令对16个关键字字节和16个输入字节成对进行组合。混合处理300也使用下面称S-框的随机1∶1置换框或检查表把一个一字节值变换成另一个一字节值。S-框最好是本发明系统的关键字流产生器使用的并在前面图5-6所讨论的参数源R的同一检查表。S-框可以由包含在微处理器程序存储器中的256字节的只读存储器(ROM)实现。1∶1的S-框就是每8位输入值产生唯一的8位输出值,或换言之,每个可能的8位值仅在表中出现一次。这是需要的,以免数值分布不规则。在某些微处理器,如果S-框设在256字节页面边界以致对S-框的寻址仅需操作最少的有意义地址字节,则编程任务可简化。
下面参看图11,现在可看到混合处理的混合单元或结构框图的略图。混合处理通过可以由图11所示类型的多个混合单元或内部环构成。图10所示特定的混合处理300可看作16个这样的混合单元的垂直堆栈。每个这样的单元具有一个关键字字节和一个输入字节,它们由加法器310相加。加法器310的输出用来对S-框320的内容寻址,该框320释放以加法器310的输出所规定的地址存贮的输出字节。混合单元或内部环的软件实现在下面“Intel”和“Motorola”两体系结构微处理器中说明。
算法的第二应用算法的第二应用产生第二组16输出字节,它们可用作会话关键字(S-关键字),并且如果被执行的话,产生翻滚关键字(B-关键字)或Kb(0-7)的修正。除了关键字字节和输入字节的使用顺序以外,算法的第二应用与第一应用恰恰相同。在算法的第二应用中,16个关键字字节的使用顺序如下迭代编号 使用的关键字字节1 Kb(0)→Kb(7);Ka(0)→Ka(7)2 Ka(8)→Ka(15);Kb(0)→Kb(7)3 Kb(4)→Kb(7);Ka(0)→Ka(11)4 Ka(4)→ka(11);Kb(0)→Kb(3)5 Ka(0)→Ka(15)另外,16字节输入数组用Ka字节而不用Kb字节预置如下RAND(0)RAND(1)RAND(0)
RAND(1)ESN(0)ESN(1)ESN(2)ESN(3)Ka(7)Ka(8)Ka(9)Ka(10)Ka(11)Ka(12)Ka(13)Ka(14)在执行了算法第二应用的所有5个迭代之后,在16字节输入数据中出现的第二个8字节被用作暂时加密可变量(S-关键字),而且如果实行翻滚关键字修正,则第一个8字节变成下一个翻滚关键字变量。在翻滚关键字修正的事件中,第一个8输出字节以顺序(Kb(1)、Kb(2)、Kb(3)、Kb(4)、Kb(5)、Kb(6)、Kb(7)、Kb(0)改写老翻滚关键字。
S-框的内容下面所示的S-框的内容仅作为示例,在本发明的鉴别和加密系统的说明中进一步提出。如前所述,用于鉴别算法的S-框可以与用于本发明加密技术的R检查表相同。S-框的内容以下面注明的十六进制表示。第一个字节(值=50)位于存储单元0,即在ROM的起始地址。数据(16个值)的第一行贮存在存储单元0-15,而其后的数据行分别在ROM的16个存储单元。
地址 时间普通类型的微处理器的编码示例8080/8085和Z80码固定的ROM或S-框是位于由16位寄存器DE寻址的页面边界上的一张256字节表。
CELMIXLDAX B;BC寄存器用于指向关键字字节ADD M;HL寄存器指向输入字节MOV E,A;关键字字节和输入字节的和LDAX D;对S-框寻址MOV M,A;S-框的输出字节改写输入字节INX H;下一个输入字节地址INX B;下一个关键字字节地址RET上面的规程应用如下(1)置D寄存器于位于界页上起始地址的S-框的MSB;
(2)按照如前所述迭代编号把BC预置到关键字字节的数组中的适当的起始地址。
(3)预置HL指向输入字节的16字节数组。
(4)执行上述规程16次。
随及的先行步骤完成混合处理的一次迭代。第一次迭代之前,用RAND、ESN、和上述A-关键字或B-关键字字节选择对16字节输入数组进行预置。
16输出字节位于原输入字节数据中,且可用于输入到下一个迭代。在用上面表明的关键字字节选择完成全部5次迭代之后,16输出字节就代表所需的算法输出。
6809码CELMIXLDA,X+;X寄存器用于指向关键字字节ADDA,Y;Y寄存器指向输入字节LDA A,U;U=S-框起始地址,A=起始地址的偏移量STA,Y+;S-框的字节改写输入字节RET+表示指明的寄存器用后自动增量该规程的应用如下(1)置U寄存器到S-框的起始地址。
(2)按照先前描述的关键字字节的使用顺序把X寄存器预置到指向适当的关键字字节。
(3)把Y寄存器预置到指向16字节输入字节数组的起始端。
(4)执行规程16次随及的先行步骤完成图10所示混合处理的一次迭代。在第一次迭代前,用RAND、ESN和对A-关键字或B-关键字字节的特定选择对16字节输入数组进行预置,一如前例。因此,在执行4个余下的迭代之前,在每个阶段仅需把Y寄存器重新预置到输入字节数组的起始端和把X寄存器预置到指向适当的关键字字节。在第5次迭代之后,16字节输入数组包含来自算法的第一应用的16输出字节,它们用于鉴别,以及如完成的话,则用于用户标识的伪装。
从以上所述应看到,本发明系统中实现了许多概念。这些概念之中有一原则是,鉴别关键字的某部分(即“翻滚关键字”部分)应该周期性地适时修正,以致克隆必需对系统的覆历(经历)进行跟踪。双向鉴别被用于通话通道以实现与呼叫计数器修正相关联的翻滚关键字修正。
还应看到,本发明鉴别算法的执行还产生一个暂时会话关键字或“谈话变量”保密关键字(S-关键字),它可用于对接着的呼叫或呼叫组进行加密,而真正的保密永久用户关键字(A-关键字)决不会由局内网络释放。另外,本发明的算法产生另一个输出,它可用于对被呼叫用户标识的伪装。
上面的描述仅仅是本发明的某些特定实施例。然而,本技术领域中的技术人员将能够在不背离本发明的精神实质和范围的情况下,做出许多种改型和变型。因此,应该清楚理解本发明这里描述的形式仅仅是典型示例,而不打算作为如下面权利要求书所确定的对本发明范围的限定。
权利要求
1.一种产生多个参数用以增强数字蜂窝状通信系统中通信的保密性的方法,在所述系统中,每个活动站指定一个唯一的多数字永久关键字,而且一个周期变化的多数字翻滚关键字用来增加保密性,所述永久关键字和所述翻滚关键字两者贮存在每个活动站和该活动站的局内网络中,所述方法包含在一地点接收多个多数字输入信号,这些信号包括代表来自被访网络的随机鉴别查询信号,和与特定的活动站的多数字永久关键字及与所述特定活动站在特定时刻的多数字翻滚关键字一起代表所述特定活动站的信号;把所述输入信号安排在第一组中;按照第一算法从所述输入信号的第一组及永久和翻滚关键字数字计算出第一输出值;把包含所述第一输出值的有序排列的字块分配给所选参数以便应用于所述系统中,这些参数包括将由所述活动站使用的回答被访网络鉴别查询的鉴别响应,和由被访网络使用的用来使本身鉴别给活动站的鉴别信号;把所述输入信号的数字安排在第二组中;按照第二算法从所述输入信号的第二组和所述永久和翻滚关键字数字计算第二输出值;把包含所述第二输出值的有序排列的字块分配给所选参数以便在所述系统中使用,所述参数包括用于计算伪随机位的关键字流以加密系统通信数据的保密关键字、和在下一个特定时刻拟与特定活动站相关联的新翻滚关键字。
2.如权利要求1所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的方法,其特征在于包含所述第一输出值的所述有序排列的字块分配给用于所述系统的输出参数,该参数还包括用于伪装由活动站发送的被呼叫者的号码的信号。
3.如权利要求1所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的方法,其特征在于所述第一和第二算法包含循环运行的一个码环。
4.如权利要求1所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的方法,其特征在于所述输入信号和所述关键字数字按字节组合,而所述第一和第二算法包含混合处理,其中输入信号和关键字数字的各字节配对相互迭代相加。
5.如权利要求1所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的方法,其特征在于所述方法在每个活动站的局内交换中执行。
6.如权利要求4所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的方法,其特征在于按照所述第一算法的计算包含将包括所述输入信号和所述翻滚关键字数字的有序字节进行组合,然后把各该字节与用加法安排在第一顺序的所述永久关键字的字节进行混合。
7.如权利要求6所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的方法,其特征在于按照所述第二算法的计算包含将包含所述输入信号和所述翻滚关键字数字的有序字节进行组合,然后把各该字节与通过加法安排在不同于所述第一顺序的第二顺序中的所述永久关键字的字节相混合。
8.如权利要求4所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的方法,其特征在于把每个相加所得值用来在其输入和输出之间具有1∶1变换的固定检查表获得一个随机数。
9.如权利要求4所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的方法,其特征在于所述固定检查表还用于获得用于算法的随机数以产生伪随机关键字流以便对所述系统中的通信数据进行加密。
10.一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的系统,在所述系统中,每个活动站指定一个唯一的多数字永久关键字,而且一个周期变化的多数字翻滚关键字被用来增加保密性,所述永久关键字和所述翻滚关键字两者贮存在每个活动站和该活动站的局内网络两者中,所述方法包含在一地点接收多个多数字输入信号的装置,这些信号包括代表来自被访网络的随机鉴别查询信号,和与特定的活动站的多数字永久关键字及与所述特定活动站在特定时刻的多数字翻滚关键字一起代表所述特定活动站的信号;把所述输入信号安排在第一组中的装置;按照第一算法从所述输入信号的第一组及永久和翻滚关键字数字计算出第一输出值的装置;把包含所述第一输出值的有序排列的字块分配给将在所述系统应用的所选定参数的装置,这些参数包括将由所述活动站用以回答被访网络提出的鉴别查询的鉴别响应,和将由被访网络用来使自身鉴别给活动站的鉴别信号;把所述输入信号的数字安排在第二组中的装置;按照第二算法从所述输入信号的第二组和所述永久和翻滚关键字数字,计算出第二输出值的装置;把包含所述第二输出值的有序排列的字块分配给将在所述系统中使用的所选定参数的装置,所述参数包括将用于计算伪随机位的关键字流以便对系统中的通信数据进行加密的保密关键字、和在下一个特定时刻将与特定活动站予以相关联的新翻滚关键字。
11.如权利要求10所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的系统,其特征在于包含所述第一输出值的所述有序排列的字块分配给将在所述系统中使用的输出参数,该参数还包括用于伪装由活动站发送的被呼叫者的号码的信号。
12.如权利要求10所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的系统,其特征在于所述第一和第二算法包含循环运行的一个码环。
13.如权利要求10所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的系统,其特征在于所述输入信号和所述关键字数字按字节组合,所述第一和第二算法包含混合处理,在所述混合处理中,输入信号和关键字数字的字节的各配对相互迭代相加。
14.如权利要求10所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的系统,其特征在于所述系统在每个活动站的局内交换中予以执行的装置。
15.如权利要求13所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的系统,其特征在于按照所述第一算法的所述计算装置包括将包含所述输入信号和所述翻滚关键字数字的有序字节进行组合,然后把各该字节与用加法安排在第一顺序的所述永久关键字的字节进行混合的装置。
16.如权利要求15所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的系统,其特征在于按照所述第二算法进行计算的该装置包括将包含所述输入信号和所述翻滚关键字数字的有序字节进行组合、然后将各该字节与通过加法安排在不同于所述第一顺序的第二顺序中的所述永久关键字的字节相混合的装置。
17.如权利要求13所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的系统,其特征在于把每个相加所获得的值用来在其输入和输出之间具有1∶1变换的固定检查表中获得一个随机数。
18.如权利要求17所述的一种产生多个参数用以增强数字蜂窝状通信系统的通信保密性的系统,其特征在于所述固定检查表还用于获得用于算法的随机数以产生对所述系统中的通信数据进行加密的伪随机关键字流。
全文摘要
一种用于对蜂窝状通信网络中的活动站和基地站进行鉴别的系统。该系统包含一种算法,这种算法不仅产生对随机查询的关键字相依响应,而且还产生可用于对网络中的通话进行加密的暂时会话关键字或呼叫变量。为了防止网络中的克隆,算法使用包含履历信息的翻滚关键字。双向鉴别过程用于修正翻滚关键字并产生一个新的会话关键字。
文档编号H04L9/32GK1059058SQ91105150
公开日1992年2月26日 申请日期1991年7月23日 优先权日1990年7月23日
发明者保罗·登特 申请人:埃利克逊Ge汽车交通控股股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1