CN1032039C - 用于数字蜂窝式通信的加密系统 - Google Patents

用于数字蜂窝式通信的加密系统 Download PDF

Info

Publication number
CN1032039C
CN1032039C CN91105013A CN91105013A CN1032039C CN 1032039 C CN1032039 C CN 1032039C CN 91105013 A CN91105013 A CN 91105013A CN 91105013 A CN91105013 A CN 91105013A CN 1032039 C CN1032039 C CN 1032039C
Authority
CN
China
Prior art keywords
value
multidigit
register
discrete
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
CN91105013A
Other languages
English (en)
Other versions
CN1059999A (zh
Inventor
保罗·登特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ericsson Inc
Original Assignee
Elixon Ge Automobile Transportation Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Elixon Ge Automobile Transportation Co ltd filed Critical Elixon Ge Automobile Transportation Co ltd
Publication of CN1059999A publication Critical patent/CN1059999A/zh
Application granted granted Critical
Publication of CN1032039C publication Critical patent/CN1032039C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/12Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • H04W12/033Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/122Hardware reduction or efficient architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0457Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply dynamic encryption, e.g. stream encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)
  • Communication Control (AREA)

Abstract

一种产生用于在数据传输或存储之前对数字数据进行加密的伪随机位序列的系统。通过以适合于使用传统微处理器算术逻辑单元(ALU)的方法扩充多个密钥位来产生位序列。本发明的系统可用于例如保证数字蜂窝式通信系统中基地站与移动站之间语音或数据通信的安全。

Description

