Synchronizing distributed work through document logs
First Claim
Patent Images
1. A method comprising:
- receiving first and second metadata entries;
adding the first and second metadata entries to a set corresponding to a digital object;
providing access to first and second unique identifiers, the first and second unique identifiers referencing the first and second metadata entries respectively, the first and second unique identifiers are hash values resulting from applying, by a computer processor, a function to contents of the first and second metadata entries respectively, wherein an order of the first and second metadata entries in the set is established by an order of the first and second unique identifiers;
accessing the first and second metadata entries using the first and second unique identifiers as indices;
receiving a third unique identifier that references the set, wherein the third unique identifier corresponding to the digital object comprises a hash value that is a result of applying a hash function that maps an arbitrary sequence of bytes associated with the digital object into a fixed size sequence;
computing a hash of the digital object;
encrypting at least one of the digital object, the first metadata entry, and the second metadata entry using an encryption key that is a function of the content of the digital object, wherein the encryption key is a function of an encrypted version of the digital object; and
creating the encrypted version of the digital object by applying a hash function to the content of the digital object.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus is disclosed herein for synchronizing distributed work. In one embodiment, the method comprises receiving first and second metadata entries, adding the first and second metadata entries to a set corresponding to a digital object, and providing access to first and second unique identifiers used for referencing the first and second metadata entries respectively, where the first and second unique identifiers are based on contents of the first and second metadata entries respectively.
98 Citations
69 Claims
-
1. A method comprising:
-
receiving first and second metadata entries; adding the first and second metadata entries to a set corresponding to a digital object; providing access to first and second unique identifiers, the first and second unique identifiers referencing the first and second metadata entries respectively, the first and second unique identifiers are hash values resulting from applying, by a computer processor, a function to contents of the first and second metadata entries respectively, wherein an order of the first and second metadata entries in the set is established by an order of the first and second unique identifiers; accessing the first and second metadata entries using the first and second unique identifiers as indices; receiving a third unique identifier that references the set, wherein the third unique identifier corresponding to the digital object comprises a hash value that is a result of applying a hash function that maps an arbitrary sequence of bytes associated with the digital object into a fixed size sequence; computing a hash of the digital object; encrypting at least one of the digital object, the first metadata entry, and the second metadata entry using an encryption key that is a function of the content of the digital object, wherein the encryption key is a function of an encrypted version of the digital object; and creating the encrypted version of the digital object by applying a hash function to the content of the digital object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46)
-
-
47. An article of manufacture having one or more non-transitory machine readable storage medium storing instructions which, when executed by a computer, cause the computer to perform a method comprising:
-
receiving first and second metadata entries; adding the first and second metadata entries to a set corresponding to a digital object; and providing access to first and second unique identifiers, the first and second unique identifiers referencing the first and second metadata entries respectively, the first and second unique identifiers are hash values resulting from applying a function to contents of the first and second metadata entries respectively, wherein an order of the first and second metadata entries in the set is established by an order of the first and second unique identifiers; and accessing the first and second metadata entries using the first and second unique identifiers as indices; receiving a third unique identifier that references the set, wherein the third unique identifier corresponding to the digital object comprises a hash value that is a result of applying a hash function that maps an arbitrary sequence of bytes associated with the digital object into a fixed size sequence; computing a hash of the digital object; encrypting at least one of the digital object, the first metadata entry, and the second metadata entry using an encryption key that is a function of the content of the digital object, wherein the encryption key is a function of an encrypted version of the digital object; and creating the encrypted version of the digital object by applying a hash function to the content of the digital object. - View Dependent Claims (48, 49, 50, 51, 52, 53, 54, 55, 56, 57)
-
-
58. An apparatus comprising:
-
a processor; an input to receive first and second metadata entries; a document processing unit to add the first and second metadata entries to a set corresponding to a digital object; a memory to store the entries; and an access processing unit coupled to the memory to provide access to first and second unique identifiers, the first and second unique identifiers referencing the first and second metadata entries respectively, the first and second unique identifiers are hash values resulting from applying a function to contents of the first and second metadata entries respectively, wherein an order of the first and second metadata entries in the set is established by an order of the first and second unique identifiers, and to access the first and second metadata entries using the first and second unique identifiers as indices; the input to further receive a third unique identifier that references the set, wherein the third unique identifier corresponding to the digital object comprises a hash value that is a result of application of a hash function that maps an arbitrary sequence of bytes associated with the digital object into a fixed size sequence; a hash computing unit to compute a hash of the digital object; and an encryption unit to encrypt at least one of the digital object, the first metadata entry, and the second metadata entry using an encryption key that is a function of the content of the digital object, and to create the encrypted version of the digital object by applying a hash function to the content of the digital object, wherein the encryption key is a function of an encrypted version of the digital object. - View Dependent Claims (59, 60, 61, 62, 63, 64, 65, 66, 67, 68)
-
-
69. An apparatus comprising:
-
a memory; a computer processor means for receiving first and second metadata entries; means for adding the first and second metadata entries to a set corresponding to a digital object; means for providing access to first and second unique identifiers, the first and second unique identifiers referencing the first and second metadata entries respectively, the first and second unique identifiers are hash values resulting from applying a function to contents of the first and second metadata entries respectively, wherein an order of the first and second metadata entries in the set is established by an order of the first and second unique identifiers; means for accessing the first and second metadata entries using the first and second unique identifiers as indices; means for receiving a third unique identifier that references the set, wherein the third unique identifier corresponding to the digital object comprises a hash value that is a result of applying a hash function that maps an arbitrary sequence of bytes associated with the digital object into a fixed size sequence; means for computing a hash of the digital object; means for encrypting at least one of the digital object, the first metadata entry, and the second metadata entry using an encryption key that is a function of the content of the digital object, wherein the encryption key is a function of an encrypted version of the digital object; and means for creating the encrypted version of the digital object by applying a hash function to the content of the digital object.
-
Specification