A computer-implemented method comprising: accessing , by a client device , from a first computer system , a first electronic document identified by a uniform resource indicator (URI); generating , by the client device , a first set of hashed data portions corresponding to the first electronic document, wherein each of the first set of hashed data portions corresponds to a different portion of data in the first electronic document; sending , by the client device , to a second computer system , a request for one or more hashed data portions corresponding to the first electronic document, the request including information identifying the first electronic document; receiving , by the client device , from the second computer system , a second set of hashed data portions responsive to the request, wherein each of the second set of hashed data portions are generated based on a different portion of data in a second electronic document, wherein each of the different data portions satisfies a threshold frequency for appearing in the second electronic document and wherein the second set of hashed data portions are identified as responsive to the request based on determining that the second electronic document matches the first electronic document identified by the information in the request; comparing the first set of hashed data portions to the second set of hashed data portions; identifying , based on the comparing, one or more data portions of the first electronic document that are different from the second electronic document; and sending , to the second computer system , the one or more identified data portions of the first electronic document as updates to the second electronic document, wherein the second computer system associates the one or more identified data portions as updates to the second electronic document. accessing , by a client device , from a first computer system , a first electronic document identified by a uniform resource indicator (URI); generating , by the client device , a first set of hashed data portions corresponding to the first electronic document, wherein each of the first set of hashed data portions corresponds to a different portion of data in the first electronic document; sending , by the client device , to a second computer system , a request for one or more hashed data portions corresponding to the first electronic document, the request including information identifying the first electronic document; receiving , by the client device , from the second computer system , a second set of hashed data portions responsive to the request, wherein each of the second set of hashed data portions are generated based on a different portion of data in a second electronic document, wherein each of the different data portions satisfies a threshold frequency for appearing in the second electronic document and wherein the second set of hashed data portions are identified as responsive to the request based on determining that the second electronic document matches the first electronic document identified by the information in the request; comparing the first set of hashed data portions to the second set of hashed data portions; identifying , based on the comparing, one or more data portions of the first electronic document that are different from the second electronic document; and sending , to the second computer system , the one or more identified data portions of the first electronic document as updates to the second electronic document, wherein the second computer system associates the one or more identified data portions as updates to the second electronic document. <EOS>