CN1124718C - 加密通信系统中重发数据的解密 - Google Patents

加密通信系统中重发数据的解密 Download PDF

Info

Publication number
CN1124718C
CN1124718C CN97190550.9A CN97190550A CN1124718C CN 1124718 C CN1124718 C CN 1124718C CN 97190550 A CN97190550 A CN 97190550A CN 1124718 C CN1124718 C CN 1124718C
Authority
CN
China
Prior art keywords
message
piece
steps
key stream
cryptographic
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 - Fee Related
Application number
CN97190550.9A
Other languages
English (en)
Other versions
CN1194744A (zh
Inventor
卡文·G·杜波斯坦
斯考特·J·帕派斯
米切尔·W·布莱特
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.)
Motorola Solutions Inc
Original Assignee
Motorola Inc
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 Motorola Inc filed Critical Motorola Inc
Publication of CN1194744A publication Critical patent/CN1194744A/zh
Application granted granted Critical
Publication of CN1124718C publication Critical patent/CN1124718C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)
  • Storage Device Security (AREA)

Abstract

本方法通常包括下述步骤,即,接收(201)一个包含一个消息指示码(101)和多个加密块(103至111)的消息(100)。当错误接收到多个加密块中的至少一块时,发射(215)一个第二消息,该第二消息请求重发至少一块。在正确接收到至少一块的重发之后,从消息指示码中产生(219)一个密钥流,并利用该密钥流将至少一块解密。

Description

