IP Library › Granted Patent US 9,137,024
Granted Patent B2
US 9,137,024 · App. 12/821,656 · Granted Sep 15, 2015

System and method for incorporating an originating site into a security protocol for a downloaded program object

Inventors: Michael Alan Swingler (Palo Alto, CA); Thomas John O'Brien (San Jose, CA)
Assignee: Apple
H04L9/3265G06F21/51H04L9/007H04L63/12H04L63/126G06F21/64H04L63/123
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 9,137,024
App. No.
12/821,656
Filed
Jun 23, 2010
Granted
Sep 15, 2015
Kind
B2
Art Unit
2491
USPC
713/151
Abstract

Disclosed herein are systems, methods, and non-transitory computer-readable storage media for verifying a digital object obtained from a remote host. A system configured to practice the method downloads a first object from a first remote source and presents the user with a first request to allow access to the first object. Upon user approval, a multitude of characteristics associated with the object are stored to facilitate future uses of the object. When a second object is downloaded from a second remote source, the system checks the database for a stored user approval. Access to the second object is allowed if the multitude of characteristics associated with the first and second objects match. If the system does not find a match, the user is presented with a second request to allow access to the object.

Claims (78)

1. A method for securing a manner in which objects are accessed by a computing device, the method comprising:

at the computing device:

receiving a first object from a first remote source, wherein the first remote source is associated with at least one first property and a first cryptographic identity;

generating a first security key based on the first object, the at least one first property, and the first cryptographic identity;

upon identifying that the first object is not known to the computing device:

identifying a first access level to be granted to the first object,

encrypting the first access level based on at least one of the first object, the at least one first property, and the first cryptographic identity, to produce an encrypted first access level,

associating the first security key with the encrypted first access level, and

granting the first access level to the first object; and

subsequent to granting the first access level to the first object:

receiving a second object from a second remote source, wherein second remote source is associated with at least one second property and a second cryptographic identity;

generating a second security key based on the second object, the at least one second property, and the second cryptographic identity;

when the second security key matches the first security key:

identifying the first access level in accordance with the encrypted first access level associated with the first security key, and

granting the first access level to the second object; and

when the second security key does not match the first security key:

identifying a second access level to be granted to the second object.

2. The method of claim 1 , wherein the second security key matches the first security key when:

the first object, the first remote source, the at least one first property, and the first cryptographic identity, when compared to the second object, the second remote source, the at least one second property, and the second cryptographic identity, respectively, satisfy a threshold degree of similarity.

3. The method of claim 1 , wherein one or more of the first object and the second object comprises a set of executable instructions.

4. The method of claim 1 , wherein at least one of the first cryptographic identity and the second cryptographic identity comprises a digital certificate that is digitally signed by one or more signing authorities.

5. The method of claim 1 , wherein identifying the first access level to be granted to the first object comprises:

presenting, via a user interface and to a user, a plurality of access levels associated with the first object, wherein the plurality of access levels includes the first access level, and

receiving, via the user interface and from the user, a selected access level from the plurality of access levels, wherein the selected access level corresponds to first access level.

6. The method of claim 5 , wherein the user interface enables the user to review information associated with one or more of the at least one first property and the first cryptographic identity associated with the first remote source.

7. The method of claim 1 , wherein, when the second security key does not match the first security key, the method further comprises:

presenting, via a user interface and to a user, a plurality of access levels associated with the second object, wherein the plurality of access levels includes an access level that, when selected by the user, causes the computing device to disable functionality associated with the second object.

8. A non-transitory computer readable storage medium configured to store instructions that, when executed by a processor included in a computing device, cause the computing device to secure a manner in which objects are accessed by a computing device, by carrying out steps that include:

receiving a first object from a first remote source, wherein the first remote source is associated with at least one first property and a first cryptographic identity;

generating a first security key based on the first object, the at least one first property, and the first cryptographic identity;

upon identifying that the first object is not known to the computing device:

identifying a first access level to be granted to the first object,

encrypting the first access level based on at least one of the first object, the at least one first property, and the first cryptographic identity, to produce an encrypted first access level,

associating the first security key with the encrypted first access level, and

granting the first access level to the first object; and

subsequent to granting the first access level to the first object:

