Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer program product stored on a non-transitory computer readable storage medium, comprising computer readable program code when executed by a transmitter computing device causes the transmitter computing device to perform the steps of: encrypting a block of data using a current random number generated for the block of data; encoding the current random number using each of one or more previous random numbers, each of the previous random numbers having been used to encrypt a previously sent block of data; transmitting the encrypted block of data together with one or more versions of the encoded current random number from the transmitter computing device to one or more receiver computing devices, each version having been encoded using a different one of the previous random numbers.
2. The computer program product of claim 1 , wherein the one or more previous random numbers used for the predefined set of previously sent blocks of data is a set of given blocks in a pattern prior to the current block.
3. The computer program product of claim 1 , wherein encrypting the block of data using the current random number includes performing a bitwise exclusive-or operation with the block of data and the current random number, and encrypting the result with an encryption function using a session key.
4. The computer program product of claim 1 , further comprising determining: a session key, a set of defined previous blocks; parameters needed for decoding a random number; and an initial random number used for a first block of data.
5. The computer program product of claim 4 , further comprising transmitting the session key, the set of defined previous blocks, the parameters needed for decoding the random number, and the initial random number used for the first block of data to the transmitter computing device.
6. The computer program product of claim 1 , wherein encoding the current random number with each of one or more previous random numbers is carried out in parallel for all available previous random numbers.
7. The computer program product of claim 1 , wherein encrypting the block of data is carried out in parallel with encoding the current random number with each of one or more previous random numbers.
8. A computer program product stored on a non-transitory computer readable storage medium, comprising computer readable program code when executed by a receiver computing device causing the receiver computing device to perform performing the steps of: receiving an encrypted block of data with one or more versions of an encoded current random number, each version having been encoded using a different one of previously used random numbers; selecting one of a set of previously received blocks of data for which one of the different ones of previously used random numbers is available; decoding the encoded current random number using the one of the different ones of previously used random numbers corresponding to the selected one of the set of previously received block of data; and decrypting the received encrypted block of data using the decoded current random number.
9. The computer program product of claim 8 , wherein the decoded current random number is stored for use in decoding subsequent random numbers.
10. The computer program product of claim 8 , wherein decrypting the received encrypted block of data further comprises decrypting the encrypted block of data using a session key and performing a bitwise exclusive-or operation with the result of the decryption using the session key and the decoded current random number.
11. The computer program product of claim 8 , further comprising receiving a secure communication from a transmitter computing device including: a session key; a set of defined previous blocks; parameters needed for decoding a random number; and, an initial random number used for a first block of data.
Unknown
June 6, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.