加密通信系统中重发数据的解密
技术领域
本发明涉及通信系统,其中包括但不局限于加密通信系统。请参考Michael W.Bright等人在与本发明同一天申请的美国专利第5,694,473号,题为“加密通信系统中重发数据的解密”,其受让人也与本发明相同。
背景技术
加密话音和数据系统是众所周知的。许多这些系统通过共享用户间的一部分或多部分信息,藉此只允许知道该信息的用户正确解密消息,从而提供两个或多个用户间的保密通信、一般而言,利用密钥生成器(KG)将话音和数据消息加密或解密。KG是一种非线性数学函数,可给定用来定义该数学函数的初始矢量和密钥参数,可产生一种伪随机序列。KG输出一个与明文(未加密)XOR(如本技术领域熟知的,“异或”函数)的密钥流以产生密文。该密文被发射至接收机。接收机用一种密钥流与接收到的密文XOR,从而从发射装置处得出明文,该密钥流由接收机根据接收到的信息来确定。
除了拥有相同的加密密钥将加密消息解密之外,加密与解密的加密装置必须完全一致,即,在同一时间以相同的方式从相同的(内部)加密状态执行相同的密码算法。在通信信道上发送同步(也称作sync)数据,以使解密装置的加密状态与加密装置的加密状态一致,此后执行对输入消息的正确解密。当在加密通信系统中使用加密同步数据时,通常也将其称作消息指示码(MI)。
可以以几种操作模式中的一种来操作加密装置。加密装置所使用的操作模式定义了将接收装置与发射装置同步的不同方法。一种操作模式称作输出反馈(OFB)。OFB要求发射和接收加密装置采用相同的初始矢量(或MI)产生密钥流。在发射机,利用MI将KG初始化。执行密码算法来产生密钥流。然后将该密钥流反馈到KG的输入端,以产生下一个密钥流块。同一个被反馈的密钥流还被用于将数据加密,从而产生密文。发射机将MI和密文发射至接收机。在接收机,利用一个被传输的消息指示码将KG初始化。执行加密算法以生成密钥流。然后将该密钥流反馈到KG的输入端。同一个被反馈的密钥流被用于将数据解密。通过将由密码算法产生的密钥流与待解密的数据XOR,该数据被解密。
第二种操作模式称作计数器寻址(CA)或线性回归。CA所采用的初始同步方法可以与OFB的相同。CA使用一个最大长度线性反馈移位寄存器(LFSR)作为加密装置(KG)的输入。CA要求产生密钥流的发射和接收加密装置对其LFSR采用相同的初始矢量(或MI)。在发射机,利用MI将LFSR初始化,并执行一个生成多项式。LFSR的输出被反馈进密码算法的输入端。执行该密码算法以产生密钥流。然后,将未加密的明文与密钥流XOR,以产生密文。发射机将MI和密文发射至接收机。在接收机,利用被传输的MI将线性反馈移位寄存器(LFSR)初始化。LFSR的输出被反馈进密码算法的输入寄存器,以产生一个密钥流。然后,将该密钥流和密文XOR,用以将数据解密。
在许多系统中需要拥有一种与加密数据和非加密数据均一致的数据吞吐量等级。然而在接收数据时,错误地接收数据并非是罕见的。众所周知在许多通信系统中,对于错误接收到的任何数据块要请求重发。这种数据重发在加密数据系统中会导致一种问题。由于加密过程的同步性质,当对一个选择的重试块N进行解密时,需要将N-1个块解密。这一属性极大地降低了加密数据系统中的吞吐量,导致了加密与非加密数据之间吞吐量的悬殊差异。普通的系统实施过程包括在将消息解密之前等待,直至所有的块都被正确接收为止。这种方法增加了接收上一块之后的处理时延。另一种方法是,当对一个选择的重试块N进行解密时,将先前的N-1个块解密。此方法需要多花费(N-1)倍的解密时间来将选择的重试解密。本质上,为了将一个块解密,此方法可能需要将一个完整的已被解密过的消息重新解密。
另一种解决重发解密问题的方案是,为每个数据块发射同步信息,或MI。这种解决方案增加了发射及接收消息所花费的时间和能量。此后重新发射的MI还有可能被错误地接收,而需要继续重新发射。
发明内容
因此,需要一种方法,在接收单元接收到重发的一些块之后将数据解密,而不会为解密过程增加不必要的时延。此外,这种方法应当为加密和未加密数据提供一致的数据吞吐量等级。
根据本发明的第一方面,提供了一种包括下列步骤的方法,接收一个包含消息指示码和多个加密块的消息,其中多个加密块包括L个块,且其中L为大于或等于2的整数;当错误接收到多个加密块中的至少一个第N块时,发射一个第二消息以请求重发至少第N块,其中N为整数,取值在1至L之间;在正确接收到至少第N块的重发之后,从消息指示码中产生一个密钥流,并利用密钥流将第N块解密,其中密钥流将至少第N块但不是所有的多个加密块解密。
根据本发明的第二方面,提供了一种包括下列步骤的方法,接收一个包含消息指示码和多个加密块的消息;从消息指示码中产生一个密钥流,用以将多个加密块解密;当错误接收到多个加密块中的至少一个块时,发射一个第二消息,以请求重发至少一块;在正确接收到至少一块的重发之后,利用密钥流将至少一块解密,其中多个加密块曾被依次加密,而对多个加密块的解密顺序却是非顺续的。
根据本发明的第三方面,提供了一种包括下列步骤的方法,接收一个包含消息指示码和多个加密块的消息;对于多个加密块,每隔K块就存储一次加密状态,其中K为一个正整数;当错误接收到多个加密块中的至少一块时,发射一个第二消息,以请求重发至少一块;在正确接收到至少一块的重发之后,a)从存储的加密状态中产生一个密钥流,而无需为所有的多个加密块产生一个密钥流;b)利用密钥流将至少一块解密。
根据本发明的第四方面,提供了一种包括下列步骤的方法,接收一个包含消息指示码和多个加密块的消息;存储消息指示码;当错误接收到多个加密块中的至少一块时,发射一个第二消息,以请求重发至少一块;在正确接收到至少一块的重发之后,a)从存储的消息指示码中计算出加密状态;b)从该加密状态中产生一个密钥流;c)利用密钥流将至少一块解密。其中多个加密决曾被顺续加密,而对多个加密块的解密顺序却是非顺续的。
附图说明
图1为根据本发明的接收消息的方框图。
图2的流程图显示了一种根据本发明当重新发射一个或多个消息块时,将消息随后解密的方法。
图3和图4的流程图显示了一种根据本发明通过保存从一条消息的初始发射中产生的密钥流,将消息随后解密的方法。
图5的流程图显示了一种根据本发明通过周期性保存加密状态,将消息随后解密的方法。
图6的流程图显示了一种根据本发明通过计算加密状态,将消息随后解密的方法。
具体实施方式
下文描述了一种将加密数据的重发解密的方法,其中该重发不包括完整消息的发射。根据对包含多个块的加密数据消息的初始接收,将接收块确定为有误码的或无误码的。根据存储空间和加密时间,为整个消息或者该消息的一部分产生并/或存储一个密钥流或加密状态。执行一次重发错误接收块的请求。当无误码地接收到重发块时,从存储器中取出或者从加密数据消息的初始接收中存储的数据中产生密钥流。这样,无需为了将整个消息解密而一直等到整个消息都被接收为止,或者将数据重新解密。由此,实现了将消息的选定部分解密,而避免了不必要的时延或者冗余工作。
在一种实施例中,本方法通常包括下述步骤,即,接收一条含有一个消息指示码和多个加密块的消息。当多个加密块中的至少一个被错误接收时,发射一个第二消息,该第二消息请求将至少一个块重发。在正确接收到至少一个块的重发之后,从消息指示码中产生一个密钥流,并利用该密钥流将至少一个块解密。
此外,当消息指示码包括一个初始化矢量时,通过执行一种工作于重复N乘B次操作的输出反馈模式下的密码算法,来产生一个密钥流。当消息指示码包括一个线性反馈移位寄存器矢量时,通过执行一种工作于重复N乘B次操作的计数器寻址模式下的密码算法,来产生一个密钥流。N和B是用于一个N块消息的正整数,其中B表示数据的比特数。
图1所示为接收消息的方框图,其中包括每块中接收到的误码数。接收消息100通常包括一个消息指示码(MI)101和多个加密块103至111。利用MI 101将加密装置(称为密钥产生器或KG)的内部状态同步。块1 103的接收含有0个误码。块2 105的接收含有1个误码。块3 107的接收无误码。块4 109的接收含有2个误码。块X 111的接收含有零个误码,其中X是一个整数,表示在消息100中有多少个加密块被接收。在请求重新发射错误码块的系统中,为错误码块发射一个重发请求,在此情况下是为块2 105和块4 109,其中假设无误码地接收了块4和块X之间的所有块。
图2的流程图显示了一种当向通信单元重发一个或多个消息块时将消息解密的方法。当利用加密的输出反馈或计数器寻址模式将消息100加密时,执行本方法。在201步中,接收到一条消息100,该消息包括一个消息指示码101和多个加密块103至111。在203步,检查每个消息块以确定该块是否被错误接收。在本技术领域中,误码检测是一种众所周知的功能,其中采用了多种技术,例如循环冗余检测(CRC),以证实数据的接收有无误码。如果在203步中错误地接收到一个块,在205步中将该块标记为错误接收,程序继续到211步。如果在203步中,无误码地接收到该块,程序继续到207步,在这里确定是否将正确接收的块立刻解密,即,在请求重发错误接收块之前或者在接收到错误接收块的无误码重发之前。如果在207步中立即执行解密,程序继续到209步,在这里从MI 101中产生一个密钥流,利用从MI 101中产生的密钥流将正确接收到的块解密,程序继续到211步。
在211步中,如果当前块是消息中的最后一块,则程序继续到213步,否则程序继续到203步。在215步中,该通信单元请求重发每个错误接收块。如果在217步中该块的重发(RE-TX)的接收中含有一个或多个误码,程序继续到215步。如果在217步中该块的重发(RE-TX)被无误码地接收,程序继续到219步,生成密钥流以解密这些数据块。在221步中,按需重复215步,217步和/或219步。如果需要将更多个块的重发解密,该程序从217步开始重复。在步骤207中不直接解密,在219步中将所有的块解密。如果在207步中立即执行解密,在219步中将所有在先前没有被解密的所有块解密,即,将那些被重新发射给该通信单元的块解密。
另一种可选择的方法包括下述步骤,即,接收一条含有一个消息指示码和多个加密块的消息。从消息指示码中产生一个密钥流,用以将多个加密块解密。当错误地接收到多个加密块中的至少一个块时,发射一个第二消息,该第二消息请求重发至少一个块。当正确接收到至少一个块的重发之后,利用密钥流将至少一个块解密。
图3的流程图显示了通过保存从消息的初始发射中产生的密钥流,将消息随后解密的另一种可选择方法。当利用图3的方法时,立即将正确接收到的块解密,而对于错误接收到的块,在正确接收到其数据的重发之后,利用从初始发射的消息接收到的信息中产生的密钥流,将其解密。在301步中,接收到一个消息100,其中含有一个MI 101和多个加密块103至111。在303步中,如上所述,根据MI 101为整个消息100产生一个密钥流,并按需将其暂时地或永久地存储。在305步中,将块计数器N初始化,即,设置N为1。在307步中,检索块N。在309步中,确定块N的接收是否有误。如果块N被错误接收,程序继续到311步,在这里将块N标记作错误接收,且程序继续到315步。如果在309步中,块N被正确接收,程序继续到313步,在这里将块N解密,并保存其结果。程序继续到315步,在这里将块计数器加1,即,N=N+1。如果在317步中,块N不是消息100的最后一块,程序继续到307步。如果在317步中,块N是消息100的最后一块,则程序继续到319步。
在319步中,如果在309步中错误地接收到任一块,则程序继续到321步,否则程序终止。在321步中,该通信单元请求将任一错误接收到的块重发(RE-TX)。如果在323步中这些块的重发(RE-TX)的接收中含有一个或多个误码,程序继续到321步。当在323步中正确接收到任一重试块的重发(RE-TX),程序继续到325步,在这里检索重试块。重试块是一个其数据被请求重发的块,其数据块的重发被正确接收。在327步中,利用在303步中产生的密钥流将该重试块解密。该重试块包括源自初始发射的块号,该号码被用于确定需要密钥流的哪一部分来将该重试块解密。例如,如果重试块为块9,且每个块包含200比特的数据,则在重试块,块9,之前有1600比特的数据。用以将解密块9解密的密钥流为该密钥流中从用以将块1的第一比特解密的密钥流第一比特开始的1600比特。如果在329步中有一个或多个重试块需要解密,程序继续到325步,否则程序继续到331步。如果在331步中,已正确接收到消息100的所有块,则程序终止,否则程序继续到321步。
由于密钥流已经产生,解密步骤313和327中仅包括下述步骤,即,利用产生的/存储的密钥流与接收到的密文XOR,以产生在最初被发射装置加密的明文(未加密)。由于XOR过程可以用微处理器,数字信号处理器,或者其它用来实现图2至图6的流程图的装置来实现,因此接收到的密文无需被输入给KG用以解密。在这一级上,由于KG的运行速度(通常为6至50kHz)较微处理器(其运行速度超过1MHz)相比慢很多,通过避免使用KG,可节省大量的时间。
图4的流程图显示了通过保存从消息的初始发射中产生的密钥流,将消息随后解密的一种特殊方法。当使用图4的方法时,在正确接收到其数据的重发之后,利用从初始发射的消息接收到的信息中产生的密钥流,将整个消息解密。在401步中,接收到一个消息100,其中包括一个MI 101和多个加密块103至111。在403步中,如上所述,从MI 101中为整个消息100产生一个密钥流,并按需将其暂时地或永久地存储。在405步中,将块计数器N初始化,即,设置N为1。在407步中,检索块N。在409步中,确定块N的接收是否有误。如果块N被错误接收,程序继续到411步,在这里将块N标记作错误接收,且程序继续到413步。如果在409步中,块N被正确接收,程序继续到413步,在这里将块计数器N加1,即,N=N+1。如果在415步中,块N不是消息100的最后一块,程序继续到407步。如果在415步中,块N是消息100的最后一块,则程序继续到417步。
在417步中,如果在409步中错误地接收到任一块,则程序继续到419步,否则程序终止。在419步中,该通信单元请求将任一错误接收到的块重发(RE-TX)。如果在421步中这些块的重发(RE-TX)的接收中含有一个或多个误码,程序继续到419步。一旦在421步中正确接收到所有这种块的重发(RE-TX),程序继续到423步,在这里利用在403步中产生的密钥流将整个消息100解密。由于密钥流已经产生,解密423步中仅包括下述组合步骤,即,利用产生的/存储的密钥流与接收到的密文XOR,用以产生在最初被发射装置加密的明文(未加密)。
这样,密钥流被保存并用以在一次重试之后接收到部分消息时,将该数据消息的部分或者全部解密,而无需重新产生或重发该密钥流,也无需等到整个消息都被正确接收为止才能产生密钥流并将整个消息解密。类似地,无需将整个消息重新解密或者将该消息的所有先前块都解密,就可实现对选择性重试的解密。
另一种可选择方法包括下述步骤,即,接收一个含有消息指示码和多个加密块的消息。对于多个加密块的每K块就存储一次加密状态,其中K为正整数。当错误接收到多个加密块中的至少一个块时,发射一个第二消息,以请求对至少一块重发。在正确接收到至少一块的重发之后,从存储的加密状态中产生一个密钥流,并利用密钥流将至少一块解密。
图5的流程图显示了通过周期性保存加密状态,将消息随后解密的另一种可选择方法。该流程图中所示的方法在存储空间与解密时间之间提供了一种折衷。本方法每K块保存其加密状态,其中需要两个缓存器:N个块的一个缓存器用以保存这些接收块,而第二个缓存器用以存N储除以K个加密状态。本方法周期性地保存加密状态。对于消息中包含重发块的部分,利用存储的加密状态将KG重新初始化。参数K在解密时间与存储空间之间提供了一种折衷。K越大,解密时间可能越长,但需要的存储空间越小。当采用图5的方法时,立即将正确接收到的块解密,并在正确接收到其数据的重发之后,将这些错误接收块解密。还可选择,在正确接收到所有重试块之后,即当为短消息时,可将所有块一次性保存并解密。
在501步中,接收到一个含有一个MI 101和多个加密块103至111的消息100。在503步中,设置MI 101作为KG的加密状态。一般而言,加密状态是KG在其产生一个伪随机序列,称为密钥流过程中的内部点。加密状态包括所有需要的信息,用以将两个不同的KG放在数据流中的相同位置,从而解密KG可将加密KG已加密的数据正确解密。OFB操作模式的加密状态为KG状态,它包括在先前解密块的密钥流中最后一些比特的数目,需要用这些比特将KG初始化,以实现后续块的解密。在优选实施例中,采用64比特。CA操作模式的加密状态为LFSR状态,它是LFSR中的数据,需要用它来将LFSR正确初始化,以实现后续块的解密。在优选实施例中,LFSR中的64比特被用作加密状态。
在505步中,将块计数器N初始化,即,设置N为1。在507步中,检索块N。在509步中,通过将块N的数据反馈进KG,从而将块N解密,即,正常解密。在511步中,确定块N的接收是否有误。如果块N被错误接收,程序继续到513步,在这里将块N标记作错误接收,且在515步中丢弃该解密块N。如果在511步中,块N被正确接收,程序继续到517步,在这里存储块N的解密结果。如果在519步中,N对K取模为0,程序继续到521步,在这里保存将块N解密后的加密状态。决N解密后的KG状态为块N+1解密的初始状态。对于OFB操作模式,存储KG状态。对于CA操作模式,存储LFSR状态。如果在519步中N对K取模不等于零,程序继续到523步。在523步中,将块计数器加1,即N=N+1。如果在525步中块N不是消息100的最后一块,程序继续到507步。如果在525步中,块N是消息100的最后一块,程序继续到527步。
在527步中,如果在511步错误地接收到任一块,程序继续到529步,否则程序终止。在529步中,该通信单元请求对任一错误接收块重发(RE-TX)。如果在531步中这些块的重发(RE-TX)的接收含有一个或多个误码,程序继续到529步。当在531步中所有重试块的重发都被正确接收,程序继续到533步,在这里检索重发块。在535步中,从重试块的块号码之前最新存储的值中检索加密状态。换句话说,如果在每隔K块之后存储KG状态,应该被检索用以将块K解密的KG状态号就是被存储在块号码之后的KG状态,其形式如下:
K*{integer part(N-1)/K}(integer part:整数部分)
例如,如果重试块为块30,且K=4,在这里块28和块30已被保存,这样从块4*{integer part(30-1)/4}=或4*7=28中得出将被检索用以将块30解密的加密状态,即,块28的加密状态被检索。在537步,将535步中检索的加密状态输入给KG,且以正常方式(即,将接收到的密文输入进KG)将最多K个块解密,在检索状态块之后开始,以重试块中止。通过保存每个第K块,在最差情况下被解密的块数目为K。而被解密的实际块数目为:
K,如果N对K的模为0;
N对K的模,其它情况下。
如果在539步中有一个或多个重试块需要解密,程序继续到533步,否则程序继续到541步。如果在541步中消息100的所有块都已被正确解密,程序终止,否则程序继续到529步。下列表格显示了对于K=3的系统所涉及的信息,其中检索状态为将块N解密之后存储的加密状态。
N            N对K的       检索状态      需要解密
                                    的块数
