WO2004102872A1 - Processor and method for end-to-end encryption synchronisation - Google Patents

Processor and method for end-to-end encryption synchronisation Download PDF

Info

Publication number
WO2004102872A1
WO2004102872A1 PCT/EP2004/050551 EP2004050551W WO2004102872A1 WO 2004102872 A1 WO2004102872 A1 WO 2004102872A1 EP 2004050551 W EP2004050551 W EP 2004050551W WO 2004102872 A1 WO2004102872 A1 WO 2004102872A1
Authority
WO
WIPO (PCT)
Prior art keywords
encryption
keystream
processor
information
block
Prior art date
Application number
PCT/EP2004/050551
Other languages
French (fr)
Inventor
David Chater-Lea
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
Priority to EP04727904A priority Critical patent/EP1627490B1/en
Priority to DE602004010903T priority patent/DE602004010903T2/en
Publication of WO2004102872A1 publication Critical patent/WO2004102872A1/en
Priority to NO20055411A priority patent/NO20055411L/en

Links

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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy

Definitions

  • the present invention relates to a processor, method, transmitter and terminal for use in communications, particularly for sending encrypted information from a first location to a second location, e.g. by wireless.
  • TETRA Long Term Evolution
  • TErrestrial Trunked Radio standards or operating protocols which have been 20 defined by the European Telecommunications Standards
  • calls can be end-to-end encrypted.
  • the combination generates another sequence incorporating the user key which is known as a keystream.
  • the keystream, or a portion of it, is then used to encrypt the user speech, data or other information to be transmitted in encrypted form. This is done by using a
  • TETRA In the TETRA operating protocol, transmissions to and from mobile terminals are controlled in a synchronized time slot mode.
  • the slot duration for a traffic (voice, data etc) channel is 14.167ms.
  • Four slots represent four physical channels in a TDMA (time division multiple access) protocol and form one time frame of duration 56.67ms in an 18 time frame multiframe timing structure.
  • TETRA terminals generate speech information in speech frames using an ACELP , One speech frame is transmitted in half of a traffic time slot (known as a 'half slot' or 'sub-slot') at the air interface and therefore two speech frames are transmitted in one timeslot.
  • ETSI document ES202109 The encryption process has to be synchronised between the transmitter in the sending terminal and the receiver in the receiving terminal. The transmitter must send information concerning the state of the encryption algorithm to the receiver to allow the receiver to synchronise its algorithm for decryption. This synchronisation process is described in the ETSI document ES202109. A synchronisation frame or message is sent in a half slot in place of a frame of encrypted speech information. This is known in the art as 'frame 'stealing'. This synchronisation process can be processor intensive to achieve, as it can require a cryptographic checksum to be generated for the synchronisation frame. If
  • the same algorithm is used to generate the cryptographic checksum as is used for the speech encryption process, it can require a change of algorithm mode and/or a change of input parameters. Even if the algorithm is different, it can still be required to operate on the same processor as the encryption process. Either switching modes and reinitialising or changing algorithms can be processor intensive.
  • the encryption processor may be forced to generate synchronisation information every time it produces an output used to encrypt speech frames, as the decision process whether to transmit the synchronisation or not may rest with a process outside the encryption device, for example to mitigate any negative effects on speech quality.
  • the process allows the transmitter to replace either the first half slot of encrypted speech with a synchronisation message, or the first and second half slots together; and in the latter case, the synchronisation is different in the first and second half slot.
  • the synchronisation information sent in the first half slot of a timeslot provides the state of the algorithm exactly at the start of the second half slot.
  • the synchronisation information sent in a second half slot provides the state of the encryption algorithm at exactly the start of the first half slot of the following timeslot.
  • recent proposals have been made to conduct at least some of the encryption process using smaller, lower power devices, such as smartcards .
  • the synchronisation information provides the state of the algorithm at exactly the start of the following full timeslot, whether the synchronisation message is transmitted in the first or the second half slot of a timeslot.
  • a processor for encrypting or decrypting information to be communicated from a first location to a second location the processor being operable in at least two modes including (i) a first mode wherein information is encrypted by an encryption portion of a keystream and a synchronisation indicator is generated in association with each encryption portion and (ii) a second mode wherein
  • the processor may be such that in the first mode each frame of information is encrypted in a part or full slot of a timeslot of an operational timing sequence and in the second mode two frames of information are encrypted in a timeslot of the timing sequence.
  • the processor may be operable to send and/or receive a signal indicating the mode in which the processor is to operate.
  • the processor may beneficially be operable to receive a signal indicating the mode in which the processor is to operate and to set its method of operation accordingly.
  • a processor for producing an encryption keystream to encrypt or decrypt information to be communicated from a first location to a second location, the processor comprising a keystream generator operable to generate a keystream; and a divider operable to divide the keystream into equally sized blocks each of which is to be allocated to encryption or decryption or synchronisation or includes a portion to be discarded, and wherein each of the blocks is sub-divided into portions which are to be allocated to encryption or decryption, synchronisation or discarding and wherein each block includes a plurality of encryption or decryption portions and only a single synchronisation portion.
  • the processor may comprise a keystream generator operable to generate a keystream; and a divider operable to divide the keystream into blocks including encryption portions and synchronisation portions;
  • each of the blocks is sub-divided into a plurality of equally sized sub-blocks and comprises a plurality of separate encryption portions each in a respective one of the sub-blocks and a single synchronisation portion in one of the sub-blocks .
  • the divider may be operable to produce 2 ⁇ sub-blocks per block, where n is an integer equal to 1 or more.
  • the divider may be operable to produce per block a first sub-block including an encryption portion followed by a discard portion followed by a second sub-block equal in size to the first sub-block and including an encryption portion followed by a synchronisation portion.
  • the encryption portion is for encryption of information.
  • the discard portion is a portion of the block that is not needed in any further operation and can therefore be discarded.
  • the second sub-block may include an encryption portion followed by a discard portion followed by a synchronisation portion.
  • the synchronisation portion is for providing a link between keystream blocks and optionally also to synchronise operation of a processor (e.g. in a receiver) operating a corresponding decryption process to decrypt a communication of information encrypted using the encryption portion.
  • the processor may produce keystream blocks each having a length of 512 bits and sub-blocks each having a length of 256 bits.
  • the encryption portions may each have a length of 137 bits, e.g. as required to encrypt a frame of information in a TETRA procedure .
  • the synchronisation portions may each have a length of 64 bits .
  • the keystream generator may include a random number generator operable to produce a random number, often
  • the secret key may be a special number or code available only to a particular user. It may be produced by any of the methods known in the art, e.g. by a key issue authority.
  • the combiner may operate by any of the key combining methods known in the art. It may for example comprise an exclusive OR combiner.
  • the divider and the keystream generator of the processor may be operably coupled so that the synchronisation portion in each keystream block is combined with a secret key to produce the next keystream block. In this way, the synchronisation portion which is an encrypted random number which is itself a random number acts as a link between blocks of the keystream.
  • One keystream block may be produced in each timeslot of a communications timing sequence in which encrypted information is to be communicated. The synchronisation portion thereby acts a synchronisation between keystream blocks in the various bolcks .
  • the random number generator may produce an initial vector block and the keystream generator may perform multiple combinations of the initial vector block and the secret key to produce the keystream block.
  • the initial vector block may for example have a length of 64 bits and the keystream generator may for example perform eight cycles of combining the vector block with the secret key to provide a keystream block having a length of 512 bits.
  • an encryption processor including a
  • the processor may operate by any of the methods known in the art, e.g. by an exclusive OR function.
  • the encryption processor may beneficially be operable so that two frames of the information to be encrypted are respectively combined with encryption portions once per time slot of a communications timing sequence in which the information when encrypted is to be communicated. For example two frames may be encrypted in this way every slot of a TETRA TDMA timing sequence; each such frame is encrypted in a sub-slot (half slot) and two encrypted frames may communicated together. Each pair of such encrypted frames may be accompanied in the same time slot be its own synchronisation portion (used also for linking between blocks of the keystream as referred to earlier.
  • the information to be encrypted may comprise one or more of speech information, text and/or numeric data, picture information and video information.
  • a communications transmitter including an encryption processor according to the second aspect.
  • a telecommunications terminal including the transmitter according to the third aspect.
  • the processor according to the first aspect is detachable from the terminal.
  • the processor may be carried on a user smartcard which has to be attached to the terminal in order to make the terminal operable in an encypted communications mode.
  • Communication to and/or from the terminal may be wireless although the
  • the terminal may thus be be a fixed or mobile wireless communications terminal, e.g. one which operates according to TETRA standard protocols.
  • both sending and receiving terminal must be using the same algorithm, which may be loaded into them in some known way (e.g. by installing a processing chip, or loading a software program) before they start communicating. They could each use more than one algorithm, but in this case an algorithm identifier is transmitted, e.g. together with the encryption synchronisation message, and will allow the receiver to identify which algorithm the transmitter is using, and so to decide whether it can receive using it or not.
  • algorithm identifier is transmitted, e.g. together with the encryption synchronisation message, and will allow the receiver to identify which algorithm the transmitter is using, and so to decide whether it can receive using it or not.
  • both terminals need to have the same key, which has to be provided and agreed before communication. It could be manually entered in the terminal, programmed by some tool, or loaded over the air with a rekeying mechanism (which sends encrypted keys over the air) .
  • the key material is also identified by a unique identifier that is transmitted by the transmitter (the key itself is desirably not transmitted) and again the receiver looks for this ID message, loads the associated key and uses it for decryption provided that it has this key and key ID stored.
  • a method for producing an encryption keystream to encrypt information to be communicated from a first location to a second location comprising generating a keystream; and dividing the keystream into blocks including encryption portions and synchronisation
  • each of the blocks is sub-divided into a plurality of equally sized sub-blocks and comprises a plurality of separate encryption portions each in a respective one of the sub-blocks and a single synchronisation portion in one of the sub-blocks .
  • the method may use the processor according to the first aspect.
  • a method of encrypting information to be communicated from a first location to a second location including producing a keystream by the method according to the fifth aspect and combining the encryption portions of the keystream with information to be encrypted.
  • the encryption may be carried out using the encryption processor according to the second aspect.
  • a method of communicating information from a first location to a second location e.g. from a first fixed or mobile wireless terminal to a second remote fixed or mobile wireless terminal by wireless communication, includes encrypting the information by the method according to the sixth aspect for transmission from the first location, receiving the encrypted information at the second location and decrypting the received information.
  • This invention is a mode of operation of the encryption algorithm and synchronisation transmission that is compatible between the original single frame, half slot based encryption system, and the more recent two frame full timeslot based encryption system.
  • processor used to generate the encryption output keystream can encrypt two frames in a mode compatible with a separate encryption system, and only have the processing load of generating one synchronisation frame for each timeslot.
  • FIGs 1 to 3 are flow diagrams of known encryption procedures.
  • FIG 4 is a schematic block circuit diagram of a proceesor embodying the invention.
  • FIG 5 is a flow diagrams of an encryption procedure embodying the invention .
  • FIG 6 is a block schematic circuit diagram of a mobile station operable in accordance with an embodiment of the invention.
  • FIG 7 is a diagram showing two mobile stations communicating in accordance with embodiments of the invention.
  • Algorithms for generating a keystream for encryption are often used in a block cipher based output feedback mode. This is illustrated in FIG. 1 operating on frame
  • An IV typically a random binary digital number is generated at step 101 having a length equal to a block length to be processed in a block cipher 103.
  • the block length is typically 64 bits as in the well known commercially available algorithms such as 'International Data Encryption Algorithm' ( ⁇ IDEA') as supplied by Ascom. Other block lengths can however be used.
  • the IV is encrypted in the block cipher step 103 in a keystream generator using a relevant secret user key as another input.
  • the keystream generation algorithm operates in step 105 to produce at a 64 bit output forming a keystream block indicated by 107.
  • a first portion of the keystream block 107 is employed as an encryption portion 109 in a combining step HO to encrypt part 102 of the speech frame comprising clear user information. This is carried out by a known XOR combination procedure.
  • a second portion 111 of the keystream block 107 is employed as a synchronisation portion to form the next IV input as shown at 113 to the keystream generator as shown at 113 to form a block cipher 114.
  • the keystream generator runs the algorithm again, as shown by step 115, to produce the next keystream block shown at 117, a portion 119 of which is used to encrypt at step 120 the part speech frame 104, and so on.
  • the process of operating the algorithm to produce a keystream block is typically repeated for enough cycles to encrypt a single speech frame, and then one further time to provide a sycnronisation portion which can be used as an IV to start the process to encrypt the following speech frame.
  • the algorithm is typically operated for enough cycles to encrypt two speech frames joined together, and then for one further time to generate an IV that can be used for the next timeslot of two speech frames.
  • FIG.2 Keystream generation, encryption and synchronisation using the single frame encryption procedure referred to earlier to encrypt separate complete frames 202, 204 of speech information is illustrated in FIG.2.
  • This example employs the frame sizes in the TETRA standard as an example, namely 137 bits of information for a speech frame, and a typical 64 bit block size algorithm as in FIG.l.
  • an IV random 'initial vector'
  • the block length is 64 bits.
  • the IV is encrypted in a block cipher 203 in a keystream generator using a relevant secret user key as another input.
  • the keystream generation algorithm operates a number of times.
  • step 105 four times, as indicated in step 105, to produce a 256 bits output forming a keystream block indicated by 207.
  • a first portion of the keystream block output 207 of length 137 bits is employed as an encryption portion 209 in a step 210 to encrypt the 137 bit speech frame 202 comprising clear user information. This is again carried out by a known XOR combination procedure.
  • the keystream generator runs the algorithm again four times, as shown by step 215, to produce the next 256 bit keystream block output shown as 217.
  • a first portion of the keystream block 217 of length 137 bits is employed as an encryption portion 219 in a combining step 220 to encrypt the second 137 bit speech frame 204 comprising clear user information.
  • a second (last) portion 221 of the keystream block output 217 is employed as a synchronisation portion to form the next IV input to the keystream generator, as shown at 223, and an intermediate portion 222 of the output 217 having a length of 51 bits is a discard portion, and so on.
  • FIG. 3 illustrates operation of the known double frame encryption process referred to earlier. This example again employs the frame sizes in the TETRA standard as an example, namely 137 bits of information for a speech frame, and a typical 64 bit block size algorithm as in FIG.l.
  • This example operates generally in the same manner as the example illustrated in FIG. 2. However, in this case, two speech frames in a single timeslot, total length 274 bits (twice 137 bits), are encrypted together as shown by 302.
  • an IV random 'initial vector'
  • the block length is 64 bits.
  • the IV is encrypted in the block cipher 303 in a
  • the keystream generation algorithm operates a number of times, in this case six times, in step 305 to produce a 384 (6 x 64) bit output forming a keystream block indicated by 307.
  • a first portion of the keystream block 307 of length 274 bits (2 x 137 bits) is employed as an encryption portion 309 in a combining step 310 to encrypt the 274 bit dual speech frame 302 comprising clear user information. This is again carried out by a known XOR combination procedure.
  • a second (last) portion 311 of the keystream block output 307 is employed as a synchronisation portion to form the next IV input to the keystream generator, as shown at 313.
  • a third (intermediate) portion 312 having a length of 46 bits (the total length 384 bits less the lengths 274 bits and 64 bits of the portions 209 and 311) is a discard portion 312 which is not further used. The process is repeated to encrypt further dual frames of speech information.
  • the algorithm will 'freewheel' across many timeslots before synchronisation message is resent to the receiver. This reduces the processing overhead of sending the synchronisation message, reduces computational power in
  • FIG 4 is a block schematic diagram of an encryption prcessor 400 useful in encrypting information in accordance with an embodiment of the invention.
  • a random number generator 401 produces an output consisting of an IV 404 which is applied as initial input to a keystream generator 403.
  • a secret key 405 possessed by a user is applied as an input to the keystream generator 403.
  • An algorithm is run in the generator 403 to combine the key 405 and IV 404 in multiple cycles to produce as an output a keystream block 405 which is operated on by a divider 407 to divide the keystream block output 405 into three portions, namely an encryption portion 409, a synchronisation portion 411 which is applied back into the keystream generator to provide the next IV for the keystream generator 403, and a discard portion 412, which is not further used.
  • a divider 407 to divide the keystream block output 405 into three portions, namely an encryption portion 409, a synchronisation portion 411 which is applied back into the keystream generator to provide the next IV for the keystream generator 403, and a discard portion 412, which is not further used.
  • FIG. 5 An IV (random 'initial vector') (produced as indicated earlier by the random number generator 401 of FIG. 4) is generated at step 501 having a length equal to a block length to be processed in a block cipher (as in the keystream generator 403 shown in FIG. 4).
  • the block length is 64 bits.
  • the IV is encrypted in the block cipher 503 using the relevant secret user key (as key 405, FIG.4) as another input.
  • the keystream generation algorithm run in the generator 403 operates a number of times, in this case eight times, in step 505 to produce a 512 (8 x 64) bit output forming a keystream block indicated by 507 (equivalent to output 405 in FIG.4) .
  • a first portion (as divided by the divider 407 of FIG. 4) of the keystream block 507 of length 137 bits is employed as an encryption portion 509 in a combining step 510 (in the encryption processor 410 of FIG. 4) to encrypt the 137 bit single speech frame 502 comprising clear user information. This is again carried out by a known XOR combination procedure.
  • a second portion 512 (as divided by the divider 407 of FIG.
  • a third portion (as divided by the divider 407 of FIG. 4) of the keystream block 507 of length 137 bits is employed as a further encryption portion 514 in a further combining step 520 (in the encryption processor 410 of FIG.
  • a fourth portion 516 (as divided by the divider 407 of FIG. 4) has a length of 55 bits, i.e. the total length (256 bits) of half of the keystream block 507 less the length 137 bits of the portion 514 plus the length, 64 bits, of a fifth portion 518.
  • the fourth portion, between the portions 514 and 518, is a discard portion 512 which is not further used.
  • the fifth portion 518 at the end of the divided keystream block 507 is employed as a synchronisation portion to form the next IV input to the block cipher (in the keystream generator 403) as shown at 519.
  • the process using this IV input is repeated to encrypt further pairs of frames of speech information in succeeding timeslots .
  • the benefit of the invention as illustrated by the embodiment shown in FIG. 5 is to provide compatability with both the single frame encryption procedure illustrated in FIG. 2 and the double frame encryption procedure illustrated in FIG.3.
  • the discarding of 119 bits in the discard portion 512 between the two encryption portions 509 and 514 allows the second speech frame 504 to be encrypted with the next output keystream bits of the keystream block 507 produced by the algorithm in the keystream generator 403 after its first four cycles of operation are complete. It can be seen that the algorithm will have been operated at this point for the same number of cycles as in the single frame encryption example illustrated in FIG. 2. Following the encryption of the second frame 504, a further 55 bits are discarded in the discard portion 516, and the last 64 bits are used as the IV used for synchronisation of
  • the advantages of the invention are that the algorithm run in keystream generator 403 is operated to encrypt two frames at once, but a synchronisation portion is derived less frequently. It is only derived and made available for transmission once in a transmission.
  • a lower power processor used to generate the encryption output keystream can encrypt two frames in a mode compatible with a separate encryption system, and need only have the processing load of generating one synchronisation message or frame for each timeslot.
  • the more general case where more than two speech frames per timeslot are to be encrypted using an algorithm requiring multiple cycles of operation in the keystream generator, and where the procedure is to be compatible with an approach where only one timeslot (this is the single frame encryption procedure referred to earlier) is encrypted by one or more cycles of the algorithm is as follows :
  • the algorithm is operated for as many cycles as would have been required for the single frame encryption system.
  • Keystream is allocated to encrypt speech such that the allocated keystream is the same as it would have been in a single frame encryption system.
  • Keystream is discarded between the segments used to encrypt the speech frames.
  • the keystream following the final speech frame is used to generate an Initial Vector to be used for synchronisation purposes, that is the same as would have been generate
  • FIG. 6 a block diagram of a subscriber unit which is a mobile station (MS) 612 adapted to operate using an embodiment of the present invention is shown.
  • the MS 612 may be suitable for operating in a trunked or direct mode as required.
  • the MS 612 includes an antenna 602 preferably coupled to a duplex filter or circulator 604 that provides isolation between receive and transmit chains within MS 612.
  • the receiver chain includes a receiver front-end circuit 606 (effectively providing reception, filtering and intermediate or base-band frequency conversion) .
  • the front-end circuit 606 receives signal communications from another terminal, such as another MS, in its secure talk group.
  • the front-end circuit 606 is serially coupled to a signal processor (generally realised by a digital signal processor, DSP) 608.
  • DSP digital signal processor
  • the signal processor 608 performs signal demodulation, error correction and formatting, and recovers end-to-end encrypted information from the received signal .
  • a signal representing the information recovered by the signal processor 608 is serially coupled to an encryption processor 609, the operation of which is as described earlier with reference to FIGs 4 and 5.
  • a timer 618 in FIG. 6 may be operably coupled to the encryption processor 609 to provide replay protection, in a known manner by key modification or other means, to the encryption process in addition to the secret key 405 (referred to in FIG.4) entered by the user.
  • received signals that have been decrypted by the encryption processor 609 are typically input to a baseband processing device 610, which takes the
  • the functions of the signal processor 608 and the baseband processing device 610 may be provided within the same physical device.
  • the function of the encryption processor 609 may also be provided within the same physical device as either the signal processor 408 or the baseband processing function 610, or both.
  • part of the encryption processor 609 may be part of a separate device, e.g. smartcard, which is applied into a suitable connection in the MS 612 to provide operation.
  • a controller 614 controls the information flow and operational state of processors within the MS 612.
  • the MS 612 will not be able to decrypt a received encrypted transmission if the MS 612 does not possess the secret key used by the sender, and possibly also the transmitter ID, e.g. Layer 2 identifier, of the sending MS, or if the transmission has been corrupted to affect the transmitter ID of the sending MS. In the latter case, the transmission would appear to have been sent from a different user, and therefore the transmission could not be decrypted.
  • the MS 612 will also not be able to decrypt the encrypted transmission if it does not possess the correct combining function algorithm.
  • this essentially includes an input device 620, such as a microphone, coupled in series through a baseband processor 610, an encryption processing function 609, the signal processing function 608, transmitter/modulation circuitry
  • the processor 608, transmitter/modulation circuitry 622 and the power amplifier 624 are operationally responsive to the controller 614, with an output from the power amplifier 624 coupled to the duplex filter or circulator 604, as known in the art.
  • the transmit chain in the MS 612 takes the baseband signal from input device 620 and converts it into information that can be encrypted by the encryption processor 609.
  • the encryption processor 609 encrypts this in the manner described with reference to FIGs 4 and 5 using a secret key and possible also a transmitter ID, e.g. Layer-2 MAC identity, which may be provided by the processor 608, or some other storage capable device within the MS 612.
  • the encrypted information is then passed to the signal processor 608 where it is encoded for transmission by transmit/modulation circuitry 622 and power amplifier 624.
  • the signal processor 608 in the transmit chain may be implemented as distinct from the processor in the receive chain. Alternatively, a single processor 608 may be used to implement processing of both transmit and receive signals, as shown in FIG. 6.
  • the algorithm is operated for as many cycles as would have been required for the single frame encryption system.
  • Keystream is allocated to encrypt speech such that the allocated keystream is the same as it would have been in a single frame encryption system.
  • Keystream is discarded between the segments used to encrypt the speech frames.
  • the keystream following the final speech frame is used to generate an Initial Vector to be used for synchronisation purposes, that is the same as would have been generate following the encryption of the final frame in a single frame encryption system.
  • Speech has been referred to as the information to be decrypted in the invention embodiments descried above. However the same procedures are also applicable to any form of digital data where the data can be encrypted in single or multiple frames .
  • any synchronisation message or frame received in the second half slot of a timeslot will always be correct for the first frame (the first half slot) of the following timeslot whether related to the single frame encryption system or the multiple frame encryption system.
  • a synchronisation message sent in the first half of a timeslot will be incompatible between the systems unless an algorithm is applied in the processor of the receiving terminal to correct for the differences.
  • the invention allows an algorithm that is applied in a receiver operating in a single frame procedure as referred to earlier to operate in a double frame mode and vice versa once the other mode is recognised.
  • each of the two modes applies a different algorithm. This is illustrated as follows with reference to FIG 7.
  • two mobile stations (terminals) 701, 702 can communicate directly either in a trunked mode via an infrastructure 703 or directly.
  • the MS 701 is a transmitting terminal and the MS 702 is a receiving terminal and each can operate in either a first mode which is the single frame procedure known per se or in a second mode which is the two frame mode described with reference to FIG 5 (the invention embodiment) .
  • the MS 701 If the MS 701 is operating in the first mode it transmits a synchronisation value that contains an IV describing the algorithm state at exactly the start of the next speech frame, i.e. the next half slot.
  • a single frame encryption system receiving device receives such a value, having identified the source to be another first mode transmitting device.
  • the MS 702 synchronises its algorithm used for decryption with the received IV at the start of the next speech frame, irrespective of whether the IV was received in the first or second half slot of the transmission.
  • the MS 702 in first mode receives an IV, having identified the source to be a second mode transmitting device, it synchronises its encryption/decryption processing algorithm used for decryption with the received IV at the start of the next timeslot, irrespective of whether the IV was received in the first or second half
  • the MS 702 must discard any encrypted information contents in the second half slot as it does not know the state of the encryption algorithm at this time. The exception to this is if the receiving device had previously received valid synchronisation, and was able to derive the correct value through its freewheel process .
  • the MS 701 If the MS 701 is in the second mode, it transmits a synchronisation value that contains an IV describing the algorithm state at exactly the start of the next full timeslot.
  • the MS 702 receives such a value, having identified the source to be another second mode transmitting device, it synchronises its algorithm used for decryption with the received IV at the start of the next timeslot, irrespective of whether the IV was received in the first or second half slot of the transmission.
  • the MS 702 When the MS 702 is set to receive in the second mode and receives an IV in the second half slot of a timeslot, having identified the source to be a first mode transmitting device, it synchronises its algorithm used for decryption with the received IV at the start of the next timeslot.
  • the MS 702 in the second mode When the MS 702 in the second mode receives an IV in the first half slot of a timeslot, having identified the source to be a single frame encryption system transmitting device, it either discards the IV as being incorrect for the start of the next timeslot, or synchronises its algorithm used for decryption with the received IV, then advances the algorithm state by the number of timeslots that would have been used to encrypt an information frame and generate synchronisation for the first half of the
  • the invention provides an encryption processor and process where more than one frame of information (which may be speech or data etc) are encrypted by an algorithm where the synchronisation and operation of the algorithm is compatible with a similar processor and process in which only one frame of information is encrypted and synchronised at a time.
  • the invention is also distinguished from known systems in that an output keystream produced by an encryption/decryption algorithm with the purpose of encrypting multiple frames of information has segments discarded to make its output compatible with an algorithm encrypting single frames of information only.
  • the encryption/decryption processor and process determine the segments of keystream to be discarded.
  • the invention also provides a processor and process (algorithm or operational method) for synchronising one encryption process with another by determining at which point in an encrypted stream of information a synchronisation value is valid for, and advancing an encryption algorithm or discarding information to provide compatible synchronisation.
  • the invention further provides a method of encrypted communication whereby the communicating terminal using each of two possible modes can recognise a transmission from the other mode, and apply such an algorithm to ensure that they become and remain synchronised.
  • the encryption/decryption algorithm can be operated in any suitable mode as either a stream cipher or a block cipher.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Communication Control (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Storage Device Security (AREA)

Abstract

A processor for encrypting or decrypting information to be communicated from a first location to a second location, the processor being operable in at least two modes including (i) a first made wherein information is encrypted by an encryption portion of a keystroarn and a synchronisation indicator is generated in association with each encryption portion and (ii) a second mode wherein information is encrypted by a plurality of encryption portions and a single synchronisation indicator is generated in association with each plurality of encryption portions. Also described are an encryption and decryption processor using the processor and methods using the processor and the encryption and decryption processor. A transmitter and receiver using the encryption/decryption processor and a telecommunications terminal and method using the terminal are also described.

Description

PROCESSOR AND METHOD FOR END-TO-ΞND ENCRYPTION SYNCHRONISATION
FIELD OF THE INVENTION
The present invention relates to a processor, method, transmitter and terminal for use in communications, particularly for sending encrypted information from a first location to a second location, e.g. by wireless.
10
BACKGROUND OF THE INVENTION
Many communication systems employ a procedure to encrypt sensitive communicated information especially where 15 the information is sent via insecure channels, e.g. by wireless over the air or via the internet.
For example, in TETRA mobile communication systems, which operate in accordance with TETRA. (TErrestrial Trunked Radio) standards or operating protocols which have been 20 defined by the European Telecommunications Standards
Institute (ETSI) , calls can be end-to-end encrypted. This means that the encryption can only be applied by the sender (source) of the information and removed by the recipient (destination) of the information. This is achieved by 25 producing a random or pseudorandom sequence of numbers (binary digits) and using an encryption algorithm to combine the sequence with a secret user key applied by the user. The combination generates another sequence incorporating the user key which is known as a keystream. 30 The keystream, or a portion of it, is then used to encrypt the user speech, data or other information to be transmitted in encrypted form. This is done by using a
process such as by use of an XOR (exclusive OR) function to combine the unencrypted information, such as digital speech information, with the keystream.
In the TETRA operating protocol, transmissions to and from mobile terminals are controlled in a synchronized time slot mode. The slot duration for a traffic (voice, data etc) channel is 14.167ms. Four slots represent four physical channels in a TDMA (time division multiple access) protocol and form one time frame of duration 56.67ms in an 18 time frame multiframe timing structure. TETRA terminals generate speech information in speech frames using an ACELP , One speech frame is transmitted in half of a traffic time slot (known as a 'half slot' or 'sub-slot') at the air interface and therefore two speech frames are transmitted in one timeslot.
The TETRA standard and the transmission protocol is detailed in the EN300392 series of documents published by ETSI . Application and synchronisation of encryption processes is detailed in ETSI document ES202109. The encryption process has to be synchronised between the transmitter in the sending terminal and the receiver in the receiving terminal. The transmitter must send information concerning the state of the encryption algorithm to the receiver to allow the receiver to synchronise its algorithm for decryption. This synchronisation process is described in the ETSI document ES202109. A synchronisation frame or message is sent in a half slot in place of a frame of encrypted speech information. This is known in the art as 'frame 'stealing'. This synchronisation process can be processor intensive to achieve, as it can require a cryptographic checksum to be generated for the synchronisation frame. If
the same algorithm is used to generate the cryptographic checksum as is used for the speech encryption process, it can require a change of algorithm mode and/or a change of input parameters. Even if the algorithm is different, it can still be required to operate on the same processor as the encryption process. Either switching modes and reinitialising or changing algorithms can be processor intensive.
The encryption processor may be forced to generate synchronisation information every time it produces an output used to encrypt speech frames, as the decision process whether to transmit the synchronisation or not may rest with a process outside the encryption device, for example to mitigate any negative effects on speech quality. The encryption process standardised in ES202109 and by other documents, encrypts every speech frame independently. Therefore synchronisation is available for each half slot separately. This process is referred to herein as 'single frame encryption' . The process allows the transmitter to replace either the first half slot of encrypted speech with a synchronisation message, or the first and second half slots together; and in the latter case, the synchronisation is different in the first and second half slot. The synchronisation information sent in the first half slot of a timeslot provides the state of the algorithm exactly at the start of the second half slot. The synchronisation information sent in a second half slot provides the state of the encryption algorithm at exactly the start of the first half slot of the following timeslot. However, recent proposals have been made to conduct at least some of the encryption process using smaller, lower power devices, such as smartcards . The overhead of
generating a keystream to encrypt each half slot independently, and generating a synchronisation message every half slot can be too great for such devices, especially where a cryptographic checksum is used. In consequence, it has been proposed that these devices use a modified process in which they encrypt over a full timeslot, that is encrypt two frames of speech information together, and only generate one synchronisation message for each timeslot. This alternative process is referred to herein as 'double frame encryption' . For double frame encryption, the synchronisation information provides the state of the algorithm at exactly the start of the following full timeslot, whether the synchronisation message is transmitted in the first or the second half slot of a timeslot.
It can be seen that the single frame encryption and double frame encryption processes are therefore incompatible with regard to handling of second half slot synchronisation. Further incompatability arises as a result of the way in which the encryption algorithm operates in the two processes as illustrated further later.
SUMMARY OF THE PRESENT INVENTION
According to the present invention in a first aspect there is provided a processor for encrypting or decrypting information to be communicated from a first location to a second location, the processor being operable in at least two modes including (i) a first mode wherein information is encrypted by an encryption portion of a keystream and a synchronisation indicator is generated in association with each encryption portion and (ii) a second mode wherein
information is encrypted by a plurality of encryption portions and a single synchronisation indicator is generated in association with each plurality of encryption portions . The processor may be such that in the first mode each frame of information is encrypted in a part or full slot of a timeslot of an operational timing sequence and in the second mode two frames of information are encrypted in a timeslot of the timing sequence. The processor may be operable to send and/or receive a signal indicating the mode in which the processor is to operate. The processor may beneficially be operable to receive a signal indicating the mode in which the processor is to operate and to set its method of operation accordingly.
In a preferred form of the first aspect of the invention, there is provided a processor for producing an encryption keystream to encrypt or decrypt information to be communicated from a first location to a second location, the processor comprising a keystream generator operable to generate a keystream; and a divider operable to divide the keystream into equally sized blocks each of which is to be allocated to encryption or decryption or synchronisation or includes a portion to be discarded, and wherein each of the blocks is sub-divided into portions which are to be allocated to encryption or decryption, synchronisation or discarding and wherein each block includes a plurality of encryption or decryption portions and only a single synchronisation portion. The processor may comprise a keystream generator operable to generate a keystream; and a divider operable to divide the keystream into blocks including encryption portions and synchronisation portions;
wherein each of the blocks is sub-divided into a plurality of equally sized sub-blocks and comprises a plurality of separate encryption portions each in a respective one of the sub-blocks and a single synchronisation portion in one of the sub-blocks .
The divider may be operable to produce 2π sub-blocks per block, where n is an integer equal to 1 or more.
The divider may be operable to produce per block a first sub-block including an encryption portion followed by a discard portion followed by a second sub-block equal in size to the first sub-block and including an encryption portion followed by a synchronisation portion. The encryption portion is for encryption of information. The discard portion is a portion of the block that is not needed in any further operation and can therefore be discarded.
The second sub-block may include an encryption portion followed by a discard portion followed by a synchronisation portion. The synchronisation portion is for providing a link between keystream blocks and optionally also to synchronise operation of a processor (e.g. in a receiver) operating a corresponding decryption process to decrypt a communication of information encrypted using the encryption portion. The processor may produce keystream blocks each having a length of 512 bits and sub-blocks each having a length of 256 bits. The encryption portions may each have a length of 137 bits, e.g. as required to encrypt a frame of information in a TETRA procedure . The synchronisation portions may each have a length of 64 bits .
The keystream generator may include a random number generator operable to produce a random number, often
referred to in the art as an 'Initial Vector or IV and a combiner operable to combine the random number with a secret key to generate an initial keystream block. The secret key may be a special number or code available only to a particular user. It may be produced by any of the methods known in the art, e.g. by a key issue authority. The combiner may operate by any of the key combining methods known in the art. It may for example comprise an exclusive OR combiner. The divider and the keystream generator of the processor may be operably coupled so that the synchronisation portion in each keystream block is combined with a secret key to produce the next keystream block. In this way, the synchronisation portion which is an encrypted random number which is itself a random number acts as a link between blocks of the keystream. One keystream block may be produced in each timeslot of a communications timing sequence in which encrypted information is to be communicated. The synchronisation portion thereby acts a synchronisation between keystream blocks in the various bolcks .
In the processor according to the first aspect, the random number generator may produce an initial vector block and the keystream generator may perform multiple combinations of the initial vector block and the secret key to produce the keystream block. The initial vector block may for example have a length of 64 bits and the keystream generator may for example perform eight cycles of combining the vector block with the secret key to provide a keystream block having a length of 512 bits.
According to the present invention in a second aspect there is provided a an encryption processor including a
processor according to the first aspect and a combiner for combining information to be encrypted with the encyption portions produced from the keystream by the divider. The combiner may operate by any of the methods known in the art, e.g. by an exclusive OR function.
The encryption processor may beneficially be operable so that two frames of the information to be encrypted are respectively combined with encryption portions once per time slot of a communications timing sequence in which the information when encrypted is to be communicated. For example two frames may be encrypted in this way every slot of a TETRA TDMA timing sequence; each such frame is encrypted in a sub-slot (half slot) and two encrypted frames may communicated together. Each pair of such encrypted frames may be accompanied in the same time slot be its own synchronisation portion (used also for linking between blocks of the keystream as referred to earlier.
The information to be encrypted may comprise one or more of speech information, text and/or numeric data, picture information and video information.
According to the invention in a third aspect there is provided a communications transmitter including an encryption processor according to the second aspect.
According to the present invention in a fourth aspect theer is provided a telecommunications terminal including the transmitter according to the third aspect.
In one form, the processor according to the first aspect is detachable from the terminal. For example, the processor may be carried on a user smartcard which has to be attached to the terminal in order to make the terminal operable in an encypted communications mode. Communication to and/or from the terminal may be wireless although the
invention is also useful in connection with other forms of telecommunication, e.g by a landline or wired network or via the internet . The terminal may thus be be a fixed or mobile wireless communications terminal, e.g. one which operates according to TETRA standard protocols.
Where two terminals are communicating in accordance with the invention, both sending and receiving terminal must be using the same algorithm, which may be loaded into them in some known way (e.g. by installing a processing chip, or loading a software program) before they start communicating. They could each use more than one algorithm, but in this case an algorithm identifier is transmitted, e.g. together with the encryption synchronisation message, and will allow the receiver to identify which algorithm the transmitter is using, and so to decide whether it can receive using it or not.
Similarly both terminals need to have the same key, which has to be provided and agreed before communication. It could be manually entered in the terminal, programmed by some tool, or loaded over the air with a rekeying mechanism (which sends encrypted keys over the air) . The key material is also identified by a unique identifier that is transmitted by the transmitter (the key itself is desirably not transmitted) and again the receiver looks for this ID message, loads the associated key and uses it for decryption provided that it has this key and key ID stored.
According to the present invention in a fifth aspect there is provided a method for producing an encryption keystream to encrypt information to be communicated from a first location to a second location, the method comprising generating a keystream; and dividing the keystream into blocks including encryption portions and synchronisation
portions; wherein each of the blocks is sub-divided into a plurality of equally sized sub-blocks and comprises a plurality of separate encryption portions each in a respective one of the sub-blocks and a single synchronisation portion in one of the sub-blocks . The method may use the processor according to the first aspect.
According to the present invention in a sixth aspect there is provided a method of encrypting information to be communicated from a first location to a second location, the method including producing a keystream by the method according to the fifth aspect and combining the encryption portions of the keystream with information to be encrypted. The encryption may be carried out using the encryption processor according to the second aspect. According to the present invention in a seventh aspect, a method of communicating information from a first location to a second location, e.g. from a first fixed or mobile wireless terminal to a second remote fixed or mobile wireless terminal by wireless communication, includes encrypting the information by the method according to the sixth aspect for transmission from the first location, receiving the encrypted information at the second location and decrypting the received information. This invention is a mode of operation of the encryption algorithm and synchronisation transmission that is compatible between the original single frame, half slot based encryption system, and the more recent two frame full timeslot based encryption system.
The advantages of this system are that the algorithm is operated to encrypt two frames at once, but synchronisation is only derived and made available for transmission once in a transmission. Thus a lower power
processor used to generate the encryption output keystream can encrypt two frames in a mode compatible with a separate encryption system, and only have the processing load of generating one synchronisation frame for each timeslot.
BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS
FIGs 1 to 3 are flow diagrams of known encryption procedures. FIG 4 is a schematic block circuit diagram of a proceesor embodying the invention.
FIG 5 is a flow diagrams of an encryption procedure embodying the invention .
FIG 6 is a block schematic circuit diagram of a mobile station operable in accordance with an embodiment of the invention.
FIG 7 is a diagram showing two mobile stations communicating in accordance with embodiments of the invention.
DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION
In order that the invention may be better appreciated, the encryption process employed in the known encryption procedures will first be described with reference to FIGs. 1 to 3. Potential incompatibility of the single frame encryption and double frame encryption processes described earlier arises in the generation and application of encryption keystream in the half slots. This is explained as follows .
Algorithms for generating a keystream for encryption are often used in a block cipher based output feedback mode. This is illustrated in FIG. 1 operating on frame
parts 102, 104 of a speech frame in a known manner. An IV (random 'initial vector' ) typically a random binary digital number is generated at step 101 having a length equal to a block length to be processed in a block cipher 103. The block length is typically 64 bits as in the well known commercially available algorithms such as 'International Data Encryption Algorithm' (λIDEA') as supplied by Ascom. Other block lengths can however be used. The IV is encrypted in the block cipher step 103 in a keystream generator using a relevant secret user key as another input. The keystream generation algorithm operates in step 105 to produce at a 64 bit output forming a keystream block indicated by 107. A first portion of the keystream block 107 is employed as an encryption portion 109 in a combining step HO to encrypt part 102 of the speech frame comprising clear user information. This is carried out by a known XOR combination procedure. A second portion 111 of the keystream block 107 is employed as a synchronisation portion to form the next IV input as shown at 113 to the keystream generator as shown at 113 to form a block cipher 114. Using this input, the keystream generator runs the algorithm again, as shown by step 115, to produce the next keystream block shown at 117, a portion 119 of which is used to encrypt at step 120 the part speech frame 104, and so on.
For a practical encryption process using the single frame encryption procedure referred to earlier, the process of operating the algorithm to produce a keystream block is typically repeated for enough cycles to encrypt a single speech frame, and then one further time to provide a sycnronisation portion which can be used as an IV to start the process to encrypt the following speech frame. This IV
can also be transmitted as a synchronisation message to a receiver without compromising security, as it is not used to encrypt further information itself, and the next and previous outputs of the algorithm cannot be derived without knowledge of the secret key. For the double frame encryption procedure referred to earlier, the algorithm is typically operated for enough cycles to encrypt two speech frames joined together, and then for one further time to generate an IV that can be used for the next timeslot of two speech frames. These practical procedures are illustrated as follows with reference to FIGs. 2 and 3.
Keystream generation, encryption and synchronisation using the single frame encryption procedure referred to earlier to encrypt separate complete frames 202, 204 of speech information is illustrated in FIG.2. This example employs the frame sizes in the TETRA standard as an example, namely 137 bits of information for a speech frame, and a typical 64 bit block size algorithm as in FIG.l. In FIG.2 an IV (random 'initial vector') is generated at step 201 having a length equal to a block length to be processed in a block cipher 203. The block length is 64 bits. The IV is encrypted in a block cipher 203 in a keystream generator using a relevant secret user key as another input. The keystream generation algorithm operates a number of times. In this case four times, as indicated in step 105, to produce a 256 bits output forming a keystream block indicated by 207. A first portion of the keystream block output 207 of length 137 bits is employed as an encryption portion 209 in a step 210 to encrypt the 137 bit speech frame 202 comprising clear user information. This is again carried out by a known XOR combination procedure. A second portion 211 of length 64 bits of the keystream block output
207 is employed as a synchronisation portion to form the next IV input to the keystream generator, as shown at 213. A third portion 212 having a length of 55 bits (the total length 256 bits less the lengths 137 bits and 64 bits of the portions 209 and 211) is a discard portion which is not further used. Using the synchronisation portion 211 as a further IV input as shown at 213, into the 64 bit block cipher as shown at 214, the keystream generator runs the algorithm again four times, as shown by step 215, to produce the next 256 bit keystream block output shown as 217. A first portion of the keystream block 217 of length 137 bits is employed as an encryption portion 219 in a combining step 220 to encrypt the second 137 bit speech frame 204 comprising clear user information. A second (last) portion 221 of the keystream block output 217 is employed as a synchronisation portion to form the next IV input to the keystream generator, as shown at 223, and an intermediate portion 222 of the output 217 having a length of 51 bits is a discard portion, and so on. FIG. 3 illustrates operation of the known double frame encryption process referred to earlier. This example again employs the frame sizes in the TETRA standard as an example, namely 137 bits of information for a speech frame, and a typical 64 bit block size algorithm as in FIG.l. This example operates generally in the same manner as the example illustrated in FIG. 2. However, in this case, two speech frames in a single timeslot, total length 274 bits (twice 137 bits), are encrypted together as shown by 302. In FIG.3 an IV (random 'initial vector') is generated at step 301 having a length equal to a block length to be processed in a block cipher 303. The block length is 64 bits. The IV is encrypted in the block cipher 303 in a
keystream generator using a relevant secret user key as another input. The keystream generation algorithm operates a number of times, in this case six times, in step 305 to produce a 384 (6 x 64) bit output forming a keystream block indicated by 307. A first portion of the keystream block 307 of length 274 bits (2 x 137 bits) is employed as an encryption portion 309 in a combining step 310 to encrypt the 274 bit dual speech frame 302 comprising clear user information. This is again carried out by a known XOR combination procedure. A second (last) portion 311 of the keystream block output 307 is employed as a synchronisation portion to form the next IV input to the keystream generator, as shown at 313. A third (intermediate) portion 312 having a length of 46 bits (the total length 384 bits less the lengths 274 bits and 64 bits of the portions 209 and 311) is a discard portion 312 which is not further used. The process is repeated to encrypt further dual frames of speech information.
It can be seen that the known single frame and double frame encryption procedures shown in FIGs 2 and 3 are incompatible. Even if the algorithms in each procedure start in the same state with the same IV at the first frame of the timeslot, the second timeslot will be encrypted differently in the two examples; i.e. the algorithm output used as keystream to encrypt the second frame will be from a different point in the total numbers of algorithm operation cycles .
Furthermore, in a typical implementation, the algorithm will 'freewheel' across many timeslots before synchronisation message is resent to the receiver. This reduces the processing overhead of sending the synchronisation message, reduces computational power in
encoding and checking the synchronisation, and reduces any speech quality degradation which could be caused if synchronisation message transmission replaces speech transmissions. It can be seen that subsequent timeslots would be incompatible between the two examples (single and double frame encryption) if this freewheeling procedure is used, as the single frame encryption procedure in the TETRA case advanced the algorithm for eight cycles each timeslot, whereas the double frame recent dual frame full timeslot encryption system advances the algorithm for six cycles each timeslot. This incompatibility problem is solved by the invention.
FIG 4 is a block schematic diagram of an encryption prcessor 400 useful in encrypting information in accordance with an embodiment of the invention. A random number generator 401 produces an output consisting of an IV 404 which is applied as initial input to a keystream generator 403. A secret key 405 possessed by a user is applied as an input to the keystream generator 403. An algorithm is run in the generator 403 to combine the key 405 and IV 404 in multiple cycles to produce as an output a keystream block 405 which is operated on by a divider 407 to divide the keystream block output 405 into three portions, namely an encryption portion 409, a synchronisation portion 411 which is applied back into the keystream generator to provide the next IV for the keystream generator 403, and a discard portion 412, which is not further used. Detailed operation of the processor 400 in accordance with an embodiment of the invention is described with reference to FIG. 5 as follows .
The procedure embodying the invention shown in FIG 5 again employs the frame sizes in the TETRA standard as an
example, namely 137 bits of information for a speech frame, and a typical 64 bit block size algorithm. This example operates generally in the same manner as the example illustrated in FIG. 3. However, in this case, two speech frames in a single timeslot as shown by 502, 504, each frame of length 137 bits, are encrypted separately. In FIG.5, an IV (random 'initial vector') (produced as indicated earlier by the random number generator 401 of FIG. 4) is generated at step 501 having a length equal to a block length to be processed in a block cipher (as in the keystream generator 403 shown in FIG. 4). The block length is 64 bits. The IV is encrypted in the block cipher 503 using the relevant secret user key (as key 405, FIG.4) as another input. The keystream generation algorithm run in the generator 403 operates a number of times, in this case eight times, in step 505 to produce a 512 (8 x 64) bit output forming a keystream block indicated by 507 (equivalent to output 405 in FIG.4) . A first portion (as divided by the divider 407 of FIG. 4) of the keystream block 507 of length 137 bits is employed as an encryption portion 509 in a combining step 510 (in the encryption processor 410 of FIG. 4) to encrypt the 137 bit single speech frame 502 comprising clear user information. This is again carried out by a known XOR combination procedure. A second portion 512 (as divided by the divider 407 of FIG.
4) having a length of 119 bits (the total length of half of the keystream block 507 less the length 137 bits of the portion 509) is a discard portion 512 which is not further used. A third portion (as divided by the divider 407 of FIG. 4) of the keystream block 507 of length 137 bits is employed as a further encryption portion 514 in a further combining step 520 (in the encryption processor 410 of FIG.
4) to encrypt the second 137 bit single speech frame 504 comprising clear user information. This is again carried out by a known XOR combination procedure. A fourth portion 516 (as divided by the divider 407 of FIG. 4) has a length of 55 bits, i.e. the total length (256 bits) of half of the keystream block 507 less the length 137 bits of the portion 514 plus the length, 64 bits, of a fifth portion 518. The fourth portion, between the portions 514 and 518, is a discard portion 512 which is not further used. Finally for the timeslot, the fifth portion 518 at the end of the divided keystream block 507 is employed as a synchronisation portion to form the next IV input to the block cipher (in the keystream generator 403) as shown at 519. The process using this IV input is repeated to encrypt further pairs of frames of speech information in succeeding timeslots .
The benefit of the invention as illustrated by the embodiment shown in FIG. 5 is to provide compatability with both the single frame encryption procedure illustrated in FIG. 2 and the double frame encryption procedure illustrated in FIG.3. The discarding of 119 bits in the discard portion 512 between the two encryption portions 509 and 514 allows the second speech frame 504 to be encrypted with the next output keystream bits of the keystream block 507 produced by the algorithm in the keystream generator 403 after its first four cycles of operation are complete. It can be seen that the algorithm will have been operated at this point for the same number of cycles as in the single frame encryption example illustrated in FIG. 2. Following the encryption of the second frame 504, a further 55 bits are discarded in the discard portion 516, and the last 64 bits are used as the IV used for synchronisation of
the following timeslot. This accounts for the second half of the keystream block 507 which also requires four cycles of the algorithm in the keystream generator 403.
AS noted earlier, the advantages of the invention are that the algorithm run in keystream generator 403 is operated to encrypt two frames at once, but a synchronisation portion is derived less frequently. It is only derived and made available for transmission once in a transmission. Thus a lower power processor used to generate the encryption output keystream can encrypt two frames in a mode compatible with a separate encryption system, and need only have the processing load of generating one synchronisation message or frame for each timeslot. The more general case where more than two speech frames per timeslot are to be encrypted using an algorithm requiring multiple cycles of operation in the keystream generator, and where the procedure is to be compatible with an approach where only one timeslot (this is the single frame encryption procedure referred to earlier) is encrypted by one or more cycles of the algorithm is as follows :
The algorithm is operated for as many cycles as would have been required for the single frame encryption system. Keystream is allocated to encrypt speech such that the allocated keystream is the same as it would have been in a single frame encryption system. Keystream is discarded between the segments used to encrypt the speech frames. The keystream following the final speech frame is used to generate an Initial Vector to be used for synchronisation purposes, that is the same as would have been generate
following the encryption of the final frame in a single frame encryption system.
Referring now to FIG. 6, a block diagram of a subscriber unit which is a mobile station (MS) 612 adapted to operate using an embodiment of the present invention is shown. The MS 612 may be suitable for operating in a trunked or direct mode as required. The MS 612 includes an antenna 602 preferably coupled to a duplex filter or circulator 604 that provides isolation between receive and transmit chains within MS 612. The receiver chain includes a receiver front-end circuit 606 (effectively providing reception, filtering and intermediate or base-band frequency conversion) . The front-end circuit 606 receives signal communications from another terminal, such as another MS, in its secure talk group. The front-end circuit 606 is serially coupled to a signal processor (generally realised by a digital signal processor, DSP) 608. The signal processor 608 performs signal demodulation, error correction and formatting, and recovers end-to-end encrypted information from the received signal . A signal representing the information recovered by the signal processor 608 is serially coupled to an encryption processor 609, the operation of which is as described earlier with reference to FIGs 4 and 5. A timer 618 in FIG. 6 may be operably coupled to the encryption processor 609 to provide replay protection, in a known manner by key modification or other means, to the encryption process in addition to the secret key 405 (referred to in FIG.4) entered by the user. As known in the art, received signals that have been decrypted by the encryption processor 609 are typically input to a baseband processing device 610, which takes the
decrypted information received from the encryption processor 609 and formats it in a suitable manner to send to an output device 611, such as a speaker and/or display, e.g. a visual display unit (VDU) . In an alternative form of the MS shown in FIG.6, the functions of the signal processor 608 and the baseband processing device 610 may be provided within the same physical device. The function of the encryption processor 609 may also be provided within the same physical device as either the signal processor 408 or the baseband processing function 610, or both. Alternatively, as mentioned earlier, part of the encryption processor 609 may be part of a separate device, e.g. smartcard, which is applied into a suitable connection in the MS 612 to provide operation. A controller 614 controls the information flow and operational state of processors within the MS 612.
The MS 612 will not be able to decrypt a received encrypted transmission if the MS 612 does not possess the secret key used by the sender, and possibly also the transmitter ID, e.g. Layer 2 identifier, of the sending MS, or if the transmission has been corrupted to affect the transmitter ID of the sending MS. In the latter case, the transmission would appear to have been sent from a different user, and therefore the transmission could not be decrypted. The MS 612 will also not be able to decrypt the encrypted transmission if it does not possess the correct combining function algorithm.
As regards the transmit chain of the MS 612, this essentially includes an input device 620, such as a microphone, coupled in series through a baseband processor 610, an encryption processing function 609, the signal processing function 608, transmitter/modulation circuitry
622 and a power amplifier 624. The processor 608, transmitter/modulation circuitry 622 and the power amplifier 624 are operationally responsive to the controller 614, with an output from the power amplifier 624 coupled to the duplex filter or circulator 604, as known in the art.
The transmit chain in the MS 612 takes the baseband signal from input device 620 and converts it into information that can be encrypted by the encryption processor 609. The encryption processor 609 encrypts this in the manner described with reference to FIGs 4 and 5 using a secret key and possible also a transmitter ID, e.g. Layer-2 MAC identity, which may be provided by the processor 608, or some other storage capable device within the MS 612. The encrypted information is then passed to the signal processor 608 where it is encoded for transmission by transmit/modulation circuitry 622 and power amplifier 624. The signal processor 608 in the transmit chain may be implemented as distinct from the processor in the receive chain. Alternatively, a single processor 608 may be used to implement processing of both transmit and receive signals, as shown in FIG. 6.
Of course, the various components within the MS 612 can be realised in discrete or integrated component form, with an ultimate structure therefore being a selection from these forms .
The generic case where more than one speech slot is encrypted by an algorithm requiring multiple cycles of operation, and is to be compatible with an approach where only one slot is encrypted by one or more cycles of the algorithm is as follows :
The algorithm is operated for as many cycles as would have been required for the single frame encryption system. Keystream is allocated to encrypt speech such that the allocated keystream is the same as it would have been in a single frame encryption system. Keystream is discarded between the segments used to encrypt the speech frames. The keystream following the final speech frame is used to generate an Initial Vector to be used for synchronisation purposes, that is the same as would have been generate following the encryption of the final frame in a single frame encryption system.
Speech has been referred to as the information to be decrypted in the invention embodiments descried above. However the same procedures are also applicable to any form of digital data where the data can be encrypted in single or multiple frames .
With the encryption process provided by this invention, any synchronisation message or frame received in the second half slot of a timeslot will always be correct for the first frame (the first half slot) of the following timeslot whether related to the single frame encryption system or the multiple frame encryption system. However, a synchronisation message sent in the first half of a timeslot will be incompatible between the systems unless an algorithm is applied in the processor of the receiving terminal to correct for the differences. The invention allows an algorithm that is applied in a receiver operating in a single frame procedure as referred to earlier to operate in a double frame mode and vice versa once the other mode is recognised.
The ability of an algorithm to recognise a different operation mode is well known in the art per se, and can be
achieved in application of the invention by sending an identifier that relates to the encryption and synchronisation mode as part of the transmitted synchronisation system. In this invention, each of the two modes applies a different algorithm. This is illustrated as follows with reference to FIG 7. In Fig 7, two mobile stations (terminals) 701, 702 can communicate directly either in a trunked mode via an infrastructure 703 or directly. Assume that the MS 701 is a transmitting terminal and the MS 702 is a receiving terminal and each can operate in either a first mode which is the single frame procedure known per se or in a second mode which is the two frame mode described with reference to FIG 5 (the invention embodiment) . If the MS 701 is operating in the first mode it transmits a synchronisation value that contains an IV describing the algorithm state at exactly the start of the next speech frame, i.e. the next half slot. When the MS 702 is also set to operate in the first mode a single frame encryption system receiving device receives such a value, having identified the source to be another first mode transmitting device. The MS 702 synchronises its algorithm used for decryption with the received IV at the start of the next speech frame, irrespective of whether the IV was received in the first or second half slot of the transmission.
When the MS 702 in first mode receives an IV, having identified the source to be a second mode transmitting device, it synchronises its encryption/decryption processing algorithm used for decryption with the received IV at the start of the next timeslot, irrespective of whether the IV was received in the first or second half
slot of the transmission. If the IV was received in the first half slot of a timeslot, the MS 702 must discard any encrypted information contents in the second half slot as it does not know the state of the encryption algorithm at this time. The exception to this is if the receiving device had previously received valid synchronisation, and was able to derive the correct value through its freewheel process .
If the MS 701 is in the second mode, it transmits a synchronisation value that contains an IV describing the algorithm state at exactly the start of the next full timeslot. When the MS 702 receives such a value, having identified the source to be another second mode transmitting device, it synchronises its algorithm used for decryption with the received IV at the start of the next timeslot, irrespective of whether the IV was received in the first or second half slot of the transmission.
When the MS 702 is set to receive in the second mode and receives an IV in the second half slot of a timeslot, having identified the source to be a first mode transmitting device, it synchronises its algorithm used for decryption with the received IV at the start of the next timeslot.
When the MS 702 in the second mode receives an IV in the first half slot of a timeslot, having identified the source to be a single frame encryption system transmitting device, it either discards the IV as being incorrect for the start of the next timeslot, or synchronises its algorithm used for decryption with the received IV, then advances the algorithm state by the number of timeslots that would have been used to encrypt an information frame and generate synchronisation for the first half of the
timeslot (without applying the output to any decryption process again) , and then uses the IV output from this process as the synchronisation state at the start of the next timeslot. In the TETRA case, this means that when the second mode receiver receives an IV in the first half slot, it must advance the algorithm for four cycles, and then use the resultant IV to synchronise itself for reception at the start of the next timeslot.
Thus the invention provides an encryption processor and process where more than one frame of information (which may be speech or data etc) are encrypted by an algorithm where the synchronisation and operation of the algorithm is compatible with a similar processor and process in which only one frame of information is encrypted and synchronised at a time.
The invention is also distinguished from known systems in that an output keystream produced by an encryption/decryption algorithm with the purpose of encrypting multiple frames of information has segments discarded to make its output compatible with an algorithm encrypting single frames of information only.
In the invention, the encryption/decryption processor and process determine the segments of keystream to be discarded. The invention also provides a processor and process (algorithm or operational method) for synchronising one encryption process with another by determining at which point in an encrypted stream of information a synchronisation value is valid for, and advancing an encryption algorithm or discarding information to provide compatible synchronisation.
The invention further provides a method of encrypted communication whereby the communicating terminal using each of two possible modes can recognise a transmission from the other mode, and apply such an algorithm to ensure that they become and remain synchronised.
In the invention, the encryption/decryption algorithm can be operated in any suitable mode as either a stream cipher or a block cipher.

Claims

1. A processor (400) for encrypting or decrypting information to be communicated from a first location to a second location, the processor being operable in at least one of two modes including (i) a first mode wherein information is encrypted by an encryption portion of a keystream and a synchronisation indicator is generated in association with each encryption portion and (ii) a second mode wherein information is encrypted by a plurality of encryption portions and a single synchronisation indicator is generated in association with each plurality of encryption portions .
2. A processor according to claim 1 and wherein in the first mode each frame of information is encrypted in a half slot or time slot of an operational timing sequence and in the second mode two or more frames of information are encrypted in a timeslot of the timing sequence.
3. A processor according to claim 1 or claim 2 and wherein the processor is operable to send and/or receive a signal indicating the mode in which the processor is operating.
4. A processor according to claim 3 and wherein the processor is operable to receive a signal indicating the mode in which the processor is to operate and to set its method of operation accordingly.
5. A processor according to any one of the preceding claims wherein the processor is operable to produce a keystream including a keystream processor for producing an encryption keystream to encrypt information to be communicated from a first location to a second location, the processor comprising a keystream generator operable to generate a keystream; and a divider operable to divide the keystream
into blocks including encryption portions and synchronisation portions; wherein each of the blocks is sub-divided into a plurality of equally sized sub-blocks and comprises a plurality of separate encryption portions each in a respective one of the sub-blocks and a single synchronisation portion in one of the sub-blocks .
6. A processor according to claim 5 and wherein the divider is operable to produce 2n sub-blocks per block or per stream, where n is an integer equal to 1 or more .
7. A processor according to claim 5 or claim 6 and wherein the divider is operable to produce per block a first sub- block including an encryption portion followed by a discard portion followed by a second sub-block equal in size to the first sub-block and including an encryption portion followed by a synchronisation portion.
8. A processor according to claim 7 and wherein the second sub-block includes an encryption portion followed by a discard portion followed by a synchronisation portion.
9. A processor according to any one of the preceding claims and wherein the keystream blocks each have a length of 512 bits and the sub-blocks each have a length of 256 bits.
10. A processor according to any one of the preceding claims and wherein the encryption portions each have a length of 137 bits.
11. A processor according to any one of the preceding claims and wherein the synchronisation portions each have a length of 64 bits.
12. A processor according to any one of the preceding claims wherein each keystream block is produced in one timeslot of a communications timing sequence in which encrypted information is to be communicated.
13. A processor according to any one of the preceding claims and wherein the keystream generator includes a random number generator operable to produce a random number and a combiner operable to combine the random number with a secret key to generate an initial keystream block.
14. A processor according to claim 9 wherein the divider and the keystream generator are operably coupled so that the synchronisation portion in each keystream block is combined with a secret key to produce the next keystream block.
15. A processor according to claim 13 or claim 14 and wherein the random number generator is operable to produce an initial vector block and the keystream generator is operable to perform multiple combinations of the initial vector block and the secret key to produce the keystream block.
16. A processor according to claim 15 and wherein the intial vector block has a length of 64 bits.
17. An encryption processor including a processor according to any one of the preceding claims and a combiner for combining information to be encrypted with the encryption portions produced from the keystream by the divider.
18. An encryption processor according to claim 17 and which is operable so that two frames of the information to be encrypted are respectively combined with encryption portions once per time slot of a communications timing sequence in which the information when encrypted is to be communicated.
19. An encryption processor according to claim 17 or claim 18 and wherein the information to be encrypted comprises one or more of speech information, text and/or numeric data, picture information and video information.
20. A communications transmitter including an encryption processor according to any one of claims 17 to 19.
21. A communications receiver including a decryption processor according to any one of claims 17 to 19.
22. A telecommunications terminal including the transmitter according to claim 20.
23. A telecommunications terminal according to claim 22 wherein the processor of the encryption processor is detachable from the terminal .
24. A telecommunications terminal according to claim 22 or claim 23 and which is a fixed or mobile wireless communications terminal.
25. A telecommunications terminal according to claim 24 and which operates according to TETRA standard protocols.
26. A method for producing an encryption keystream to encrypt or decrypt information to be communicated from a first location to a second location, the method comprising generating a keystream; and dividing the keystream into blocks including encryption portions and synchronisation portions; wherein each of the blocks is sub-divided into a plurality of equally sized sub-blocks and comprises a plurality of separate encryption portions each in a respective one of the sub-blocks and a single synchronisation portion in one of the sub-blocks .
27. A method of encrypting or decrypting information to be communicated from a first location to a second location, the method including producing a keystream by the method according to claim 26 and combining the encryption portions of the keystream with information encrypted or to be encrypted.
28. A method of communicating information from a first location to a second location including encrypting the
information by the method according to claim 27 for transmission from the first location, receiving the encrypted information at a second location and decrypting the received information.
PCT/EP2004/050551 2003-05-19 2004-04-16 Processor and method for end-to-end encryption synchronisation WO2004102872A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP04727904A EP1627490B1 (en) 2003-05-19 2004-04-16 Processor and method for end-to-end encryption synchronisation
DE602004010903T DE602004010903T2 (en) 2003-05-19 2004-04-16 PROCESSOR AND METHOD FOR END-TO-END ENCRYPTION SYNCHRONIZATION
NO20055411A NO20055411L (en) 2003-05-19 2005-11-16 Processor, method, transmitter and terminal for use in communication

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0311571.4 2003-05-19
GB0311571A GB2402024B (en) 2003-05-19 2003-05-19 Processor,method,transmitter and terminal for use in communications

Publications (1)

Publication Number Publication Date
WO2004102872A1 true WO2004102872A1 (en) 2004-11-25

Family

ID=9958423

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2004/050551 WO2004102872A1 (en) 2003-05-19 2004-04-16 Processor and method for end-to-end encryption synchronisation

Country Status (7)

Country Link
EP (1) EP1627490B1 (en)
KR (1) KR20060003375A (en)
AT (1) ATE382219T1 (en)
DE (1) DE602004010903T2 (en)
GB (1) GB2402024B (en)
NO (1) NO20055411L (en)
WO (1) WO2004102872A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2439613B (en) * 2006-06-30 2008-08-27 Motorola Inc Processor, method and terminal for use in communications
KR101991664B1 (en) * 2017-03-15 2019-06-21 주식회사 카이 Method of encryption and decryption of contents based on block encryption and appratus thereof

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1209844A2 (en) * 2000-11-28 2002-05-29 Nokia Corporation maintaining end-to-end synchronization on telecommunications connection
GB2379843A (en) * 2001-06-29 2003-03-19 Sepura Ltd Stream cipher encryption system in which a keystream can be extended by concatenating with another keystream to allow encryption of variable length bursts

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5805705A (en) * 1996-01-29 1998-09-08 International Business Machines Corporation Synchronization of encryption/decryption keys in a data communication network
US5694473A (en) * 1996-05-17 1997-12-02 Motorola, Inc. Decryption of retransmitted data in an encrypted communication system
FI20002608A (en) * 2000-11-28 2002-05-29 Nokia Corp Maintaining from terminal to terminal synchronization with a telecommunications connection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1209844A2 (en) * 2000-11-28 2002-05-29 Nokia Corporation maintaining end-to-end synchronization on telecommunications connection
GB2379843A (en) * 2001-06-29 2003-03-19 Sepura Ltd Stream cipher encryption system in which a keystream can be extended by concatenating with another keystream to allow encryption of variable length bursts

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Terrestrial Trunked Radio (TETRA); Security; Synchronization mechanism for end-to-end encryption; ETSI ES 202 109", ETSI STANDARDS, EUROPEAN TELECOMMUNICATIONS STANDARDS INSTITUTE, SOPHIA-ANTIPO, FR, vol. TETRA-6, no. V111, January 2003 (2003-01-01), XP014004554, ISSN: 0000-0001 *

Also Published As

Publication number Publication date
GB2402024A (en) 2004-11-24
GB2402024B (en) 2005-07-13
EP1627490B1 (en) 2007-12-26
GB0311571D0 (en) 2003-06-25
DE602004010903D1 (en) 2008-02-07
NO20055411D0 (en) 2005-11-16
EP1627490A1 (en) 2006-02-22
KR20060003375A (en) 2006-01-10
DE602004010903T2 (en) 2008-05-08
NO20055411L (en) 2006-02-08
ATE382219T1 (en) 2008-01-15

Similar Documents

Publication Publication Date Title
CA2168717C (en) Variable security level encryption
KR100406245B1 (en) Information encryption method
US7620184B2 (en) Method for transmitting encrypted data, associated decrypting method, device for carrying out said methods and a mobile terminal for the incorporation thereof
US5060266A (en) Continuous cipher synchronization for cellular communication system
KR102609221B1 (en) Methods and systems for improved authenticated encryption in counter-based cryptographic systems
EP0446194B1 (en) Continous cipher synchronization for cellular communication system
EP0943195B1 (en) Use of duplex cipher algorithms for satellite channels with delay
EP1436941A2 (en) Apparatus, system and method for validating integrity of transmitted data
AU2006205295A1 (en) Apparatus and method for ciphering/deciphering a signal in a communication system
US20030035542A1 (en) Apparatus and method for securing communication information in CDMA communication system
EP1627490B1 (en) Processor and method for end-to-end encryption synchronisation
US20090010284A1 (en) Interleaved cryptographic synchronization
EP1634406B1 (en) Processor, method, transmitter and terminal for use in communications
EP1926275A1 (en) Method for data communication between user end devices
WO2005025127A1 (en) Transmitter/receiver apparatus and cryptographic communication method
GB2379588A (en) Encrypting/decrypting information in a wireless communication system
KR20190073665A (en) reliable data checking method of wireless encrypted communication
WO2002017655A2 (en) Method and apparatus for generating an unique encryption key stream for each data block in a frame
Zhang et al. Research on end-to-end encryption of TETRA
GB2439613A (en) Communicating synchronising information for encryption/decryption functions

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2004727904

Country of ref document: EP

Ref document number: 1020057022100

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 1020057022100

Country of ref document: KR

WWP Wipo information: published in national office

Ref document number: 2004727904

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 2004727904

Country of ref document: EP