Patent ID: 8504480

Claim:
A computer implemented method for generating a document signature for a document, the method comprising: receiving, with one or more processors, a change by an application to the document; determining, with the one or more processors, a rolling hash for the document by generating a first hash of a previous hash associated with a previous action performed on the document and a recent action associated with changing the document; determining, with the one or more processors, a rolling hash offset for the document by generating a second hash for the recent action associated with changing the document and calculating a difference between the second hash and the previous hash associated with the previous action performed on the document; determining, with the one or more processors, a globally unique identifier and a secret associated with the application that changed the document; generating, with the one or more processors, a document signature by combining the rolling hash, the rolling hash offset, the globally unique identifier and the secret; and storing the document signature, the globally unique identifier, the rolling hash and the rolling hash offset in data storage.