1             1             0(MI)          1
2             2             0(MI)          2
3             0             0(MI)          3
4             1             3              1
5             2             3              2
6             0             3              3
7             1             6              1
8             2             6              2
9             0             6              3
另一种可选择方法包括下述步骤,即,接收一个含有消息指示码和多个加密块的消息,特别是当使用一种操作在CA模式下的加密装置时。该消息指示码被存储。当错误接收到多个加密块中的至少一个块时,发射一个第二消息,该第二消息请求对至少一个块重发。在正确接收到至少一个块的重发之后,从存储的消息指示码中计算加密状态,从该加密状态中产生密钥流,并利用密钥流将至少一个块解密。
图6的流程图显示了通过计算加密状态将消息随后解密的另一种方法。当采用图6的方法时,立即将正确接收到的块解密,而对于接收有误的块,在正确接收到其数据的重发之后,将其解密。选择性地,在正确接收到所有的重试块之后,即,在短消息情况下,可同时将所有块保存并解密。
在601步中,接收到的消息100中含有一个MI 101和多个加密块103至111。在603步中,按照图5中503步的有关描述,将MI 101设置作KG的加密状态。
在605步中,将块计数器N初始化,即,设置N为1。在607步中,检索块N。在609步中,通过将块N的数据反馈进KG,从而将块N解密,即,正常解密。在611步中,确定块N的接收是否有误。如果块N被错误接收,程序继续到613步,在这里将块N标记作错误接收,且在615步中丢弃该解密块N。选择性地,可以将609步的解密功能结合进617步,在此情况下删除609步(在607步之后,程序继续到611步)。如果在611步中,块N被正确接收,程序继续到617步,在这里存储块N的解密结果。在619步中,将块计数器N加1,即N=N+1。如果在621步中块N不是消息100的最后一块,程序继续到607步。如果在621步中,块N是消息100的最后一块,程序继续到623步。
在623步中,如果在611步错误地接收到任一块,程序继续到625步,否则程序终止。在625步中,该通信单元请求对任一错误接收块重发(RE-TX)。如果在627步中这些块的重发(RE-TX)的接收中含有一个或多个误码,程序继续到625步。当在627步中所有重试块的重发都被正确接收,程序继续到629步,在这里检索重发块。在631步中,计算加密状态。对于CA操作模式,加密状态为LFSR状态,通过使用MI,LFSR的生成多项式,和块号码来计算该状态。用于将块N解密的LFSR状态是在将块N-1解密时存储的初始状态。需要用块N之前的比特数来确定LFSR状态。如果每个块有相同的比特数,B,则N*B(N乘B)是在块N之前接收到的全部比特数,并反映了在MI和决N之间执行的LFSR生成多项式的重复(iterations)次数。LFSR是如下方程式的余数:
  xN*B÷generator polynomial(生成多项式)