用于数字蜂窝式通信的加密系统
本发明涉及数字蜂窝式通信系统,特别是涉及用于这类系统中数据通信的加密的方法和装置。
蜂窝式无线电通信也许是全世界电信业中发展最快的领域。尽管蜂窝式无线电通信系统只占目前在工作的电信系统的一小部分,但人们普遍相信,该部分将会稳定地增长,并在不远的将来代表整个电信市场的主要成份,这一信念基于如下事实,即传统的电话通信网络有着主要依赖于连接网络内各个用户的有线技术的固有局限性。例如,标准的家用或办公室电话由具有某一最大长度的电话电缆连接到墙上的接口,或电话插座。同样,电话接口也是由接线连接到电话公司的当地交换室。这样,电话用户的移动就不仅受到电话电缆长度的限制,而且受到得到某个工作的电话接口,即已经与当地交换室连接的接口的可能性的限制,确实,蜂窝式无线电系统的产生在很大程度上可以说是由于这一需要,即,克服这些限制和使电话用户能够自由移动或离开住所或办公室而不牺牲与他人有效地通信的能力。在典型的蜂窝式无线电系统中,用户或其车辆携带着一个较小的无线设备与基地站通信,并把该用户连接到系统中其它移动站,以及公共交换电话网(PSTN)中的陆上用户。
现有的蜂窝式无线电通信系统的一个显著缺点是,模拟信号的无线电传输很容易被窃听。特别是,只要把一个合适的电子接收机调谐到通信频率,便可未经允许而监听移动站与基地站之间的部分或全部通信。这样,有机会利用这种接收机并有兴趣窃听的任何人实际上都可以随意地侵犯通信秘密而完全不受惩罚。尽管已经有了各种努力来使电子窃听成为不合法的,但是,这类活动的私下性质通常意味着大多数窃听的情形,如果不是全部的话,将不会被发现,从而不受阻拦和惩罚。竞争对手或敌方可以“收听”某人的可能是私人电话谈话的可能性,迄今已妨碍了蜂窝式无线电通信系统的发展,并如果不受约束的话,必将继续损害这类系统在商业和政府部门应用的能力。
近来已清楚地表明,未来的蜂窝式无线电电信系统将采用数字技术而不是模拟技术。转换为数字方式的要求首先是考虑系统的速度和容量。一个模拟式语音射频(RF)频道可以容纳四至六个数字或数据RF频道。这样,在经语音频道传输之前将通话数字化,就可以不增加语音频道的带宽而显著增加该频道的容量,从而增加整个系统的容量。其结果必然是,系统能以明显低的成本处理更多的移动站。
尽管从模拟到数字蜂窝式无线电系统的转变,某种程度地改善了保障基地站与移动站之间通信安全的可能性,但远未消除电子窃听的风险。可以做出能将数字信号解码并产生原来话音的数字接收机。这种硬件会比模拟传输更复杂,花费更大,但仍然存在数字蜂窝式无线电系统中高度私人化或敏感内容的谈话被第三者监听和可能用来损害系统用户的可能性。而且,第三者窃听电话谈话的很大可能性,使得蜂窝式电信不能用于政府的某些通信。一些商业用户对安全保障的可能性同样敏感。这样,为了使蜂窝式系统成为传统的有线网络的一种可供选择的替代,至少必须在某些线路上得到安全的通信。
已提出了各种方案来解决机密数据的无线电传输所产生的安全问题。某些现有的通信系统所采用的一种已知方案是,在传输之前用密码算法把数据加密(扰乱)为某种难以理解的形式。例如,RickGrehom在1990年6月的BYTE杂志第311—324页上题为“数据和伪装”一文,一般地讨论了密码系统。在大多数目前已有的系统中,通话被数字化,并经过加密装置的处理产生通信信号,这种信号保持看上去是随机的或伪随机的,直至在一个经认可的接收机中被解密。加密装置所用的具体算法可以是某种专有算法或公众领域使用的算法。进一步了解这类技术的背景情况,可以参见Martin E.Hcll-mcn 1979年8月在“科学美国人”第146—167页上的论文,题为“公开密钥密码数学”。
1977年,美国国家标准局公布了规定为《数据加密标准》(DES)的密码算法,见国家技术信息服务处(1977)的联邦信息处理标准公报46号(FIPS PUB46)。DES的加密方法使用可产生一串随机数的公开的数学算法和由一个64位二进制字构成的数据加密钥。典型为ASCII格式的数字数据,被转换成表面上看来是随机的二进制位序列。只有当可以是任何64位二进制字的加密钥也为该加密数据的接收机所识别时,加密数据才能按照标准的DES解密程序被解密。由于DES加密和解密程序是公众已知的,因此,密钥的安全对DES的有效使用是决定性的。
应用DES加密/解密程序的商业设备通常是集成电路形式,接收作为第一输入的有待加密的数据和作为第二输入的64位密钥。大多数这类设备以密码反馈(CFB)方式工作,在该方式中,加密数据作为第三输入提供给DES设备,防止在被加密的数据包含同样字符的重复序列时传输重复的加密后的数据序列。数据的CFB加密的主要优点是加密后数据的自同步。但是,工作于RF链路的CFB设备的一个主要缺点是与接收机灵敏度有关的差错放大使得移动站的工作范围减小。即,加密数据组传输中一个差错平均产生一半的解密数据位差错,造成传输差错率的极端放大。这样,移动站就要停留在基地站的一定限制范围内以维持足够大的信噪比,试图避免错误地接收所传输的数据位。CFB方式中出现差错放大是因为错误地接收的位被不断反馈到解密设备,直至该差错传播出去,接收机重又恢复同步。
另一种用于数据加密的已知技术不存在CFB工作方式中遇到的差错放大问题,即计数器选址(CA)方式。在CA工作方式中,密钥流发生器通过处理含有多个密钥数据位的加密密钥用来产生二进制位的伪随机密钥流。随后,加密设备用密钥流来对数据信号加密。典型地,由异或(XOR)逻辑门把密钥流与数据信号一位一位地相加,产生扰乱的二进制数据信号。将由被同一二进制加密钥使其初始化的一个同样的密钥流发生器同步产生的同样的密钥流加到扰乱的信号上(模2),可以使该扰乱信号被解扰。在这一方式中,加密设备可以由伪随机计数器来“选址”。这样,在CA方式中,需要使扰乱器到解扰器之间一直保持位的同步。以保证解扰器密钥发生器的正常工作,而不必周期性地传送密钥发生器数据。然而,蜂窝式无线电系统中RF频道上的位同步是很难维持的,在很大程度上是由于瑞利衰减现象的影响,瑞利衰减现象是因移动站经过由接收设备附近的障碍物引起的反射形成的多路干涉图形移动时造成的。经不与加密电路同相的解密电路传输的一个差错位和在接收机中产生的输出是毫无意义的。这种CA技术通常不适用于无线电链路加密法,该法必须更经受得住传输差错。
要求维持位同步的困难已导致了采用“时间—日期”或“帧数”驱动的密钥流发生器。这种密钥流发生器可以同步到日期计数器的时间,即小时、分和秒,或同步到一个简单的数字计数器,加密和解密电路能够在彼此不同步的情形下发送当前计数。
为了提高在采用“时间—日期”或“帧数”驱动密钥流发生器的系统中通信的安全性,伪随机密钥流中每一位的值最好是加密钥中所有密钥位的值的函数。在该方法中,希望对加密信号解扰的人必须“破开”或“解开”加密钥的所有位,而这可能相当于100位或更多。这类密钥流通常按照含有时间—日期计数器的计数的选定算法由数学方法扩充加密钥字来产生。但一,如果加密钥的每一位要影响到密钥流中的每一位,并且该密钥流要一位一位地加到数据流位上,则每秒钟进行的密钥字扩充计算所要求的数是非常大的,很容易超出系统的实时计算能力。必须的计算度提示应使用超级计算机,但用于这一用途其费用是昂贵的。所以,需要有用传统的微处理器并以常规的微处理器速度实现密钥流扩充的方法和装置。
一方面,本发明包括产生用于加密数字数据的伪随机位序列的方法,其中所述的位序列是多个选定的密钥位的函数。该方法包括,产生一组多位值,每一个值是所述选定的密钥位中至少某一些的函数。并且,把所述一组多位的值中每一个存在存储器中一个离散位置。响应于每一运算循环,通过增大寄存器所含的当前值,可在寄存器中产生一系列值。按照第一次预选的算法循环计算一系列多位值,每一值是至少一个存在该存储器中的多位值和所述寄存器所含值的函数。所述计数器内容用作为每次计算结果而得到的值循环复位,多位密钥字被周期地取出,它是作为每次计算结果而得到的值的函数。多位密钥字依次结合到所述伪随机位序列中。在一个实施例中,所产生的一组多位值各是选定的全部密钥位的函数。
另一方面,本发明包括具有加密子系统的蜂窝式通信系统,前者包括一个密钥流发生器,用一个密钥分两级产生一个伪随机密钥流。首先,按照某一算法扩充密钥,产生一个查找表,存入存储器;然后,该电路将寄存器的计数以及与存在查找表内的数据相结合的密钥一起使用,以产生一个伪随机密钥流,在传输之前与数据混合。本发明的系统应用日期驱动计数器的时间以及存入查找表的数据和密钥。并将两者用于产生密钥流。当出现不同步时,发射机和接收机中的这种计数器可以周期性地重新同步。
再一方面,本发明包括一数字蜂窝式通信系统,其中,对基地站和移动单元发送和接收的数字数据流进行加密编码,以保证电信的安全性。该系统包括了用于把二进制位的伪随机密钥流加到携带系统中每一发射机和接收机的数字信号的信息上以产生在系统中待发射和接收的数字数据流的装置。用于产生作为一组选定密钥位函数的二进制伪随密钥流的装置包括,用于产生一组多位值,其中每一个值是至少某些选定的密钥位的函数的装置,以及,用于把所述一组多位值中每一个存入存储器中一个离散位置的装置。一个用于产生寄存器中的一系列值的装置,响应于每一运算循环增大寄存器中所包含的当前值。该系统还包括按照第一预先选定的算法循环计算一系列多位值的装置,其中每一值是至少一个存在存储器中的多位的值和寄存器中值的函数,以及,包括用于以作为每一计算的结果所得到的值来对寄存器的内容反复重新设置周期复位的装置。一个是作为每一次计算结果得到的值的函数的多位密钥字,被周期地取出并结合到用来对要发送和接收的数字数据流加密编码和解码的二进制位的伪随机密钥流中。
由参见下列附图,能更好地理解本发明,而其各种目的和优点对本领域的技术人员而言将变得明显,其中:
图1表示一种蜂窝式无线电通信系统,包括一个移动交换中心,多个基地站和多个移动站;
图2是按照本发明的系统的一个实施例中所用的移动站设备的示意性方框图;
图3是按照本发明的系统一个实施例中所用的基地站设备的示意性方框图;
图4是一种已有技术的密钥流发生器的示意性方框图;
图5是按照本发明构成的一种加密系统的密钥流发生器电路的示意性方框图;
图6是图5所示密钥流发生器的第二扩充级的局部示意性方框图。
首先参见图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分配一组语音或通话频道,以及至少一个访问或控制频道。控制频道用来通过发到这些小区的信息和从这些小区收到的信息控制或管理移动站的工作。当移动站移出一个小区的无线电覆盖区并进入另一小区的无线电覆盖区时这些信息可以包括进来的呼叫信号、发出去的呼叫信号、寻呼信号、寻呼回答信号、位置登记信号、语音频道分配、维修指令和“交接”指令。控制频道或语音频道可以以模拟或数字方式工作,或两者的结合。在数字方式中,语音或控制信号等模拟信息在经RF频道传输之前先转换成数字信号表达。由计算机或数字化语音设备产生的纯粹数据信息可以被格式化,直接在数字频道上传输。
在采用时分多路复用(TDM)方式的蜂窝式无线电系统中,多个数字频道可以共用一个共同的RF频道。该RF频道被分成一系列“时隙”,每一时隙包含来自不同数据源并由保护时间彼此分开的一数据组信息,如本领域中熟知的那样,时隙被组成“帧”,每一帧的时隙数目依为该RF频道所容纳的被查录的数字频道的带宽而不同。例如,一帧可以由三个时隙构成,每一时隙分配给一个数字频道。这样,该RF频道将容纳三个数字频道。在这里所述的本发明一个实施例中,一帧被规定为包括三个时隙,但是,应当清楚地理解,本发明的技术可以同样应用于每帧采用任何数目时隙的蜂窝式无线电系统。
下面参见图2,这里画出了按照本发明一个实施例所用的移动站设备的示意性方框图。图2中所示的设备可用于数字频道上的通讯。由话筒100检测到并且将要由移动站传输的语音信号送到通话编码器101的输入,后者把模拟语音信号转换成数字数据位流。然后,按照数字通信的时分多路访问(TDMA)技术分割成数据包或信息。一个快速联系控制频道(FACCH)发生器102与蜂窝式无线电系统中的基地站交换控制或管理信息。传统的FACCH发生器以“空白和数据组”方式工作,用户的一帧数据被抑制,并且相反,快速传输FACCH发生器102产生的控制信息。
与FACCH发生器102的空白和数据组工作相对照的是,一个慢速联系控制频道(SACCH)发生器103一直与基地站交换控制信息。该SACCH发生器的输出,规定为固定长度的字节,例如12位,并作为每一时隙的一部分包括在信息链(帧)内。频道编码器104、105和106分别连接到通话编码器101、FACCH发生器102和SACCH发生器103。每一频道编码器104、105和106通过用卷积编码和周期冗余校验(CRC)技术处理进来数据来执行差错检测和恢复卷积编码可保护通话代码中的重要数据位,周期冗余校验则使用通话编码器帧内的最有效位如12位,计算一个7位差错校验。
仍然参见图2,频道编码器104、105连接到多路复用器107,后者用于使数字化的语音信息与FACCH管理信息实现时分多路复用。多路复用器107的输出连接到2数据组交织器108,它把移动站所要传输的每一数据信息(例如包含260位的信息)分成相等但分开的两部分(每一部分包含130位),安排在两个依次的时隙中。由这一方法可显著减小瑞利衰减的不利影响。2数据组交织器108的输出送到模2加法器109作为其输入,在模2加法器中,所要传输的数据通过与伪随机密钥流的模2逻辑和被一位一位地编成密码,而这种伪随机密钥流则是按照下面所述的本发明的系统所产生的。
频道编码器106的输出送到一个22数据组交织器110作为其输入。该22数据组交织器110把SACCH数据分到22个依次排列的时隙中,每一时隙被一个由12位控制信息构成的字节所占据。交织后的SACCH数据形成数据组发生器111的一个输入。该数据组发生器111的另一输入由模2加法器109的输出提供。数据组发生器111产生数据的“信息字组”,其每一个由一个时隙识别标志(TI)、一个数字校验色码(DVCC)、控制或管理信息和所要传输的数据组成,下面将进一步说明。
一帧内每一时隙中传输的是:一个时隙识别标志(TI),用于时隙识别和接收机同步;一个数字校验色码(DVCC),保证适当的RF频道被解码。在本发明的示例的帧内,确定了一组三个不同的28位TI,当在三个时隙的每一个中传输一个同样的8位DVCC时每一时隙一个TI。TI和DVCC在移动站内由接到图2所示的数据组发生器111的同步字/DVCC发生器112提供。数据组发生器111把模2加法器109、22数据组交织器110和同步字/DVCC发生器112的输出结合在一起,产生一系列信息组,各包括数据(260位)、SACCH信息(12位)、TI(28位)、编码DVCC(12位)和12个限制符位,总共324位,可按照EIA/TIA IS—54标准规定的时分格式集合在一起。
如上所述,每一信息组在一帧内包括的三个时隙之一中传输。数据组发生器111连接到均衡器113,后者提供使一个时隙的传输与其它两个时隙的传输同步所需的定时均衡器111检测从基地站(主)到移动站(从)发送的定时信号,并据此使数据组发生器111同步。均衡器113还可用于检验TI和DVCC的值。数据组发生器111还连接到一个20ms帧计数器114,后者用来更新被移动站每20ms即每传输一帧一次所采用的加密码。加密码由加密单元115用数学算法在密钥116的控制下产生,密钥116对每一移动站都是一样的。这一算法可以按照本发明用来产生伪随机密钥流,如下所述。
由数据组发生器110产生的信息组送到RF调制器117作为其输入。该RF调制器117用来按照π/4-DQPSK技术(π/4移位、差分编码的正交相移密钥)调制载频。该技术的使用强调,移动站所要传输的信息被差分编码,即,两个位符号传输时相位有四种可能的变化:+或-π/4和+或-3π/4。由发送频率同步器118把用于选定发送频道的载频提供给RF调制器117。RF调制器117的成组调制的载频信号输出,由功率放大器119放大,经天线120发送到基地站。
移动站经与接收机器122相连的天线121接收来自基地站的成组调制的信号。对于选定接收频道的接收机载频,由接收频率同步器123产生,并提供给RF解调器124。RF解调器124用来把接收的载频信号解调成某一中频信号。随后,由IF解调器125进一步解调该中频信号,当它在π/4-DQPSK调制前存在时恢复原始数字信息。随后,该数字信息通过均衡器113送到符号检测器126,后者把均衡器113提供的二位符号格式的数字数据转换成一位数据流。
符号检测器126产生两种不同输出:第一输出,包括数字化的通话数据和FACCH数据,第二输出,包括SACCH数据。第一输出提供给模2加法器127,后者连接到2数据组去交织器128。模2加法器127连接到加密单元115,并用于对加密的发送数据解密,这是通过一位一位地减去由加密数据的基地站中的发射机所用的同样伪随机密钥流来实现的。模2加法器127和2数据组去交织器128通过组合和重排来自连续的两帧数字数据的信息,重新构成通话/FACCH数据。二数据组去交织器128连接到两个频道解码器129、130,后两者用与编码相反过程使卷积编码的通话/FACCH数据解码,并检验循环冗余校验(CRC)位,以确定是否出现错误。频道解码器129、130检测一方面通话数据和其他方面任何FACCH数据的不同,并把通话数据和FACCH数据分别连接到通话解码器131和FACCH解码器132。通话解码器131按照通话编码器算法即VSELP处理频道解码器129提供的通话数据,并产生代表由基地站发送和由移动站接收的通话信号的模似信号。在由扬声器133播放之前。可以用滤波技术来提高模拟信号的质量。ACCH检测器132检测到任何SACCH信息送到微处理器134。
符号检测器126的第二输出(SACCH数据)提供给22数据组去交织器135。该22数据组去交织器135重新组合和安排分布在连续的22帧内的SACCH数据。22数据组去交织器135的输出提供给频道解码器136作为其输入。由SACCH检测器137检测SACCH信息,控制信息则传送到微处理器134。
微处理器134控制移动站的活动和移动站与基地站之间的通信。微处理器134根据从基地站收到的信息和移动站所进行的测量作出决定。该微处理器134还有终端键盘输入和显示器输出单元138。键盘和显示器单元138使移动站用户能与基地站交换信息。
下面参见图3,这里画出了按照本发明所采用的基地站设备的示意性方框图。图2中移动站设备与图3中基地站设备的比较说明移动站和基地站所用的大多数设备实际上在结构和功能上是相同的。为简便和一致起见,这些同样的设备在图3中都标以与图2中同样的标号,但加上一个撇号(′)来区别。
然而,移动站与基地站设备之间有着一些小差别。例如,基地站有两个接收天线121′,而不是一个。与每一接收天线121′相联系的是接收机122′、RF解调器124′和IF解调器125。而且,基地站包括可编程频率混合器118A′,它连接到发送频率同步器118′。频率混合器118A′和发送频率同步器118″按照实用的蜂窝式频率复用方案选择将为基地站所用的RF频道。然而,基地站不包括与在移动站中出现的用户键盘和显示器138类似的用户键盘和显示器,而是包括信号电平表100′,用来测量从2台接收机122′中的每一台收到的信号,对微型处理器134′提供一个输出。移动站和基地站设备之间还可以有其它区别,这在本领域中是熟知的。
目前为止的讨论集中在本发明系统的工作环境。下面具体描述本发明的具体实施例。如上所指出和下面所要用的那样,“密钥流”一词指一个伪随机的序列的二进制位或组位,用于对数字编码信息或数据信号在传输或存入在容易被越权访问的介质如RF频道之前予以加密。“密钥流发生器”指通过处理包括一组位的密钥产生密钥流的装置。可以简单地通过模2和把密钥流加到所要加密的数据上来进行加密。类似地,通过模2减法从被加密的数据减去同样的密钥流可进行解密。
一般来说,密钥流发生器提供分别由图2和图3中部件115和115′表示的一种机制,用来把较少量的密码位,即由部件116和116′表示的密钥,扩充成数量相当大的密钥流位,然后用来在发送(或存储)之前对数据信息加密。为了对编码的信息解密接收机的必须“知道”用于对该信息加密的密钥流位的索引。换句话说,如果要正确地对信息解码的话,接收机不仅必须有着与发射机同样的密钥流发生器和产生同样的密钥流位,而且,接收机密钥流发生器还必须与发射机密钥流发生器同步工作。通常,为由周期性地从编码系统向解码系统发送每一内部存储装置的内容来得到同步,这些内容可以是二进制位,信息组或信息计数器,都用于产生密钥流位。不过,也可以用下列方法来简化同步,即使用算术位组计数器,如二进制计数器,并在每次产生新的一组密钥流位时使这些计数器增大一定值。这些计数器可以形成实时(如时、分和秒)时钟链的一部分。依赖于后一种类型计数器的密钥流发生器称为“时间—日期”驱动密钥流发生器,上面已作了说明。
应当指出,用于使密钥流发生器一位一位或一组一组前进的精确方法和用于使发送电路与接收叫路同步的具体方法是题为“蜂窝式通信系统的持续加密同步”的申请号为556,102的共同待批专利申请的主题,如上所述。如以下所详细描述的,本发明的系统是针对有效地实施一种实用的加密系统,它可以用于,例如,保证蜂窝式电信系统中RF频道上数字通信的安全。这种加密系统包括一个密钥流发生器,通过每秒钟对密钥中所含的多个密钥位执行大量的布尔代数操作而每秒钟产生大量的密钥流。本发明的密钥流发生器可用具备简单微处理器结构的集成电路来实现。
现在参见图4,可以看见一种已有的密钥流发生器的方框示意图。一个任选的分组计数器201对组合逻辑电路202提供第一多位输入。一组一位存储单元,或触发器,m1、m2、m3……mn对组合逻辑电路202提供第2条多位输入。由一位输出d1、d2、d3……dn组成的组合逻辑电路202输出的一部分反馈到触发器m1—mn。在一系列位时钟输入脉冲203的每一时钟脉冲加到触发器m1—mn之后,输出d1—dn分别变为触发器m1—mn的下一状态。适当地构成组合逻辑电路202,触发器m1—mn可被设置成一个标准二进制计数器、执行最大长度序列的线性反馈移位寄存器或任何其它形式的线性或非线性顺序计数器。在任何情况下,接收机端触发器m1—mn的每一状态和分组计数器201每一状态必须与发射机端对应部件的状态相同。一个复位或同步机构204用来使接收机与发送机同步。
仍然参见图4,一组密钥位K1、K2、K3…Kn形成组合逻辑电路202的第三条多位输入。密钥位的数目n通常在一百位加或减(+/-)一个因子2的范围内。希望每一密钥位K1—Kn对密钥流中每一位至少有潜在的影响。否则的话,一个窃听者为了要解密和监听加密的数据,只需要解出密钥位K1—Kn中的一个小的子集。但是,如果密钥流中每一位的值(逻辑状态)不仅取决于某个具体的密钥位的值,而且还取决于所有其它密钥位的值以及分组计数器201状态和其它内部存储器的状态,则未经许可的截取的风险可以大大减小。这里,建立这种依赖性将会需要极大数量的布尔运算。例如,假定密钥由一百(100)个密钥位组成。若每一密钥位要影响密钥流中每一位,将需要总共为每一密钥流位一百(100)次的组合运算。这样,为了产生一万(10,000)密钥流位,总共将需要一百万(1,000,000)次组合运算。若每一密钥流位还要依赖于一个或多个内部存储器状态的话,这一数量还将更大。本发明的一个目的是,显著地减小每一密钥流位所需的组合运算数量,而保持每一密钥流位对每一密钥位的这种依赖性。
按照本发明,由例如一百个密钥位产生的数千个伪随机密钥流位,可以被看成是一个多级扩充过程。多个扩充级级联在一起,各有一个依次减小的扩充率。第一级扩充执行次数不如其后各级频繁,以使每一密钥流位所需的逻辑(布尔)运算数减至最小。此外,第一扩充级提供的多个输出位对密钥位有很强的依赖性,进一步减小了以后各级必须执行的逻辑运算数量。
下面参见图5,其中表示按照本发明思想构造的一种密钥流发生器系统的示意性方框图。多个密钥位K1、K2、K3……提供给第一级扩充205作为其输入。密钥位K1、K2、K3……可以包括密钥位K1、K2、K3……Kn中的某些,但最好是全部。第一级扩充205的附加(或任选)的输入可以包括信息计数器分组计数器、代表一帧开始时的时间或分组计数值的日期—时间标记的输出,或其它各种可以由发送机和接收机同步的输出。任何随时间缓慢变化的内部存储器输出,可用作第一级扩充205的输入。因为第一级扩充205应当不常进行,例如每个信息一次,所以希望输出变化缓慢。
第一级扩充205产生规模比密钥位K1、K2、K3……的数目相当大的扩充输出。扩充输出存储在存储器206中,由组合逻辑电路207读取。组合逻辑电路207执行如下所述的第二级扩充。计数器和寄存器208的输出形成组合逻辑电路207的输入。寄存器208在每组密钥位产生之前被初始化至一个新的起始状态。初始值发生器209为寄存器208提供起始状态。这一起始状态因每一特定组的密钥流位而不同,是该特定组的分组号的函数,还可能是密钥位K1—Kn的某些子集的函数。
组合逻辑电路207的第一输出210反馈到寄存器208。输出210在每一运算循环后变为寄存器208的新的状态。组合逻辑电路207的第2输出211形成有待于如上述图2和3所述与数据流混合的密钥流位。每一循环在输出211产生的密钥流位数可以是2的任何次方,即8、16、32、64等。这些位统称为“密钥字”。在寄存器208重新初始化之前,输出211产生的一些或全部密钥字,聚集为密钥组212。密钥组212可以由例如在寄存器208重新初始化之前每一循环或每隔一循环中所产生的全部密钥字所组成。
本领域内技术人员将会意识到,上述的和图5中所示的密钥流发生器系统的传统实现也许需要许多复杂的组合逻辑电路,如果通过分别把多个逻辑门即与、或门等互连来实现,则相当于一个相当大、费用很昂贵的芯片,而仅能用于很具体的用途。另一方面,算术及逻辑单元(ALU)是各一种小型、廉价和多用途的微处理器的标准部件。本发明提供用这种ALU实现所有所需的组合逻辑功能的手段。
传统的ALU在程序控制下工作,能够执行任何两个8位或16位二进制字之间的加、减、逐位异或、和、或的组合函数。若这种ALU被用来依次完成图5装置所需的所有布尔函数,则按照每秒钟可以执行的完整循环数测量的ALU运算速度会显著降低。但是,本发明所用的多级扩充防止过份降低ALU速度,办法是,如ALU实用例,通过对第一级扩充205中的大量密钥依赖性函数执行稀少的周期计算,使最常执行的组合逻辑207的每周期程序指令数减至最少。在上一句中,“大量”一词指大于密钥位的位数n的数量级大小。
一旦以一个起始值使寄存器208初始化,组合逻辑207在输出211产生一串密钥字,并且每当寄存器208由输出210的反馈值重新存入时继续产生附加的密钥字。但是,可能会出现逐渐损害密钥字发生过程完整性的问题。例如,若寄存器208的内容回到其初始值,则其后产生的密钥字序列将重复。类似地,若寄存器208的内容回到在产生当前密钥组中先前出现过的值(不一定是初始值),则称该系统“循环短路”。由于前面提到过的原因,即容易被未经许可解密,因此不希望在产生的一个密钥组内密钥字重复或出现循环短路。而且,如果寄存器208的内容在某一点,比如说产生第m个密钥字后的一点上,变为与产生另一密钥组期间该第m个密钥字以后已存在或将会存在的某个值相等,则这两个密钥组将从该点开始变为相同的,这也是不希望出现的。
这里,组合逻辑207和相联系的寄存器208(组合逻辑/寄存器组合)在连续运算数次后,应当(1)不产生短于每组的密钥字数的循环,(2)对寄存器208每一同样的起始状态产生同样的密钥字序列。为满足后一要求,两种不同的起始状态不应能会聚为同一状态,而且,上述两要求应当不管存储器206内容如何都适用。如下详细说明的那样,本发明使这些问题得以缓解并增强了密钥字发生过程的整体性。
当组合逻辑/寄存器组合的状态转换图有会聚的分支时,这种组合不能经分支反向工作,因为无法确定取那条道路。所以,如果能表明这种组合的运算过程是明晰而可逆的,则证明在状态转换图中不存在会聚的分支。下面叙述和讨论这种过程。
下面参见图6,表示图5所示的密钥流发生器第2扩充级的局部示意性方框图。图5的寄存器208被分成图6中三个字节长度的寄存器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;
注:存在存储器206中的每一值K以前按图5中的第一级扩充205计算,为所有密钥位的复值函数。
R(A)是位于一固定的查找表R中地址A的值。或者说,A的各个位送到组合逻辑块作为其输入,产生输出R。查找表R,或者说组合逻辑块,应当提供若干大于或等于A字长并且小于或等于B的字长的输出位,例如,在A和B都是8位字节的情形下,R也是8位字节,查找表R将含有256个值。
值R应当有着从输入到输出的1:1映射,即,输入位的每一可能状态应当对应于一个同样的输出值。这确保,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而发生一系列状态转换S0、S1、S2、S3、S4、S5、S6、S7…。然而,若在其后的密钥组计算中,寄存器被初始化,例如初始化至S2,则产生的序列S2、S3、S4、S5、S6、S7…将与第一序更相同组移过两个密钥字(S0、S1)。所以,若状态S的值A、B或C直接用作密钥字,可在不同的密钥组中出现这样的一致为避免这一情形,本发明的系统按照该值在密钥组中位置修改再一取出的值,这样,如果对另一组中不同的密钥位置取出同样的值,将产生不同的密钥字。下面提出用于实现该目的一种举例的方法。
令N为当前已被计算的密钥组中密钥字的数目,S=(A、B、C)为要取出密钥字的这次重复中寄存器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〕等等。
尽管密钥字取出方法的严密性不是本发明实施中最重要的,但值得推荐的是为了按本发明方法获得最佳的加密性能取出的密钥字的值应当是其在密钥组中对应位置的函数。
从上面对本发明系统的各种实施例的叙述可见,存在着用于减少产生伪随机位序列所需特定逻辑硬件数量的方法和装置,除其它参数以外,该硬件数量是选定数量的密钥位的函数,并用于对数字信息流进行加密,该系统包括在程序控制下对一个在传统的微处理器集成电路芯片中通常存在的通用算术及逻辑单元(ALU)进行时分操作。该系统通过预先计算和在存储器中存储一组数目大于原输入密钥位的数字值,针对选定的对密钥字的依赖性的复杂程度,使每一输出位所需的ALU运算数减至最小。每一存储的数字值,是密钥位的差分复值逻辑函数,最好还是其它参数的函数。存在存储器中的数字值由其后的计算级用作查找表,多次执行该计算级以产生大量的伪随机输出位。
应当理解,本发明系统的伪随机位序列发生器在数字值的预先计算中可以采用许多变量,以及密钥位。例如,下列参数可用于这一目的:信息号,发信者标识码或电话号、预期接收通信者的标识码或电话号、时间—日期、日期、信息起始时的计数器值、呼叫号、通信者之间交换的随机号码、或者是发信者于接收者有办法商定的任何其它位或数量。
基于上述讨论,显然,本系统使用预先计算过并存入的数字值,而这是通过第一次使很多触发器或寄存器级的状态初始化来实现的,这些寄存器或触发器级形成组合逻辑电路的输入,后者计算一组值的下一状态。一旦完成下一状态的计算后,随后就将计算得到的值送入各寄存器级,这些新的值由组合逻辑用作新的起始状态,重复产生一连串附加的状态,其逻辑值被进一步组合以形成所希望的输出伪随机位序列。
触发器或寄存器级被初始到一个至少依赖于当前正产生的该组伪随机位的一个标识码或分组计数的值,最好是依赖于通信者之间商定的其它参数,例如某些或全部密钥位。初始值的这种依赖性最好但不是必须,对每一同样的分组标识号码产生同样的初始寄存器状态。
根据在各连续状态之间进行的寄存器/组合逻辑状态器的各次转换产生的子群位,不仅是寄存器状态的函数,而且也是该子群在当前正在由该机器产生的伪随机位组内的位置的函数。状态器被确保对用于使状态器的各寄存器级初始化的各不同分组的标识标码或分组号,在一具体分组产生同样序列的伪随机位,而这是通过确保使不同的起始级在其后的重复中不能达到同样的中间状态来实现的。
由上述讨论还可以得知,本发明的状态器,很多连接到组合逻辑电路的寄存器级组成,并采用具有任意内容的密钥依赖性查找表,该状态器在不断的重复中显示其周期性行为。通过使寄存器级中的子群执行确定的循环序列,例如有规则地以至少某个最小长度增大的二进制计数序列,来确保最小循环长度。该状态器内还包括一个或多个通信者商定的固定查找表,这些表从输入地址至输出地址值有着1∶1的映射特性,所以可以逆转。
上面的说明仅表示本发明的的某些具体实施例。然而,本领域内技术人员会认识到,不离开本发明的精神和范围可作出许多修改和变化。当然,应当清楚地明白,这里叙述的本发明的形式仅是例子,并不打算如下列权利要求书中规定的那样作为对本发明范围的限制。

