EP1713201B1 - Gathering randomness in a smart card reader - Google Patents

Gathering randomness in a smart card reader Download PDF

Info

Publication number
EP1713201B1
EP1713201B1 EP05103029A EP05103029A EP1713201B1 EP 1713201 B1 EP1713201 B1 EP 1713201B1 EP 05103029 A EP05103029 A EP 05103029A EP 05103029 A EP05103029 A EP 05103029A EP 1713201 B1 EP1713201 B1 EP 1713201B1
Authority
EP
European Patent Office
Prior art keywords
smart card
card reader
random data
randomness
traffic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
EP05103029A
Other languages
German (de)
French (fr)
Other versions
EP1713201A1 (en
Inventor
Neil Adams
Michael S. Brown
Herb Little
Michael Mccallum
Michael K. Brown
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BlackBerry Ltd
Original Assignee
Research in Motion Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Research in Motion Ltd filed Critical Research in Motion Ltd
Priority to EP05103029A priority Critical patent/EP1713201B1/en
Priority to AT05103029T priority patent/ATE423413T1/en
Priority to DE602005012801T priority patent/DE602005012801D1/en
Priority to SG200601864A priority patent/SG126837A1/en
Priority to CA2541277A priority patent/CA2541277C/en
Priority to CN2006100740571A priority patent/CN1848134B/en
Publication of EP1713201A1 publication Critical patent/EP1713201A1/en
Priority to HK06112118.6A priority patent/HK1090489A1/en
Application granted granted Critical
Publication of EP1713201B1 publication Critical patent/EP1713201B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • 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
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/03Protecting confidentiality, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Definitions

  • wireless communication is insecure and vulnerable to attacks.
  • Various techniques may be employed to secure a wireless communication link or to make it less vulnerable to attacks.
  • cryptographic techniques may be employed to secure a wireless communication link.
  • the strength of an encrypted communication link depends on the quality of the cryptographic keys, which in turn, depends, at least in part, on the randomness of the keys. It is known to have a device maintain a randomness pool, i.e. a "pool" of random data, from which the device can extract random data. The extracted random data may be used in the generation of cryptographic keys.
  • US2004/188519 discloses a personal identification device comprising a smart card reader.
  • the device may generate encryption keys from randomized sources by sampling voice or image data or by software calculations.
  • US2004/109567 discloses a system for generating an encryption key in an embedded device, such as a device embedded in a printer.
  • a driver in the host computer extracts random data from the computer and sends it over a local or a network connection to the embedded device.
  • the device may use internal random data and the received random data as a source of entropy to seed the key generation.
  • the present invention provides a smart card reader that is arranged to incorporate traffic received from a smart card coupled to the smart card reader into a randomness pool of the smart card reader.
  • the traffic received from the smart card may be forwarded by the smart card reader via a wireless communication channel.
  • a smart card reader comprising: a randomness pool; a processor; a wireless communication interface through which said smart card reader is able to communicate with another device via a wireless communication channel; and a memory adapted to store executable code means which, when executed by said processor, causes the smart card reader to incorporate traffic received from a smart card coupled to said smart card reader into said randomness pool, wherein said traffic received from said smart card is to be forwarded by said smart card reader via said wireless communication channel.
  • a system comprising: a smart card reader having a randomness pool; and a device comprising a source of random data, said device having installed thereon a driver for said smart card reader, wherein said driver is arranged to extract random data from said source and to send said extracted random data securely over a wireless communication link to said smart card reader, and said smart card reader is arranged to incorporate said extracted random data into said randomness pool, and wherein said smart card reader is arranged to incorporate traffic received from a smart card inserted therein and to be forwarded to the device or to another device into said randomness pool.
  • a method for gathering randomness in a smart card reader comprising: incorporating traffic received from a smart card coupled to said smart card reader and to be forwarded to another device into a randomness pool of said smart card reader.
  • a machine readable medium comprising program code means which when being executed on a processor of the smart card reader described herein causes said reader to implement the method described herein.
  • a system 100 includes a wireless smart card reader 102, a mobile device 104 and a wireless-enabled personal computer 106.
  • Smart card reader 102 and mobile device 104 are able to communicate over a wireless communication link 108.
  • Smart card reader 102 and personal computer 106 are able to communicate over a wireless communication link 110.
  • wireless local area network standards for wireless communication links 108 and 110 includes the Institute of Electrical and Electronic Engineers (IEEE) for Wireless LAN MAC and Physical layer (PHY) 802.11 a, b, g and n specifications or future related standards, the Bluetooth® standard, the Zigbee TM standard and the like.
  • IEEE Institute of Electrical and Electronic Engineers
  • PHY Physical layer
  • a smart card 112 is shown inserted into smart card reader 102.
  • Smart cards are personalized security devices, defined by the ISO7816 standard and its derivatives, as published by the International Organization for Standardization.
  • a smart card may have a form factor of a credit card and may include a semiconductor device.
  • the semiconductor device may include a memory that can be programmed with security information (e.g., a private decryption key, a private signing key, biometrics, etc.) and may include a processor and/or dedicated logic, for example, dedicated decryption logic and/or dedicated signing logic.
  • a smart card may include a connector for powering the semiconductor device and performing serial communication with an external device.
  • smart card functionality may be embedded in a device having a different form factor and different communication protocol, for example a Universal Serial Bus (USB) device.
  • USB Universal Serial Bus
  • the person whose security information is stored on smart card 112 may use smart card reader 102 for identification, to unlock mobile device 104 and/or personal computer 106, and to digitally sign and/or decrypt messages sent by mobile device 104 and/or personal computer 106.
  • Smart card 112 may also include a random number generator.
  • mobile device 104 may be able to send and receive e-mail messages via an e-mail server (not shown). If, for example, the Secure Multipurpose Internet Mail Extensions (S/MIME) protocol is used, e-mail messages received at mobile device 104 are encrypted using a symmetric algorithm with a random message key generated by the sender of the e-mail message. The e-mail message also includes the message key, encrypted using the public key of the recipient. Upon receipt of an encrypted e-mail message, mobile device 104 may extract the encrypted message key and send it to smart card reader 102 via communication link 108.
  • S/MIME Secure Multipurpose Internet Mail Extensions
  • Smart card reader 102 may send the encrypted message key to smart card 112, and the decryption engine of smart card 112 may decrypt the encrypted message key using the recipient's private decryption key, which is stored in smart card 112. Smart card reader 102 may retrieve the decrypted message key from smart card 112 and forward it to mobile device 104 via communication link 108 so that mobile device 104 can decrypt the received e-mail message.
  • the smart card 112 may prevent unauthorized use of the recipient's private decryption key by requiring that a password or personal identification number (PIN) be supplied before allowing the decryption operation to proceed.
  • PIN personal identification number
  • mobile device 104 may send a hash of the contents of the e-mail message to smart card reader 102 over communication link 108.
  • Smart card reader 102 may pass the hash to smart card 112, which may produce a digital signature from the hash and the sender's private signing key, which is stored in smart card 112.
  • Smart card 112 may then pass the digital signature to smart card reader 102, which may forward it to mobile device 104 via communication link 108 so that mobile device 104 can transmit it along with the e-mail message to the e-mail server.
  • smart card 112 may prevent unauthorized use of the recipient's private signing key by requiring that a password or PIN be supplied before allowing the signing operation to proceed.
  • the unencrypted message key should be sent securely over communication link 108 from smart card reader 102 to mobile device 104 to prevent a third party from retrieving the message key from communication link 108.
  • the hash to be signed should be sent authentically over communication link 108 from smart card reader 102 to mobile device 104 to prevent a third party from modifying the hash and thereby causing smart card 112 to produce a signature using a hash different from the hash of the intended message. Therefore communication link 108 may need to be secured using cryptographic techniques.
  • the person whose security information is stored on smart card 112 may wish to digitally sign outgoing e-mail sent from personal computer 106 or to decrypt incoming encrypted e-mail received at personal computer 106. This will require personal computer 106 to communicate with smart card reader 102 in much the same way as mobile device 104 communicates with smart card reader 102 as described above. For this purpose, or for other security-related measures (e.g. to permit the person to use personal computer 106), communication link 110 may need to be secured using cryptographic techniques.
  • smart card reader 102 may need to generate various cryptographic keys. For example, if communication links 108 and 110 are Bluetooth® communication links, then a relatively short (up to 16-digits) key may be used for the Bluetooth® pairing procedure.
  • An additional layer of security for communication links 108 and 110 may involve encryption with one or more additional keys. These additional keys may be generated from a shared secret between smart card reader 102 and mobile device 104, or smart card reader 102 and personal computer 106, and one or more symmetric keys based on this shared secret may be generated using known Diffie-Hellman and simple password exponential key exchange (SPEKE) methods and variants thereof.
  • SPEKE simple password exponential key exchange
  • random session keys may be generated for each individual communication session over communication link 108 or 110.
  • the strength of the encrypted channels between smart card reader 102 and mobile device 104 and personal computer 106 may depend, at least in part, on the quality of the encryption keys. The more random the data used to generate these keys, the less likely that an attacker will be able to figure out the keys, and the more secure the communication link.
  • Smart card reader 102 may therefore maintain a "randomness pool”, also known as a “random pool” or an “entropy pool”.
  • a randomness pool is a “pool” of random data, which is “stirred” as input is incorporated into the pool, to ensure that there is no discernible pattern.
  • Many different implementations of randomness pools and corresponding pseudo-random number generators are known.
  • smart card reader 102 may store a 256-byte (2048-bit) long array, which is a list of all numbers from 0 to 255.
  • a function may be used to permute the list based on input.
  • a non-exhaustive list of examples for the function includes techniques of the RC4 TM encryption algorithm (also known as ARCFOUR), hashing functions and the like.
  • smart card reader 102 may implement a pseudo-random number generator based on the Yarrow pseudo-random number generator described in J. Kelsey, B. Schneier and N. Ferguson, "Yarrow-160: Notes on the Design and Analysis of the Yarrow Cryptographic Pseudorandom Number Generator", Sixth Annual Workshop on Selected Areas in Cryptography (Springer Verlag, August 1999 ).
  • FIG. 2 is a block diagram of system 100, according to some embodiments of the invention. For clarity, some components of smart card reader 102, mobile device 104, and personal computer 106 are not shown in Figure 2 and are not described explicitly below.
  • Smart card reader 102, mobile device 104 and personal computer 106 include antennae 202, 212, and 222, respectively.
  • antennae 202, 212 and 222 includes dipole antennae, monopole antennae, multilayer ceramic antennae, planar inverted-F antennae, loop antennae, shot antennae, dual antennae, omnidirectional antennae and any other suitable antennae.
  • Smart card reader 102, mobile device 104 and personal computer 106 include communication interfaces 204, 214, and 224, respectively, which are coupled to antennae 202, 212, and 222, respectively.
  • a non-exhaustive list of examples for standards with which communication interfaces 204, 214 and 224 may be compatible includes 802.11 a, b, g and n and future related standards, the Bluetooth® standard, the Zigbee TM standard and the like.
  • Smart card reader 102 also includes a processor 206 coupled to communication interface 204, and a memory 208, which may be fixed in or removable from smart card reader 102.
  • Memory 208 may be coupled to processor 206 or partly embedded in processor 206.
  • Communication interface 204 and processor 206 may be part of the same integrated circuit or in separate integrated circuits.
  • processor 206 and memory 208 may be part of the same integrated circuit or in separate integrated circuits.
  • Mobile device 104 also includes a processor 216 coupled to communication interface 214, and a memory 218, which may be fixed in or removable from mobile device 104.
  • Memory 218 may be coupled to processor 216 or partly embedded in processor 216.
  • Communication interface 214 and processor 216 may be part of the same integrated circuit or in separate integrated circuits.
  • processor 216 and memory 218 may be part of the same integrated circuit or in separate integrated circuits.
  • Personal computer 106 also includes a processor 226 coupled to communication interface 224, and a memory 228, which may be fixed in or removable from personal computer 106.
  • Memory 228 may be coupled to processor 226 or partly embedded in processor 226.
  • Communication interface 224 and processor 226 may be part of the same integrated circuit or in separate integrated circuits.
  • processor 226 and memory 228 may be part of the same integrated circuit or in separate integrated circuits.
  • processors 206, 216 and 226 includes a central processing unit (CPU), a digital signal processor (DSP), a reduced instruction set computer (RISC), a complex instruction set computer (CISC) and the like. Furthermore, processors 206, 216 and 226 may be part of an application specific integrated circuit (ASIC) or may be a part of an application specific standard product (ASSP).
  • CPU central processing unit
  • DSP digital signal processor
  • RISC reduced instruction set computer
  • CISC complex instruction set computer
  • ASIC application specific integrated circuit
  • ASSP application specific standard product
  • a non-exhaustive list of examples for memories 206, 216 and 226 includes any combination of the following:
  • Memories 218 and 228 may store respective drivers 219 and 229 for smart card reader 102.
  • Drivers 219 and 229 may implement portions of the methods described hereinabove.
  • Memory 208 may store executable code 209 which, when executed by processor 206, may cause smart card reader 102 to incorporate data into its randomness pool.
  • Executable code 209 may implement portions of the methods described hereinabove.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Credit Cards Or The Like (AREA)
  • Storage Device Security (AREA)
  • Developing Agents For Electrophotography (AREA)
  • Devices For Checking Fares Or Tickets At Control Points (AREA)
  • Traffic Control Systems (AREA)
  • Paper (AREA)
  • Time Recorders, Dirve Recorders, Access Control (AREA)

Abstract

A device coupled to a smart card reader (102) may request random data from a smart card (112) inserted into the smart card reader, and the smart card reader may incorporate the random data into its randomness pool. A device having a source of random data may have a driver installed thereon for another device and the driver may extract random data from the source and transmit it securely over a wireless communication link to the other device. The other device, which may be a smart card reader, may incorporate the extracted random data into its randomness pool. A smart card reader may incorporate traffic received from a smart card inserted therein into its randomness pool.

Description

  • In general, wireless communication is insecure and vulnerable to attacks. Various techniques may be employed to secure a wireless communication link or to make it less vulnerable to attacks. For example, cryptographic techniques may be employed to secure a wireless communication link. The strength of an encrypted communication link depends on the quality of the cryptographic keys, which in turn, depends, at least in part, on the randomness of the keys. It is known to have a device maintain a randomness pool, i.e. a "pool" of random data, from which the device can extract random data. The extracted random data may be used in the generation of cryptographic keys.
  • US2004/188519 discloses a personal identification device comprising a smart card reader. The device may generate encryption keys from randomized sources by sampling voice or image data or by software calculations.
  • US2004/109567 discloses a system for generating an encryption key in an embedded device, such as a device embedded in a printer. According to US2004/109567 , a driver in the host computer extracts random data from the computer and sends it over a local or a network connection to the embedded device. The device may use internal random data and the received random data as a source of entropy to seed the key generation.
  • GENERAL
  • In a main aspect, the present invention provides a smart card reader that is arranged to incorporate traffic received from a smart card coupled to the smart card reader into a randomness pool of the smart card reader. The traffic received from the smart card may be forwarded by the smart card reader via a wireless communication channel. [0001d] In one embodiment there is provided a smart card reader comprising: a randomness pool; a processor; a wireless communication interface through which said smart card reader is able to communicate with another device via a wireless communication channel; and a memory adapted to store executable code means which, when executed by said processor, causes the smart card reader to incorporate traffic received from a smart card coupled to said smart card reader into said randomness pool, wherein said traffic received from said smart card is to be forwarded by said smart card reader via said wireless communication channel.
  • In another embodiment there is provided a system comprising: a smart card reader having a randomness pool; and a device comprising a source of random data, said device having installed thereon a driver for said smart card reader, wherein said driver is arranged to extract random data from said source and to send said extracted random data securely over a wireless communication link to said smart card reader, and said smart card reader is arranged to incorporate said extracted random data into said randomness pool, and wherein said smart card reader is arranged to incorporate traffic received from a smart card inserted therein and to be forwarded to the device or to another device into said randomness pool.
  • In yet another embodiment there is provided a method for gathering randomness in a smart card reader, the method comprising: incorporating traffic received from a smart card coupled to said smart card reader and to be forwarded to another device into a randomness pool of said smart card reader.
  • In yet another embodiment there is provided a machine readable medium comprising program code means which when being executed on a processor of the smart card reader described herein causes said reader to implement the method described herein.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Embodiments of the invention are illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like reference numerals indicate corresponding, analogous or similar elements, and in which:
    • Figure 1 is a schematic diagram of an exemplary system; and
    • Figure 2 is a block diagram of the exemplary system of Figure 1.
  • It will be appreciated that for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity.
  • DESCRIPTION OF PREFERRED EMBODIMENTS
  • In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of embodiments of the invention. However it will be understood by those of ordinary skill in the art that the embodiments of the invention may be practiced without these specific details. In other instances, well-known methods, procedures, components and circuits have not been described in detail so as not to obscure the embodiments of the invention.
  • Reference is made to Figure 1, which is a schematic diagram of an exemplary system, according to some embodiments of the invention. A system 100 includes a wireless smart card reader 102, a mobile device 104 and a wireless-enabled personal computer 106. Smart card reader 102 and mobile device 104 are able to communicate over a wireless communication link 108. Smart card reader 102 and personal computer 106 are able to communicate over a wireless communication link 110. A non-exhaustive list of examples of wireless local area network standards for wireless communication links 108 and 110 includes the Institute of Electrical and Electronic Engineers (IEEE) for Wireless LAN MAC and Physical layer (PHY) 802.11 a, b, g and n specifications or future related standards, the Bluetooth® standard, the Zigbee standard and the like.
  • A smart card 112 is shown inserted into smart card reader 102. Smart cards are personalized security devices, defined by the ISO7816 standard and its derivatives, as published by the International Organization for Standardization. A smart card may have a form factor of a credit card and may include a semiconductor device. The semiconductor device may include a memory that can be programmed with security information (e.g., a private decryption key, a private signing key, biometrics, etc.) and may include a processor and/or dedicated logic, for example, dedicated decryption logic and/or dedicated signing logic. A smart card may include a connector for powering the semiconductor device and performing serial communication with an external device. Alternatively, smart card functionality may be embedded in a device having a different form factor and different communication protocol, for example a Universal Serial Bus (USB) device. The person whose security information is stored on smart card 112 may use smart card reader 102 for identification, to unlock mobile device 104 and/or personal computer 106, and to digitally sign and/or decrypt messages sent by mobile device 104 and/or personal computer 106. Smart card 112 may also include a random number generator.
  • For example, mobile device 104 may be able to send and receive e-mail messages via an e-mail server (not shown). If, for example, the Secure Multipurpose Internet Mail Extensions (S/MIME) protocol is used, e-mail messages received at mobile device 104 are encrypted using a symmetric algorithm with a random message key generated by the sender of the e-mail message. The e-mail message also includes the message key, encrypted using the public key of the recipient. Upon receipt of an encrypted e-mail message, mobile device 104 may extract the encrypted message key and send it to smart card reader 102 via communication link 108. Smart card reader 102 may send the encrypted message key to smart card 112, and the decryption engine of smart card 112 may decrypt the encrypted message key using the recipient's private decryption key, which is stored in smart card 112. Smart card reader 102 may retrieve the decrypted message key from smart card 112 and forward it to mobile device 104 via communication link 108 so that mobile device 104 can decrypt the received e-mail message. The smart card 112 may prevent unauthorized use of the recipient's private decryption key by requiring that a password or personal identification number (PIN) be supplied before allowing the decryption operation to proceed.
  • Similarly, to add a digital signature to an e-mail message being sent by mobile device 104, mobile device 104 may send a hash of the contents of the e-mail message to smart card reader 102 over communication link 108. Smart card reader 102 may pass the hash to smart card 112, which may produce a digital signature from the hash and the sender's private signing key, which is stored in smart card 112. Smart card 112 may then pass the digital signature to smart card reader 102, which may forward it to mobile device 104 via communication link 108 so that mobile device 104 can transmit it along with the e-mail message to the e-mail server. Again, smart card 112 may prevent unauthorized use of the recipient's private signing key by requiring that a password or PIN be supplied before allowing the signing operation to proceed.
  • The unencrypted message key should be sent securely over communication link 108 from smart card reader 102 to mobile device 104 to prevent a third party from retrieving the message key from communication link 108. Similarly, the hash to be signed should be sent authentically over communication link 108 from smart card reader 102 to mobile device 104 to prevent a third party from modifying the hash and thereby causing smart card 112 to produce a signature using a hash different from the hash of the intended message. Therefore communication link 108 may need to be secured using cryptographic techniques.
  • The person whose security information is stored on smart card 112 may wish to digitally sign outgoing e-mail sent from personal computer 106 or to decrypt incoming encrypted e-mail received at personal computer 106. This will require personal computer 106 to communicate with smart card reader 102 in much the same way as mobile device 104 communicates with smart card reader 102 as described above. For this purpose, or for other security-related measures (e.g. to permit the person to use personal computer 106), communication link 110 may need to be secured using cryptographic techniques.
  • To secure communication links 108 and 110, smart card reader 102 may need to generate various cryptographic keys. For example, if communication links 108 and 110 are Bluetooth® communication links, then a relatively short (up to 16-digits) key may be used for the Bluetooth® pairing procedure. An additional layer of security for communication links 108 and 110 may involve encryption with one or more additional keys. These additional keys may be generated from a shared secret between smart card reader 102 and mobile device 104, or smart card reader 102 and personal computer 106, and one or more symmetric keys based on this shared secret may be generated using known Diffie-Hellman and simple password exponential key exchange (SPEKE) methods and variants thereof. Moreover, random session keys may be generated for each individual communication session over communication link 108 or 110.
  • The strength of the encrypted channels between smart card reader 102 and mobile device 104 and personal computer 106 may depend, at least in part, on the quality of the encryption keys. The more random the data used to generate these keys, the less likely that an attacker will be able to figure out the keys, and the more secure the communication link.
  • Smart card reader 102 may therefore maintain a "randomness pool", also known as a "random pool" or an "entropy pool". A randomness pool is a "pool" of random data, which is "stirred" as input is incorporated into the pool, to ensure that there is no discernible pattern. Many different implementations of randomness pools and corresponding pseudo-random number generators are known.
  • For example, smart card reader 102 may store a 256-byte (2048-bit) long array, which is a list of all numbers from 0 to 255. A function may be used to permute the list based on input. A non-exhaustive list of examples for the function includes techniques of the RC4 encryption algorithm (also known as ARCFOUR), hashing functions and the like. In another example, smart card reader 102 may implement a pseudo-random number generator based on the Yarrow pseudo-random number generator described in J. Kelsey, B. Schneier and N. Ferguson, "Yarrow-160: Notes on the Design and Analysis of the Yarrow Cryptographic Pseudorandom Number Generator", Sixth Annual Workshop on Selected Areas in Cryptography (Springer Verlag, August 1999).
  • The following is a non-exhaustive list of examples for methods to gather randomness for smart card reader 102. Any of these methods, or any combination of these methods, may be used.
    • (1) Randomness injected at manufacturing. A source of randomness at the manufacturing facility may be used to generate a random value to add to the randomness pool of smart card reader 102. For example, the source of randomness may be a pseudo-random number generator. Although an attacker may know the algorithm used by the pseudo-random number generator, the attacker does not know which value was used to seed the pseudo-random number generator and is unaware of the conditions and circumstances at the time the random value was added to the randomness pool of smart card reader 102.
    • (2) Random data injected to the smart card reader via an out-of-band communication link. Smart card reader 102 may include a connector, for example, a connector that accepts a USB cable. Smart card reader 102 may be connectable to personal computer 106 using a USB cable 114, for example, in order to charge a battery of smart card reader 102 and/or to upload software to smart card reader 102. The USB cable is an example of an out-of-band communication link, since it is authentic and secure and not vulnerable to attackers attempting to attack communication link 110. Personal computer 106 may include a randomness pool and may be able to provide smart card reader 102 with random data via the out-of-band communication link, and smart card reader 102 may then incorporate the random data into its randomness pool. Similarly, smart card reader 102 may be connectable to mobile device 104 via an out-of-band communication link, for example, a USB cable. Mobile device 104 may include a randomness pool and may be able to provide smart card reader 102 with random data via the out-of-band communication link, and smart card reader 102 may then incorporate the random data into its randomness pool.
    • (3) Secure transmission of random data over a wireless communication link to the smart card reader. Mobile device 104 may have a smart card reader driver installed thereon. Mobile device 104 may have a source of random data. The smart card reader driver installed on mobile device 104 may extract random data from the source of random data in mobile device 104, and may send the extracted random data securely to smart card reader 102 over communication link 108. Smart card reader 102 may incorporate the extracted random data received securely over communication link 108 into its own randomness pool. Similarly, personal computer 106 may have a smart card reader driver installed thereon. Personal computer 106 may have a source of random data. The smart card reader driver installed on personal computer 106 may extract random data from the source of random data in personal computer 106, and may send the extracted random data securely to smart card reader 102 over communication link 110. Smart card reader 102 may incorporate the extracted random data received securely over communication link 110 into its own randomness pool. This method may be performed periodically.
    • (4) Traffic received from the smart card is incorporated into the smart card reader's randomness pool. Smart card reader 102 may incorporate traffic received from smart card 112 into its randomness pool. Although some of the data stored on smart card 112 may not be random (e.g. biometrics, a person's name and other identification), the order in which this data is requested by smart card reader 102 may be unpredictable. Random elements may be included in some of the traffic received from smart card 112 by smart card reader 102, for example, the decrypted message key for an S/MIME e-mail message received at mobile device 102 or personal computer 106, and the digital signature produced by smart card 112 from the hash of the contents of an e-mail message and the e-mail sender's private signing key.
    • (5) Random data from a random number generator of a smart card inserted in the smart card reader is incorporated into the smart card reader's randomness pool. Smart card 112 may have a random number generator. A device having a driver for smart card reader 102 installed thereon, such as mobile device 102 or personal computer 106, may request random data from smart card 112 via smart card reader 102. Since this random data is traffic received by smart card reader 102 from smart card 112, then if smart card reader 102 implements method (4) above of incorporating traffic received from smart card 112 in its randomness pool, this random data generated by the random number generator of smart card 112 will be incorporated into the randomness pool of smart card reader 102.
    • (6) Incorporating into the randomness pool of the smart card reader a random session key generated by another device that is used to encrypt traffic between the device and the smart card reader. Mobile device 102 or personal computer 106 may generate a random session key and use it to encrypt traffic to smart card reader 102 over communication link 108 or 110, respectively. Smart card reader 102 may incorporate the random session key into its randomness pool.
  • Figure 2 is a block diagram of system 100, according to some embodiments of the invention. For clarity, some components of smart card reader 102, mobile device 104, and personal computer 106 are not shown in Figure 2 and are not described explicitly below.
  • Smart card reader 102, mobile device 104 and personal computer 106 include antennae 202, 212, and 222, respectively. A non-exhaustive list of examples for antennae 202, 212 and 222 includes dipole antennae, monopole antennae, multilayer ceramic antennae, planar inverted-F antennae, loop antennae, shot antennae, dual antennae, omnidirectional antennae and any other suitable antennae.
  • Smart card reader 102, mobile device 104 and personal computer 106 include communication interfaces 204, 214, and 224, respectively, which are coupled to antennae 202, 212, and 222, respectively. A non-exhaustive list of examples for standards with which communication interfaces 204, 214 and 224 may be compatible includes 802.11 a, b, g and n and future related standards, the Bluetooth® standard, the Zigbee standard and the like.
  • Smart card reader 102 also includes a processor 206 coupled to communication interface 204, and a memory 208, which may be fixed in or removable from smart card reader 102. Memory 208 may be coupled to processor 206 or partly embedded in processor 206. Communication interface 204 and processor 206 may be part of the same integrated circuit or in separate integrated circuits. Similarly, processor 206 and memory 208 may be part of the same integrated circuit or in separate integrated circuits.
  • Mobile device 104 also includes a processor 216 coupled to communication interface 214, and a memory 218, which may be fixed in or removable from mobile device 104. Memory 218 may be coupled to processor 216 or partly embedded in processor 216. Communication interface 214 and processor 216 may be part of the same integrated circuit or in separate integrated circuits. Similarly, processor 216 and memory 218 may be part of the same integrated circuit or in separate integrated circuits.
  • Personal computer 106 also includes a processor 226 coupled to communication interface 224, and a memory 228, which may be fixed in or removable from personal computer 106. Memory 228 may be coupled to processor 226 or partly embedded in processor 226. Communication interface 224 and processor 226 may be part of the same integrated circuit or in separate integrated circuits. Similarly, processor 226 and memory 228 may be part of the same integrated circuit or in separate integrated circuits.
  • A non-exhaustive list of examples for processors 206, 216 and 226 includes a central processing unit (CPU), a digital signal processor (DSP), a reduced instruction set computer (RISC), a complex instruction set computer (CISC) and the like. Furthermore, processors 206, 216 and 226 may be part of an application specific integrated circuit (ASIC) or may be a part of an application specific standard product (ASSP).
  • A non-exhaustive list of examples for memories 206, 216 and 226 includes any combination of the following:
    1. a) semiconductor devices such as registers, latches, read only memory (ROM), mask ROM, electrically erasable programmable read only memory devices (EEPROM), flash memory devices, non-volatile random access memory devices (NVRAM), synchronous dynamic random access memory (SDRAM) devices, RAMBUS dynamic random access memory (RDRAM) devices, double data rate (DDR) memory devices, static random access memory (SRAM), universal serial bus (USB) removable memory, and the like;
    2. b) optical devices, such as compact disk read only memory (CD ROM), and the like; and
    3. c) magnetic devices, such as a hard disk, a floppy disk, a magnetic tape, and the like.
  • Memories 218 and 228 may store respective drivers 219 and 229 for smart card reader 102. Drivers 219 and 229 may implement portions of the methods described hereinabove.
  • Memory 208 may store executable code 209 which, when executed by processor 206, may cause smart card reader 102 to incorporate data into its randomness pool. Executable code 209 may implement portions of the methods described hereinabove.
  • While certain features of the invention have been illustrated and described herein, many modifications, substitutions, changes, and equivalents will now occur to those of ordinary skill in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes.

