Not applicable
This invention relates generally to secure communications, and more particularly to a system and method for establishing secure communications among portable communication devices having multiple modes or during a background mode.
Encryption of end-to-end communication is an increasingly important feature, particularly for wireless communication devices such as cellular phones and personal digital assistants (PDAs) to reduce the likelihood of eavesdropping. Encryption can be applied to voice (cellular interconnect or private call dispatch) as well as data. Using voice as an example, encryption algorithms typically employ a secret key that is used to encode voice on the source handset using an encryption algorithm. The coded voice stream can then be transmitted securely over a cellular communication system to a destination or target device. In order to decode the encrypted voice signal, the destination handset must use the same secret key that was used to encrypt the data and apply a decryption algorithm.
A classic problem in cryptography is securely sharing a secret key between two devices that can be miles or thousands of miles apart. Automatic Public Key (APK) exchange techniques are both a secure and convenient way to establish a secret key between two devices without transmitting the secret key in the clear over an insecure link. Diffie-Hellman and Elliptic Curve Cryptography are two well-known public-key algorithms that can be combined with protocols such as FNBDT (Future Narrow Band Digital Terminal) to implement APK systems. Although APK methods are convenient compared with alternatives such as manual key loaders, they are relatively slow as a result of being computationally intensive and because of the large keys needed for good security. To avoid this speed penalty, most secure devices use APK only to establish a symmetric (shared by both sides) traffic key and then revert to fast symmetric-key encryption algorithm such as DES or AES to encrypt and decrypt the traffic.
Because APK exchange is relatively slow on wireless devices, it noticeably delays call setup. Call set-up is the time elapsed between pressing the send or push-to-talk button and the call connecting with a secure traffic channel established. Excessive set-up tine is particularly harmful to the user experience on dispatch calls which are bursty in nature and are adversely affected by even small set-up delays. Thus, a system is needed that avoids unnecessary key exchanges and reduces or eliminates set-up delays for example when two portable communication devices already have an established secure link and the devices can operate in multiple modes.
A method and apparatus for providing end-to-end encryption between communication devices can provide assurance against eavesdropping of sensitive information using a secure and simple method to exchange keys between two parties prior to beginning a secure communication. Such a secure and simple method to exchange keys is known as Automatic Public Key (APK). The disadvantage of APK is that it slows down the initial setup of a secure link, particularly on wireless devices that have limited computing power and throughput. As wireless devices add more and more functionality or modes such as encrypted cellular voice (interconnect), private call (dispatch), secure data, and WLAN, there is an opportunity to link key exchanges between these modes to re-use keys established by APK in one mode and thereby speedup initiation of secure communication for another mode.
By re-using traffic keys established by one mode of communication for other communication modes, the lengthy APK process can be avoided. Also, APK operations can be performed in the background in anticipation of upcoming secure calls to speed call set-up.
In one embodiment of the present invention, once a traffic key is established, it can be shared among multiple services on multi-mode devices to avoid redundant key exchanges. As an example, suppose the user of a cell phone capable of multiple communications modes (interconnect voice, dispatch voice, peer-to-peer data, etc or different protocol modes such as CDMA, TDMA, GSM, WLAN, etc) initiates a secure interconnect call to a target handset. The two phones can follow a protocol to determine capabilities, establish a symmetric traffic key using APK techniques, and set-up an interconnect call using end-to-end voice encryption. Once a symmetric traffic key has been established between the handsets, the key is securely stored in each handset and can be used by other services such as dispatch or peer-to-peer data. In another example, a device that is roaming between coverage areas using different protocols (CDMA, TDMA, GSM, WLAN or even operating in different frequencies) can continue a secure communication without having to re-establish the symmetric traffic key.
In a first aspect of the present invention, a method of establishing secure communications in a multi-mode portable communication device can include the steps of establishing a symmetric traffic key between the multi-mode portable communication device and a second portable communication device in a first mode of communication, switching to at least a second mode of communication, and sharing the symmetric traffic key between the multi-mode portable communication device and the second portable communication device.
In a second aspect of the present invention, a method of establishing secure communications among a plurality of portable communication devices can include the steps of storing information associated with a predetermined number of other portable communication devices, establishing a symmetric traffic key using an APK key establishment process between a first portable communication device and the predetermined number of other portable communication devices during a background mode of the first portable communication device, and establishing a secure communication session between the first portable communication and at least one among the predetermined number of other portable communication devices without further requiring the APK key establishment process.
In a third aspect of the present invention, a portable communication device capable of operating in multiple modes includes a transceiver and a processor coupled to the transceiver. The processor can be programmed to establish a symmetric traffic key in a first mode of communication between the portable communication device and a second portable communication device, switch to at least a second mode of communication, and share the symmetric traffic key between the portable communication device and the second multi-mode portable communication device in the second mode of communication.
In yet another aspect of the present invention, a portable communication device capable of operating in multiple modes can include a transceiver and a processor coupled to the transceiver. The processor can be programmed to store information associated with a predetermined number of other portable communication devices, establish a symmetric traffic key using an APK key establishment process between a first portable communication device and the predetermined number of other portable communication devices during a background mode of the first portable communication device, and establish a secure communication session between the first portable communication and at least one among the predetermined number of other portable communication devices without further requiring the APK key establishment process.
Referring to
Referring to
Referring to
Referring to
As noted above and with reference to the method 70 of
Since a key established in one mode of communication (e.g. interconnect) is perfectly valid for another mode (e.g. dispatch) for the same set of communication devices, an APK process is only needed once when communicating using different modes as illustrated in method 50 of
If the user attempts secure communications with a device that does not support secure communications for a selected mode, the attempt will fail during the capabilities exchange phase when the target handset is unable to confirm the required set of capabilities. For example, if a successful secure interconnect session is followed by an attempt at secure dispatch with a device that does not support dispatch or secure dispatch, the session will fail in the call establishment phase. Similarly, if the capabilities response indicates that the key has expired on the target, the originator is signaled that an APK procedure is required to establish a fresh key.
Since the traffic key will be used for multiple sessions, security of this key is a concern. It is the responsibility of the handset designer to secure the traffic key within the handset so that it cannot be compromised. Methods are well known in the art for securing keys using hardware and software. However, even with the key well protected, it is wise to have a security policy that causes the key to expire after an established period of time, perhaps as frequently as every 24-hours or a longer period of time such as every 30-days. In any case, the two handsets that agreed on a session key using APK can continue to use this traffic key for multiple services and enjoy the performance benefits of a pre-established key until the key expires.
Referring once again to
It should also be noted that devices having a dispatch mode can greatly benefit from several of the embodiments of the present invention. In particular, secure dispatch performance is substantially improved because APK does not need to be performed after a dispatch session hang-time expires (typically about 6 seconds in Motorola's iDEN system). It should also be noted that another embodiment of the present invention can benefit peer-to-peer services such as talk-around systems (similar to FRS walkie-talkies). In this type of application the key can be exchanged using a cellular service (interconnect or dispatch utilizing a cellular network) and then stored for later use on an off-network service such as talk-around or FRS that may not have a facility for APK.
In light of the foregoing description of the invention, it should be recognized that the present invention can be realized in hardware, software, or a combination of hardware and software. A method and system for secure communications in a communication device according to the present invention can be realized in a centralized fashion in one computer system or processor, or in a distributed fashion where different elements are spread across several interconnected computer systems or processors (such as a microprocessor and a DSP). Any kind of computer system, or other apparatus adapted for carrying out the methods described herein, is suited. A typical combination of hardware and software could be a general purpose computer system with a computer program that, when being loaded and executed, controls the computer system such that it carries out the methods described herein.
Additionally, the description above is intended by way of example only and is not intended to limit the present invention in any way, except as set forth in the following claims.