例如,如果一个64比特LFSR的生成多项式为:
  x62+x46+x38+x27+x15+x0
则方程式为:
  xN*B÷(x62+x46+x38+x27+x15+x0)
该多项式商的一种余数为例如:
  x63+x59+x51+x46+x40+x35+x31+x26+x19+x14+x8+x0
这就是块N的LFSR状态。
在633步中,将加密状态存储在KG中。在635步,以正常方式(即,将接收到的密文输入进KG)将重试块解密。如果在637步中有一个或多个重试块需要解密,程序继续到629步,否则程序继续到639步。如果在639步中消息100的所有块都已被正确解密,程序终止,否则程序继续到625步。
在现有的加密系统中,通过将一个适合于加密操作模式的加密数据流输入给KG,由其产生一个密钥流,并通过将密钥流与加密消息混合(对于数字信息通常为XOR)以产生明文(未加密电文),从而立即将加密消息解密。通常的KG以一种逐个比特(或逐个符号)的方式将消息解密,即,KG中加密数据的一个比特(符号)产生密钥流的一个比特,KG将该密钥流与输入比特(符号)相混合,从而产生解密数据输出的一个比特(符号)。该混合步骤可在一个运行速度为例如1MHz的微处理器中简便快捷地实现。然而,密钥流的产生受到KG的工作频率(通常为6至50kHz)的限制。这样,产生密钥流与加密消息解密的实际时间在本质上都会受到KG的最高工作频率的限制。上述方法及其替代方式通过在需要重发数据时,存储并/或产生适当的信息,使整个消息的接收和解密的时间达到最小化,从而较现有方法节省了时间。增加KG的时钟速度则是提高吞吐量的可行性方案。然而,在某些系统中功率消耗是一个值得关注的问题,则这种解决方案会导致其实际运作的不可行性,因为KG所需的功率是与其时钟速度成正比的。