Claims (69)

1.一种产生用于加密数字数据的伪随机位序列的方法,其中:所述的位序列是多个选定的密钥位的函数,其特征在于所述的方法包括:
产生一组多位值,每一个值是至少某些所述选定的密钥位的函数;
把每一所述一组多位值存入存储器中一个离散位置;
把每一所述一组多位值存入一张查找表;
通过响应于每一运算循环,通过在一特定时刻改变寄存器中包含的当前值,在所述寄存器中产生一系列值;
按照预先选定的第一算法周期地计算一系列多位值,每一个值是至少一个存入所述查找表或所述存储器中的多位值和所述寄存器中至少部分所含值的函数;
周期地用作为每次计算结果所得到的值对所述寄存器中所含当前值复位;
周期地计算一个多位密钥字,它是作为每一多位值计算结果所得到的值的函数;
依次把至少若干所述多位密钥字组合成所述的伪随机位序列。
2.如权利要求1的方法,其特征在于,所述产生一组多位值的步骤包括,产生每一个均为所述选定的所有密钥位函数的各个值。
3.如权利要求1的方法,其特征在于,包括周期性地使所述寄存器中所含当前值初始化的附加步骤。
4.如权利要求1的方法,其特征在于,所述产生一组多位值的步骤包括,产生每一个是至少某些选定的密码位和一个计数器中所含值这两者的函数的各个值,所述计数器的值以比所述计算的周期性重复慢的速率周期性地增加。
5.如权利要求1的方法,其特征在于,所述在寄存器中产生一系列值的步骤包括,把一组离散的数据字节存在所述寄存器中,并响应于每一运算循环仅增大一个所述字节。
6.如权利要求5的方法,其特征在于,所述在寄存器中产生一系列值的步骤包括,把至少三个离散字节的数据存入所述寄存器,并且响应于每一运算循环仅增大一个所述字节。
7.如权利要求5的方法,其特征在于,所述计算一系列多位密钥字的步骤包括,按照某个算法进行所述计算,在该算法中,每一计算得到的值是至少一个分别存放在所述存储器的至少一个离散位置中的多位值和至少一个在所述寄存器内的所含的所述离散字节的数据的函数。
8.如权利要求7的方法,其特征在于,所述计算一系列多位值的步骤包括,按照至少三种独立的算法进行所述计算,其中,用第一算法计算得到的每一值是至少一个分别存在所述存储器或所述查找表中一个离散位置的多位值和在所述寄存器中含的第一个所述离散字节的数据的函数;用第二算法计算得到的每个值是存在所述查找表中一个离散位置的一个多位值和在所述寄存器中包含的第二个所述离散字节的数据的函数;用第三算法计算得到的每个值是所述寄存器中所含第三个离散字节的数据和加在那里的一个增值的函数。
9.如权利要求8的方法,其特征在于,所述第一算法是
A′=A#〔K(B)+K(C)〕
这里,
A是第一个所述离散字节数据的值;K(B)和K(C)表示,B和C分别是所述存储器中取得值K的地址;+表示按字长模的加法;#表示按字长模相加或与整个字长逐位异或;所述第二算法是
B′=B#R(A)
这里,
B是第二个所述离散字节数据的值;R(A)表示,A是固定查找表中由此取得值R的地址,或表示A的各位要用作将给出输出R的组合逻辑块的输入;#表示按字长模相加或与整个字长逐位异或;
所述第三算法是
C′=C+1
这里,
C是第三个所述离散字节数据的值;+表示按字长模相加。
10.如权利要求9的方法,其特征在于,得到用于R的值的查找表或组合逻辑,具有一系列输出位至少等于A的字长,小于或等于B的字长。
11.如权利要求10的方法,其特征在于,查找表的输入位的每一可能状态映射为R的同样输出值。
12.如权利要求5的方法,其特征在于,在寄存器中产生一系列值的所述步骤包括,把至少三个离散字节的数据存入所述寄存器,所述计算一系列多位值的步骤包括,计算至少三个离散的值,所述周期地复位所述寄存器中所含当前值的步骤包括,在所述寄存器中用由每一计算步骤得到的所述至少三个离散计算值对应地取代每一所述至少三个离散字节的数据。
13.如权利要求12的方法,其特征在于,所述周期地计算多位密钥字的步骤包括,从所述至少三个离散的计算值中选择至少一个作为所述密钥字的一部分。
14.如权利要求12的方法,其特征在于所述周期地计算多位密钥字的步骤包括,从所述至少三个离散的计算值中选择至少一个,并按照第二算法计算所述密钥字,其中,所述密钥字是所述至少一个所选计算值的函数。
15.如权利要求14的方法,其特征在于包括在顺序组合成所述的伪随机位序列的密钥字的每一密钥组开始时使所述寄存器中值初始化的附加步骤,以及,所述第二算法把所述密钥字限定为至少一个按照所述第一算法算出的值以及正在计算的该特定的密钥字在该密钥组内顺序位置的函数。
16.如权利要求14的方法,其特征在于,包括在顺序密钥字的每一密钥组开始时使所述寄存器中值初始化的附加步骤,以及所述周期性地计算多位密钥字的步骤包括,从所述三个离散的计算值中只选择一个,并且,所述第二算法为
W(N)=B+′K〔A+N〕
这里,
W(N)是所要计算的密钥字;N是密钥组内被计算的特定密钥字的顺序位置;A是第一个所述离散字节的数据的值,B是第二个所述离散字节的数据,+表示异或,K〔A+N〕表示,A和N的异或组合用作存储器中取出K值的地址;+′可以是异或,或者是按字长模相加。
17.如权利要求14的方法,其特征在于,包括在依次的密钥字的每一密钥组开始时使所述寄存器中值初始化的附加步骤,所述周期地计算多位密钥字的步骤包括从所述三个离散的计算值中只选一个,并且,所述第二算法是
W(N)=B+K〔R(A+N)〕
这里
W(N)是所要计算的密钥字;N是密钥组内被计算的特定密钥字的依顺位置;A是第一个所述离散字节的数据的值;B是第二个所述离散字节的数据,R(A+N)表示,A+N是固定查找表中由此取出值R的地址,或表示A+N的各位要用作将给出输出R的组合逻辑块的输入;
+表示异或;K〔R+(A+N)〕表示,查找表内在A和N异或组合的地址处找到的值R要用作存储器中由此取得值K的地址。
18.如权利要求14的方法,其特征在于,包括在依次的密钥字的每一密钥组的开始时使所述寄存器中值初始化的附加步骤,所述周期性地计算多位密钥字的步骤包括从所述三个离散的计算值中仅选择一个。并且,所述第二算法是
W(N)=R〔A+N〕+K〔B+N〕
这里,
W(N)是所要计算的密钥字;N是密钥组内被计算的特定密钥字的依次位置;A是第一个所述离散字节的数据的值,B是第二个所述离散字节的数据,R〔A+N〕表示,A+N是固定查找表中由此取出值R的地址;或表示A+N的各位要用作将给出输出R的组合逻辑块的输入;+表示异或;K(B+N)表示,B和N的异或组合的地址要用作存储器中由此取出值K的地址。
19.一种产生用于加密数字数据的伪随机位序列的系统,其中,所述位序列是多个选定的密钥位的函数,其特征在于所述系统包括:
用于产生一组多位值的装置,每一个值是至少某些所述选定的密钥位的函数;
用于把每一所述一组多位值存入存储器中一个离散位置的装置;
用于把每一所述一组多位值存入一张查找表中一个离散位置的装置;
用于响应于每一运算循环,通过在一特定时刻改变寄存器中包含的当前值、在所述寄存器中产生一系列值的装置;
用于按照预先选定的第一算法周期地计算一系列多位值的装置,每一个值是至少一个存在所述查找表或所述存储器中的多位值和所述寄器中至少部分所含值的函数;
用于周期地用作为每次计算结果所得到的值复位所述寄存器中所含当前值的装置;
用于周期地计算一个多位密钥字的装置,该密钥字是作为每一多位值计算结果所得到的值的函数;
用于依次把至少若干所述多位密钥字组合成所述伪随机位序列的装置。
20.如权利要求19的系统,其特征在于,所述用于产生一组多位值的装置包括,用于产生每一个均为所述选定的所有密钥位函数的各个值的装置。
21.如权利要求19的系统,其特征在于,进一步包括用于周期地使所述寄存器中所含当前值初始化的装置。
22.如权利要求19的系统,其特征在于,所述用于产生一组多位值的装置包括,用于产生各是至少某些选定的密钥位和一个计数器中所含值这两者函数的各个值的装置,所述计数器的值以比所述计算的周期性重复慢的速率周期地增加。
23.如权利要求19的系统,其特征在于,所述在寄存器中产生一系列值的装置包括,用于把一组离散字节的数据存在所述寄存器中的装置和用于响应于每一运算循环仅增大一个所述字节的装置。
24.如权利要求23的系统,其特征在于,所述用于在寄存器中产生一系列值的装置包括,用于把至少三个离散字节的数据存在寄存器中的装置,以及响应于每一运算循环仅增大一个所述字节的装置。
25.如权利要求23的系统,其特征在于,所述用于计算一系列多位密钥字的装置包括用于按照某个算法计算所述值的装置,在该算法中,每一计算值是分别存在所述存储器中至少一个离散位置的至少一个多位值和至少一个所述寄存器中包含的所述离散字节的数据的函数。
26.如权利要求25的系统,其特征在于,所述计算一系列多位值的装置包括,按照三种独立算法进行所述计算的装置,其中,用第一算法计算得到的每一值是分别存在所述存储器或所述查找表中至少一个离散位置的至少一个多位值和所述寄存器中所含第一个所述离散字节的数据的函数;用第二算法计算得到的每个值是存在所述查找表中一个离散位置的一个多位值和所述寄存器中所含第二个所述离散字节的数据的函数;用第三算法计算得到的每个值是所述寄存器中所含第三个离散字节的数据和其增值的函数。
27.如权利要求26的系统,其特征在于,所述第一算法是
A′=A#〔K(B)+K(C)〕
这里,
A是第一个所述离散字节的数据的值;K(B)和K(C)表示,B和C分别是所述存储器中取得值K的地址;+表示按字长模的加法;#表示按字长模相加或与整个字长逐位异或;所述第二算法是
B′=B#R(A)
这里,
B是第二个所述离散字节的数据的值;R(A)表示,A是固定查找表中由此取得值R的地址,或表示A的各位要用作将给出输出R的组合逻辑块的输入;#表示按字长模相加或与整个字长逐位异或;
所述第三算法是
C′=C+1
这里,
C是第三个所述离散字节的数据的值;+表示按字长模相加。
28.如权利要求27的系统,其特征在于,得到用于R的值的查找表或组合逻辑电路,具有一系列输出位,至少等于A的字长,并小于或等于B的字长。
29.如权利要求28的系统,其特征在于,查找表输入位的每一可能状态映射为R的同样输出值。
30.如权利要求23的系统,其特征在于,在寄存器中产生一系列值的所述装置包括用于把至少三个离散字节的数据存入所述寄存器的装置;所述用于计算一系列多位值的装置包括,用于计算至少三个离散值的装置;所述用于周期地复位所述寄存器中所含当前值的装置包括,用于在所述寄存器中用由每一计算步骤得到的对应的所述至少三个离散的计算值取代每一所述三个离散字节的数据的装置。
31.如权利要求30的系统,其特征在于,所述用于周期地计算多位密钥字的装置包括用于从所述至少三个离散计算值中选择至少一个作为所述密钥字一部分的装置。
32.如权利要求30的系统,其特征在于,所述用于周期地计算多位密钥字的装置包括,用于从所述至少三个离散的计算值中选择至少一个的装置和用于按照第二算法计算所述密钥字的装置,其中,所述密钥字是所述至少一个所选计算值的函数。
33.如权利要求32的系统,其特征在于,还包括用于在顺序的组合成所述的伪随机位序列的密钥字的每一密钥组开始时使所述寄存器中值初始化的装置,以及,所述第二算法把所述密钥字限定为至少一个按照所述第一算法算出的值以及被计算的该特定的密钥字在该密钥组内顺序位置的函数。
34.如权利要求32的系统,其特征在于,还包括用于依次的密钥字的每一密钥组开始时使所述寄存器中值初始化的装置,所述用于周期性地计算多位密钥字的装置包括用于从所述三个离散的计算值中只选择一个的装置,并且,所述第二算法为
W(N)=B+′K〔A+N〕
这里,
W(N)是所要计算的密钥字;N是密钥组内被计算的特定密钥字的依次位置;A是第一个所述离散字节的数据的值;B是第二个所述离散字节的数据;+表示异或,K〔A+N〕表示,A和N的异或组合用作存储器中取出K值的地址;+′可以是异或,或者是按字长模相加。
35.一种数字通信系统,其中,被发送和接收的数字数据流被加密编码以保证电信的安全,其特征在于所述系统包括:
用于把二进制位的伪随机密钥流加到载有所述系统中至少一台发射机和至少一台接收机的数字信号的信息上,以产生要在所述系统中发送和接收的数字数据流的装置,
用于产生所述二进制位的伪随机密钥流的装置,它包括:
用于把每一所述一组多位值存在离散位置中的装置;
用于通过响应于每一运算循环改变所述寄存器中包含的当前值而在所述寄存器中产生一系列值的装置:
用于按照第一预定算法周期地计算一系列多位值的装置,其中每一值是至少一个所述存储的多位值和所述寄存器中所含值的函数;
用于周期地用作为每次计算结果所得到的值复位所述寄存器内容的装置;
用于周期地计算一个多位密钥字的装置,所述密钥字是作为每一多位值计算结果所得到的值的函数;以及
用于依次把至少若干所述多位密钥字组合成所述二进制位的伪随机密钥流的装置。
36.如权利要求35的系统,其特征在于,所述用于产生所述二进制位的伪随机密钥流的装置包括,用于产生作为一组所选密钥位的函数的所述密钥流的装置,它包括:
用于产生一组多位值的装置,每一多位值是至少若干所述选定的密钥位的函数;以及
所述用于把每一所述一组多位值存在一离散位置的装置包括,用于存储每一所述一组所产生的多位值的装置。
37.如权利要求35的系统,其特征在于,进一步包括用于使所述寄存器内容周期地初始化的装置。
38.如权利要求36的系统,其特征在于,所述用于产生一组多位值的装置包括,用于产生各为至少某些所述选定的密钥位和计数器中所含值这两者函数的各个值的装置,所述计数器中的值以比所述计算的周期性重复为慢的速率周期地增大。
39.如权利要求35的系统,其特征在于,所述用于在寄存器中产生一系列值的装置包括,用于在所述寄存器中存储一组离散字节的数据的装置和用于响应于每一运算循环仅增大所述字节中一个的装置。
40.如权利要求39的系统,其特征在于,所述用于在寄存器中产生一系列值的装置包括,用于把至少三个离散字节的数据存在所述寄存器中的装置,以及用于响应于每一运算循环仅增大所述字节中一个的装置。
41.如权利要求39的系统,其特征在于,所述用于计算一系列多位值的装置包括,用于按照某一算法计算所述值的装置,在该算法中,每一计算值是分别存在所述存储器中至少两个离散位置的至少两个多位值和至少一个所述寄存器中包含的所述离散字节的数据的函数。
42.一种减少产生用于对数字信息流加密的伪随机位序列所需逻辑硬件数量的方法,所述位序列是多个选定的密钥位的函数,其特征在于所述方法包括:
在存储器中存储一组其数目大于选定的密钥位数目的数字值,每一数字值是至少某些所述密钥位的逻辑函数;
采用通用微处理器在程序控制下反复计算一系列多位值,每一多位值是至少一个存在存储器中的数字值的函数;并且
把至少部分所述计算得到的一系列值组成所述伪随机位序列。
43.如权利要求42的方法,其特征在于,所述存入存储器的步骤还包括如下步骤:
产生一组多位值,每一多位值是至少若干所述选定的密钥位的函数;
将每一所述一组多位值存入存储器中的一离散位置。
44.如权利要求43的方法,其特征在于,所述产生一组多位值的步骤包括产生各个数值,其每一个是所述选定的全部密钥位的函数。
45.如权利要求43的方法,其特征在于它还包括如下步骤:
通过响应于每一运算循环改变所述寄存器中包含的当前值,在所述寄存器中产生一系列值。
46.如权利要求45的方法,其特征在于,所述反复计算一系列多位值的步骤包括如下步骤:
按照第一预定算法周期性地计算一系列多位值,其中每一值是至少一个所存数值和所述寄存器中至少部分所含值的函数;
周期性地用作为每次计算结果所得到的值复位所述寄存器的内容。
47.如权利要求45的方法,其特征在于包括使所述寄存器内容周期性初始化的附加步骤。
48.如权利要求43的方法,其特征在于,所述产生一组多位值的步骤包括产生各个数值,其每一个是所述选定的至少若干密钥位和计数器中所含值两者的函数,所述计数器中的值以比所述计算的周期性重复为慢的速率周期地增大。
49.如权利要求45的方法,其特征在于,所述在寄存器内产生一系列值的步骤包括,在所述寄存器中存储一组离散字节的数据,并响应于每一运算循环仅增大一个所述字节。
50.如权利要求45的方法,其特征在于,所述在寄存器内产生一系列值的步骤包括,在所述寄存器中存储至少三个离散字节的数据,并响应于每一运算循环仅增大一个所述字节。
51.如权利要求45的方法,其特征在于,所述重复计算一系列多位值的步骤包括,按照一种算法进行所述计算,在该算法中,每一计算值是所述存储的至少一个数值和所述寄存器中包含的至少一个所述高散字节的数据的函数。
52.如权利要求50的方法,其特征在于,所述重复计算一系列多位值的步骤包括,按照至少三种独立的算法进行所述计算,其中,用第一算法计算得到的每一值是所述存储的至少一个数值和所述寄存器中所含第一个所述离散字节的数据的函数;用第二算法计算得到的每一值是所存储的数值和所述寄存器中所含第二个所述离散字节的数据的函数;用第三算法计算得到的每一值是所述寄存器中所含第三个所述离散字节的数据和加在那里的一个增值的函数。
53.一种产生用于加密数字数据的伪随机位序列的方法,其特征在于所述方法包括:
产生一组多位值;
将所述一组多位值存入离散位置;
通过响应于每一运算循环在一特定时刻改变所述寄存器中包含的当前值,在含有当前值的寄存器中产生一系列值;
按照预先选定的第一算法周期地计算一系列多位值,其每一个值是所述存储的至少一个多位值和所述寄存器中所含值的函数;
周期地用作为每一多位值计算结果所得到的值对所述寄存器中所含当前值复位;
周期地计算一个多位密钥字,它是作为每一多位值计算结果所得到的值的函数;
依次把至少部分所述多位密钥字组合成所述的伪随机位序列。
54.如权利要求53的方法,其特征在于,所述位序列是一组所选定的密钥位的函数,它还包括如下步骤:
产生一组多位值,其每一个是所述选定的至少若干密钥位的函数;所述将一组多位值存入离散位置的步骤包括,将每个所述产生的多位值存入存储器中的一离散位置。
55.如权利要求54的方法,其特征在于,所述产生一组多位值的步骤包括产生各个数值,其每一个是所述选定的全部密钥位的函数。
56.如权利要求53的方法,其特征在于包括使所述寄存器中所含当前值周期地初始化的附加步骤。
57.如权利要求54的方法,其特征在于,所述产生一组多位值的步骤包括产生各个数值,其每一个是所述选定的至少若干密钥位和一计数器中所含值两者的函数,所述计数器的值以比所述计算的周期性重复慢的速率周期性地增加。
58.如权利要求53的方法,其特征在于,所述在寄存器中产生一系列值的步骤包括,将一组离散字节的数据存入所述寄存器内,并响应于每一运算循环仅增大一个所述字节。
59.如权利要求58的方法,其特征在于,所述在寄存器中产生一系列数值的步骤包括,将至少三个离散字节的数据存入所述寄存器,并且响应于每一运算循环仅增大一个所述字节。
60.如权利要求58的方法,其特征在于,所述计算一系列多位密钥字的步骤包括,按照一种算法进行所述计算,其中,每个所计算的值是分别存储在至少一个离散位置的至少一个多位值和所述寄存器中所含至少一个所述离散字节的数据的函数。
61.如权利要求59的方法,其特征在于,所述计算一系列多位值的步骤包括,按照至少三个独立的算法进行所述计算,其中,用所述第一算法计算得到的每一值,是分别存储在一个离散位置的至少一个多位值和所述寄存器中所含第一个离散字节的数据的函数;用所述第二算法计算得到的每一值,是存储在一离散位置的一个多位值和所述寄存器中所含第二个离散字节的数据的函数;用所述第三算法计算得到的每一值,是所述寄存器中所含第三个所述离散字节的数据和加在那里的一个增值的函数
62.一种产生用于通信系统的密码变量的方法,其特征在于包括如下步骤:
将一组多位值存入一个存储器内;
将一个寄存器初始化以起始多位值;以及
按照一种算法为所述寄存器反复计算一个新的值,其中,每次反复计算得到的至少若干位新的寄存器值,是至少若干位在先的寄存器值与存储在所述存储器内的一个值的至少若干位所组合的结果。
63.如权利要求62的方法,其特征在于,所述存储器包括一张查找表
64.如权利要求63的方法,其特征在于,所述寄存器包括一组8位寄存器,所述查找表包含256个值。
65.如权利要求62的方法,其特征在于,存储在所述存储器内的至少若干值是保密数据的一个函数。
66.一种产生密码变量的系统,其特征在于包括:
用以将一组多位值存入存储器的装置;
用以使一个寄存器初始化以起始一个多位值的装置;以及
用以按照一种算法,为所述寄存器反复计算一个新的值的装置,其中,每次反复计算得到的至少若干位新的寄存器值,是至少若干位在先的寄存器值与所述存储器中所存储的一个值的至少若干位所组合的结果。
67.如权利要求66的系统,其特征在于,所述存储器包括一张查找表。
68.如权利要求67的系统,其特征在于,所述寄存器包括一组8位寄存器,所述查找表含有256个值。
69.如权利要求66的系统,其特征在于,所述存储器内所存储的至少若干值是保密数据的一个函数。
CN91105013A 1990-07-20 1991-07-20 用于数字蜂窝式通信的加密系统 Expired - Lifetime CN1032039C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US55635890A 1990-07-20 1990-07-20
US556,358 1990-07-20