Claims (14)

  1. A system (100) comprising:
    a smart card reader (102) having a randomness pool; and
    a device (104, 106) comprising a source of random data, said device (104, 106) having installed thereon a driver (219, 229) for said smart card reader (102),
    wherein said driver (219, 229) is arranged to extract random data from said source and to send said extracted random data securely over a wireless communication link (108, 110) to said smart card reader (102), and said smart card reader (102) is arranged to incorporate said extracted random data into said randomness pool, and
    wherein said smart card reader (102) is arranged to incorporate traffic received from a smart card (112) inserted therein and to be forwarded to the device (104, 106) or to another device (104,106) into said randomness pool.
  2. The system (100) of claim 1, wherein said smart card (112) has a random number generator and said traffic comprises random data generated by said random number generator.
  3. The system (100) of claim 1 or claim 2, wherein an implementation of said randomness pool comprises a list, and said smart card reader (102) is arranged to incorporate said traffic into said randomness pool by permuting said list according to a function of at least said traffic and said smart card reader (102) is arranged to incorporate said extracted random data into said randomness pool by permuting said list according to a function of at least said extracted random data.
  4. The system (100) of any one of claims 1 to 3, wherein said device is a mobile device (104) and/or a personal computer (106).
  5. The system (100) of any one of claims 1 to 4, wherein said wireless communication link (108, 110) is a Bluetooth® communication link.
  6. A smart card reader (102) comprising:
    a randomness pool;
    a processor (206);
    a wireless communication interface (204) through which said smart card reader (102) is able to communicate with another device (104, 106) via a wireless communication channel; and
    a memory (208) adapted to store executable code means (209) which, when executed by said processor (206), causes the smart card reader (102) to incorporate traffic received from a smart card (112) coupled to said smart card reader (102) into said randomness pool, wherein said traffic received from said smart card (112) is to be forwarded by said smart card reader (102) via said wireless communication channel.
  7. The smart card reader (102) of claim 6, wherein an implementation of said randomness pool comprises a list, and said executable code means (209), when executed by said processor (206), incorporates said traffic into said randomness pool by permuting said list according to a function of at least said traffic.
  8. The smart card reader (102) of claim 6 or claim 7, wherein said traffic comprises random data generated by a random number generator of said smart card.
  9. A method for gathering randomness in a smart card reader (102), the method comprising:
    incorporating traffic received from a smart card (112) coupled to said smart card reader (102) and to be forwarded to another device (104, 106) into a randomness pool of said smart card reader (102).
  10. The method of claim 9, wherein said smart card (112) has a random number generator and said traffic includes random data requested by a device (104, 106) coupled to said smart card reader (102).
  11. The method of claim 9 or claim 10, wherein an implementation of said randomness pool comprises a list and incorporating said traffic into said randomness pool comprises permuting said list according to a function of at least said traffic.
  12. The method of any one of claims 9 to 11, the method further comprising:
    receiving random data transmitted securely over a wireless link (108, 110) by a device (104, 106) comprising a source of random data; and
    incorporating said received random data in said randomness pool.
  13. The method of claim 12, wherein said wireless communication link (108, 110) is a Bluetooth® communication link.
  14. A machine readable medium (208) comprising program code means which when being executed on a processor (206) of the smart card reader (102) of any one of claims 6 to 8 causes said reader to implement the method of any one of claim 9 to 13.
