Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claim 12 is rejected under 35 U.S.C. 101 because the claimed invention is directed to non-statutory subject matter. The claim(s) does/do not fall within at least one of the four categories of patent eligible subject matter because the claim is directed towards a computer-readable storage medium. Although the specifications offer some examples of such media, neither the claims nor the specifications exclude transitory media, and as a result, the claim permits transitory media that could include wave/signals.
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1,11-13, and 20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Liu (CN116781265A).
Regarding claim 1, Liu teaches determining target data to be stored at a target memory address of a target memory and a target key corresponding to the target memory address (determining a target address and an encryption key of the data to be encrypted, and encrypting the data to be encrypted based on the target address, the encryption key and the target encryption algorithm to obtain first ciphertext data, pg. 2 Summary), determining a target transposition algorithm corresponding to the target data (encrypting the data to be encrypted based on the target address, the encryption key and the target encryption algorithm, pg. 2); encrypting the target data based on the target key and the target transposition algorithm, to obtain encrypted data (encrypting the data to be encrypted based on the target address, the encryption key and the target encryption algorithm, pg. 2); storing the encrypted data at the target memory address of the target memory (the encryption result is stored to the target address, pg. 19), and as per claims 12 and 13, Liu teaches the method performed with the use of processor executing instruction stored in memory (e.g., pg. 9).
As per claims 11 and 20, in various citations, e.g., pg. 3, 17, 20, Liu discusses the reverse of the encryption process of claims 1 and 12-13.
Claims 1,11-13, and 20 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Little (US9552498B2).
Regarding claim 1, 12 and 13, Little teaches a method for processing data (“relates to data processing systems,” Background), comprising: determining target data to be stored at a target memory address of a target memory and a target key corresponding to the target memory address (“identifying an address in memory that stores a first portion of the data to be encrypted; deriving a first unique key from a first logic operation with the encryption key and the address of the first portion of data as inputs, wherein the first unique key is different from the encryption key,” Claim 1) determining a target transposition algorithm corresponding to the target data (“the data is encrypted using a hardware implementation of any suitable encryption algorithm, for example Advanced Encryption Standard (AES),” Detailed Description (Page 9)); encrypting the target data based on the target key and the target transposition algorithm, to obtain encrypted data (“encrypting data stored in a memory, comprising the steps, executed by a processor, of: retrieving an encryption key; identifying an address in memory that stores a first portion of the data to be encrypted; deriving a first unique key from a first logic operation with the encryption key and the address of the first portion of data as inputs, wherein the first unique key is different from the encryption key and from the address of the first portion of data; encrypting the first portion of data using the first unique key …the data is encrypted using a hardware implementation of any suitable encryption algorithm, for example Advanced Encryption Standard (AES), Detailed Description (Page 9) + Claim 1); and storing the encrypted data at the target memory address of the target memory (“encrypting data stored in a memory,” Claim 1).
Regarding claims 11, Little teaches the invention further comprising: reading the encrypted data at the target memory address of the target memory; determining the target key corresponding to the target memory address and the target transposition algorithm corresponding to the encrypted data; and decrypting the encrypted data based on the target key and the target transposition algorithm, to obtain the target data corresponding to the encrypted data (“receiving a request to decrypt encrypted data stored in the memory; identifying an address in memory that stores a first portion of the data to be decrypted; deriving a first unique decryption key from the first logic operation with the encryption key and the address of the first portion of data as inputs, wherein the first unique decryption key is different from the encryption key and from the address of the first portion of data; decrypting the first portion of data using the first unique decryption key,” Claim 5).
As per claims 11-13 and 20, a skilled in the art would readily appreciate that computing functionalities are accomplished by using processors executing program/code stored in computing media, as also noted by Little (e.g., see Little’s claims 16, and 17 for example).
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 2,3, 14, and 15 are rejected under 35 U.S.C. 103 as being unpatentable over Little in view of Liu (CN116781265A).
Regarding claim 2 and 14, Little teaches encrypting the target data based on the target key and the target transposition algorithm, to obtain encrypted data as cited earlier in claims 1, and 13. Liu further teaches how the invention comprises: determining, based on a plurality of groups of to-be-exchanged positions as indicated by the target transposition algorithm, a plurality of groups of first data in the target key that are in one-to-one correspondence with the plurality of groups of to-be-exchanged positions; (“obtaining the data to be encrypted and determining the target encryption algorithm, the bytes in the data to be encrypted can be divided into multiple groups of bytes according to the target encryption algorithm, with a preset number of bits as a group. A matrix can be generated based on the multiple groups of bytes. Then, the order of all bytes in the obtained matrix can be adjusted row by row. The adjusted multiple groups of bytes can be reassembled to obtain the adjusted data to be encrypted. After obtaining the adjusted data to be encrypted, a data permutation operation can be performed on the data to be encrypted to obtain the intermediate plaintext data,” Paragraph 186) performing an XOR operation on elements in each group of first data of the plurality of groups of first data, to obtain a plurality of first target values (“involves XORing the target subkey and the intermediate plaintext data to obtain the first ciphertext data,” Paragraph 187); and performing, according to the target transposition algorithm, transposition processing on the target data based on a matching relation between the first target values and a preset value, to obtain the encrypted data (“The target plaintext data can be plaintext data provided by the user that needs to be encrypted, or plaintext data that needs to be encrypted during data storage or transmission. The plaintext data can be unencrypted data. The discrete algorithm can be used to generate a checksum corresponding to the target plaintext data…In practical implementation, the data to be encrypted, including the checksum, can be encrypted and stored,” Paragraph 85-95). It would have been obvious to one of ordinary skill in the art at the time the application was filed to include Liu’s teachings into Little in order to ensure security of the data that is encrypted which is important say if the data is sensitive to prevent tampering from malicious actors.
Regarding claim 14, a person skilled in the art would readily appreciate that the computing functionalities are provided by memory executing computing code as described in claim 13.
Regarding claim 3 and 15, Liu in view of Little teaches performing, according to the target transposition algorithm, transposition processing on the target data based on a matching relation between the first target values and a preset value, to obtain the encrypted data comprises: in response to the matching relation being that at least one of the first target values matches the preset value, performing, according to the target transposition algorithm, transposition processing on elements on at least one group of to-be-exchanged positions in the target data to obtain the encrypted data, as cited earlier. Liu further teaches wherein the at least one group of to-be-exchanged positions is at least one group of to-be-exchanged positions of the plurality of groups of to-be-exchanged positions that corresponds to the at least one of the first target values (“Byte transformation can be an operation that changes the byte order or bit order, such as shifting each byte in the data to the right in a cyclic manner according to the byte order. Byte transformation can include byte C transformation, which can be an operation that sorts all bytes in the data into groups of a preset number of bits according to a preset partitioning strategy, and changes the byte order or bit order in each group of bytes,” Paragraph 162). It would have been obvious to one of ordinary skill in the art at the time the application was filed to include Liu’s teachings into Little as a way to reduce data tampering and leakage in order to bolster the security of the data which is especially important if said data is sensitive.
Regarding claim 15, a person skilled in the art would readily appreciate that the computing functionalities are provided by memory executing computing code as described in claim 13.
Claims 4,5, 16, and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Little in view of Noonan (US20140248929A1).
Regarding claim 4, Little teaches the method according to claim 1, wherein the determining a target transposition algorithm corresponding to the target data as cited earlier. Noonan further teaches determining a first matrix corresponding to the target data; determining pairwise distances between all elements in the first matrix; determining, based on a plurality of the pairwise distances corresponding to the elements of the first matrix, a target element corresponding to a respective element in the first matrix, wherein the target element is an element with a farthest distance from the respective element; and determining the target transposition algorithm based on a position of the respective element in the first matrix and a position of the target element corresponding to the respective element (“The encryption technology finds use in providing improvements to conventional ciphers such as the AES cipher. Accordingly, provided herein is a method for encrypting a plaintext comprising whitening the plaintext using a first Sudoku matrix; substituting the plaintext using a second Sudoku matrix; permuting the plaintext by shuffling the plaintext using a third Sudoku matrix; and diffusing the plaintext using a maximum distance separable Sudoku matrix. Efficiency is increased in some embodiments wherein the first Sudoku matrix and the third Sudoku matrix are the same. In some embodiments of the improved AES cipher, an encryption key is used to generate one or more of the first Sudoku matrix, the second Sudoku matrix, the third Sudoku matrix, and/or the maximum distance separable Sudoku matrix,” Paragraph 14). It would have been obvious to one of ordinary skill in the art at the time the application was filed to include Noonan’s teachings into Little as a way to bolster security of the data through encryption.
Regarding claim 5, Little teaches the method according to claim 1 as cited earlier. Noonan further teaches wherein the determining target data to be stored at a target memory address of a target memory comprises: determining initial data to be stored at the target memory address; determining a second matrix corresponding to the initial data; and performing first processing on elements in the second matrix, to obtain the target data, wherein the first processing comprises at least one of row transformation processing, column transformation processing, bit-wise NOT processing, and position exchange in a preset mode (“in some embodiments, transforming the plaintext comprises whitening the plaintext with the Sudoku matrix; transposing the plaintext with the Sudoku matrix; and permuting the plaintext with the Sudoku matrix. The permutation primitives are embodied in different forms; for example, in some embodiments permuting comprises generating a unitary permutation matrix from the Sudoku matrix and shuffling the plaintext according to the unitary permutation matrix; in some embodiments permuting comprises shuffling a row, a column, or a block according to the Sudoku matrix; and in some embodiments permuting comprises moving elements according to a bijective mapping defined for the Sudoku matrix,” Paragraph 9). It would have been obvious to one of ordinary skill in the art at the time the application was filed to include Noonan’s teachings into Little in order to make tampering of data more difficult in order to increase security.
Regarding claim 16, and 17, a person skilled in the art would readily appreciate that the computing functionalities are provided by memory executing computing code as described in claim 13.
Claims 6, and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Little in view of Guiradet (WO 2009077511).
Regarding claims 6, and 18, Little teaches wherein the determining target data to be stored at a target memory address of a target memory and a target key corresponding to the target memory address as cited earlier and a preset key corresponding to the target memory, wherein a number of bits of the target memory address, a number of bits of the preset key, and a number of bits of the chip identifier are identical; and obtaining the target key based on the target memory address, the preset key (“encrypting the first portion of data using the first unique key; identifying an address in memory that stores a second portion of data to be encrypted; deriving a second unique key from a second logic operation with the encryption key and the address of the second portion of data as inputs, wherein the second unique key is different from the encryption key, from the address of the first portion of data, and from the first unique key…In the system, the data is encrypted using a hardware implementation of any suitable encryption algorithm, for example Advanced Encryption Standard (AES). In the preferred embodiment an initial encryption key is selected randomly and embedded at the time of manufacture of the chip, and preferably even the manufacturer does not retain any record of the randomly-selected initial encryption key. If the encryption key is to be changed after manufacture, all of the encrypted data must be read out of memory, decrypted using the key existing at the time of encryption, re-encrypted with the new key, and written back into memory,” Claim 1, and Paragraph 27).
Little fails to expressly address the determined chip identifier in relation to encryption the target data and target key. However, the examiner asserts that include any additional element, such as chip identifier would have been an obvious variant as illustrated by Guiradet (applying a one-way hash function to a chip identifier value to produce an encryption key, see Abstract) for example, offering the predictable benefit of customization and increased security.
Note that computing devices operate on data represented in bit strings and there are essentially only a finite set of solutions of having the number of bits of different data that device operate, having different or identical number of bits. As a result, the examiner asserts that the number of bits of Little in view of Buiradet’s elements would not affect the patentability of the claims and constructing the Little/Buiradet’s invention having any of this variant (including having the same number of bits) would have been obvious to one of ordinary skill in the art at the time the application was filed given the predictable benefit of customization.
Regarding claim 18, a person skilled in the art would readily appreciate that the computing functionalities are provided by memory executing computing code as described in claim 13.
Conclusion
Claims 7-9 and 19 overcame the art of record.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to HENRY W CHEUNG whose telephone number is (571)270-0502. The examiner can normally be reached Monday - Friday 8:30 a.m -5:30 p.m ET.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Jeffrey Pwu can be reached at 571-272-6798. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
HENRY W. CHEUNG
Examiner
Art Unit 2433
/PIOTR POLTORAK/Primary Examiner, Art Unit 2433