IP Library Granted Patent US 9,455,835
Granted Patent B2
US 9,455,835 · App. 14/286,744 · Granted Sep 27, 2016

System and method for circular link resolution with hash-based names in content-centric networks

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,455,835
App. No.
14/286,744
Granted
Sep 27, 2016
Kind
B2
Abstract

One embodiment of the present invention provides a system for constructing a linked object. During operation, the system constructs a first portion of the linked object. The first portion includes at least a nonce, and the first portion is referenced by a self-certified name associated with the linked object. The system constructs a second portion of the linked object. The second portion includes at least the nonce and one or more external links, and a respective external link references a second linked object using a self-certified name associated with the second linked object.

Claims (50)

1. A computer-executable method for constructing a linked object, the method comprising:

constructing a first portion of the linked object, wherein the first portion includes at least a nonce, and wherein the first portion is referenced by a self-certified name associated with the linked object; and

constructing a second portion of the linked object, wherein the second portion includes at least the nonce and one or more external links, wherein a respective external link references a second linked object using a self-certified name associated with the second linked object.

2. The method of claim 1 , wherein the self-certified name associated with the linked object is a hash-based name obtained by applying a hash function to the first portion.

3. The method of claim 2 , wherein the hash function includes a cryptographic hash function.

4. The method of claim 1 , wherein the linked object is a content object in a content-centric network (CCN), and wherein the first portion further includes a name and an identifier of a signing key.

5. The method of claim 4 , wherein constructing the first portion further involves:

obtaining a first signature by signing, using the signing key, over a hash of the name, the identifier of the signing key, and the nonce; and

inserting the first signature into the first portion.

6. The method of claim 4 , wherein constructing the second portion further involves:

obtaining a second signature by signing, using the signing key, over a hash of the second portion; and

inserting the second signature into the second portion.

7. The method of claim 1 , wherein the first portion further comprises a payload, and wherein the payload includes one or more pointers that point to the one or more external links included in the second portion.

8. The method of claim 1 , wherein the second portion further comprises a payload, and wherein the one or more external links are included in the payload.

9. The method of claim 1 , wherein the second portion comprises a standard object that includes a name, and wherein the nonce is same as the name.

10. The method of claim 1 , wherein the second linked object includes a link that references the linked object using the self-certified name associated with the linked object, thereby facilitating a circular reference between the linked object and the second linked object.

11. A non-transitory computer-readable storage medium storing instructions that when executed by a computing device cause the computing device to perform a method for constructing a linked object, the method comprising:

constructing a first portion of the linked object, wherein the first portion includes at least a nonce, and wherein the first portion is referenced by a self-certified name associated with the linked object; and

constructing a second portion of the linked object, wherein the second portion includes at least the nonce and one or more external links, wherein a respective external link references a second linked object using a self-certified name associated with the second linked object.

12. The computer-readable storage medium of claim 11 , wherein the self-certified name associated with the linked object is a hash-based name obtained by applying a hash function to the first portion.

13. The computer-readable storage medium of claim 12 , wherein the hash function includes a cryptographic hash function.

14. The computer-readable storage medium of claim 11 , wherein the linked object is a content object in a content-centric network (CCN), and wherein the first portion further includes a name and an identifier of a signing key.

15. The computer-readable storage medium of claim 14 , wherein constructing the first portion further involves:

obtaining a first signature by signing, using the signing key, over a hash of the name, the identifier of the signing key, and the nonce; and

inserting the first signature into the first portion.

16. The computer-readable storage medium of claim 14 , wherein constructing the second portion further involves:

obtaining a second signature by signing, using the signing key, over a hash of the second portion; and

inserting the second signature into the second portion.

17. The computer-readable storage medium of claim 11 , wherein the first portion further comprises a payload, and wherein the payload includes one or more pointers that point to the one or more external links included in the second portion.

18. The computer-readable storage medium of claim 11 , wherein the second portion further comprises a payload, and wherein the one or more external links are included in the payload.

19. The computer-readable storage medium of claim 11 , wherein the second portion comprises a standard object that includes a name, and wherein the nonce is same as the name.

20. The computer-readable storage medium of claim 11 , wherein the second linked content object includes a link that references the linked object using the self-certified name associated with the linked object, thereby facilitating a circular reference between the linked object and the second linked object.

21. A computer system for constructing a linked object, the system comprising:

a processor; and

a storage device coupled to the processor and storing instructions which when executed by the processor cause the processor to perform a method, the method comprising:

constructing a first portion of the linked object, wherein the first portion includes at least a nonce, and wherein the first portion is referenced by a self-certified name associated with the linked object; and

constructing a second portion of the linked object, wherein the second portion includes at least the nonce and one or more external links, wherein a respective external link references a second linked object using a self-certified name associated with the second linked content object.

22. The system of claim 21 , wherein the self-certified name associated with the linked object is a hash-based name obtained by applying a hash function to the first portion.

23. The system of claim 22 , wherein the hash function includes a cryptographic hash function.

24. The system of claim 21 , wherein the linked object is a content object in a content-centric network (CCN), and wherein the first portion further includes a name and an identifier of a signing key.

25. The system of claim 24 , wherein constructing the first portion further involves:

obtaining a first signature by signing, using the signing key, over a hash of the name, the identifier of the signing key, and the nonce; and

inserting the first signature into the first portion.

26. The system of claim 24 , wherein constructing the second portion further involves:

obtaining a second signature by signing, using the signing key, over a hash of the second portion; and

inserting the second signature into the second portion.

27. The system of claim 21 , wherein the first portion further comprises a payload, and wherein the payload includes one or more pointers that point to the one or more external links included in the second portion.

28. The system of claim 21 , wherein the second portion further comprises a payload, and wherein the one or more external links are included in the payload.

29. The system of claim 21 , wherein the second portion comprises a standard object that includes a name, and wherein the nonce is same as the name.

30. The system of claim 21 , wherein the second linked object includes a link that references the linked object using the self-certified name associated with the linked object, thereby facilitating a circular reference between the linked object and the second linked object.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2017
From: PALO ALTO RESEARCH CENTER INCORPORATED
To: CISCO SYSTEMS, INC.
Reel/Frame 041714/0373 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2017
From: CISCO SYSTEMS, INC.
To: CISCO TECHNOLOGY, INC.
Reel/Frame 041715/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2014
From: MOSKO, MARC E.; SOLIS, IGNACIO
To: PALO ALTO RESEARCH CENTER INCORPORATED
Reel/Frame 032980/0498 →