Patents by Inventor Ravi L. Sahita

Ravi L. Sahita 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: 20190034617
    Abstract: Data integrity logic is executable by a processor to generate a data integrity code using a hardware-based secret. A container manager, executable by the processor, creates a secured container including report generation logic that determines measurements of the secured container, generates a report according to a defined report format, and sends a quote request including the report. The defined report format includes a field to include the measurements and a field to include the data integrity code, and the report format is compatible for consumption by any one of a plurality of different quote creator types.
    Type: Application
    Filed: July 31, 2017
    Publication date: January 31, 2019
    Inventors: Vincent R. Scarlata, Carlos V. Rozas, Baiju Patel, Barry Huntley, Ravi L. Sahita, Hormuzd M. Khosravi
  • Publication number: 20190036699
    Abstract: Technologies for end-to-end biometric-based authentication and locality assertion include a computing device with one or more biometric devices. The computing device may securely exchange a key between a driver and a secure enclave. The driver may receive biometric data from the biometric sensor in a virtualization-protected memory buffer and encrypt the biometric data with the shared key. The secure enclave may decrypt the biometric data and perform a biometric authentication operation. The computing device may measure a virtual machine monitor (VMM) to generate attestation information for the VMM. A secure enclave may execute a virtualization report instruction to request the attestation information. The processor may copy the attestation information into the secure enclave memory. The secure enclave may verify the attestation information with a remote attestation server. If verified, the secure enclave may provide a shared secret to the VMM. Other embodiments are described and claimed.
    Type: Application
    Filed: September 18, 2018
    Publication date: January 31, 2019
    Inventors: Ansuya Negi, Nitin V. Sarangdhar, Ulhas S. Warrier, Ramkumar Venkatachary, Ravi L. Sahita, Scott H. Robinson, Karanvir S. Grewal
  • Publication number: 20190005386
    Abstract: Various embodiments are generally directed to techniques for training deep neural networks, such as with an iterative approach, for instance. Some embodiments are particularly directed to a deep neural network (DNN) training system that generates a hardened DNN by iteratively training DNNs with images that were misclassified by previous iterations of the DNN. One or more embodiments, for example, may include logic to generate an adversarial image that is misclassified by a first DNN that was previously trained with a set of sample images. In some embodiments, the logic may determine a second training set that includes the adversarial image that was misclassified by the first DNN and the first training set of one or more sample images. The second training set may be used to train a second DNN. In various embodiments, the above process may be repeated for a predetermined number of iterations to produce a hardened DNN.
    Type: Application
    Filed: July 1, 2017
    Publication date: January 3, 2019
    Applicant: INTEL CORPORATION
    Inventors: LI CHEN, RAVI L. SAHITA
  • Publication number: 20190004973
    Abstract: In one embodiment, an apparatus comprises a processor to execute instruction(s), wherein the instructions comprise a memory access operation associated with a memory location of a memory. The apparatus further comprises a memory encryption controller to: identify the memory access operation; determine that the memory location is associated with a protected domain, wherein the protected domain is associated with a protected memory region of the memory, and wherein the protected domain is identified from a plurality of protected domains associated with a plurality of protected memory regions of the memory; identify an encryption key associated with the protected domain; perform a cryptography operation on data associated with the memory access operation, wherein the cryptography operation is performed based on the encryption key associated with the protected domain; and return a result of the cryptography operation, wherein the result is to be used for the memory access operation.
    Type: Application
    Filed: June 28, 2017
    Publication date: January 3, 2019
    Applicant: Intel Corporation
    Inventors: Siddhartha Chhabra, Hormuzd M. Khosravi, Gideon Gerzon, Barry E. Huntley, Gilbert Neiger, Ido Ouziel, Baiju Patel, Ravi L. Sahita, Amy L. Santoni, Ioannis T. Schoinas
  • Patent number: 10169254
    Abstract: Embodiments of techniques and systems for increasing efficiencies in computing systems using virtual memory are described. In embodiments, instructions which are located in two memory pages in a virtual memory system, such that one of the pages does not permit execution of the instructions located therein, are identified and then executed under temporary permissions that permit execution of the identified instructions. In various embodiments, the temporary permissions may come from modified virtual memory page tables, temporary virtual memory page tables which allow for execution, and/or emulators which have root access. In embodiments, per-core virtual memory page tables may be provided to allow two cores of a computer processor to operate in accordance with different memory access permissions. In embodiments, a physical page permission table may be utilized to provide for maintenance and tracking of per-physical-page memory access permissions. Other embodiments may be described and claimed.
    Type: Grant
    Filed: August 2, 2017
    Date of Patent: January 1, 2019
    Assignee: Intel Corporation
    Inventors: Ramesh Thomas, Kuo-Lang Tseng, Ravi L. Sahita, David M. Durham, Madhukar Tallam
  • Publication number: 20180373895
    Abstract: A host Virtual Machine Monitor (VMM) operates “blindly,” without the host VMM having the ability to access data within a guest virtual machine (VM) or the ability to access directly control structures that control execution flow of the guest VM. Guest VMs execute within a protected region of memory (called a key domain) that even the host VMM cannot access. Virtualization data structures that pertain to the execution state (e.g., a Virtual Machine Control Structure (VMCS)) and memory mappings (e.g., Extended Page Tables (EPTs)) of the guest VM are also located in the protected memory region and are also encrypted with the key domain key. The host VMM and other guest VMs, which do not possess the key domain key for other key domains, cannot directly modify these control structures nor access the protected memory region. The host VMM, however, can verify correctness of the control structures of guest VMs.
    Type: Application
    Filed: February 28, 2017
    Publication date: December 27, 2018
    Inventors: David M. Durham, Gilbert Neiger, Barry E. Huntley, Ravi L. Sahita, Baiju V. Patel
  • Publication number: 20180341767
    Abstract: Various embodiments are generally directed to techniques for control flow protection with minimal performance overhead, such as by utilizing one or more micro-architectural optimizations to implement a shadow stack (SS) to verify a return address before returning from a function call, for instance. Some embodiments are particularly directed to a computing platform, such as an internet of things (IoT) platform, that overlaps or parallelizes one or more SS access operations with one or more data stack (DS) access operations.
    Type: Application
    Filed: May 25, 2017
    Publication date: November 29, 2018
    Applicant: INTEL CORPORATION
    Inventors: ABHISHEK BASAK, RAVI L. SAHITA, VEDVYAS SHANBHOGUE
  • Publication number: 20180307519
    Abstract: A processor comprises a register to store a first pointer to a context data structure specifying a virtual machine context, the context data structure comprising a first field to store a second pointer to a plurality of realm switch control structures (RSCSs), and an execution unit comprising a logic circuit to execute a virtual machine (VM) according to the virtual machine context, wherein the VM comprises a guest operating system (OS) comprising a plurality of kernel components, and wherein each RSCS of the plurality of RSCSs specifies a respective component context associated with a respective kernel component of the plurality of kernel components, and execute a first kernel component of the plurality of kernel components using a first component context specified by a first RSCS of the plurality of RSCSs.
    Type: Application
    Filed: April 13, 2018
    Publication date: October 25, 2018
    Inventors: Deepak K. Gupta, Ravi L. Sahita, Barry E. Huntley
  • Publication number: 20180285560
    Abstract: In one embodiment, a system includes a processor having one or more cores and a security processor coupled to the processor. The security processor may be configured to execute in a trusted execution environment, where the security processor includes a local attestation circuit to validate an enclave stored in a protected region of a system memory as a trusted agent, based at least in part on an identifier of the enclave stored in a whitelist. Other embodiments are described and claimed.
    Type: Application
    Filed: March 31, 2017
    Publication date: October 4, 2018
    Inventors: Ansuya Negi, Ravi L. Sahita
  • Publication number: 20180268170
    Abstract: Technologies for managed code execution include a computing device having a processor with protection key support. The computing device sets a protection key register of the processor with permissions to disallow data access to any protection domain of the computing device and then executes a domain switch routine to switch to a managed applet. The managed applet is included in an applet protection domain, the domain switch routine is included in a switch protection domain, and a managed runtime environment is included in a normal protection domain. The domain switch routine sets the protection key register with permissions to disallow access to any protection domain other than the applet protection domain and then executes the managed applet. Other managed applets may be each be included in separate applet domains. Each managed applet may be a thread executed within a common process address space. Other embodiments are described and claimed.
    Type: Application
    Filed: March 15, 2017
    Publication date: September 20, 2018
    Inventors: Xiaoning Li, Mingqiu Sun, David A. Koufaty, Ravi L. Sahita
  • Patent number: 10079684
    Abstract: Technologies for end-to-end biometric-based authentication and locality assertion include a computing device with one or more biometric devices. The computing device may securely exchange a key between a driver and a secure enclave. The driver may receive biometric data from the biometric sensor in a virtualization-protected memory buffer and encrypt the biometric data with the shared key. The secure enclave may decrypt the biometric data and perform a biometric authentication operation. The computing device may measure a virtual machine monitor (VMM) to generate attestation information for the VMM. A secure enclave may execute a virtualization report instruction to request the attestation information. The processor may copy the attestation information into the secure enclave memory. The secure enclave may verify the attestation information with a remote attestation server. If verified, the secure enclave may provide a shared secret to the VMM. Other embodiments are described and claimed.
    Type: Grant
    Filed: December 18, 2015
    Date of Patent: September 18, 2018
    Assignee: Intel Corporation
    Inventors: Ansuya Negi, Nitin V. Sarangdhar, Ulhas S. Warrier, Ramkumar Venkatachary, Ravi L. Sahita, Scott H. Robinson, Karanvir S. Grewal
  • Publication number: 20180260562
    Abstract: In one embodiments, an apparatus includes: an execution circuit to execute a program; a monitor circuit to monitor the program execution to obtain information regarding a plurality of control transfers incurred during the execution of the program; a graph generation circuit, based on the information, to generate a plurality of control flow graphs each associated with a portion of the execution of the program; a statistic generation circuit to calculate a plurality of feature vectors each associated with one of the plurality of control flow graphs, each of the plurality of feature vectors including a plurality of graph statistics based on the associated control flow graph; and a comparison circuit to compare at least some of the plurality of graph statistics of one or more of the plurality of feature vectors to corresponding graph statistics of a statistical model of the execution of the program, to identify whether an anomaly has occurred in the execution of the program.
    Type: Application
    Filed: March 8, 2017
    Publication date: September 13, 2018
    Inventors: Li Chen, Ravi L. Sahita
  • Patent number: 10073986
    Abstract: Embodiments of apparatus, computer-implemented methods, systems, and computer-readable media are described herein for a virtual machine manager, wherein the virtual machine manager is configured to selectively employ different views with different permissions to map guest physical memory of a virtual machine of the apparatus to host physical memory of the apparatus, to regulate access to and protect different portions of an application of the virtual machine that resides in different portions of the physical memory. Other embodiments may be described and/or claimed.
    Type: Grant
    Filed: February 12, 2016
    Date of Patent: September 11, 2018
    Assignee: Intel Corporation
    Inventors: Harshawardhan Vipat, Ravi L. Sahita, Roshni Chatterjee, Madhukar Tallam
  • Publication number: 20180253547
    Abstract: One embodiment provides an accelerator circuitry. The accelerator circuitry includes accelerator processor circuitry; accelerator memory circuitry; processor trace (PT) decoder circuitry and control flow integrity (CFI) checker circuitry. The PT decoder circuitry is to at least one of receive and/or retrieve PT data from a host device. The PT decoder circuitry is further to extract a target instruction pointer (TIP) packet from the PT data and to decode the TIP packet to yield a runtime target address. The CFI checker circuitry is to determine, at runtime, whether a control flow transfer of an indirect branch instruction to the runtime target address corresponds to a control flow violation based, at least in part, on control flow (CF) information (info) stored to an accelerator CF info store.
    Type: Application
    Filed: March 6, 2017
    Publication date: September 6, 2018
    Applicant: Intel Corporation
    Inventors: Salmin Sultana, Ravi L. Sahita
  • Publication number: 20180247082
    Abstract: A host Virtual Machine Monitor (VMM) operates “blindly,” without the host VMM having the ability to access data within a guest virtual machine (VM) or the ability to access directly control structures that control execution flow of the guest VM. Guest VMs execute within a protected region of memory (called a key domain) that even the host VMM cannot access. Virtualization data structures that pertain to the execution state (e.g., a Virtual Machine Control Structure (VMCS)) and memory mappings (e.g., Extended Page Tables (EPTs)) of the guest VM are also located in the protected memory region and are also encrypted with the key domain key. The host VMM and other guest VMs, which do not possess the key domain key for other key domains, cannot directly modify these control structures nor access the protected memory region. The host VMM, however, can verify correctness of the control structures of guest VMs.
    Type: Application
    Filed: February 28, 2017
    Publication date: August 30, 2018
    Inventors: David M. Durham, Gilbert Neiger, Barry E. Huntley, Ravi L. Sahita, Baiju V. Patel
  • Patent number: 10061918
    Abstract: In one embodiment, a processor comprises: a first storage including a plurality of entries to store an address of a portion of a memory in which information has been modified; a second storage to store an identifier of a process for which information is to be stored into the first storage; and a first logic to identify a modification to a first portion of the memory and store a first address of the first portion of the memory in a first entry of the first storage, responsive to a determination that a current identifier of a current process corresponds to the identifier stored in the second storage. Other embodiments are described and claimed.
    Type: Grant
    Filed: April 1, 2016
    Date of Patent: August 28, 2018
    Assignee: Intel Corporation
    Inventors: Salmin Sultana, David M. Durham, Michael Lemay, Karanvir S. Grewal, Ravi L. Sahita
  • Patent number: 10055585
    Abstract: Technologies for assembling an execution profile of an event are disclosed. The technologies may include monitoring the event for a branch instruction, generating a callback to a security module upon execution of the branch instruction, filtering the callback according to a plurality of event identifiers, and validating a code segment associated with the branch instruction, the code segment including code executed before the branch instruction and code executed after the branch instruction.
    Type: Grant
    Filed: August 28, 2013
    Date of Patent: August 21, 2018
    Assignee: McAfee, LLC
    Inventors: Greg William Dalcher, Ravi L. Sahita, Palanivelra Shanmugavelayutham, Koichi Yamada, Arvind Krishnaswamy
  • Patent number: 10044700
    Abstract: A technique allows a parentally attested security token to serve as authentication for a minor using identifying attributes of the minor child. The security token may include personally identifiable information about the child, a description of authorized activity as well as specifications of intended use of the security token. The security token may include provisions for authentication to be revoked by a parent or guardian and/or expire after a predetermined time. The security token may be stored inside a trusted execution environment of a portable computing device that may be carried by the minor and presented at physical locations where authentication is required.
    Type: Grant
    Filed: December 23, 2014
    Date of Patent: August 7, 2018
    Assignee: MCAFEE, LLC
    Inventors: Timothy J. Gresham, Tobias M. Kohlenberg, Ravi L. Sahita, Tracy E. Camp, Harvir Singh, Robert L. Vaughn, Ned M. Smith, Cedric Cochin
  • Publication number: 20180217857
    Abstract: A processing core comprising instruction execution logic circuitry and register space. The register space to be loaded from a VMCS, commensurate with a VM entry, with information indicating whether a service provided by the processing core on behalf of the VMM is enabled. The instruction execution logic to, in response to guest software invoking an instruction: refer to the register space to confirm that the service has been enabled, and, refer to second register space or memory space to fetch input parameters for said service written by said guest software.
    Type: Application
    Filed: October 30, 2017
    Publication date: August 2, 2018
    Inventors: Gilbert Neiger, Barry E. Huntley, Ravi L. Sahita, Vedvyas Shanbhogue, Jason W. Brandt
  • Publication number: 20180211046
    Abstract: Technologies are provided in embodiments to analyze and control execution flow. At least some embodiments include decompiling object code of a software program on an endpoint to identify one or more branch instructions, receiving a list of one or more modifications associated with the object code, and modifying the object code based on the list and the identified one or more branch instructions to create new object code. The list of one or more modifications is based, at least in part, on telemetry data related to an execution of corresponding object code on at least one other endpoint. In more specific embodiments, a branch instruction of the one or more branch instructions is identified based, at least in part, on an absence of an instruction in the object code that validates the branch instruction.
    Type: Application
    Filed: January 26, 2017
    Publication date: July 26, 2018
    Applicant: Intel Corporation
    Inventors: Igor G. Muttik, Ravi L. Sahita