US12248564B2

Systems and methods for transforming instructions for metadata processing

Summary by NHIP

Metadata Instruction Transformation System

The system transforms host processor instructions into optimized second instruction paths while enforcing security policies. It uses first metadata to convert instructions into fewer operations that produce identical effects on hardware entities, then checks second metadata to authorize execution via an interlock before releasing queued results.

Claim Score by NHIP

Read claim 18, the broadest

Abstract

According to at least one aspect, a hardware system include a host processor, a policy engine, and an interlock is provided. These components can interoperate to enforce security policies. The host processor can execute an instruction and provide instruction information to the policy engine and the result of the executed instruction to the interlock. The policy engine can determine whether the executed instruction is allowable according to one or more security policies using the instruction information. The interlock can buffer the result of the executed instruction until an indication is received from the policy engine that the instruction was allowable. The interlock can then release the result of the executed instruction. The policy engine can be configured to transform instructions received from the host processor or add inserted instructions to the policy evaluation pipeline to increase the flexibility of the policy engine and enable enforcement of the security policies.

US12248564B2, drawing sheet 1
Sheet 1 of 8

Term

12.4 yearsleft in the term

Expires 1 February 2039.

  1. Priority and filed
  2. Granted
  3. Today
  4. Expires

19 claims: 3 independent, 16 dependent

  1. 1
    A system comprising:metadata processing hardware and at least one processor programed by executable instructions to process metadata, wherein the metadata processing hardware and the at least one programmed processor are configured to: receive first instruction information associated with at least one first instruction executed by a host processor, wherein the at least one first instruction is part of a first instruction path;use the first instruction information to obtain first metadata associated with the at least one first instruction;use the first metadata to transform the first instruction information into second instruction information, wherein: the second instruction information is associated a second instruction path;an execution of the first instruction path and an execution of the second instruction path have a same effect on one or more hardware entities and one or more memory locations;and the second instruction path represents fewer operations than the first instruction path;and use second metadata associated with the second instruction information to determine whether the at least one first instruction is allowable for execution according to at least one policy;and in response to determining that the at least one first instruction is allowable, provide, to an interlock, an indication to release a queued result of executing the at least one first instruction for use by the system.
  2. 18
    Broadest claimClaim Score 36, narrow(NHIP)A method performed by a system comprising metadata processing hardware and at least one processor programed by executable instructions to process metadata, the method comprising:receiving first instruction information associated with at least one first instruction executed by a host processor, wherein the at least one first instruction is part of a first instruction path;using the first instruction information to obtain first metadata associated with the at least one first instruction;using the first metadata to transform the first instruction information into second instruction information, wherein: the second instruction information is associated a second instruction path;an execution of the first instruction path and an execution of the second instruction path have a same effect on one or more hardware entities and one or more memory locations;and the second instruction path represents fewer operations than the first instruction path;and using second metadata associated with the second instruction information to determine whether the at least one first instruction is allowable for execution according to at least one policy;and in response to determining that the at least one first instruction is allowable, providing, to an interlock, an indication to release a queued result of executing the at least one first instruction for use by the system.
  3. 19
    At least one non-transitory computer-readable medium having encoded thereon instructions which, when executed by at least one processor of a system, cause the at least one processor to perform an operation comprising:receiving first instruction information associated with at least one first instruction executed by a host processor, wherein the at least one first instruction is part of a first instruction path;using the first instruction information to obtain first metadata associated with the at least one first instruction;using the first metadata to transform the first instruction information into second instruction information, wherein: the second instruction information is associated a second instruction path;an execution of the first instruction path and an execution of the second instruction path have a same effect on one or more hardware entities and one or more memory locations;and the second instruction path represents fewer operations than the first instruction path;and using second metadata associated with the second instruction information to determine whether the at least one first instruction is allowable for execution according to at least one policy;and in response to determining that the at least one first instruction is allowable, providing, to an interlock, an indication to release a queued result of executing the at least one first instruction for use by the system.