Patent classifications
H04L9/0625
ULTRA LOW POWER CORE FOR LIGHTWEIGHT ENCRYPTION
A processing unit and a method of operating a processing unit. In an embodiment, the processing unit comprises a SIMON block cipher for transforming plaintext data into encrypted data. A key expansion module generates and outputs one or more encryption keys; and the key expansion module includes a first series of adiabatic registers for holding key generation data values, and for using adiabatic switching to transmit the key generation data values through the first series of adiabatic registers. A round function module receives the plaintext data and the one or more encryption keys, encrypts the plaintext data to generate the encrypted data, and outputs the encrypted data; and the round function module includes a second series of adiabatic registers for holding encryption data, and for using adiabatic switching to transmit the encryption data through the second series of adiabatic registers.
Method and apparatus for encrypting data, method and apparatus for decrypting data
The disclosure discloses a method and apparatus for encrypting data, and a method and apparatus for decrypting data. The method for encrypting data includes: acquiring a to-be-encrypted data block; executing a first encryption on the to-be-encrypted data block to obtain a data ciphertext; executing a hash operation on the to-be-encrypted data block to obtain an index key; designating a last ciphertext block as a first target ciphertext block, and decrypting the first target ciphertext block to acquire an index value of the first target ciphertext block; executing a preset operation on the index value of the first target ciphertext block to obtain the index value of the to-be-encrypted data block, and executing a second encryption on the index value of the to-be-encrypted data block based on the index key to generate an index ciphertext; and combining the data ciphertext and the index ciphertext to generate a ciphertext block.
Hardware security module for verifying executable code, device having hardware security module, and method of operating device
Disclosed herein are a hardware security module, a device having the hardware security module, and a method for operating the device. The method for verifying integrity of executable code in a device includes dividing, by a Micro-Control Unit (MCU), executable code into multiple blocks, generating, by the MCU, hash values corresponding to the blocks resulting from the division, storing, by a Hardware Security Module (HSM), the generated hash values, calculating, by the MCU, at least one hash value, among hash values of the multiple blocks when the executable code boots, and comparing, by the HSM, the calculated hash value with a hash value corresponding to the calculated hash value, among the hash values stored in the HSM.
Hardware accelerator for Feistel block ciphers
A hardware accelerator is arranged to perform cipher operations and comprises a first memory area arranged to store a first bit string and a second memory area arranged to store a second bit string. A calculation block is arranged to receive a round key and to perform a function on the first bit string. The function comprises combining the first bit string with the round key to produce a combined bit string and performing a non-linear mapping from the combined bit string to a mapped bit string. An addition block is arranged to add the mapped bit string to the second bit string to produce a resultant bit string. A controller is arranged to receive a control signal and, depending on the state of the control signal, provides the first bit string and the resultant bit string to the appropriate memory area.
SYSTEMS AND METHODS FOR PRIVACY PRESERVING TRAINING AND INFERENCE OF DECENTRALIZED RECOMMENDATION SYSTEMS FROM DECENTRALIZED DATA
A system and method are disclosed for training a recommendation system. The method includes initiating, at a server device, an item-vector matrix V, wherein the item-vector matrix V includes a value m related to a total number of items across one or more client devices and a value d representing a hidden dimension, transmitting the item-vector matrix V to each client device, wherein each client device trains a local matrix factorization model using a respective user vector U and the item-vector matrix V to generate a respective set of gradients on each respective client device, receiving, via a secure multi-party compute protocol, and from each client device, the respective set of gradients, updating the item-vector matrix V using the respective set of gradients from each client device to generate an updated item-vector matrix V and downloading the updated item-vector matrix V to at least one client device.
Systems and Methods for Providing a Modified Loss Function in Federated-Split Learning
Disclosed is a method that includes training, at a client, a part of a deep learning network up to a split layer of the client. Based on an output of the split layer, the method includes completing, at a server, training of the deep learning network by forward propagating the output received at a split layer of the server to a last layer of the server. The server calculates a weighted loss function for the client at the last layer and stores the calculated loss function. After each respective client of a plurality of clients has a respective loss function stored, the server averages the plurality of respective weighted client loss functions and back propagates gradients based on the average loss value from the last layer of the server to the split layer of the server and transmits just the server split layer gradients to the respective clients.
SYSTEMS AND METHODS FOR PROVIDING A SYSTEMIC ERROR IN ARTIFICIAL INTELLIGENCE ALGORITHMS
Disclosed is a process for testing a suspect model to determine whether it was derived from a source model. An example method includes receiving, from a model owner node, a source model and a fingerprint associated with the source model, receiving a suspect model at a service node, based on a request to test the suspect model, applying the fingerprint to the suspect model to generate an output and, when the output has an accuracy that is equal to or greater than a threshold, determining that the suspect model is derived from the source model. Imperceptible noise can be used to generate the fingerprint which can cause predictable outputs from the source model and a potential derivative thereof.
METHODS AND DEVICES FOR SECURE SECRET KEY GENERATION
There is provided a cryptographic key determination device for determining one or more cryptographic keys in a cryptographic device, the cryptographic device being configured to execute one or more test programs, the cryptographic device comprising one or more components (11-i), each component (11-i) being configured to generate static and dynamic data, the dynamic data being generated in response to the execution of the one or more test programs, wherein the cryptographic key determination device comprises: a data extraction unit configured to extract at least one part of the static data and at least one part of the dynamic data generated by the one or more components (11-i), and a key generator configured to combine the at least one part of static data and the at least one part of dynamic data, and to determine the one or more cryptographic keys by applying a cryptographic function to the combined data.
Systems and methods of key selection for cryptographic authentication of contactless cards
Example embodiments of systems and methods for data transmission between a contactless card and a server are provided. The card may include an applet, a counter, and a plurality of encryption keys. The applet may rotate the plurality of keys based on a predetermined key rotation, select one or more keys for a cryptographic operation, perform the operation using the selected keys and the counter to generate a cryptographic result, and transmit the result and the counter to the server. Upon receipt of the result, a server, in communication with the card and containing the plurality of encryption keys, may rotate the plurality of keys based on the predetermined key rotation, select one or more keys for decryption, wherein the keys selected by the server matches the keys selected by the applet, and perform the decryption on the result.
Application security authentication method, terminal and storage medium
An application security authentication method, including: step 202, acquiring an application file to be downloaded and extracting signature information from the application file; step 204, acquiring public key information contained in a multilevel key hierarchy, and acquiring public key information of the currently highest priority according to a priority order of the public key information; step 206, authenticating the signature information with the acquired public key information of the currently highest priority; and step 208, allowing the application file to be downloaded if an authentication of the signature information is passed.