EP05103029A 2005-04-15 2005-04-15 Gathering randomness in a smart card reader Active EP1713201B1 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
EP05103029A EP1713201B1 (en) 2005-04-15 2005-04-15 Gathering randomness in a smart card reader
AT05103029T ATE423413T1 (en) 2005-04-15 2005-04-15 CAPTURE OF RANDOMNESS IN A CHIP CARD READER
DE602005012801T DE602005012801D1 (en) 2005-04-15 2005-04-15 Acquisition of randomness in a chip card reader
SG200601864A SG126837A1 (en) 2005-04-15 2006-03-20 Gathering randomness in a wireless smart card reader
CA2541277A CA2541277C (en) 2005-04-15 2006-03-30 Gathering randomness in a wireless smart card reader
CN2006100740571A CN1848134B (en) 2005-04-15 2006-04-04 Gathering randomness in a wireless smart card reader
HK06112118.6A HK1090489A1 (en) 2005-04-15 2006-11-03 Gathering randomness in a smart card reader

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP05103029A EP1713201B1 (en) 2005-04-15 2005-04-15 Gathering randomness in a smart card reader

Publications (2)

Publication Number Publication Date
EP1713201A1 EP1713201A1 (en) 2006-10-18
EP1713201B1 true EP1713201B1 (en) 2009-02-18