Publications (2)

Publication Number Publication Date
CN1059999A CN1059999A (zh) 1992-04-01
CN1032039C true CN1032039C (zh) 1996-06-12

Family

ID=24221021

Family Applications (1)

Application Number Title Priority Date Filing Date
CN91105013A Expired - Lifetime CN1032039C (zh) 1990-07-20 1991-07-20 用于数字蜂窝式通信的加密系统

Country Status (11)

Country Link
JP (1) JP2688659B2 (zh)
KR (2) KR960008031B1 (zh)
CN (1) CN1032039C (zh)
AU (1) AU645464B2 (zh)
BR (1) BR9106663A (zh)
CA (1) CA2087616C (zh)
GB (1) GB2261348B (zh)
HK (1) HK29795A (zh)
MX (1) MX9100126A (zh)
NZ (1) NZ238651A (zh)
WO (1) WO1992002089A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5239294A (en) * 1989-07-12 1993-08-24 Motorola, Inc. Method and apparatus for authenication and protection of subscribers in telecommunication systems
US5572193A (en) * 1990-12-07 1996-11-05 Motorola, Inc. Method for authentication and protection of subscribers in telecommunications systems
US5228054A (en) * 1992-04-03 1993-07-13 Qualcomm Incorporated Power-of-two length pseudo-noise sequence generator with fast offset adjustment
SE470520B (sv) * 1992-11-09 1994-06-27 Ericsson Telefon Ab L M Radiomodul ingående i en primär radiostation jämte radiostruktur innehållande sådana moduler
JP3029381B2 (ja) * 1994-01-10 2000-04-04 富士通株式会社 データ変換装置
US5425103A (en) * 1994-03-14 1995-06-13 Shaw; William Y. Variable-key cryptography system
JP3294739B2 (ja) * 1995-03-30 2002-06-24 三洋電機株式会社 Fm多重放送のスクランブルまたはデスクランブル方法
DE19548044C2 (de) * 1995-12-21 1998-03-26 Siemens Ag Verfahren und Anordnung zum Erzeugen von Zufallszahlen in Telekommunikationsgeräten eines drahtlosen Telekommunikationssystems
JP3746098B2 (ja) 1996-02-28 2006-02-15 株式会社日立製作所 データの暗号化装置
FI112419B (fi) * 1996-06-06 2003-11-28 Nokia Corp Menetelmä tiedonsiirron salaamiseksi
KR100474887B1 (ko) * 1997-02-17 2005-04-20 엘지전자 주식회사 씨디엠에이(cdma)이동통신시스템의인증방법
EP1632907B1 (en) * 2004-08-24 2019-10-30 Canon Kabushiki Kaisha Data-processing system and method for controlling same, computer program, and computer-readable recording medium
CN103117832A (zh) * 2013-02-07 2013-05-22 哈尔滨工业大学 高强度信息加密方法
WO2019154447A1 (en) * 2018-02-09 2019-08-15 Argo Semiconductors Fs Ltd (He 359654) Wireless communications system employing continuous phase modulation and physical layer security primitives
CN115208553B (zh) * 2022-07-15 2024-02-27 山东大学 Triad轻量级流密码加密算法的芯片实现装置及方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4316055A (en) * 1976-12-30 1982-02-16 International Business Machines Corporation Stream/block cipher crytographic system
US4544308A (en) * 1983-04-04 1985-10-01 Westberg Russell C Boring head centering apparatus
JPS6049329A (ja) * 1983-08-29 1985-03-18 Fuji Photo Film Co Ltd ディスクフィルム画像再生システム
US4876740A (en) * 1985-08-30 1989-10-24 Motorola, Inc. Radiotelephone system employing digitized speech/data signalling
US4827507A (en) * 1987-06-19 1989-05-02 Motorola, Inc. Duplex analog scrambler
US4811377A (en) * 1987-07-31 1989-03-07 Motorola, Inc. Secure transfer of radio specific data
US4860353A (en) * 1988-05-17 1989-08-22 General Instrument Corporation Dynamic feedback arrangement scrambling technique keystream generator
US5008935A (en) * 1989-06-30 1991-04-16 At&T Bell Laboratories Efficient method for encrypting superblocks of data

