METHOD FOR WATERMARKING A MACHINE LEARNING MODEL

    公开(公告)号:US20250013721A1

    公开(公告)日:2025-01-09

    申请号:US18347740

    申请日:2023-07-06

    Applicant: NXP B.V.

    Abstract: A method is provided for watermarking a machine learning model. A sequence of bits is generated. The sequence of bits may be text characters divided into chunks. A selected plurality of input samples from training data is divided into subsets of input samples. All of the input samples of each subset of the subsets of input samples are labeled with a same first label in a problem domain of the ML model. Each chunk is combined with a subset of the labeled subsets to produce a plurality of labeled trigger samples. Each trigger sample of each set of the plurality of sets is relabeled to have a second label different from the first label and in the problem domain to produce a relabeled set of trigger samples. The ML model is trained with the training data and the relabeled trigger samples to produce a watermarked ML model.

    Method for protecting a machine learning model from a side channel attack

    公开(公告)号:US12086246B2

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

    申请号:US17810424

    申请日:2022-07-01

    Applicant: NXP B.V.

    CPC classification number: G06F21/56 G06F2221/034

    Abstract: A method is provided for protecting a machine learning (ML) model from a side channel attack (SCA). The method is executed by a processor in a data processing system. The method includes generating a first random bit. A first weighted sum is computed for a first connection between a node of a first layer and a node of a second layer of the ML model. The first weighted sum for the first connection is equal to a multiplication of the weight of the first connection multiplied by an input to the selected node. In the multiplication, one of the weight or the input is negated conditioned on a value of the random bit. A first output including the computed first weighted sum is provided to one or more nodes of a second layer of the plurality of layers.

    Probabilistic memory safety using cryptography

    公开(公告)号:US11295025B2

    公开(公告)日:2022-04-05

    申请号:US16427977

    申请日:2019-05-31

    Applicant: NXP B.V.

    Abstract: A chip for securing storage of information includes a manager to access a pointer and a cipher engine to decrypt stored data. The pointer includes a first area and a second area. The first area includes an address indicating a storage location of the data and the second area includes a safety tag. The cipher engine decrypts the data output from the storage location based on a key and the safety tag in the second area of the pointer. These and other operations may be performed based on metadata that indicate probabilities that a correct safety tag was used to decrypt the data. In another embodiment, the manager may be replaced with an L1 cache.

    Using a memory safety violation indicator to detect accesses to an out-of-bounds or unallocated memory area

    公开(公告)号:US10824560B2

    公开(公告)日:2020-11-03

    申请号:US16278246

    申请日:2019-02-18

    Applicant: NXP B.V.

    Abstract: A data processing system and method for protecting a memory from unauthorized accesses are provided. The data processing system includes a system bus, a memory coupled to the system bus through a memory controller, and a processing core including a cache system. The memory controller is coupled to the system bus for controlling accesses to the memory that are requested by the processing core. A memory protection circuit uses one or more memory safety violation (MSV) indicators stored in out-of-bounds areas of the memory for detecting when the processing core attempts to access an out-of-bounds area of the memory. The processing core generates an error signal, such as an interrupt, when an attempt to access the out-of-bounds area is detected. The out-of-bounds area may be an unallocated area of the memory. The MSV indicator may be written to the memory by executing a flush instruction of the cache system, and may include the same number of bits as a cache line of the cache system. A data value of the MSV indicator may be a secret data value.

    Protection against relay attacks in a white-box implementation

    公开(公告)号:US10547449B2

    公开(公告)日:2020-01-28

    申请号:US15607730

    申请日:2017-05-30

    Applicant: NXP B.V.

    Abstract: A method is provided for performing a cryptographic operation in a white-box implementation on a mobile device. The cryptographic operation is performed in the mobile device for a response to a challenge from a mobile device reader. The mobile device reader includes a time-out period within which the cryptographic operation must be completed by the mobile device. In accordance with an embodiment, a first time period to complete the cryptographic operation on the mobile device is determined. A predetermined number of dummy computations are added to the cryptographic operation to increase the first time period to a second time period. The second time period is only slightly less than the time-out period by a predetermined safety value to make it less likely a relay attack with be successful.

    Method and system for operating a cache in a trusted execution environment

    公开(公告)号:US10204229B2

    公开(公告)日:2019-02-12

    申请号:US15464711

    申请日:2017-03-21

    Applicant: NXP B.V.

    Abstract: A data processing system having rich execution environment (REE) and a trusted execution environment (TEE) is provided. In the data processing system, an unsecure memory is coupled to the REE and used for storing encrypted data for use in the TEE. The TEE may have a cache for storing the encrypted data after it is decrypted. The data in both the memory and the cache is organized in blocks, and the cache is smaller than the memory. An interpreter is provided in the TEE, along with a service block in the REE, for fetching and decrypting the data to be stored in the cache. The interpreter checks an integrity of the decrypted data using a hash tree having multiple levels. In the event of a cache miss, all blocks of the hash tree in a path from the data block to a root block are retrieved from the memory in one access operation. A method for operating the cache in the data processing system is also provided.

    S-box in cryptographic implementation

    公开(公告)号:US09819486B2

    公开(公告)日:2017-11-14

    申请号:US14577342

    申请日:2014-12-19

    Applicant: NXP B.V.

    CPC classification number: H04L9/0838 H04L9/06 H04L2209/16 H04L2209/24

    Abstract: A method of implementing a cryptographic operation using a substitution box, comprising: specifying a set of self-equivalent functions for the substitution box; determining the minimum diversification number of the substitution box over the set of self-equivalent functions; comparing the minimum diversification number to a threshold value; including and implementing a cryptographic operation with selected substitution box when the minimum diversification number is greater or equal to a threshold value.

    Security module for secure function execution on untrusted platform

    公开(公告)号:US09654279B2

    公开(公告)日:2017-05-16

    申请号:US14220321

    申请日:2014-03-20

    Applicant: NXP B.V.

    CPC classification number: H04L9/002 H04L63/1466 H04L2209/16 H04L2209/24

    Abstract: A method of performing a secure function on data inputs by a security module, including: receiving an encrypted data value by the security module; decrypting the encrypted data value using a white-box decryption block cipher and encoding the decrypted data value, wherein the data value is invisible to an attacker; performing a function on the encoded data value and producing an encoded result of the function, wherein the data value and the result are invisible to the attacker; decoding the encoded result of the programmed function and then encrypting the result using a white-box encryption block cipher, wherein the result is invisible to the attacker.

Patent Agency Ranking