Family

ID=34939322

Family Applications (1)

Application Number Title Priority Date Filing Date
EP05103029A Active EP1713201B1 (en) 2005-04-15 2005-04-15 Gathering randomness in a smart card reader

Country Status (7)

Country Link
EP (1) EP1713201B1 (en)
CN (1) CN1848134B (en)
AT (1) ATE423413T1 (en)
CA (1) CA2541277C (en)
DE (1) DE602005012801D1 (en)
HK (1) HK1090489A1 (en)
SG (1) SG126837A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1881433B1 (en) * 2006-07-17 2012-04-18 Research In Motion Limited Method and apparatus for the management of multiple connections to a security token access device
US8079068B2 (en) 2006-07-17 2011-12-13 Research In Motion Limited Management of multiple connections to a security token access device
CN102236770B (en) * 2010-04-20 2015-05-20 公安部第一研究所 Novel machine-readable travel document access control method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6628786B1 (en) * 1997-09-30 2003-09-30 Sun Microsystems, Inc. Distributed state random number generator and method for utilizing same
FR2817361B1 (en) * 2000-11-28 2003-01-24 St Microelectronics Sa RANDOM SIGNAL GENERATOR
US20040109567A1 (en) 2002-12-05 2004-06-10 Canon Kabushiki Kaisha Encryption key generation in embedded devices
US6983882B2 (en) 2003-03-31 2006-01-10 Kepler, Ltd. Personal biometric authentication and authorization device

