IP Library Granted Patent US 8,756,438
Granted Patent B2
US 8,756,438 · App. 12/763,254 · Granted Jun 17, 2014

Securely field configurable device

Inventors: Srinivas Devadas (Lexington, MA); Thomas J. Ziola (Menlo Park, CA)
Assignee: Verayo, Inc.
H04L9/3278H04L9/0877
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,756,438
App. No.
12/763,254
Granted
Jun 17, 2014
Kind
B2
Abstract

A field configurable device, such as an FPGA, supports secure field configuration without using non-volatile storage for cryptographic keys on the device and without requiring a continuous or ongoing power source to maintain a volatile storage on the device. The approach can be used to secure the configuration data such that it can in general be used on a single or a selected set of devices and/or encryption of the configuration data so that the encrypted configuration data can be exposed without compromising information encoded in the configuration data.

Claims (25)

1. A method for configuring an electronic device having configurable logic comprising:

providing configuration data to the device, the configuration data including first configuration data and encrypted configuration data;

configuring at least part of the configurable logic according to the first configuration data, including forming a key generator in the configurable logic;

generating a volatile key using the key generator configured in configurable logic circuitry in the device, the volatile key dependent on a fabrication variation among devices fabricated according to a same design as the device;

decrypting the encrypted configuration data within the device using the generated volatile key; and

configuring at least another part of the configurable logic on the device using the decrypted configuration data.

2. The method of claim 1 wherein configuring the configurable logic on the device includes configuring a programmable gate array according to the decrypted configuration data.

3. The method of claim 1 further comprising:

clearing all information stored on the device from which the volatile key can be determined; and

wherein generating the volatile key is performed without the device receiving information from which the volatile key can be determined subsequent to the clearing of the information.

4. The method of claim 1 wherein configuring at least part of the configurable logic according to the first configuration data includes forming at least part of logic for the decryption of the encrypted configuration data.

5. The method of claim 1 wherein generating the volatile key includes generating a volatile response, and the method further comprises performing at least one of (a) providing a first input value to the device that is used to generate the volatile response based, and (b) providing a second input value to the device and combining the volatile response and the second input value to determine the volatile key.

6. The method of claim 5 further comprising storing at least one of the first value and the second value in a non-volatile storage on the device.

7. The method of claim 5 further comprising determining at least one of the first value and the second value such that a desired volatile key is generated.

8. A method of operating a configurable logic device comprising:

loading a configurable logic device with a first module for generating a volatile response that varies among configurable logic devices fabricated according to the same design;

using the first module to generate a first volatile response for the device;

forming configuration data according to the first volatile response;

loading the configuration data into the configurable logic device, including implementing the first module in the configurable logic device;

operating the device according to the configuration data including

using the first module to generate a second volatile response for the device;

determining whether the second volatile response matches the first volatile response;

disabling functionality specified by the configuration data if the second volatile response does not match the first volatile response.

9. The method of claim 8 , wherein disabling functionality includes inhibiting configuration of the configurable logic.

10. The method of claim 8 , wherein disabling functionality includes at least one of disabling functionality implemented in the configurable logic prior to an initial use of the functionality after configuration of the logic, and disabling functionality during use of the functionality.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2010
From: DEVADAS, SRINIVAS; ZIOLA, THOMAS J.
To: VERAYO, INC.
Reel/Frame 024673/0510 →
Continuity (5)
Continuation 11272995 · Nov 14, 2005
Provisional Application 60627605 · Nov 12, 2004
Provisional Application 60629953 · Nov 22, 2004
Provisional Application 60647575 · Jan 27, 2005
Related Publication 20100272255A1 · Oct 28, 2010