Claims (10)

1.一种包括下列步骤的方法:
接收一个包含消息指示码和多个加密块的消息,其中多个加密块包括L个块,且其中L为大于或等于2的整数;
当错误接收到多个加密块中的至少一个第N块时,发射一个第二消息以请求重发至少第N块,其中N为整数,取值在1至L之间;
在正确接收到至少第N块的重发之后,从消息指示码中产生一个密钥流,并利用密钥流将第N块解密,其中密钥流将至少第N块但不是所有的多个加密块解密。
2.根据权利要求1的方法,其中消息指示码包括一个初始化矢量,还包括下述步骤,即,通过对一个N块的消息执行一种工作于重复N乘B次操作的输出反馈模式下的加密算法,来产生一个密钥流,其中N和B为正整数。
3.根据权利要求1的方法,其中消息指示码包括一个线性反馈移位寄存器矢量,通过对一个N块的消息执行一种工作于重复N乘B次操作的计数器寻址模式下的加密算法,来产生一个密钥流,其中N和B为正整数。
4.一种包括下列步骤的方法:
接收一个包含消息指示码和多个加密块的消息;
从消息指示码中产生一个密钥流,用以将多个加密块解密;
当错误接收到多个加密块中的至少一个块时,发射一个第二消息,以请求重发至少一块;
在正确接收到至少一块的重发之后,利用密钥流将至少一块解密,其中多个加密块曾被依次加密,而对多个加密块的解密顺序却是非顺续的。
5.根据权利要求4的方法,其中消息指示码包括一个初始化矢量,还包括下述步骤,即,通过对一个N块的消息执行一种工作于重复N乘B次操作的输出反馈模式下的加密算法,来产生一个密钥流,其中N和B为正整数。
6.根据权利要求4的方法,其中消息指示码包括一个线性反馈移位寄存器矢量,通过对一个N块的消息执行一种工作于重复N乘B次操作的计数器寻址模式下的加密算法,来产生一个密钥流,其中N和B为正整数。
7.一种包括下列步骤的方法:
接收一个包含消息指示码和多个加密块的消息;
对于多个加密块,每隔K块就存储一次加密状态,其中K为一个正整数;
当错误接收到多个加密块中的至少一块时,发射一个第二消息,以请求重发至少一块;
在正确接收到至少一块的重发之后,
a)从存储的加密状态中产生一个密钥流,而无需为所有的多个加密块产生一个密钥流;
b)利用密钥流将至少一块解密。
8.根据权利要求7的方法,其中消息指示码包括一个初始化矢量,还包括下述步骤,即,通过对一个N块的消息执行一种工作于重复N乘B次操作的输出反馈模式下的加密算法,来产生一个密钥流,其中N和B为正整数。
9.一种包括下述步骤的方法:
接收一个包含消息指示码和多个加密块的消息;
存储消息指示码;
当错误接收到多个加密块中的至少一块时,发射一个第二消息,以请求重发至少一块;
在正确接收到至少一块的重发之后,
a)从存储的消息指示码中计算出加密状态;
b)从该加密状态中产生一个密钥流;
c)利用密钥流将至少一块解密。
其中多个加密块曾被顺续加密,而对多个加密块的解密顺序却是非顺续的。
10.根据权利要求9的方法,还包括下述步骤,即,当正确接收到多个加密块中的至少一块时,利用密钥流将第一块解密。
CN97190550.9A 1996-05-17 1997-04-23 加密通信系统中重发数据的解密 Expired - Fee Related CN1124718C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/649,098 US5809148A (en) 1996-05-17 1996-05-17 Decryption of retransmitted data in an encrypted communication system
US08/649,098 1996-05-17

