Nova Patents
IL272691A

Call path dependent authentication

Abstract

This record has no abstract on file.

Term

No projected expiry on record.

  1. Priority
  2. Filed
  3. Published
  4. Today

20 claims: 4 independent, 16 dependent

  1. 1
    An apparatus comprising:processing circuitry to execute instructions;and a call path identifier storage element to store a call path identifier, wherein in response to a calling instruction for calling a target function, the processing circuitry is configured to permute the call path identifier with a function return address to generate an updated call path identifier to be stored to the call path identifier storage element;in response to an authentication code generating instruction identifying a first source value, the processing circuitry is configured to generate an authentication code dependent on the first source value and at least one modifier value;and in response to an authentication code checking instruction identifying a second source value associated with a previously generated authentication code, the processing circuitry is configured to check whether the previously generated authentication code matches an expected authentication code dependent on the second source value and at least one modifier value, and to trigger an error handling response when a mismatch is detected between the previously generated authentication code and the expected authentication code;wherein for at least one variant of the authentication code generating instruction and at least one variant of the authentication code checking instruction, said at least one modifier value comprises a value dependent on the call path identifier stored in the call path identifier storage element.
  2. 3
    The apparatus according to any of claims 1 and 2, wherein for a first variant of the authentication code generating instruction and a first variant of the authentication code checking instruction, said at least one modifier value comprises said value dependent on the call path identifier and a further modifier value.
  3. 18
    A data processing method comprising:in response to calling of a target function, permuting a call path identifier stored in a call path identifier storage element with a function return address to generate an updated call path identifier to be stored to the call path identifier storage element;performing an authentication code generating operation on a first source value to generate an authentication code dependent on the first source value and at least one modifier value;and performing an authentication code checking operation on a second source value associated with a previously generated authentication code, to check whether the previously generated authentication code matches an expected authentication code dependent on the second source value and at least one modifier value, and trigger an error handling response when a mismatch is detected between the previously generated authentication code and the expected authentication code;wherein for at least one variant of the authentication code generating operation and at least one variant of the authentication code checking operation, said at least one modifier value comprises a value dependent on the call path identifier stored in the call path identifier storage element.
  4. 20
    A computer program for controlling a host data processing apparatus to provide an instruction execution environment for execution of instructions, comprising:processing program logic to control execution of the instructions in the instruction execution environment;and a call path identifier data structure to store a call path identifier, wherein in response to a calling instruction for calling a target function, the processing program logic is configured to control the host data processing apparatus to permute the call path identifier with a function return address to generate an updated call path identifier to be stored to the call path identifier data structure;in response to an authentication code generating instruction identifying a first source value, the processing program logic is configured to control the host data processing apparatus to generate an authentication code dependent on the first source value and at least one modifier value;and in response to an authentication code checking instruction identifying a second source value associated with a previously generated authentication code, the processing program logic is configured to control the host data processing apparatus to check whether the previously generated authentication code matches an expected authentication code dependent on the second source value and at least one modifier value, and to trigger an error handling response when a mismatch is detected between the previously generated authentication code and the expected authentication code;wherein for at least one variant of the authentication code generating instruction and at least one variant of the authentication code checking instruction, said at least one modifier 5 value comprises a value dependent on the call path identifier stored in the call path identifier data structure.