×

Secure software and hardware association technique

  • US 8,677,144 B2
  • Filed: 02/24/2009
  • Issued: 03/18/2014
  • Est. Priority Date: 02/25/2008
  • Status: Active Grant
First Claim
Patent Images

1. A method of authenticating boot code of a semiconductor product, the method comprising:

  • in a hardware processor;

    retrieving a public asymmetric encryption key, the public key associated with an original equipment manufacturer (OEM), the public key stored in memory by a provider of the semiconductor product;

    loading the boot code from boot code memory, the boot code signed by a private key associated with the public key, the boot code identifying a secure location associated with the OEM storing encrypted program code;

    authenticating the boot code by using the public key associated with the OEM during a first power-on sequence of the semiconductor product following installation of the semiconductor product, the authentication being performed internally with respect to the semiconductor product;

    establishing a secure connection to the secure location;

    receiving a command from the secure location signed by a private asymmetric encryption key associated with the OEM, the command requesting generation of a chip identifier token (ChipID token), the private asymmetric encryption key paired with the public key associated with the OEM;

    generating the ChipID token by encrypting a chip identifier (ChipID) stored in memory by using the public key associated with the OEM;

    transmitting the ChipID token to the secure location to be verified by the OEM by matching the ChipID against a plurality of ChipIDs stored in a database in the secure location;

    receiving encrypted program code signed by the private key associated with the OEM if the ChipID is a match;

    authenticating the encrypted program code by using the public key associated with the OEM; and

    decrypting the encrypted program code by using a code encryption key (CEK) stored in memory;

    wherein the encrypted program code is software.

View all claims
  • 7 Assignments
Timeline View
Assignment View
    ×
    ×