Patents by Inventor Roberto Avanzi

Roberto Avanzi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20240086085
    Abstract: Apparatus, methods, and software for protecting a plurality of memory locations are disclosed. Logical addresses are translated into physical addresses in dependence on one of a first translation function and a second translation function. A transitional logical address and an associated transitional value are locally held in circuitry which applies the translation functions. A remapping of first to second translation function usage is performed by determining a new transitional physical address by applying the second translation function to the transitional logical address; determining a new transitional logical address by applying an inverse of the first translation function to the new transitional physical address; retrieving a new transitional value using the new transitional physical address; storing the old transitional value to the memory location indicated by the new transitional physical address; and locally storing the new transitional value.
    Type: Application
    Filed: September 14, 2022
    Publication date: March 14, 2024
    Inventor: Roberto AVANZI
  • Publication number: 20240078323
    Abstract: An apparatus comprises counter tree circuitry configured to store, in a first node of a counter tree, a representation of a parent counter value and in a second node of the counter tree, wherein the second node is a child node of the first node, an encrypted representation of two or more counter values. The encryption operation for forming the encrypted representation of the two or more counter values takes as an input the parent counter value. The apparatus also comprises integrity checking circuitry to check the integrity of an item of data retrieved from memory based on a comparison between a stored authentication code and a generated authentication code generated based on the item of data and a decrypted counter value determined from an encrypted representation of a counter value retrieved from the second node, decrypted using a parent counter value retrieved from the first node.
    Type: Application
    Filed: August 9, 2023
    Publication date: March 7, 2024
    Applicant: Arm Limited
    Inventors: Alexander Klimov, Andreas Lars Sandberg, Roberto Avanzi
  • Publication number: 20240080193
    Abstract: An apparatus comprises counter integrity tree circuitry to maintain a counter integrity tree having a plurality of nodes. The counter integrity tree circuitry is configured to store, in a first node of the counter integrity tree, an encrypted representation of two or more non-repeating counters and in a second, parent, node, an indication of a function value equal to a non-repeating function of the two or more non-repeating counters of the first node. The apparatus comprises integrity checking circuitry configured to check the integrity of the first node using the function value retrieved from the second node.
    Type: Application
    Filed: August 9, 2023
    Publication date: March 7, 2024
    Applicant: Arm Limited
    Inventors: Andreas Lars Sandberg, Roberto Avanzi, Alexander Klimov
  • Publication number: 20230409492
    Abstract: A method, apparatus, and system for storing memory encryption realm key IDs is disclosed. A method comprises accessing a memory ownership table with a physical address to determine a realm ID associated with the physical address, accessing a key ID association structure with the realm ID to determine a realm key IS associated with the realm ID, and initiating a memory transaction based on the realm key ID. Once retrieved, the realm key ID may be stored in a translation lookaside buffer.
    Type: Application
    Filed: August 28, 2023
    Publication date: December 21, 2023
    Inventors: Darren Lasko, Roberto Avanzi, Thomas Philip Speier, Harb Abdulhamid, Vikramjit Sethi
  • Patent number: 11789874
    Abstract: A method, apparatus, and system for storing memory encryption realm key IDs is disclosed. A method comprises accessing a memory ownership table with a physical address to determine a realm ID associated with the physical address, accessing a key ID association structure with the realm ID to determine a realm key IS associated with the realm ID, and initiating a memory transaction based on the realm key ID. Once retrieved, the realm key ID may be stored in a translation lookaside buffer.
    Type: Grant
    Filed: August 21, 2019
    Date of Patent: October 17, 2023
    Assignee: QUALCOMM Incorporated
    Inventors: Darren Lasko, Roberto Avanzi, Thomas Philip Speier, Harb Abdulhamid, Vikramjit Sethi
  • Patent number: 11775177
    Abstract: An apparatus (4) comprises memory access circuitry (12) to control access to data stored in a memory; and memory integrity checking circuitry (20) to verify integrity of data stored in the memory, using an integrity tree (26) in which the association between parent and child nodes is provided by a pointer. This helps to reduce the memory footprint of the tree.
    Type: Grant
    Filed: October 17, 2019
    Date of Patent: October 3, 2023
    Assignee: Arm Limited
    Inventors: Yuval Elad, Roberto Avanzi, Jason Parker
  • Publication number: 20230259660
    Abstract: A data integrity tree for memory security comprises a plurality of nodes, wherein a linked series of nodes of the data integrity tree protects a data item stored in memory. A parent node in the linked series of nodes comprises a plurality of counters, each associated with a respective child node and providing an input to a protection function associated with the respective child node. A node authentication code protects the plurality of counters in each parent node and is dependent on a counter in a node above the parent node in the data integrity tree. A plurality of hash value child nodes each comprises a plurality of encrypted hash values generated as a function of a respective block of data stored in the memory and as a function of a counter comprised in a node above the hash value child node in the data integrity tree.
    Type: Application
    Filed: June 25, 2021
    Publication date: August 17, 2023
    Inventors: Andreas Lars SANDBERG, Roberto AVANZI
  • Publication number: 20230113906
    Abstract: An apparatus including memory access circuitry for controlling access to data stored in the non-trusted memory, and memory security circuitry to verify integrity of data stored in the non-trusted memory. The memory security circuitry has authentication code generation circuitry for generating authentication codes to be associated with the data stored in the non-trusted memory, for use when verifying the integrity of the data. The apparatus also has a trusted storage, and the authentication code generation circuitry is arranged to generate different authentication codes, dependent on whether the authentication code is to be stored in the non-trusted memory or the trusted storage.
    Type: Application
    Filed: November 12, 2020
    Publication date: April 13, 2023
    Inventors: Hector MONTANER MAS, Andreas Lars SANDBERG, Roberto AVANZI
  • Publication number: 20220014379
    Abstract: Apparatuses and method are disclosed for protecting the integrity of data stored in a protected area of memory. Data in the protected area of memory is retrieved in data blocks and an authentication code is associated with a memory granule contiguously comprising a first data block and a second data block. Calculation of the authentication code comprises a cryptographic calculation based on a first hash value determined from the first data block and a second hash value determined from the second data block. A hash value cache is provided to store hash values determined from data blocks retrieved from the protected area of the memory. When the first data block and its associated authentication code are retrieved from memory, a lookup for the second hash value in the hash value cache is performed, and a verification authentication code is calculated for the memory granule to which that data block belongs.
    Type: Application
    Filed: July 10, 2020
    Publication date: January 13, 2022
    Inventors: Roberto AVANZI, Andreas Lars SANDBERG, Michael Andrew CAMPBELL, Matthias Lothar BOETTCHER, Prakash S. RAMRAKHYANI
  • Patent number: 11216592
    Abstract: Some embodiments include systems and methods for the management of a plurality of expanded cryptographic keys associated with a plurality of corresponding Protected Software Environments (PSEs) supervised by PSE-management software running on a computer system. In one embodiment, a computer system has a first processor, a first memory controller, and a first RAM. The first memory controller has a first memory cryptography circuit connected between the first processor and the first RAM. The memory cryptography circuit comprises a keystore and a first cryptographic engine. The keystore comprises a seedstore and a key-expansion engine. The seedstore is configured to store a first plurality of cryptographic key seeds accessible by a key identifier, for use by the key-expansion engine to generate expanded keys, where each key seed corresponds to a corresponding client.
    Type: Grant
    Filed: August 2, 2018
    Date of Patent: January 4, 2022
    Inventors: Roberto Avanzi, Darren Lasko
  • Publication number: 20210370251
    Abstract: A machine to automatically dispense at least one fluid product, in particular a liquid dye, comprising support members configured to support one or more dispensing units each having a tank, in which said fluid product to be dispensed is contained, a dispensing nozzle and a pumping member, configured to selectively convey a desired quantity of the fluid product from the tank to the dispensing nozzle and from the latter to an external container. Rapid attachment means, drivable by an actuation element, which can also be possibly driven manually, are present to allow the easy and simple positioning of each dispensing unit on the support means and the equally easy and simple removal of each dispensing unit from the support members.
    Type: Application
    Filed: August 12, 2021
    Publication date: December 2, 2021
    Applicant: Corob S.P.A.
    Inventors: Andrea Alvisi, Roberto Avanzi
  • Publication number: 20210311640
    Abstract: An apparatus (4) comprises memory access circuitry (12) to control access to data stored in a memory; and memory integrity checking circuitry (20) to verify integrity of data stored in the memory, using an integrity tree (26) in which the association between parent and child nodes is provided by a pointer. This helps to reduce the memory footprint of the tree.
    Type: Application
    Filed: October 17, 2019
    Publication date: October 7, 2021
    Inventors: Yuval ELAD, Roberto AVANZI, Jason PARKER
  • Patent number: 10767638
    Abstract: A piston pump is disclosed suitable to be installed on machines for dispensing fluid products, comprising a jacket, a piston device mobile with alternate motion inside said jacket and comprising a rod and a head. The pump also comprises a pipe for fluids to enter and a pipe for fluids to exit, said pipes being disposed on the same side of the jacket and on opposite sides with respect to the piston device.
    Type: Grant
    Filed: January 28, 2016
    Date of Patent: September 8, 2020
    Assignee: Corob S.p.A.
    Inventor: Roberto Avanzi
  • Patent number: 10733313
    Abstract: A counter integrity tree for memory security includes at least one split-counter node specifying at least two counters each defined as a combination of a major count value shared between the at least two counters and a respective minor count value specified separately for each of the at least two counters. This increases the number of child nodes which can be provided per parent node of the tree, and hence reduces the number of tree levels that have to be traversed in a tree covering a given size of memory region. The minor counter size can be varied dynamically by allocating nodes in a mirror counter integrity tree for accommodating larger minor counters which do not fit in the corresponding node of the main counter integrity tree.
    Type: Grant
    Filed: February 9, 2018
    Date of Patent: August 4, 2020
    Assignee: Arm Limited
    Inventors: Prakash S. Ramrakhyani, Roberto Avanzi, Wendy Arnott Elsasser
  • Publication number: 20200042746
    Abstract: Some embodiments include systems and methods for the management of a plurality of expanded cryptographic keys associated with a plurality of corresponding Protected Software Environments (PSEs) supervised by PSE-management software running on a computer system. In one embodiment, a computer system has a first processor, a first memory controller, and a first RAM. The first memory controller has a first memory cryptography circuit connected between the first processor and the first RAM. The memory cryptography circuit comprises a keystore and a first cryptographic engine. The keystore comprises a seedstore and a key-expansion engine. The seedstore is configured to store a first plurality of cryptographic key seeds accessible by a key identifier, for use by the key-expansion engine to generate expanded keys, where each key seed corresponds to a corresponding client.
    Type: Application
    Filed: August 2, 2018
    Publication date: February 6, 2020
    Inventors: Roberto AVANZI, Darren LASKO
  • Publication number: 20190384725
    Abstract: A method, apparatus, and system for storing memory encryption realm key IDs is disclosed. A method comprises accessing a memory ownership table with a physical address to determine a realm ID associated with the physical address, accessing a key ID association structure with the realm ID to determine a realm key IS associated with the realm ID, and initiating a memory transaction based on the realm key ID. Once retrieved, the realm key ID may be stored in a translation lookaside buffer.
    Type: Application
    Filed: August 21, 2019
    Publication date: December 19, 2019
    Inventors: Darren LASKO, Roberto AVANZI, Thomas Philip SPEIER, Harb ABDULHAMID, Vikramjit SETHI
  • Publication number: 20190251275
    Abstract: A counter integrity tree for memory security includes at least one split-counter node specifying at least two counters each defined as a combination of a major count value shared between the at least two counters and a respective minor count value specified separately for each of the at least two counters. This increases the number of child nodes which can be provided per parent node of the tree, and hence reduces the number of tree levels that have to be traversed in a tree covering a given size of memory region. The minor counter size can be varied dynamically by allocating nodes in a mirror counter integrity tree for accommodating larger minor counters which do not fit in the corresponding node of the main counter integrity tree.
    Type: Application
    Filed: February 9, 2018
    Publication date: August 15, 2019
    Applicant: Arm Limited
    Inventors: Prakash S. Ramrakhyani, Roberto Avanzi, Wendy Arnott Elsasser
  • Publication number: 20190215160
    Abstract: Embodiments of the disclosure include systems and methods for storage of a first plurality of cryptographic keys associated with a first plurality of corresponding Protected Software Environments (PSEs) supervised by a PSE-management software running on a computer system and configured to supervise a superset of the plurality of PSEs. The computer system stores currently unused keys of the superset in a relatively cheap, large, and slow memory and caches the keys of the first plurality in a relatively fast, small, and expensive memory. In one embodiment, in a computer system having a first processor, a first memory controller, and a first RAM, the first memory controller has a memory cryptography circuit connected between the first processor and the first RAM, the memory cryptography circuit has a keystore and a first cryptographic engine, and the keystore is configured to store a first plurality of cryptographic keys accessible by a cryptographic-key identification.
    Type: Application
    Filed: January 9, 2018
    Publication date: July 11, 2019
    Inventors: Darren LASKO, Roberto Avanzi, Thomas Speier, Harb Abdulhamid, Vikramjit Sethi
  • Publication number: 20190196984
    Abstract: In certain aspects of the disclosure, an apparatus, comprises a first memory having a plurality of bits. Each bit of the plurality of bits of the first memory is associated with a region of a second memory, and each bit indicates whether the associated region of the second memory is to be integrity-protected. The first memory further stores a first minimum set of data necessary for integrity protection (MSD) of an associated first integrity protection tree when a first bit of the plurality of bits is set to a value indicating that the first associated region of the second memory is to be integrity-protected. Regions of the second memory that are integrity-protected may be non-contiguous, and may be adjusted during run-time.
    Type: Application
    Filed: December 27, 2017
    Publication date: June 27, 2019
    Inventors: Darren LASKO, Roberto Avanzi
  • Patent number: 10235303
    Abstract: Techniques for protecting software in a computing device are provided. A method according to these techniques includes receiving a request from a non-secure software module to execute an instruction of a secure software module comprising encrypted program code, determining whether the instruction comprises an instruction associated with a controlled point of entry to the secure software module accessible outside of the secure software module, executing one or more instructions of the secure software module responsive to the instruction comprising an instruction associated with the controlled point of entry to the secure software module, and controlling exit from the secure software module to return execution to the non-secure software module.
    Type: Grant
    Filed: August 9, 2016
    Date of Patent: March 19, 2019
    Assignee: QUALCOMM Incorporated
    Inventors: David Hartley, Roberto Avanzi, Rosario Cammarota