18. The method of claim 11 , wherein encrypting the electronic document comprises multiplying the encryption variable by the electronic document to produce the encrypted electronic document.
11. A method of privately searching for keyword criteria on streaming data, the method comprising: providing a dictionary of words each being either a keyword or an irrelevant word, each of the keywords having associated therewith a corresponding cipher-text having a correspondingly unique value that is an encryption of the number one under an additively homomorphic probabilistic Chosen Plaintext Attack-secure (CPA-secure) encryption scheme, and each of the irrelevant words having associated therewith a corresponding cipher-text having a correspondingly unique value that is an encryption of the number zero under the encryption scheme; providing a buffer with each slot therein initialized to contain an encryption of the number zero; receiving a plurality of electronic documents each comprising a plurality of words; for each of the plurality of electronic documents, performing the following: a) assign an initial value that is an encryption of the number zero to an encryption variable; b) look up each of the plurality of words in the dictionary; c) for each of the plurality of words found in the dictionary, plus-equal the corresponding cipher-text to the encryption variable; d) after sub-step c), encrypt the electronic document using the encryption variable; e) add the encrypted electronic document to one of the slots in the buffer.