receiving a second object from a second remote source, wherein second remote source is associated with at least one second property and a second cryptographic identity;

generating a second security key based on the second object, the at least one second property, and the second cryptographic identity;

when the second security key matches the first security key:

identifying the first access level in accordance with the encrypted first access level associated with the first security key, and

granting the first access level to the second object; and

when the second security key does not match the first security key:

identifying a second access level to be granted to the second object.

9. The non-transitory computer readable storage medium of claim 8 , wherein the second security key matches the first security key when:

the first object, the first remote source, the at least one first property, and the first cryptographic identity, when compared to the second object, the second remote source, the at least one second property, and the second cryptographic identity, respectively, satisfy a threshold degree of similarity.

10. The non-transitory computer readable storage medium of claim 8 , wherein one or more of the first object and the second object comprises a set of executable instructions.

11. The non-transitory computer readable storage medium of claim 8 , wherein at least one of the first cryptographic identity and the second cryptographic identity comprises a digital certificate that is digitally signed by one or more signing authorities.

12. The non-transitory computer readable storage medium of claim 8 , wherein identifying the first access level to be granted to the first object comprises:

presenting, via a user interface and to a user, a plurality of access levels associated with the first object, wherein the plurality of access levels includes the first access level, and

receiving, via the user interface and from the user, a selected access level from the plurality of access levels, wherein the selected access level corresponds to first access level.

13. The non-transitory computer readable storage medium of claim 12 , wherein the user interface enables the user to review information associated with one or more of the at least one first property and the first cryptographic identity associated with the first remote source.

14. The non-transitory computer readable storage medium of claim 8 , wherein, when the second security key does not match the first security key, the steps further include:

presenting, via a user interface and to a user, a plurality of access levels associated with the second object, wherein the plurality of access levels includes an access level that, when selected by the user, causes the computing device to disable functionality associated with the second object.

15. A computing device configured to secure a manner in which objects are accessed by the computing device, the computing device comprising:

a hardware processor, wherein the hardware processor is configured to cause the computing device to carry out steps that include:

receiving a first object from a first remote source, wherein the first remote source is associated with at least one first property and a first cryptographic identity;

generating a first security key based on the first object, the at least one first property, and the first cryptographic identity;

upon identifying that the first object is not known to the computing device:

identifying a first access level to be granted to the first object,

encrypting the first access level based on at least one of the first object, the at least one first property, and the first cryptographic identity, to produce an encrypted first access level,

associating the first security key with the encrypted first access level, and

granting the first access level to the first object; and

subsequent to granting the first access level to the first object:

receiving a second object from a second remote source, wherein second remote source is associated with at least one second property and a second cryptographic identity;

generating a second security key based on the second object, the at least one second property, and the second cryptographic identity;

when the second security key matches the first security key:

identifying the first access level in accordance with the encrypted first access level associated with the first security key, and

granting the first access level to the second object; and

when the second security key does not match the first security key:

identifying a second access level to be granted to the second object.

16. The computing device of claim 15 , wherein the second security key matches the first security key when:

the first object, the first remote source, the at least one first property, and the first cryptographic identity, when compared to the second object, the second remote source, the at least one second property, and the second cryptographic identity, respectively, satisfy a threshold degree of similarity.

17. The computing device of claim 15 , wherein one or more of the first object and the second object comprises a set of executable instructions.

18. The computing device of claim 15 , wherein at least one of the first cryptographic identity and the second cryptographic identity comprises a digital certificate that is digitally signed by one or more signing authorities.

19. The computing device of claim 15 , wherein identifying the first access level to be granted to the first object comprises:

presenting, via a user interface and to a user, a plurality of access levels associated with the first object, wherein the plurality of access levels includes the first access level, and

receiving, via the user interface and from the user, a selected access level from the plurality of access levels, wherein the selected access level corresponds to first access level.

20. The computing device of claim 19 , wherein the user interface enables the user to review information associated with one or more of the at least one first property and the first cryptographic identity associated with the first remote source.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2010
From: SWINGLER, MICHAEL ALAN; O'BRIEN, THOMAS JOHN
To: APPLE INC.
Reel/Frame 024582/0402 →
Continuity (1)
Related Publication 20110320808A1 · Dec 29, 2011