Masked decoding of polynomials
    1.
    发明授权

    公开(公告)号:US11595195B2

    公开(公告)日:2023-02-28

    申请号:US17226770

    申请日:2021-04-09

    Applicant: NXP B.V.

    Abstract: Various embodiments relate to a method for masked decoding of a polynomial a using an arithmetic sharing a to perform a cryptographic operation in a data processing system using a modulus q, the method for use in a processor of the data processing system, including: subtracting an offset δ from each coefficient of the polynomial a; applying an arithmetic to Boolean (A2B) function on the arithmetic shares of each coefficient ai of the polynomial a to produce Boolean shares âi that encode the same secret value ai; and performing in parallel for all coefficients a shared binary search to determine which of coefficients ai are greater than a threshold t to produce a Boolean sharing value {circumflex over (b)} of the bitstring b where each bit of b decodes a coefficient of the polynomial a.

    Machine learning model and method for determining if the machine learning model has been copied

    公开(公告)号:US11500970B2

    公开(公告)日:2022-11-15

    申请号:US16529882

    申请日:2019-08-02

    Applicant: NXP B.V.

    Abstract: A method and data processing system are provided for determining if a machine learning model has been copied. The machine learning model has a plurality of nodes, the plurality of nodes is organized as a plurality of interconnected layers, and the plurality of interconnected layers includes an input layer and an output layer. The output layer has a predetermined number of output nodes for classifying input samples into a predetermined number of categories, where each output node corresponds to a category. An additional watermarking node is added to the output layer. The model is trained to classify the input data into the predetermined number of categories and into an additional category for the additional node. The additional node may be added to another model to determine if the another model is a copy or clone of the ML model.

    METHOD FOR PROTECTING A MACHINE LEARNING MODEL AGAINST EXTRACTION

    公开(公告)号:US20210326748A1

    公开(公告)日:2021-10-21

    申请号:US16853826

    申请日:2020-04-21

    Applicant: NXP B.V.

    Abstract: A method for protecting a first machine learning (ML) model is provided. In the method, a dataset of non-problem domain (NPD) data is selected from a large dataset using a second ML model. The second ML model classifies the large dataset into NPD classifications and PD classifications. The PD classified data is excluded. A distinguisher includes a third ML model that is trained using selected NPD data from the large dataset. The distinguisher receives input samples that are intended for the first ML model. The third ML model provides either a PD classification or NPD classification in response to receiving each input sample. An indication of a likely extraction attempt may be provided when a predetermined number of NPD classifications are provided. The method provides an efficient way to create a training dataset for a distinguisher and for protecting a ML model with the distinguisher.

    BIOMETRIC SYSTEM AND METHOD FOR RECOGNIZING A BIOMETRIC CHARACTERISTIC IN THE BIOMETRIC SYSTEM

    公开(公告)号:US20210232667A1

    公开(公告)日:2021-07-29

    申请号:US16752734

    申请日:2020-01-27

    Applicant: NXP B.V.

    Abstract: A data processing system and a method are provided for recognizing a scanned biometric characteristic in the data processing system. The data processing system includes a biometric sensor, a rich execution environment (REE), and a secure element (SE). In one embodiment, during an enrollment operation, a random challenge is applied to scanned data to produce a biometric template that is stored. During subsequent validation operations, the SE determines if user data includes evidence of the random challenge before providing access to a secure application. Evidence of the random challenge indicates the user data was provided by the biometric sensor. In another embodiment, the sensor data is split between the REE and the SE and partially processed in the SE. The described embodiments prevent a replay attack from being conducted in communications between the REE and the SE.

    METHOD FOR POST-QUANTUM SECURE IN-THE-FIELD TRUST PROVISIONING

    公开(公告)号:US20240313963A1

    公开(公告)日:2024-09-19

    申请号:US18183310

    申请日:2023-03-14

    Applicant: NXP B.V.

    CPC classification number: H04L9/0894 H04L9/0891 H04L9/3263

    Abstract: A method for provisioning a plurality of IC devices, the method including: providing, by a first entity, the plurality of IC devices; storing, by the first entity, in one of the plurality of IC devices used as a provisioning device, one or more keys, and a public key, wherein the one or more keys include a reprovisioning key for reprovisioning the remaining IC devices; installing, by the first entity, provisioning software in the provisioning device; signing, by the first entity, provisioning software using a private key, the private key corresponding to the public key; provisioning the remaining IC devices by the provisioning device including providing cryptographic assets to the remaining IC devices, wherein the cryptographic assets include cryptographic code and keys; and reserving space in the remaining IC devices for reprovisioning the remaining IC devices with updated cryptographic assets.

    PROTECTING POLYNOMIAL REJECTION THROUGH MASKED COMPRESSION COMPARISON

    公开(公告)号:US20240126511A1

    公开(公告)日:2024-04-18

    申请号:US17935550

    申请日:2022-09-26

    Applicant: NXP B.V.

    CPC classification number: G06F7/724 G06F9/3001 G06F9/30029 G06F2207/7233

    Abstract: Various embodiments relate to a data processing system comprising instructions embodied in a non-transitory computer readable medium, the instructions for a cryptographic operation using masked compressing of coefficients of a polynomial having ns arithmetic shares for lattice-based cryptography in a processor, the instructions, including: shifting a first arithmetic share of the ns arithmetic shares by an input mask λ1; scaling the shifted first arithmetic share by a value based on a first compression factor δ and a masking scaling factor φ1; shifting the scaled first arithmetic share by a value based on the masking scaling factor φ1; scaling a second to ns shares of the ns arithmetic shares by a value based on the first compression factor δ and the masking scaling factor φ1; converting the ns scaled arithmetic shares to ns Boolean shares; right shifting the ns Boolean shares based upon the masking scaling factor φ1 and a second compression factor φ2; XORing an output mask λ2 with the shifted first Boolean share to produce ns compressed Boolean shares; and carrying out a cryptographic operation using the ns arithmetic shares when the ns compressed Boolean shares indicates that the coefficients of the polynomial are within boundary values.

    PARTIAL KEY STORAGE OF BINARY-TREE BASED CRYPTOGRAPHY

    公开(公告)号:US20230353383A1

    公开(公告)日:2023-11-02

    申请号:US17733780

    申请日:2022-04-29

    Applicant: NXP B.V.

    CPC classification number: H04L9/3247 H04L9/14 H04L9/0897

    Abstract: Various embodiments relate to a data processing system comprising instructions embodied in a non-transitory computer readable medium, the instructions for signing messages using a plurality of one-time signing (OTS) keys and a binary-hash-tree structure having a height h and a plurality of nodes configured to provide a public key having, including: generating and storing an authentication path A[d:h−1] for a first 2d signatures corresponding to the first 2d OTS keys of the plurality of OTS keys, where d is the height of a sub-tree associated with first 2d OTS keys; initiating a signature counter; signing a first message using the first OTS key of the plurality of OTS keys; incrementing the signature counter; determining if 2d messages have been signed; signing a second message and incrementing the signature counter when 2d messages have not been signed; and updating authentication path A[d:h−1] for a second 2d signatures corresponding to the second 2d OTS keys of the plurality of OTS keys when 2d messages have been signed.

    COMBINING REGULAR AND SYMBOLIC NTTS USING CO-PROCESSORS

    公开(公告)号:US20230047965A1

    公开(公告)日:2023-02-16

    申请号:US17392332

    申请日:2021-08-03

    Applicant: NXP B.V.

    Abstract: Various embodiments relate to a method for multiplying a first and a second polynomial in a ring q[X]/(Xn+1) to perform a cryptographic operation in a data processing system where q is a positive integer, the method for use in a processor of the data processing system, comprising: receiving the first polynomial and the second polynomial by the processor; mapping the first polynomial into k smaller third polynomials over k smaller rings based upon primitive roots of unity, where k is a positive integer; mapping the second polynomial into k smaller fourth polynomials over the k smaller rings based upon primitive roots of unity; applying an isomorphism to the k third polynomials resulting in k fifth polynomials; applying the isomorphism to the k fourth polynomials resulting in k sixth polynomials; applying a Kronecker substitution on the k fifth polynomials and the k sixth polynomials and perform the multiplication of the k fifth polynomials and the k sixth polynomials to produce a multiplication result; applying an inverse of the isomorphism to the multiplication result to obtain the multiplication of the first polynomial and the second polynomial; and mapping the k inverted polynomials to a single polynomial in the ring mapping the k inverted polynomials to a single polynomial in the ring q[X]/(Xn+1.

    Method for analyzing a prediction classification in a machine learning model

    公开(公告)号:US11410057B2

    公开(公告)日:2022-08-09

    申请号:US16795774

    申请日:2020-02-20

    Applicant: NXP B.V.

    Abstract: A method is provided for analyzing a classification in a machine learning model (ML). In the method, the ML model is trained using a training dataset to produce a trained ML model. One or more samples are provided to the trained ML model to produce one or more prediction classifications. A gradient is determined for the one of more samples at a predetermined layer of the trained ML model. The one or more gradients and the one or more prediction classifications for each sample are stored. Also, an intermediate value of the ML model may be stored. Then, a sample is chosen to analyze. A gradient of the sample is determined if the gradient was not already determined when the at least one gradient is determined. Using the at least one gradient, and one or more of a data structure, a predetermined metric, and an intermediate value, the k nearest neighbors to the sample are determined. A report comprising the sample and the k nearest neighbors may be provided for analysis.

    METHOD FOR PROTECTING A SOFTWARE PROGRAM FROM COPYING

    公开(公告)号:US20210110002A1

    公开(公告)日:2021-04-15

    申请号:US16598148

    申请日:2019-10-10

    Applicant: NXP B.V.

    Abstract: A method is provided for protecting a software program from copying. The method includes providing a first implementation of the software program. A second implementation of the software program is then provided. The second implementation provides a same functionality as the first implementation, and wherein the second implementation includes a plurality of dummy operations to increase a number of operations and an execution time of the second implementation compared to the first implementation. The dummy operations are encoded. The second implementation may then be compared to another software program to determine if the another software program is a copy of the first implementation of the software program. This allows a copy of the first implementation to be detected without disclosing the first implementation.

Patent Agency Ranking