Also Published As

Publication number Publication date
GB2261348B (en) 1994-10-19
CA2087616A1 (en) 1992-01-21
KR960008031B1 (ko) 1996-06-19
BR9106663A (pt) 1993-06-08
CA2087616C (en) 1999-04-27
AU8433191A (en) 1992-02-18
GB9226395D0 (en) 1993-02-24
JPH06501350A (ja) 1994-02-10
AU645464B2 (en) 1994-01-13
GB2261348A (en) 1993-05-12
JP2688659B2 (ja) 1997-12-10
CN1059999A (zh) 1992-04-01
HK29795A (en) 1995-03-10
KR100214763B1 (en) 1999-08-02
MX9100126A (es) 1992-02-28
NZ238651A (en) 1994-04-27
WO1992002089A1 (en) 1992-02-06

Similar Documents

Publication Publication Date Title
US5148485A (en) Encrypton system for digital cellular communications
AU2008327506B2 (en) Method and system for encryption of data
KR100657062B1 (ko) 정보 암호화 방법 및 이 방법을 실현하는 장치
CN1032039C (zh) 用于数字蜂窝式通信的加密系统
JP2656153B2 (ja) デジタルセルラ通信用認証システム
US5060266A (en) Continuous cipher synchronization for cellular communication system
US6879689B2 (en) Stream-cipher method and apparatus
US3798360A (en) Step code ciphering system
US20070028088A1 (en) Polymorphic encryption method and system
AU1132199A (en) A non-deterministic public key encryption system
US8180048B2 (en) Method and system for computational transformation
JP2003516552A (ja) 暗号通信方法および装置
US6640303B1 (en) System and method for encryption using transparent keys
Cohen et al. AES as error correction: Cryptosystems for reliable communication
US6301361B1 (en) Encoding and decoding information using randomization with an alphabet of high dimensionality
Gardner et al. An efficient methodology to de-anonymize the 5G-new radio physical downlink control channel
Mihaljević A Framework for Stream Ciphers Based on Pseudorandomness, Randomness and Coding
CN101093627B (zh) 密码编译码装置
Hutto et al. Late Breaking Results: COPPER: Computation Obfuscation by Producing Permutations for Encoding Randomly
NZ248445A (en) Generating pseudo-random bit sequences for enciphering digital data
Schalkwijk On a quantitative definition of information and its impact on the field of communications
CN1384632A (zh) 码分多址通信系统中保证通信信息安全的方法和装置
MXPA98010502A (en) Methods and apparatus for enhanced security expansion of a secret key into a lookup table for improved security for wireless telephone messages

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C53 Correction of patent for invention or patent application
COR Change of bibliographic data

Free format text: CORRECT: PATENTEE; FROM: ERICSSON GE MOBILE COMMUNICATIONS, INC. TO: ERIKSSON CO., LTD.

CP01 Change in the name or title of a patent holder

Patentee after: Ericsson Inc.

Patentee before: Ericsson GE Mobile Communications, Inc.

C15 Extension of patent right duration from 15 to 20 years for appl. with date before 31.12.1992 and still valid on 11.12.2001 (patent law change 1993)
OR01 Other related matters
C17 Cessation of patent right
CX01 Expiry of patent term

Expiration termination date: 20110720

Granted publication date: 19960612