Publications (2)

Publication Number Publication Date
CN1194744A CN1194744A (zh) 1998-09-30
CN1124718C true CN1124718C (zh) 2003-10-15

Family

ID=24603462

Family Applications (1)

Application Number Title Priority Date Filing Date
CN97190550.9A Expired - Fee Related CN1124718C (zh) 1996-05-17 1997-04-23 加密通信系统中重发数据的解密

Country Status (13)

Country Link
US (1) US5809148A (zh)
EP (1) EP0839417B1 (zh)
JP (1) JP4124485B2 (zh)
CN (1) CN1124718C (zh)
AU (1) AU3203597A (zh)
BR (1) BR9702266A (zh)
CA (1) CA2226716C (zh)
DE (1) DE69722891T2 (zh)
HK (1) HK1016375A1 (zh)
IL (1) IL122521A (zh)
PL (1) PL182896B1 (zh)
RU (1) RU2146421C1 (zh)
WO (1) WO1997044934A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5931915A (en) 1997-05-13 1999-08-03 International Business Machines Corporation Method for processing early arrival messages within a multinode asynchronous data communications system
GB2348583A (en) * 1999-03-31 2000-10-04 Adaptive Broadband Ltd Automatic re-transmission of data
FI109252B (fi) 1999-04-13 2002-06-14 Nokia Corp Tietoliikennejärjestelmän uudelleenlähetysmenetelmä, jossa on pehmeä yhdistäminen
AU2002230887A1 (en) * 2000-12-15 2002-06-24 Polycom, Inc. System and method for device co-location discrimination
US20030112978A1 (en) * 2001-12-17 2003-06-19 Jeffrey Rodman System and method for secured data transmission within a wireless communication system
JP4891521B2 (ja) * 2003-03-28 2012-03-07 三洋電機株式会社 データ入出力方法、およびその方法を利用可能な記憶装置およびホスト装置
US7472285B2 (en) * 2003-06-25 2008-12-30 Intel Corporation Apparatus and method for memory encryption with reduced decryption latency
US7257225B2 (en) * 2003-12-29 2007-08-14 American Express Travel Related Services Company, Inc. System and method for high speed reversible data encryption
CN103199971B (zh) 2005-12-22 2017-03-15 美商内数位科技公司 由wtru实施的数据安全以及自动重复请求的方法和wtru
US8204216B2 (en) * 2006-10-23 2012-06-19 Alcatel Lucent Processing method for message integrity with tolerance for non-sequential arrival of message data
JP5355408B2 (ja) * 2006-10-23 2013-11-27 アルカテル−ルーセント ユーエスエー インコーポレーテッド メッセージデータの非順次着信に対する許容度を有するメッセージ完全性のための処理方法
US8122247B2 (en) 2006-10-23 2012-02-21 Alcatel Lucent Processing method for message integrity with tolerance for non-sequential arrival of message data
CN101542962B (zh) * 2006-11-21 2013-11-06 朗讯科技公司 容许消息数据的非顺序到达的消息完整性的处理方法
US9071964B2 (en) * 2011-09-16 2015-06-30 Motorola Solutions, Inc. Method and apparatus for authenticating a digital certificate status and authorization credentials
CN102833065B (zh) * 2012-08-07 2015-02-04 深圳光启创新技术有限公司 基于多用户异步加密的发射装置及方法、接收装置及方法
EP2882117B1 (en) 2012-07-31 2017-07-05 Kuang-Chi Intelligent Photonic Technology Ltd. Visible light encryption method, decryption method, communication device and communication system
CN102820922B (zh) * 2012-07-31 2014-12-24 深圳光启创新技术有限公司 一种异步加密可见光通信方法及系统
JP6397987B2 (ja) * 2014-08-19 2018-09-26 テレフオンアクチーボラゲット エルエム エリクソン(パブル) 暗号学的チェックサムの生成
US9942211B1 (en) 2014-12-11 2018-04-10 Amazon Technologies, Inc. Efficient use of keystreams
IN2015CH05211A (zh) * 2015-09-29 2015-10-16 Wipro Ltd
US11100250B2 (en) * 2017-09-05 2021-08-24 Philips Healthcare Informatics, Inc. Controlling access to data in a health network
GB201721608D0 (en) * 2017-12-21 2018-02-07 Nordic Semiconductor Asa A hardware cipher engine
WO2023288117A1 (en) * 2021-07-16 2023-01-19 Timothy James Regan Method for encrypted communication between systems using parallel key banks and reduced character sets

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4654480A (en) * 1985-11-26 1987-03-31 Weiss Jeffrey A Method and apparatus for synchronizing encrypting and decrypting systems
GB2204465B (en) * 1987-05-01 1991-06-19 Philips Electronic Associated A method of and an arrangement for digital signal encryption
JPH0362630A (ja) * 1989-07-31 1991-03-18 Nec Eng Ltd 衛星通信方式
NZ237080A (en) * 1990-03-07 1993-05-26 Ericsson Telefon Ab L M Continuous synchronisation for duplex encrypted digital cellular telephony
US5091942A (en) * 1990-07-23 1992-02-25 Ericsson Ge Mobile Communications Holding, Inc. Authentication system for digital cellular communications
US5148485A (en) * 1990-07-20 1992-09-15 Ericsson Ge Mobile Communications Holding, Inc. Encrypton system for digital cellular communications
US5199069A (en) * 1991-02-25 1993-03-30 Motorola, Inc. Automatic encryption selector
US5195136A (en) * 1991-09-30 1993-03-16 Motorola, Inc. Method and apparatus for data encryption or decryption
JPH0812537B2 (ja) * 1993-03-11 1996-02-07 日本電気株式会社 暗号化装置
US5598470A (en) * 1994-04-25 1997-01-28 International Business Machines Corporation Method and apparatus for enabling trial period use of software products: Method and apparatus for utilizing a decryption block

