IP Library Granted Patent US 7,991,159
Granted Patent B2
US 7,991,159 · App. 11/299,027 · Granted Aug 2, 2011

Layered mobile application security system

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 7,991,159
App. No.
11/299,027
Granted
Aug 2, 2011
Kind
B2
Abstract

A wireless communication network ( 20 ) including mobile applications ( 56 - 62 ) includes a security approach that uses a combination of at least two techniques ( 42, 50, 54, 72 ). One disclosed example includes a combination of all four techniques. The combined, layered approach greatly reduces the probability that an unauthorized individual will be able to masquerade as a valid application within the network so that network security is improved. Disclosed techniques include obfuscating software code of a mobile application, providing a mobile application with a plurality of code signatures for generating a corresponding plurality of unique control values, limiting the useful lifetime of a mobile application and determining that a control value of a mobile application corresponds to the control value of another application before the two applications are allowed to interact in a manner that could compromise either application or the network.

Claims (59)

1. A method of communicating, comprising:

protecting an integrity of a wireless network using a combination of at least two of

(A) obfuscating software code of a mobile application for use in the wireless network;

(B) providing a mobile application with a plurality of code signatures for generating a corresponding plurality of unique values and periodically, randomly using one of the plurality of code signatures for a selected period of time;

(C) limiting a useful lifetime of a mobile application to a selected duration; and

(D) determining that a control value of a first mobile application corresponds to a control value of a second mobile application before allowing an interaction between the first and second mobile applications.

2. The method of claim 1 , wherein the step (A) comprises at least one of

scrambling identifiers of the mobile application;

changing how data associated with the mobile application is stored in memory; or

including code within the mobile application that is not used for running the mobile application.

3. The method of claim 1 , wherein the step (B) comprises

arranging code statements within the mobile application to provide a first signature;

determining a dependency between at least two code statements within the mobile application having the first signature;

rearranging the at least two code statements within the mobile application to thereby provide a second, different signature while maintaining the determined dependency.

4. The method of claim 1 , wherein the step (C) comprises

using the mobile application for the selected duration;

rendering the mobile application useless after the selected duration; and

replacing the mobile application with a second, corresponding mobile application.

5. The method of claim 4 , comprising

using an application generator to generate the second, corresponding mobile application, the application generator having no contact with the second, corresponding mobile application once the second, corresponding mobile application replaces the useless mobile application.

6. The method of claim 4 , comprising

performing steps (A) and (B) on the second, corresponding mobile application before the second, corresponding mobile application replaces the useless mobile application.

7. The method of claim 4 , comprising

providing the second, corresponding mobile application with a different authentication value than an authentication value of the useless mobile application.

8. The method of claim 1 , comprising

performing the step (C) on a plurality of mobile applications such that each of the plurality of mobile applications has a duration that is equal to all of the others of the plurality of mobile applications and the lifetime of all of the plurality of mobile applications expires at about the same time.

9. The method of claim 8 , wherein the lifetime of all of the plurality of mobile applications expires simultaneously.

10. The method of claim 1 , wherein the step (D) comprises

determining a hash value of the first mobile application;

determining a hash value of the second mobile application; and

determining whether the determined hash values correspond to each other within selected criteria.

11. The method of claim 10 , comprising

determining whether the determined hash values are equal.

12. The method of claim 10 , wherein the first application determines the hash value of the second mobile application and the second mobile application determines the hash value of the first mobile application.

13. The method of claim 10 , comprising

determining that the determined hash values do not correspond to each other within the selected criteria;

communicating the determined hash values of the first and second mobile applications, respectively, to at least one other mobile application;

using the at least one other mobile application to determine the hash value of each of the first and second mobile applications; and

using the at least one other mobile application to determine which of the first or the second mobile application has an incorrect hash value.

14. The method of claim 13 , comprising

determining if there is consensus among a plurality of mobile applications regarding the determination of which of the first or second mobile applications has the incorrect value; and

terminating any communication associated with the first or second mobile application that has the incorrect hash value.

15. The method of claim 1 , wherein the step (D) comprises

providing a resident monitor application for each host in the wireless network;

providing the resident monitor application with an authorization key; and

using each of the resident monitor applications to prevent any application without the authorization key from operating on the corresponding host.

16. The method of claim 15 , comprising

using at least one mobile application to generate a hash value of the resident monitor application on a corresponding host from at least a portion of code of the resident monitor application and at least a portion of code of the at least one mobile application;

reporting the generated hash value to all other hosts within the wireless network; and

using resident monitor applications of each of the other hosts to determine whether the generated hash value is valid to thereby control whether further communications from the host associated with the generated hash value will be accepted within the wireless network.

17. The method of claim 1 , wherein the control value of the step (D) comprises an encryption key and comprising

using the encryption key to decipher a message received at the first mobile application from the second mobile application;

determining whether the message was successfully deciphered;

if the message was not successfully deciphered, discarding the message and determining a hash of the second mobile application for determining whether the second mobile application is valid.

18. The method of claim 1 , wherein the step (D) comprises

generating a helper agent application from the first mobile application;

communicating the helper agent application from a first host of the first mobile application to a second host of the second mobile application;

using the communicated helper agent application to determine the control value of the second mobile application at the second host; and

communicating the helper agent application back to the first host with the determined control value of the second mobile application.

Assignments (6)
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S ADDRESS PREVIOUSLY RECORDED AT REEL: 045397 FRAME: 0598. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jul 12, 2018
From: ALCATEL LUCENT
To: BEIJING XIAOMI MOBILE SOFTWARE CO.,LTD.
Reel/Frame 046544/0365 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE ADDRESS PREVIOUSLY RECORDED AT REEL: 045397 FRAME: 0598. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Apr 10, 2018
From: ALCATEL LUCENT
To: BEIJING XIAOMI MOBILE SOFTWARE CO.,LTD.
Reel/Frame 046478/0193 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 21, 2018
From: ALCATEL LUCENT
To: BEIJING XIAOMI MOBILE SOFTWARE CO.,LTD.
Reel/Frame 045397/0598 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2017
From: ALCATEL-LUCENT USA INC.
To: ALCATEL LUCENT
Reel/Frame 042955/0082 →
MERGER Recorded May 18, 2011
From: LUCENT TECHNOLOGIES INC.
To: ALCATEL-LUCENT USA INC.
Reel/Frame 026301/0444 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 20, 2008
From: FLOYD, DAVID G.
To: LUCENT TECHNOLOGIES, INC.
Reel/Frame 020971/0852 →