DETAILED ACTION
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 .
Status of Claims
The following is a Final Office Action in response to applicant’s remarks filed on 04/07/2026. Claims 13-20 are pending.
Response to Amendment
Applicant’s arguments and amendments regarding claims 13 and the dependent claims 14-20 obviate the claim rejection, therefore the claim rejection under 35 U.S.C. § 112(a) is withdrawn. However, based on the newly amended claims, a new ground of rejection was made.
Applicant’s arguments and amendments regarding claims 13 and the dependent claims 14-20 obviate the claim rejection, therefore the claim rejection under 35 U.S.C. § 112(b) is withdrawn. However, based on the newly amended claims, a new ground of rejection was made.
Response to Arguments
Applicant’s arguments with respect to claim(s) are rejected, under 35 USC 103(a), have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter.
Claim Rejections-35 U.S.C. § 101
On pages 12-16 of Remarks, Applicant argues that the rejection improperly oversimplifies the claims and fails to consider the claims as a whole under McRo, Enfish, CellzDirect, and Thales. Applicant’s arguments are not persuasive. It is noted that the rejection considered claim 13 as a whole and identified the claim’s actual focus as mathematical processing of data for error detection. Claim 13 recites converting byte values into K-bit values using lookup tables, generating hamming parity bits, applying check formula, comparing computed values and outputting an error signal when formula-based conditions are not satisfied. These limitations collectively describe mathematical manipulation of numerical values and formula-based analysis rather than an improvement to computer functionality itself.
Applicant’s reliance on McRo is misplaced. Here, claim 13 does not improve how encryption is performed, how processors operate, or how memory functions. Instead, the claim uses mathematical relationships and parity calculations to determine whether an error exists. The claim merely applies mathematical concepts within an encryption context.
Further, Applicant argues that the claim improves AES encoder size and reduce circuitry requirements. However, Step 2A analysis focuses on claim language, not unclaimed advantages in the specification. Claim 13 does not recite reduced circuitry size, reduce hardware resources, or any concrete implementation details regarding circuitry reduction. Rather, claim 13 broadly recites formula-based verification operations and outputting an error.
Applicant’s reliance on Enfish is similarly unpersuasive because claim 13 does not recite a specific improvement to computer functionality. Instead, the claim uses mathematical operations lookup tables, parity generation. Merely performing such calculations in the context of encryption does not convert the claim into a technological improvement.
Furthermore, Applicant argues that claim 13 recites a “specific technological solution” with no preemption. However, the absence of complete preemption does not demonstrate eligibility. The Supreme Court has repeatedly explained that the concern is whether the claim is directed to a judicial exception, not whether all applications are preempted.
Further, Applicant’s assertion that the claims approach is “unconventional” is not dispositive at Step 2A. Novelty and non-obviousness are separate inquiries from subject matter eligibility. Even assuming the specific formulae or lookup relationships are unconventional, mathematical concepts do not become patent eligible merely because they are new.
Regarding the Step 2A, Prong Two, Applicant’s arguments also fail to show integration into a practical application. The additional elements- AES algorithms, lookup tables, parity checking, firmware notification, and error signals, merely apply the mathematical calculations within a generic cryptographic environment. The claimed outputting of an error signal merely communicates the result of the mathematical analysis and constitutes insignificant post-solution activity. Therefore, the claim does not integrate the mathematical concepts into a practical application.
Regarding the Step 2B, Applicant argues that, even assuming arguendo claim 13 recites an abstract idea, the claim includes additional elements amounting to significantly more than the alleged judicial exception. Applicant’s argument are not persuasive.
Applicant argues that the claim 13 improves substituting-byte error detection in an AES encoder and therefore, provides an improvement to technology. However, the alleged improvement is not reflected in the claimed language. Claim 13 does not recite any specific hardware implementation that improves computer functionality. Rather, claim 13 recites mathematical processing steps including lookup-table conversion, parity generation, formula-based comparisons and outputting an error signal. These additional elements merely apply mathematical concepts in an encryption environment rather than providing a technological improvement.
Applicant further argues that the limitations involving formula-based comparison of parity values and outputting error signals constitutes meaningful limitations and inventive concepts. This argument is unpersuasive because the additional elements beyond the mathematical concepts consist primarily of generic data handling operations and insignificant post solution activity. Specifically, converting values using lookup tables, comparing parity values and outputting error signals merely implement and communicate the results of the underlying mathematical analysis. These operations do not meaningfully limit the judicial exception because they merely apply the mathematical relationships to conventional computer functions.
Further, the assertions that the cited references do not disclose the claimed subject matter do not establish that the claim recites significantly more than the abstract idea itself.
Applicant also argues that the limitations are unconventional because they are not disclosed in the cited references. However, even assuming the claimed formula and parity relationships are unconventional, claim 13 still recites mathematical operations implemented through generic computational steps.
With respect to Berkheimer, Applicant argues that the office action failed to stablish that the additional elements are well understood, routine and conventional. Applicant’s argument is not persuasive because the rejection does not rely solely upon a conclusion that the claim elements are conventional. Rather, the rejection identifies the additional elements themselves as generic computing activities, including lookup tables, parity checking, outputting results, which merely implement the abstract idea. Further, Berkheimer does not require documentary evidence whenever the claim itself demonstrates that the additional elements are generic computer functions performing conventional activities. Nothing in claim 13 recites specialized hardware or a non-conventional arrangement of components.
Additionally, Applicant’s reliance on the specification’s discussion of smaller circuitry size and reduced manufacturing cost is not persuasive because these alleged advantages are nor recited in claim 13. Accordingly, the additional claim elements merely instruct application of mathematical concepts using conventional computational tools and therefore, do not amount to significantly more than the judicial exception itself.
Therefore, the examiner maintains the rejection under 35 USC § 101.
Claim Rejections-35 U.S.C. § 103
On Pages 20-22 of remarks by Applicant, the applicant argues that VIGILANT fails to teach the amended claims 13 "determining whether an error is occurred during a conversion of the first value of the one byte into the second value of the K-bit by employing check formulae corresponding to the 8-to- K lookup table to compare the Hamming Parity of the second value with a most-significant byte of the second value,”. Applicant’s arguments, with respect to the rejection(s) of claim(s) 13 have been fully considered and are persuasive. Therefore, the rejection has been withdrawn. However, upon further consideration, a new ground(s) of rejection is made in view of SeyedzadehDelcheh et al. (US 20220188185 A1).
As to the dependent claims 14-20, these claims remain rejected by virtue of dependency to their independent claims.
Therefore, the examiner maintains the rejection under 35 USC § 103.
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 13-20 are rejected under 35 U.S.C. § 101 because the claimed subject matter is directed to a judicial exception (an abstract idea) and does not include additional elements that amount to significantly more than the judicial exception, as required by the USPTO 2019 Guidance (PEG). Claim 13 (Step 1) The claim is directed to a process (a method), which is a statutory class of invention under 35 U.S.C. § 101.
Analysis
Step 1 (Statutory Categories) — 2019 PEG pq. 53
Claims 13-20 are directed to the statutory category of a process.
Step 2A, Prong 1 (Do the claims recite an abstract idea?) — 2019 PEG pq. 54
Claim 13 recites the following types of subject matter that are judicial exceptions: mathematical concept and data manipulation/analysis: “converting a first value of one byte into a second value of a K-bit … determining whether an error is occurred during a conversion of the first value of the one byte into the second value of the K-bit by employing check formulae corresponding to the 8-to- K lookup table to compare the Hamming Parity of the second value with a most-significant byte of the second value, wherein a total amount of the formulae is m;” (presenting information).
Claim 13 is directed to a mathematical concept, specifically mathematical relationships, calculations, and formula, concepts that fall within the judicial exceptions of “mental processes” and “mathematical concepts” (see PEG Step 2A, Examples and categories of abstract ideas).
Claim 13 recites evaluating data using formulae, comparing values, and determining whether an error condition exists based on mathematical relationships. Such comparison and evaluation processes constitute mathematical concepts and alternatively may be performed as observations, evaluations, or judgments and additionally recite mental process.
Transformation of numerical values using a lookup table, generation of parity bites based on mathematical relationships and evaluation of check formula to detect errors. Such steps amount to pure mathematical operations for error detection, i.e., abstract manipulation of numbers and application of parity equations, which fall within the category of mathematical relationships and calculations. Accordingly, claim 13 remains directed to an abstract idea.
Step 2A — Prong Two: Integration Into a Practical Application
Claim 13 does not integrated the mathematical concept into a practical application. Although the claim is nominally directed to “data encryption”, the recited steps do not improve the functioning of a computer, or cryptographic algorithm itself.
The additional limitation “outputting an error signal to notify firmware … to be executed for data encryption when finding the error” amounts to insignificant extra-solution activity and merely communicates the result of the abstract analysis to another component.
The claim the claim does not recite any specific improvement to processor architecture or firmware operation. The processing unit and firmware are recited at a high level of generality as tools used to receive upon the calculated result.
Therefore, the claim is directed to mathematical concepts and is not integrated into a practical application under Step 2A. Accordingly, the claim is directed to an abstract idea.
Step 2B — Lack of inventive concept
Claim 13 does not include additional elements that amount to significantly more that the judicial exception.
The claim is drafted at a high level of generality and recites: generic data conversion, generic lookup tables, generic parity checking, and generic output of an error signal.
The steps can be performed mentally or by a general-purpose processor executing routine calculations.
Therefore, claim 13 lacks an inventive concept sufficient to transform the abstract mathematical concept into patent-eligible subject matter.
Step 2A, Prong 1 (Do the claims recite an abstract idea?) — 2019 PEG pq. 54
For dependent claim 14, the claim recites a mathematical concept of: enabling one or more restrictions by the user. The steps of: “the method of claim 13, wherein most-significant 8 bits of each cell in the 8-to-K lookup table is established by a formula as follows:
SB i=Affine((i)−1)
SBi represents an output result of a value i, Affine( ) represents an Affine transformation function, and i is an integer ranging from 0 to 127.” grouping of mathematical concept.
An affine transformation, a mathematical inversion operation, applied to an integer domain (i+ 0 to 127)” this is a mathematical relationship, falling within mathematical formulas. Therefore, claim 14 is directed to a mathematical concept, specifically mathematical relationships, calculations, and formulas. Accordingly, claim 14 remains directed to an abstract idea.
Step 2A — Prong Two: Integration Into a Practical Application
The claim does not integrate the judicial exception into a practical application.
The limitation merely specifies how values within a lookup table are mathematically generated. The claim does not recite improvements to computer operation itself. Instead, the claim merely limits use of the mathematical relationship to the technological environment of encryption and lookup-table generation. Such field-of-use limitations do not integrate the judicial exception into a practical application. Accordingly, claim 14 remains directed to an abstract idea.
Step 2B — Lack of inventive concept
The claim does not include additional elements that amounts to significantly more than the judicial exception.
The additional elements such as lookup tables, encryption environments, firmware, processing units and data handling operations inherited from claim 13 are recited generally and perform conventional computer function.
Therefore, claim 14 lacks an inventive concept sufficient to transform the abstract mathematical concept into patent-eligible subject matter.
Step 2A, Prong 1 (Do the claims recite an abstract idea?) — 2019 PEG pq. 54
For dependent claim 15, the claim recites a mathematical concept of: “wherein K is 14”. claim 15 is directed to a mathematical concept, specifically mathematical relationships, calculations, and formulas. Accordingly, claim 15 remains directed to an abstract idea.
Step 2A — Prong Two: Integration Into a Practical Application
The claim does not integrate the judicial exception into a practical application.
Accordingly, claim 15 remains directed to an abstract idea.
Step 2B — Lack of inventive concept
The claim does not include additional elements that amounts to significantly more than the judicial exception.
Therefore, claim 15 lacks an inventive concept sufficient to transform the abstract mathematical concept into patent-eligible subject matter.
Step 2A, Prong 1 (Do the claims recite an abstract idea?) — 2019 PEG pq. 54
For dependent claim 16, the claim recites a mathematical concept of: enabling one or more restrictions by the user. The steps of: “using the check formulae to analyze 6 bits of the Hamming parity according to a most- significant byte of the second value…”
Hamming parity checks, fixing K=14 is a parameter choice, not an inventive concept. this is a mathematical relationship, falling within mathematical formulas. Therefore, claim 16 is directed to a mathematical concept, specifically mathematical relationships, calculations, and formulas. Accordingly, claim 16 remains directed to an abstract idea.
Step 2A — Prong Two: Integration Into a Practical Application
Claim 16 does not integrated the mathematical concept into a practical application. Although the claim is nominally directed to “data encryption”, the recited steps do not improve the functioning of a computer, or cryptographic algorithm itself.
The additional limitation “outputting the error signal when any one or more of the 6 check formulae are invalid” amounts to insignificant extra-solution activity and merely communicates the result of the abstract analysis to another component.
The claim does not recite any specific improvement to processor architecture or firmware operation. The processing unit and firmware are recited at a high level of generality as tools used to receive upon the calculated result.
Therefore, the claim is directed to mathematical concepts and is not integrated into a practical application under Step 2A. Accordingly, the claim is directed to an abstract idea.
Step 2B — Lack of inventive concept
Claim 16 does not include additional elements that amount to significantly more that the judicial exception.
The claim is drafted at a high level of generality and recites: generic data conversion, generic lookup tables, generic parity checking, and generic output of an error signal.
The steps can be performed mentally or by a general-purpose processor executing routine calculations.
Therefore, claim 16 lacks an inventive concept sufficient to transform the abstract mathematical concept into patent-eligible subject matter.
Step 2A, Prong 1 (Do the claims recite an abstract idea?) — 2019 PEG pq. 54
For dependent claim 17, the claim recites a mathematical concept of: enabling one or more restrictions by the user. The steps of: “using following 6 check formulae to analyze 6 bits of the Hamming parity according to a most- significant byte of the second value…”.
Hamming parity checks, fixing K=14 is a parameter choice, not an inventive concept. this is a mathematical relationship, falling within mathematical formulas. Therefore, claim 17 is directed to a mathematical concept, specifically mathematical relationships, calculations, and formulas. Accordingly, claim 17 remains directed to an abstract idea.
Step 2A — Prong Two: Integration Into a Practical Application
Claim 17 does not integrated the mathematical concept into a practical application. Although the claim is nominally directed to “data encryption”, the recited steps do not improve the functioning of a computer, or cryptographic algorithm itself.
The additional limitation “outputting the error signal when any one or more of the 6 check formulae are invalid” amounts to insignificant extra-solution activity and merely communicates the result of the abstract analysis to another component.
The claim does not recite any specific improvement to processor architecture or firmware operation. The processing unit and firmware are recited at a high level of generality as tools used to receive upon the calculated result.
Therefore, the claim is directed to mathematical concepts and is not integrated into a practical application under Step 2A. Accordingly, the claim is directed to an abstract idea.
Step 2B — Lack of inventive concept
Claim 17 does not include additional elements that amount to significantly more that the judicial exception.
The claim is drafted at a high level of generality and recites: generic data conversion, generic lookup tables, generic parity checking, and generic output of an error signal.
The steps can be performed mentally or by a general-purpose processor executing routine calculations.
Therefore, claim 17 lacks an inventive concept sufficient to transform the abstract mathematical concept into patent-eligible subject matter.
Step 2A, Prong 1 (Do the claims recite an abstract idea?) — 2019 PEG pq. 54
For dependent claim 18, the claim recites a mathematical concept of: enabling one or more restrictions by the user. The additional limitation of: “wherein the first value of the one byte corresponds to a plaintext or an intermediate encryption result in an operation for substituting bytes in an Advanced Encryption Standard (AES) algorithm …”.
Recites identifying or selecting particular categories data used as inputs to the previously-recited mathematical operations. This limitation merely specifies that the data being mathematically manipulated originates from plaintext values or intermediate encryption results associated with byte substitution operations. Therefore, claim 18 is directed to a mathematical concept. Accordingly, claim 18 remains directed to an abstract idea.
Step 2A — Prong Two: Integration Into a Practical Application
Claim 18 does not integrated the mathematical concept into a practical application. Although the claim references “plaintext values”, “intermediate encryption results”, and “AES algorithm”, these recitations merely limit the abstract calculations to a particular field of use.
the claim does not recite any specific improvement to AES processing.
Therefore, the claim is directed to mathematical concepts and is not integrated into a practical application under Step 2A. Accordingly, the claim is directed to an abstract idea.
Step 2B — Lack of inventive concept
Claim 18 does not include additional elements that amount to significantly more that the judicial exception.
The recitation of AES merely identifies a technological context in which the mathematical calculations are performed. Limiting an abstract idea to use within a cryptographic algorithm does not provide an inventive concept.
Therefore, claim 18 lacks an inventive concept sufficient to transform the abstract mathematical concept into patent-eligible subject matter.
Step 2A, Prong 1 (Do the claims recite an abstract idea?) — 2019 PEG pq. 54
For dependent claim 19, the claim recites a mathematical concept of: enabling one or more restrictions by the user. The additional limitation of: “wherein the first value of the one byte corresponds to a round key in an operation for substituting bytes in an Advanced Encryption Standard (AES) algorithm”.
Recites identifying or selecting particular categories data used as inputs to the previously-recited mathematical operations. This limitation merely specifies that the data being mathematically manipulated originates from round key values or intermediate encryption results associated with byte substitution operations. Therefore, claim 19 is directed to a mathematical concept. Accordingly, claim 18 remains directed to an abstract idea.
Step 2A — Prong Two: Integration Into a Practical Application
Claim 19 does not integrated the mathematical concept into a practical application. Although the claim references “round key values”, “intermediate encryption results”, and “AES algorithm”, these recitations merely limit the abstract calculations to a particular field of use.
the claim does not recite any specific improvement to AES processing.
Therefore, the claim is directed to mathematical concepts and is not integrated into a practical application under Step 2A. Accordingly, the claim is directed to an abstract idea.
Step 2B — Lack of inventive concept
Claim 19 does not include additional elements that amount to significantly more that the judicial exception.
The recitation of AES merely identifies a technological context in which the mathematical calculations are performed. Limiting an abstract idea to use within a cryptographic algorithm does not provide an inventive concept.
Therefore, claim 19 lacks an inventive concept sufficient to transform the abstract mathematical concept into patent-eligible subject matter.
Step 2A, Prong 1 (Do the claims recite an abstract idea?) — 2019 PEG pq. 54
For dependent claim 20, the claim recites a mathematical concept of: enabling one or more restrictions by the user. The additional limitation of: “wherein the method is performed in an Advanced Encryption Standard (AES) encoder of a flash controller”.
The limitation merely identifies the environment in which the previously-recited mathematical calculations are performed. Therefore, claim 20 is directed to a mathematical concept. Accordingly, claim 20 remains directed to an abstract idea.
Step 2A — Prong Two: Integration Into a Practical Application
Claim 20 does not integrated the mathematical concept into a practical application. Although the claim references “an AES encoder”, and “a flash controller”, these recitations merely limit the abstract calculations to a particular field of use.
the claim does not recite any specific improvement to AES processing.
Therefore, the claim is directed to mathematical concepts and is not integrated into a practical application under Step 2A. Accordingly, the claim is directed to an abstract idea.
Step 2B — Lack of inventive concept
Claim 20 does not include additional elements that amount to significantly more that the judicial exception.
The recitation of AES and flash controller merely identifies a technological context in which the mathematical calculations are performed. Limiting an abstract idea to use within a cryptographic algorithm does not provide an inventive concept.
Therefore, claim 20 lacks an inventive concept sufficient to transform the abstract mathematical concept into patent-eligible subject matter. Accordingly, the claim is directed to an abstract idea.
For these reasons, dependent claims 13-20 also are not patent eligible under 35 U.S.C 101.
Claim Rejections - 35 USC § 112
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claims 13-20 are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention.
Claim 13 recites “wherein K is an integer ranging from 10 to 15 and the second value comprises m bits of a Hamming parity, wherein m is K subtracting 8”; and further claim 13 recites “wherein a total amount of the formulae is m”.
The non-provisional specification fails to provide written description support for the claim limitation of “the second value comprises m bits of a Hamming parity, wherein m is K subtracting 8. The original filed disclosure describe that a second value generated according to an 8-toK lookup table comprises “(k-8) bits of Hamming parity” and further describes that “a total amount of the formula is K minus 8”. However, the specification does not describe or introduce the variable “m” as representing K-8, the number of parity bites, the number of formulae, or any other quantity. The specification consistently describes “K-8” rather than the newly introduced variable notation. See paragraphs [0004], and [0005]. Therefore, the specification lacks adequate written description support for the recited variable “m”.
Claims 14-20 which are dependent to claim 13, are similarly rejected.
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 13-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claim 13 is rejected as being indefinite for ambiguity. Claim 13 recites “wherein K is an integer ranging from 10 to 15 and the second value comprises m bits of a Hamming parity, wherein m is K subtracting 8… wherein a total amount of the formulae is m;”. the claim does not clearly establish as to what exactly the variable “m” represents. further because the specification does not define the parameter m, one of ordinary skill in the art would not be reasonably apprised of the metes and bounds of the claimed invention when determining the scope of “m bits of a Hamming parity” and “the total amount of the formulae is m”.
Accordingly, the scope of the claim is unclear because the meaning and application of variable “m” is indefinite.
Claims 14-20 which are dependent to claim 13, are similarly rejected.
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 13, 15-20 are rejected under 35 U.S.C. 103 as being unpatentable over VIGILANT et al . (US 2018/0123778 A1), hereinafter Vigilant in view of SeyedzadehDelcheh et al. (US 20220188185 A1), hereinafter SeyedzadehDelcheh and further in view of Solomon et al. (US 6,374,382 B1), hereinafter Solomon.
Regarding claim 13, Vigilant discloses a method for detecting errors during data encryption, comprising:
converting a first value of one byte into a second value of a K-bit according to an 8-to-K lookup table (Vigilant, Para. 0046, FIG. 7 is a lookup table for the redundancy portion R_x of a C[16,8,5] code corresponding to the 8-bit systematic portion x. Thus indexes are bytes. Thus, there are 256 entries. The outputs are also 8-bit words. The high 8-bits of the codeword X is simply the systematic portion x and therefore does not need to be part of the table output),
wherein K is an integer ranging from 10 to 15 and the second value comprises m bits of a Hamming parity, wherein m is K subtracting 8 (Vigilant, Para. 0071, for each byte bi (i=0 to 15) in the 16 byte AES state b0 . . . b15, each bi (loop i from 0 to 15) is transformed into si by applying the table T1 608);
outputting an error signal to notify firmware running in a processing unit that an error handling procedure needs to be executed for data encryption when finding the error (Vigilant, Para. 0059, the attack-thwarting action may include terminating the process, alerting the user of the cryptographic device that a fault has been detected, transmitting a warning message to an authorized entity, disabling device, etc).
Vigilant does not explicitly disclose determining whether an error is occurred during a conversion of the first value of the one byte into the second value of the K-bit by employing check formulae corresponding to the 8-to- K lookup table to compare the Hamming Parity of the second value with a most-significant byte of the second value,
However, SeyedzadehDelcheh teaches determining whether an error is occurred during a conversion of the first value of the one byte into the second value of the K-bit by employing check formulae corresponding to the 8-to- K lookup table to compare the Hamming Parity of the second value with a most-significant byte of the second value (SeyedzadehDelcheh Fig. 4, and Para. 0021, the encoder selects a Hamming code (64, 57, 7) scheme as a selected error correction scheme. The first parameter of the Hamming code scheme includes a code word size, such as 64 bits, that includes the original data in addition to the security data. The second parameter of the Hamming code scheme includes an input data size, such as 57 bits, that includes the original data to transmit. The third parameter of the Hamming code scheme includes a size of the security data such as 7 bits) and (SeyedzadehDelcheh Para. 0020, the encoder selects a most significant byte of the sub-blocks as portions to compare. In this case, for each portion, the offset is zero within a corresponding sub-block and the size is one byte. If the control unit 132 determines that the 8 1-byte portions of the 8 sub-blocks match one another, then the encoder determines an amount of security data to send), and paragraphs [0022], [0032], [0047-0048], [0051-0052] and [0058], and
Vigilant and SeyedzadehDelcheh are both considered to be analogous to the claim invention because they are in the same field of detecting errors during data encryption. Therefore, it would have been obvious to someone ordinary skill in the art before the effective filling date of the claimed invention to have modified Vigilant to incorporate the teachings of SeyedzadehDelcheh to include determining whether an error is occurred during a conversion of the first value of the one byte into the second value of the K-bit by employing check formulae corresponding to the 8-to- K lookup table to compare the Hamming Parity of the second value with a most-significant byte of the second value (SeyedzadehDelcheh, Fig. 4, and Para. 0021) and (SeyedzadehDelcheh, Para. 0020), and paragraphs [0022], [0032], [0047-0048], [0051-0052] and [0058]. Doing so would aid to generate security data corresponding to data to transmit. This security data is used to both identify and correct any errors in received payload data, rather than simply detect errors in the received payload data (SeyedzadehDelcheh, Para. 0014).
Vigilant and SeyedzadehDelcheh does not explicitly disclose wherein a total amount of the formulae is m;
however, Solomon teaches wherein a total amount of the formulae is m (Solomon, Col.3, lines 12-65, an inner encoder 108 for encoding the input Signal to generate a short block inner code, as described more fully below. Transmitter 102 is arranged to form the inner and outer code as a concatenated Signal which is transmitted via a modulator 110 to a satellite receiver link 112. A receiver 114 includes a demodulator 116 for receiving the transmitted Signal, an inner code decoder 118 for decod ing the received inner code as described more fully below, and an RS decoder 120 for decoding the RS outer code. The decoded signal is then Supplied to output terminal 122. In accordance with the present invention, encoder 108 is arranged to generate the inner code as a (nk) short block code having a message length kxi, where i is a Small integer, Such as 1, 2, or 3, Selected to eliminate or obviate any need for interleaving between the inner and outer codes without degrading performance. The short block inner code of the present invention preferably provides 12 codeword bits for every 8 bit information signal, i.e., a rate of 2/3 to generate a inner code of (12.8).it is noted that K=12 corresponds to the total bits, and 8 corresponds to data bites and the Parity bite is 12-8=4).
Vigilant, SeyedzadehDelcheh and Solomon are both considered to be analogous to the claim invention because they are in the same field of detecting errors during data encryption.
Therefore, it would have been obvious to someone ordinary skill in the art before the effective filling date of the claimed invention to have modified Vigilant and SeyedzadehDelcheh to incorporate the teachings of Solomon to include wherein a total amount of the formulae is K minus 8 (Solomon, Col.3, lines 12-65). Doing so would aid to improve performance of a concatenated coding scheme using an RS outer code and a convolutional inner code, interleaving causes undesirably large processing delays for systems which use small packets either due to large minimum uplink burst size, or complex link protocols to pump or flush the interleaved data (Solomon, Col.1, lines 40-45).
Regarding claim 15, the combination of VIGILANT and SeyedzadehDelcheh in view of Solomon teaches the method of claim 13, wherein K is 14 (Solomon, Col.3, lines 12-65, an inner encoder 108 for encoding the input Signal to generate a short block inner code, as described more fully below. Transmitter 102 is arranged to form the inner and outer code as a concatenated Signal which is transmitted via a modulator 110 to a satellite receiver link 112. A receiver 114 includes a demodulator 116 for receiving the transmitted Signal, an inner code decoder 118 for decod ing the received inner code as described more fully below, and an RS decoder 120 for decoding the RS outer code. The decoded signal is then Supplied to output terminal 122. In accordance with the present invention, encoder 108 is arranged to generate the inner code as a (nk) short block code having a message length kxi, where i is a Small integer, Such as 1, 2, or 3, Selected to eliminate or obviate any need for interleaving between the inner and outer codes without degrading performance. The short block inner code of the present invention preferably provides 12 codeword bits for every 8 bit information signal, i.e., a rate of 2/3 to generate a inner code of (12.8).it is noted that K=12 corresponds to the total bits, and 8 corresponds to data bites and the Parity bite is 12-8=4. Please note that “K=12” is an obvious modification and it’s not patentability distinct). Therefore, it would have been obvious to someone ordinary skill in the art before the effective filling date of the claimed invention to have modified Vigilant and SeyedzadehDelcheh to incorporate the teachings of Solomon to include the method of claim 13, wherein K is 14 (Solomon, Col.3, lines 12-65). Doing so would aid to improve performance of a concatenated coding scheme using an RS outer code and a convolutional inner code, interleaving causes undesirably large processing delays for systems which use small packets either due to large minimum uplink burst size, or complex link protocols to pump or flush the interleaved data (Solomon, Col.1, lines 40-45).
Regarding claim 16, the combination of VIGILANT and SeyedzadehDelcheh in view of Solomon teaches the method of claim 15, comprising:
using the check formulae to analyze 6 bits of the Hamming parity according to a most- significant byte of the second value:
Hm 5 ==S′ (out) 7 +S′ (out) 6 +S′ (out) 5 +S′ (out) 4 +S′ (out) 3 +S′ (out) 2 +S′ (out) 1 +S′ (out) 0
Hm 4 ==S′ (out) 7 +S′ (out) 4 +S′ (out) 0
Hm 3 ==S′ (out) 6 +S′ (out) 5 +S′ (out) 1 +S′ (out) 0
Hm 2 ==S′ (out) 4 +S′ (out) 2 +S′ (out) 1
Hm 1 ==S′ (out) 5 +S′ (out) 3 +S′ (out) 2
Hm 0 ==S′ (out) 7 +S′ (out) 6 +S′ (out) 3
Hm5 to Hm0 represent a 5th bit to a 0th bit of the Hamming parity, respectively, and S′(out) 7 to S′(out) 0 represent a 7th bit to a 0th bit of the most-significant byte of the second value, respectively (Solomon, Fig. 3, Col.3, lines 35-65); and
outputting the error signal when any one or more of the 6 check formulae are invalid (Solomon, Fig. 3, Col.3, lines 35-65, Hamming codes are single-error correcting BCH codes with the following parameters: code length n=2m−1; no. of information bits k=2m−m−1; no. of parity bits n−k=m. As denoted at block 300, the process begins with m=4 to produce a (15,11) Hamming code. As described below, a (12,8) inner code is formed at block 302 by selectively deleting certain columns of the corresponding parity check matrix H) (Solomon, Fig. 4, Col.3, lines 1-20, AS denoted at block 304, formulation of the inner code Word is then expressed as the Sequence a 7, as, as, a1, as, a2, ao, Ps, P, P, Po, where: P=a XOR as XOR as XOR a XOR as XOR as XOR a. P=ao XOR a XOR as XOR as XOR az; P=ao XOR as XOR as XOR as XOR az;). Therefore, it would have been obvious to someone ordinary skill in the art before the effective filling date of the claimed invention to have modified Vigilant and SeyedzadehDelcheh to incorporate the teachings of Solomon to include Hm5 to Hm0 represent a 5th bit to a 0th bit of the Hamming parity, respectively, and S′(out) 7 to S′(out) 0 represent a 7th bit to a 0th bit of the most-significant byte of the second value, respectively (Solomon, Fig. 3, Col.3, lines 35-65); and outputting the error signal when any one or more of the 6 check formulae are invalid (Solomon, Fig. 3, Col.3, lines 35-65). Doing so would aid to improve performance of a concatenated coding scheme using an RS outer code and a convolutional inner code, interleaving causes undesirably large processing delays for systems which use small packets either due to large minimum uplink burst size, or complex link protocols to pump or flush the interleaved data (Solomon, Col.1, lines 40-45).
Regarding claim 17, the combination of VIGILANT and SeyedzadehDelcheh in view of Solomon teaches the method of claim 15, comprising:
using the check formulae to analyze 6 bits of the Hamming parity according to a most- significant byte of the second value:
Hm 5 ==S′ (out) 7 +S′ (out) 6 +S′ (out) 5 +S′ (out) 4 +S′ (out) 3 +S′ (out) 2 +S′ (out) 1 +S′ (out) 0
Hm 4 ==S′ (out) 7 +S′ (out) 4 +S′ (out) 0
Hm 3 ==S′ (out) 6 +S′ (out) 5 +S′ (out) 1 +S′ (out) 0
Hm 2 ==S′ (out) 4 +S′ (out) 2 +S′ (out) 1
Hm 1 ==S′ (out) 5 +S′ (out) 3 +S′ (out) 2
Hm 0 ==S′ (out) 7 +S′ (out) 6 +S′ (out) 3
Hm5 to Hm0 represent a 5th bit to a 0th bit of the Hamming parity, respectively, and S′(out) 7 to S′(out) 0 represent a 7th bit to a 0th bit of the most-significant byte of the second value, respectively (Solomon, Fig. 3, Col.3, lines 35-65); and
outputting the error signal when any one or more of the 6 check formulae are invalid (Solomon, Fig. 3, Col.3, lines 35-65, Hamming codes are single-error correcting BCH codes with the following parameters: code length n=2m−1; no. of information bits k=2m−m−1; no. of parity bits n−k=m. As denoted at block 300, the process begins with m=4 to produce a (15,11) Hamming code. As described below, a (12,8) inner code is formed at block 302 by selectively deleting certain columns of the corresponding parity check matrix H) (Solomon, Fig. 4, Col.3, lines 1-20, AS denoted at block 304, formulation of the inner code Word is then expressed as the Sequence a 7, as, as, a1, as, a2, ao, Ps, P, P, Po, where: P=a XOR as XOR as XOR a XOR as XOR as XOR a. P=ao XOR a XOR as XOR as XOR az; P=ao XOR as XOR as XOR as XOR az;). Therefore, it would have been obvious to someone ordinary skill in the art before the effective filling date of the claimed invention to have modified Vigilant and SeyedzadehDelcheh to incorporate the teachings of Solomon to include Hm5 to Hm0 represent a 5th bit to a 0th bit of the Hamming parity, respectively, and S′(out) 7 to S′(out) 0 represent a 7th bit to a 0th bit of the most-significant byte of the second value, respectively (Solomon, Fig. 3, Col.3, lines 35-65); and outputting the error signal when any one or more of the 6 check formulae are invalid (Solomon, Fig. 3, Col.3, lines 35-65). Doing so would aid to improve performance of a concatenated coding scheme using an RS outer code and a convolutional inner code, interleaving causes undesirably large processing delays for systems which use small packets either due to large minimum uplink burst size, or complex link protocols to pump or flush the interleaved data (Solomon, Col.1, lines 40-45).
Regarding claim 18, the combination of VIGILANT and SeyedzadehDelcheh in view of Solomon teaches the method of claim 13, wherein the first value of the one byte corresponds to a plaintext or an intermediate encryption result in an operation for substituting bytes in an Advanced Encryption Standard (AES) algorithm (Vigilant, Para. 0047, Step 601, may be applied to every state byte to transform the state byte to a codeword in order to detect faults introduced into the state byte (or the corresponding redundancy portion) and (Vigilant, Para. 0004, Step 601, the Advanced Encryption Standard (AES), which serves as an example herein, involves encrypting (or decrypting) a message by performing a sequence of cycles called rounds. Each round operates on a matrix of bytes called a state. Each of the rounds (except for the first round) includes a non-linear operation called SubBytes in which an input byte from the state is substituted with an output byte based on a substitution box (SBox)).
Regarding claim 19, the combination of VIGILANT in view of Solomon teaches the method of claim 13, wherein the first value of the one byte corresponds to a round key in an operation for substituting bytes in an Advanced Encryption Standard (AES) algorithm (Vigilant, Para. 0004, Step 601, the Advanced Encryption Standard (AES), which serves as an example herein, involves encrypting (or decrypting) a message by performing a sequence of cycles called rounds. Each round operates on a matrix of bytes called a state. Each of the rounds (except for the first round) includes a non-linear operation called SubBytes in which an input byte from the state is substituted with an output byte based on a substitution box (SBox)).
Regarding claim 20, the combination of VIGILANT in view of Solomon teaches the method of claim 13, wherein the method is performed in an Advanced Encryption Standard (AES) encoder of a flash controller (Vigilant, Para. 0027, smart cards are used herein as examples of portable security devices that may be used in implementations of the technology described herein. Other examples of portable security devices include smart memory cards, flash memory, etc. In a preferred embodiment, the portable security device has a processor, a memory for storing programs and data, and some security features to make the device relatively tamper-proof. Smart cards are used herein as examples of such devices).
Claim 14 is rejected under 35 U.S.C. 103 as being unpatentable over VIGILANT et al . (US 2018/0123778 A1), hereinafter Vigilant in view of Solomon et al. (US 6,374,382 B1), hereinafter Solomon in view of SeyedzadehDelcheh et al. (US 20220188185 A1), hereinafter SeyedzadehDelcheh and further in view of Stein et al. (US 2003/0133568A1), hereinafter stein.
Regarding claim 14, the combination of VIGILANT and SeyedzadehDelcheh in view of Solomon does not explicitly disclose the method of claim 13, wherein most-significant 8 bits of each cell in the 8-to-K lookup table is established by a formula as follows:
SB i=Affine((i)−1)
SBi represents an output result of a value i, Affine( ) represents an Affine transformation function, and i is an integer ranging from 0 to 127.
However, Stein teaches the method of claim 13, wherein most-significant 8 bits of each cell in the 8-to-K lookup table is established by a formula as follows (Stein, Para. 0057, for example, if memory 318 holds eight look-up tables of 64 bytes each, the starting points for those look-up tables which coincide with the columns 30, 32, 34, 36, 38, 40, 42, 44 will be 0, 64, 128, 192, 256, 320, 384, and 448):
SB i=Affine((i)−1)
SBi represents an output result of a value i, Affine( ) represents an Affine transformation function, and i is an integer ranging from 0 to 127 (Stein, Para. 0012, the key generator circuit may include a fourth parallel look-up table for executing a multiplicative inverse in GF −1(28) and applying affine over GF(2) transformation to obtain the round keys). Vigilant, Solomon and Stein are all considered to be analogous to the claim invention because they are in the same field of detecting errors during data encryption. Therefore, it would have been obvious to someone ordinary skill in the art before the effective filling date of the claimed invention to have modified Vigilant, SeyedzadehDelcheh and Solomon to incorporate the teachings of Stein to include the method of claim 13, wherein most-significant 8 bits of each cell in the 8-to-K lookup table is established by a formula as follows (Stein, Para. 0057):
SB i=Affine((i)−1)
SBi represents an output result of a value i, Affine( ) represents an Affine transformation function, and i is an integer ranging from 0 to 127 (Stein, Para. 0012). Doing so would aid to improve programmable data encryption engine for performing the cipher function of an advanced encryption standard (AES) using the Rijndael algorithm(Stein, Para. 0007).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. See PtO-892.
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to GITA FARAMARZI whose telephone number is (571)272-0248. The examiner can normally be reached Monday- Friday 9:00 am- 6:00 pm.
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, Jorge L. Ortiz-Criado can be reached at (571)272-7624. 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.
/GITA FARAMARZI/Examiner, Art Unit 2496 /JORGE L ORTIZ CRIADO/Supervisory Patent Examiner, Art Unit 2496