IP Library Granted Patent US 6,944,760
Granted Patent B2
US 6,944,760 · App. 09/866,037 · Granted Sep 13, 2005

Method and apparatus for protecting identities of mobile devices on a wireless network

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,944,760
App. No.
09/866,037
Granted
Sep 13, 2005
Kind
B2
Abstract

A method and apparatus for protecting the identities of mobile devices on a wireless network are described. A proxy gateway couples the wireless network to a wired network and maintains data associating a set of service initiators with a set of cryptographic keys. Upon receiving a request from a mobile client device directed to an origin server on the wired network, the proxy gateway identifies the cryptographic key for that origin server and sends to the origin server a proxy request. The proxy request includes an identifier of the mobile device, encrypted using the cryptographic key. When the proxy gateway receives a request from a service initiator on the wired network to push information to a mobile device, it uses the cryptographic key for that service initiator to decode a client identifier in the request and thereby determine whether the request is valid.

Claims (61)

1. A method of operating a proxy on a network, the method comprising:

storing an association of service providers and cryptograpic keys;

receiving a request from a mobile device, the request dire ted to a remote server on the network;

using the stored association to identify a cryptographic key associated with the remote server;

using the identified cryptographic key to encode an Identifier of the mobile device;

incorporating the encoded identifier into a proxy request;

sending the proxy request to the remote server on behalf f the mobile device;

receiving a request from a service initiator on the network to push information to the mobile device;

determining whether the stored association includes a cryptographic key associated with the service initiator;

if the stored association includes a cryptographic key associated with the service initiator, using said cryptograhic key to decode a device identifier in the request from the service initiator;

determining whether the decoded device identifier corresponds to the mobile device; and

allowing the request from the service initiator to be fulfilled only if the stored association includes a cryptographic key associated with the service initiator and the decoded device identifier corresponds to the mobile device.

2. A method as recited in claim 1 , wherein said storing an association of service providers and cryptographic keys comprises storing a unique cryptographic key for each of a plurality of service providers.

3. A method as recited in claim 2 , wherein the store association specifies a plurality of network addresses for at least one of the plurality of service providers, and wherein said using the stored association to identify a cryptographic key comprises identifying a cryptographic key associated with a network address to which the request is directed.

4. A method as recited in claim 1 , wherein said using the identified cryptographic key to encode an identifier of the mobile device comprises hashing the cryptographic key with the identifier of the mobile device.

5. A method of operating a proxy on a network, the method comprising:

storing an association of service initiators and cryptographic keys, including a plurality of cryptographic keys and one or more network addresses associated with each of the cryptographic keys;

receiving a roquest from a service initiator on the network to push information to a mobile device;

determining whether the stored association includes a cryptographic key associated with the service initiator;

if the stored association includes a cryptographic key associated with the service initiator, using said cryptographic key to decode a device identifier in the request from the service initiator;

determining whether the decoded device identilier corresponds to the mobile device; and

allowing the request from the service initiator to be fulfilled only if the stored association includes a cryptographic key associated with the service initiator and the decode device identifier corresponds to the mobile client device.

6. A method as recited in claim 5 , wherein said using the identified cryptographic key to encode an identifier of the mobile device comprises hashing the cryptographic key with the identifier of the mobile device.

7. A method as recited in claim 5 , further comprising:

receiving a request from the mobile device, the request directed to a network address representing a remote server on the network;

using the stored association to identify a cryptographic key associated with the remote server;

generating a proxy request based on the request received am the mobile device, by using the identifier cryptographic key associated with the remote server to encode an identifier of the mobile device and incorporating the encoded identifier into the proxy request; and

sending the proxy request to the remote server on behalf of the mobile device.

8. A method of operating a proxy on a network, the method comprising:

storing an association of service initiators and cryptographic keys including a plurality of cryptographic keys and one or mare network addresses associated with each of the cryptographic keys;

receiving a request from a mobile client device, the request directed to a network address representing a remote server on the network;

using the stored association to identify a cryptographic key associated with the remote server;

generating a proxy request based on the request received from the mobile client device, by using the identified cryptographic key to encode an identifier of the mobile client device and incorporating the encoded identifier into the proxy request;

sending the proxy request to the remote server on behalf of the mobile client device;

receiving a request from a service initiator on the network to push information to the mobile client device;

determining whether the stored association includes a cryptographic key associated with the service initiator;

if the stored association includes a cryptographic key associated with the service initiator, using said cryptographic key to decode a client identifier in the request from the service initiator;

determining whether the decoded client identifier corresponds to the mobile client device; and

allowing the request from the service initiator to be fulfilled only if the stored association includes a cryptographic key associated with the service initiator and the decoded client identifier corresponds to the mobile client device.

9. A method as recited in claim 8 , wherein said using the identified cryptographic key to encode an identifier of the mobile client device comprises hashing the cryptographic key with the identifier of the mobile client device.

10. A method of operating a server, the method comprising:

receiving a request to provide first information to a mobile client device on a wireless network, the request including an encrypted identifier of a mobile client device;

sending the first information in response to the request, for communication to the mobile client device; and

sending a request to push second information to the mobile client device by including the encrypted identifier in the request to push the second information to the client device, such that the encrypted identifier in the request to push the second information is used to validate the request to push the second information.

11. A proxy gateway connected to a wireless network and to a wired network, the proxy gateway configured to provide a plurality of mobile devices on the wireless network with access to a plurality of processing systems on the wired network, the proxy gateway comprising:

a processor; and

a storage medium having stored therein instructions which configure the proxy gateway to perform the method comprising

storing an association of service providers and cryptographic keys;

receiving a request from a mobile device on the wireless network, the request directed to a remote server on the wired network;

using the stored association to identify a cryptograpic key associated with the remote server;

using the identified cryptographic key to encode an identifier of the mobile device;

incorporating the encoded identifier into a proxy request;

sending the proxy request to the remote server on behalf of the mobile device:

receiving a request from a service initiator on the wired network to push information to one of the mobile devices on the wireless network;

determining whether the stored association includes cryptograghic key associated with said service initiator;

if the stored association includes a cryptographic key associated with said service initiator, using said cryptograghic key to decode device identifier in the request from said service initiator;

determining whether the decode device identifier corresponds to said one of the mobile devices, and

allowing the request from the service initiator to be fulfilled only if the stored association includes a cryptographic key associated with said service initiator and the decode device identifier corresponds to said one of the mobile devices.

12. A proxy gateway as recited in claim 11 , wherein said storing an association of service providers and cryptographic keys comprise storing a unique cryptographic key for each of a plurality of service providers.

13. A proxy gateway as recited in claim 12 , wherein the stored association specifies a plurality of network addresses for at least one of the plurality of service providers, and wherein said using the stored association to identify a cryptographic key comprises identifying a cryptographic key associated with a network address to which the request is directed.

14. A proxy gateway as recited in claim 11 , wherein sat using the identified cryptographic key to encode an identifier of the mobile device comprises hashing the cryptographic key with the identifier of the mobile device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2020
From: UNWIRED PLANET LLC
To: VIDEOLABS, INC.
Reel/Frame 054727/0726 →
MERGER Recorded Jun 26, 2012
From: OPENWAVE SYSTEMS INC.
To: UNWIRED PLANET, INC.
Reel/Frame 028447/0940 →