Also Published As

Publication number Publication date
DE602005012801D1 (en) 2009-04-02
CA2541277A1 (en) 2006-10-15
SG126837A1 (en) 2006-11-29
ATE423413T1 (en) 2009-03-15
HK1090489A1 (en) 2006-12-22
CN1848134A (en) 2006-10-18
CN1848134B (en) 2013-02-27
CA2541277C (en) 2011-05-10
EP1713201A1 (en) 2006-10-18

Similar Documents

Publication Publication Date Title
US7792290B2 (en) Gathering randomness in a wireless smart card reader
US7726566B2 (en) Controlling connectivity of a wireless smart card reader
US8316416B2 (en) Securely using a display to exchange information
US8024809B2 (en) System and method for deleting confidential information
US9143323B2 (en) Securing a link between two devices
CN100590639C (en) System and method for managing multiple smart card sessions
US20060218397A1 (en) Apparatus and methods for sharing cryptography information
CA2539660C (en) Securely using a display to exchange information
CA2541364C (en) Controlling connectivity of a wireless smart card reader
US9154481B1 (en) Decryption of a protected resource on a cryptographic device using wireless communication
EP1713201B1 (en) Gathering randomness in a smart card reader
CA2539658C (en) Securing a link between devices
CN101094073B (en) Two-factor content protection
EP1705854A1 (en) Method and apparatus for sharing cryptographic information in a mobile communication system
EP1710970B1 (en) System and Method for Deleting Confidential Information

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20050428

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR LV MK YU

REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1090489

Country of ref document: HK

AKX Designation fees paid

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR

AXX Extension fees paid

Extension state: LV

Payment date: 20050428

Extension state: AL

Payment date: 20050428

Extension state: MK

Payment date: 20050428

Extension state: YU

Payment date: 20050428

Extension state: HR

Payment date: 20050428

Extension state: BA

Payment date: 20050428

17Q First examination report despatched

Effective date: 20070716

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RTI1 Title (correction)

Free format text: GATHERING RANDOMNESS IN A SMART CARD READER

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR LV MK YU

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REF Corresponds to:

Ref document number: 602005012801

Country of ref document: DE

Date of ref document: 20090402

Kind code of ref document: P

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

Ref country code: NL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

Ref country code: LT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

Ref country code: FI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

Ref country code: ES

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090529

NLV1 Nl: lapsed or annulled due to failure to fulfill the requirements of art. 29p and 29m of the patents act
PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: PL

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

Ref country code: IS

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090618

Ref country code: AT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

Ref country code: SE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090518

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090727

REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1090489

Country of ref document: HK

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20091119

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090518

Ref country code: CH

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20090430

Ref country code: LI

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20090430

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20090415

Ref country code: MC

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20090430

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090519

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20090415

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090819

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: TR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20090218

