Patent ID: 11947685
Assignee: nan
Field: Computer technology (Electrical engineering)
Classification: CPC G | IPC G

Claim 13:
14. A computer-implemented method for decrypting data residing in an input data buffer in computer memory, the computer-implemented method reversing encryption, shuffling, and scrambling steps comprising:
utilizing an identical Pseudorandom Number Generation means that was used to encrypt the input ciphertext data and has been brought a remembered state before encryption commenced;
providing an initial processing thread to initiate the decryption method;
providing the initial processing thread with access to an input data buffer in computer memory that will hold data to be decrypted, the input data buffer being characterized by a computer memory position and an input data buffer length;
having the initial processing thread place encrypted data into the input data buffer, optionally performing input ciphertext descrambling when necessary to provide unscrambled but optionally shuffled ciphertext in the input data buffer, using output from a dedicated, non-shared fraction of a Pseudorandom Number Generation means as unscrambling parameter input;
having the initial processing thread optionally un-shuffle the unscrambled input ciphertext to provide unscrambled and un-shuffled ciphertext in the input data buffer using output from a dedicated, non-shared fraction of a Pseudorandom Number Generation means as shuffling parameter input;
identifying a first data segment length and location within the input data buffer and a second data segment length and location within the input data buffer;
having the initial processing thread create a multiplicity of decryption processing threads in a manner allowing a first thread to identify the first segment computer memory location, the first segment's length, and a first dedicated, non-shared fraction of a Pseudorandom Number Generation means and allowing the second thread to identify the second segment computer memory location, the second segment's length, and a second dedicated, non-shared fraction of a Pseudorandom Number Generation means;
having each decryption thread optionally un-shuffle the unscrambled input ciphertext in its segment to provide unscrambled and un-shuffled ciphertext in the segment using output from its dedicated, non-shared fraction of a Pseudorandom Number Generation means as shuffling parameter input; and
having the first thread decrypt the first input data buffer segment using output from the first dedicated, non-shared fraction of a Pseudorandom Number Generation means as circular rotation values, decryption operation identification, or operation operand parameter input while the second thread concurrently decrypts the second data segment using output from the second dedicated, non-shared fraction of a Pseudorandom Number Generation means as circular rotation values, decryption operation identification, or operation operand parameter input.