Also Published As

Publication number Publication date
EP0839417A1 (en) 1998-05-06
CA2226716A1 (en) 1997-11-27
RU2146421C1 (ru) 2000-03-10
DE69722891D1 (de) 2003-07-24
JP4124485B2 (ja) 2008-07-23
CN1194744A (zh) 1998-09-30
IL122521A (en) 2001-04-30
US5809148A (en) 1998-09-15
DE69722891T2 (de) 2003-12-04
WO1997044934A1 (en) 1997-11-27
PL182896B1 (pl) 2002-03-29
AU3203597A (en) 1997-12-09
EP0839417B1 (en) 2003-06-18
HK1016375A1 (en) 1999-10-29
IL122521A0 (en) 1998-06-15
JPH11510036A (ja) 1999-08-31
CA2226716C (en) 2001-08-28
PL324462A1 (en) 1998-05-25
BR9702266A (pt) 1999-07-20
EP0839417A4 (en) 2000-03-29

Similar Documents

Publication Publication Date Title
CN1124718C (zh) 加密通信系统中重发数据的解密
US4654480A (en) Method and apparatus for synchronizing encrypting and decrypting systems
EP1290544B1 (en) Pseudo-random number generator
US20030156715A1 (en) Apparatus, system and method for validating integrity of transmitted data
JP2016513825A (ja) 安全通信方法および装置
EP0644676A2 (en) Secure message authentication for binary additive stream cipher systems
CN111865584A (zh) 基于伪随机数的数据破碎安全传输方法及装置
US20020018561A1 (en) Data encryption and decryption using error correction methodologies
CN114499857B (zh) 一种实现大数据量子加解密中数据正确性与一致性的方法
JP2011254459A (ja) ワイヤレス遠隔通信システムのためのパケットを安全に伝送する方法
JP2003535378A (ja) ビット単位の論理演算を使用した並列モジュロ演算
RU2147793C1 (ru) Дешифрование повторно передаваемых данных в системе шифрованной связи
CN1032039C (zh) 用于数字蜂窝式通信的加密系统
EP1287641B1 (en) A method of validating an encrypted message
EP1287640A1 (en) A method of protecting a cryptosystem from a multiple transmission attack
RU98102784A (ru) Дешифрование повторно передаваемых данных в системе шифрованной связи
JP2003535362A (ja) 暗号多項式の解読
JP2003535499A (ja) メッセージの終わりのマーカ
EP1456997B1 (en) System and method for symmetrical cryptography
CN1194743A (zh) 加密通信系统中重发数据的解密
CN116707957A (zh) 一种基于非对称加密的通信方法及系统
Elkamchouchi ِA Chaotic Public Key Multi-Message Multi-Recipients Signcryption Scheme (CPK-MM-MR-SS)
JP2003234738A (ja) セキュリティ通信装置及び方法

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
C19 Lapse of patent right due to non-payment of the annual fee
CF01 Termination of patent right due to non-payment of annual fee