REG Reference to a national code

Ref country code: DE

Ref legal event code: R082

Ref document number: 602005012801

Country of ref document: DE

Representative=s name: MERH-IP MATIAS ERNY REICHL HOFFMANN, DE

REG Reference to a national code

Ref country code: DE

Ref legal event code: R082

Ref document number: 602005012801

Country of ref document: DE

Representative=s name: MERH-IP MATIAS ERNY REICHL HOFFMANN, DE

Effective date: 20140925

Ref country code: DE

Ref legal event code: R081

Ref document number: 602005012801

Country of ref document: DE

Owner name: BLACKBERRY LIMITED, WATERLOO, CA

Free format text: FORMER OWNER: RESEARCH IN MOTION LTD., WATERLOO, ONTARIO, CA

Effective date: 20140925

Ref country code: DE

Ref legal event code: R082

Ref document number: 602005012801

Country of ref document: DE

Representative=s name: MERH-IP MATIAS ERNY REICHL HOFFMANN PATENTANWA, DE

Effective date: 20140925

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 12

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 13

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 14

REG Reference to a national code

Ref country code: DE

Ref legal event code: R082

Ref document number: 602005012801

Country of ref document: DE

Ref country code: DE

Ref legal event code: R081

Ref document number: 602005012801

Country of ref document: DE

Owner name: MALIKIE INNOVATIONS LTD., IE

Free format text: FORMER OWNER: BLACKBERRY LIMITED, WATERLOO, ONTARIO, CA

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20240423

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20240429

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20240430

Year of fee payment: 20