Outline. Trusted Design in FPGAs. FPGA Architectures CLB CLB. CLB Wiring

Similar documents
Dynamic Partial Reconfiguration of FPGA for SEU Mitigation and Area Efficiency

New Logic Module for secured FPGA based system

Programmable Logic Devices FPGA Architectures II CMPE 415. Overview This set of notes introduces many of the features available in the FPGAs of today.

LSN 6 Programmable Logic Devices

Improving the Fault Tolerance of a Computer System with Space-Time Triple Modular Redundancy

Programmable Logic Devices

11. SEU Mitigation in Stratix IV Devices

HOST Differential Power Attacks ECE 525

6.857 L17. Secure Processors. Srini Devadas

Flash Memory Bumping Attacks

The embedded security challenge: Protecting bits at rest

EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs)

Outline. EECS150 - Digital Design Lecture 6 - Field Programmable Gate Arrays (FPGAs) FPGA Overview. Why FPGAs?

SECURITY OF CPS: SECURE EMBEDDED SYSTEMS AS A BASIS

Hardware-Level Security for the IoT. Mark Zwolinski March 2017

CMPE 415 Programmable Logic Devices FPGA Technology I

ALMA Memo No Effects of Radiation on the ALMA Correlator

FPGA Based Digital Design Using Verilog HDL

outline Reliable State Machines MER Mission example

TinySec: A Link Layer Security Architecture for Wireless Sensor Networks. Presented by Paul Ruggieri

PLAs & PALs. Programmable Logic Devices (PLDs) PLAs and PALs

General Security. Physical Unclonable Functions and True Random Number Generator. Digital Storage. Authentication. What We Want to Achieve?

Single Event Upset Mitigation Techniques for SRAM-based FPGAs

Combinational Logic Binding for FPGA System Security

9. SEU Mitigation in Cyclone IV Devices

A Pay-per-Use Licensing Scheme for Hardware IP Cores in Recent SRAM-Based FPGAs

FPGA. Logic Block. Plessey FPGA: basic building block here is 2-input NAND gate which is connected to each other to implement desired function.

Secure Device Manager for Intel Stratix 10 Devices Provides FPGA and SoC Security

Memory and Programmable Logic

An Analysis of Delay Based PUF Implementations on FPGA

IBG Protection for Anti-Fuse OTP Memory Security Breaches

Connecting Securely to the Cloud

FPGA How do they work?

Fault injection attacks on cryptographic devices and countermeasures Part 1

SIDE CHANNEL ATTACKS AGAINST IOS CRYPTO LIBRARIES AND MORE DR. NAJWA AARAJ HACK IN THE BOX 13 APRIL 2017

How Safe is Anti-Fuse Memory? IBG Protection for Anti-Fuse OTP Memory Security Breaches

Implementation of single bit Error detection and Correction using Embedded hamming scheme

SAN FRANCISCO, CA, USA. Ediz Cetin & Oliver Diessel University of New South Wales

INTRODUCTION TO FPGA ARCHITECTURE

From Design to Resign: Securing the Electronics Lifecycle

MILITARY ANTI-TAMPERING SOLUTIONS USING PROGRAMMABLE LOGIC

Field Programmable Gate Array (FPGA)

Breaking the Bitstream Decryption of FPGAs

2/13/2014. What is Tamper Resistance? IBM s Attacker Categories. Protection Levels. Classification Of Physical Attacks.

SECURE PARTIAL RECONFIGURATION OF FPGAs. Amir S. Zeineddini Kris Gaj

Outline of Presentation Field Programmable Gate Arrays (FPGAs(

A Survey of Recent Results in FPGA Security and Intellectual Property Protection

Digital Integrated Circuits

Building High Reliability into Microsemi Designs with Synplify FPGA Tools

FPGA VHDL Design Flow AES128 Implementation

AES1. Ultra-Compact Advanced Encryption Standard Core AES1. General Description. Base Core Features. Symbol. Applications

The Design and Evaluation Methodology of Dependable VLSI for Tamper Resistance

Multiple Event Upsets Aware FPGAs Using Protected Schemes

Embedded Controller Design. CompE 270 Digital Systems - 5. Objective. Application Specific Chips. User Programmable Logic. Copyright 1998 Ken Arnold 1

Leso Martin, Musil Tomáš

Ensuring Design Integrity through Analysis of FPGA Bitstreams and IP Cores

Chapter 5: ASICs Vs. PLDs

FPGAhammer: Remote Voltage Fault Attacks on Shared FPGAs, suitable for DFA on AES

FPGA Design Flow 1. All About FPGA

Introduction to Field Programmable Gate Arrays

Actel s SX Family of FPGAs: A New Architecture for High-Performance Designs

ECE 636. Reconfigurable Computing. Lecture 2. Field Programmable Gate Arrays I

FPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011

Outline. Parity-based ECC and Mechanism for Detecting and Correcting Soft Errors in On-Chip Communication. Outline

Cryptographic Implementations In Digital Design

RTL Coding General Concepts

Spartan-3E FPGA Design Guide for prototyping and production environment

SEL-3021 Serial Encrypting Transceiver Security Policy Document Version 1.9

LOW POWER DESIGN IMPLEMENTATION OF A SIGNAL ACQUISITION MODULE RAVI BHUSHAN THAKUR. B.Tech, Jawaharlal Nehru Technological University, INDIA 2007

FPGA: What? Why? Marco D. Santambrogio

DESIGN AND ANALYSIS OF SOFTWARE FAULTTOLERANT TECHNIQUES FOR SOFTCORE PROCESSORS IN RELIABLE SRAM-BASED FPGA

CSCI 4974 / 6974 Hardware Reverse Engineering. Lecture 12: Non-invasive attacks

Documentation. Design File Formats. Constraints Files. Verification. Slices 1 IOB 2 GCLK BRAM

Fast implementation and fair comparison of the final candidates for Advanced Encryption Standard using Field Programmable Gate Arrays

Indian Silicon Technologies 2013

FPGAs: FAST TRACK TO DSP

ECE 459/559 Secure & Trustworthy Computer Hardware Design

Implementing a Secure Boot with Microsemi IGLOO2 FPGA

Fast SEU Detection and Correction in LUT Configuration Bits of SRAM-based FPGAs

Atmel Trusted Platform Module June, 2014

Cyber Security of FPGA-Based NPP I&C Systems: Challenges and Solutions

Cryptographic Protocols and Algorithms for 5G. Elena Dubrova School of Information and Communication Techonology, KTH

Advanced FPGA Design Methodologies with Xilinx Vivado

Reliable Physical Unclonable Function based on Asynchronous Circuits

REVIEW ON SECURITY TECHNIQUES FOR FIELD PROGRAMMABLE GATE ARRAY

Fine-Grain Redundancy Techniques for High- Reliable SRAM FPGA`S in Space Environment: A Brief Survey

Cybersecurity Solution in Hardware

Initial Single-Event Effects Testing and Mitigation in the Xilinx Virtex II-Pro FPGA

ECEN 449 Microprocessor System Design. FPGAs and Reconfigurable Computing

Secure Boot in the Zynq-7000 All Programmable SoC

Comparison of the Hardware Performance of the AES Candidates Using Reconfigurable Hardware

FYSE420 DIGITAL ELECTRONICS. Lecture 7

Workspace for '4-FPGA' Page 1 (row 1, column 1)

DYNAMICALLY SHIFTED SCRUBBING FOR FAST FPGA REPAIR. Leonardo P. Santos, Gabriel L. Nazar and Luigi Carro

INTRODUCTION TO FIELD PROGRAMMABLE GATE ARRAYS (FPGAS)

L2: FPGA HARDWARE : ADVANCED DIGITAL DESIGN PROJECT FALL 2015 BRANDON LUCIA

Security+ Guide to Network Security Fundamentals, Third Edition. Chapter 11 Basic Cryptography

Today. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses

The Integrity of FPGA Designs: Capabilities Enabled by Unlocking Bitstreams and 3 rd -Party IP

SGX Security Background. Masab Ahmad Department of Electrical and Computer Engineering University of Connecticut

Transcription:

Outline Trusted Design in FPGAs Mohammad Tehranipoor ECE6095: Hardware Security & Trust University of Connecticut ECE Department Intro to FPGA Architecture FPGA Overview Manufacturing Flow FPGA Security Attacks Defenses Current Research Conclusion 1 2 FPGA Architectures CLB Field Programmable Gate Array Configurability CLB Re-configurable interconnects I/O Similar to ASIC HDL 3 4 CLB CLB Wiring 5 6 1

Board Level Board Level 7 8 Why FPGAs? Common FPGA Applications Time to Market Cost Reduction Reliability Programmability High performance designs Speed Power consumption Package size High Performance Computing Medical Equipment Data Servers Consumer Electronics Computer Networking Aerospace and Defense Etc. 9 10 Traditional Manufacturing Flow FPGA Manufacturing Flow Design exposed throughout process Vendor Foundry Assembly Overview 11 12 2

Base Array FPGA Manufacturing Flow FPGA Manufacturing Flow System Designer 13 14 FPGA Manufacturing Flow Attacks Software Cloning, Overproducing, Mislabeling Reverse Engineering the Bitstream Readback Side Channels Power Analysis EMF Analysis Timing Analysis Ionizing Radiation Invasive and Semi-Invasive Brute Force, Crippling, Fault Injection Relay and Replay 15 16 Cloning, Overproducing, Mislabeling Reverse Engineering the Bitstream FPGA s are generic A generated bitstream will work on any device within the respective device family and size Attackers can clone bitstreams Recording in transmission to FPGA Use them in other systems Cheaper clones Bitstream Reversal: transformation of an encoded bitstream into functionally equivalent description of the original design 17 18 3

Bitstream Reversal Partial reversal Extraction of data from bitstream without full functionality BRAM/LUT Memory cell states Keys could be compromised Full reversal would divulge the entire design Readback Retrieving a snapshot of the FPGA's current state while still in operation Configuration LUT Memory contents Useful for vendors to verify correct operation If enabled, an attacker can add missing header/footer info Use in another device Reprogram FPGA with modified version ie: Trojan insertion Reverse engineering Readback Difference Attack 19 20 Readback Side Channel Defensive usage Providing evidence of tampering Ionizing radiation attack Xilinx provides a bitstream bit to disable readback, but is easily found Altera's devices do not provide readback capabilities Challenge: isolate internal operations of IC from the environment Power Analysis EMF Analysis Timing Analysis Ionizing Radiation 21 22 Power Analysis Electromagnetic Field Analysis SPA on Xilinx Virtex FPGA Not practical for most paralleled cryptographic operations DPA possible Statistical correlation techniques against AES and DES Movement of charge Used to efficiently inject signal/noise in attacks SEMA/DEMA Successful side channel attack to be exploited Power analysis attacks could be made harder Equivalent power signatures 23 24 4

Timing Analysis Ionizing Radiation Time attacks difficult on FPGA Off chip for functionality Observable via device pins Single event upsets (SEU, Soft Errors) Radiation induced errors caused when charged particles lose energy by ionizing the medium through which they pass May cause transient pulse resulting in delay faults Cause memory bit to change state Exhaustively irradiating device until desired results are obtained Given the number of transistors & devices, this may not be practical 25 26 Ionizing Radiation Detection Flip Chip Packaging FPGA vendors introduced measures for detection for highreliability CRC or Hamming Triple Modular Redundancy Chip scrubbing to remove block faults from SEU 27 28 Side Channel: Conclusion Crippling & Fault Injection Some challenges an attacker faces with most side channel attacks: Familiarity with implementation details Isolation of target function Obtaining high signal to noise ratio Probing BGA packages Devices manufactured at 90/65/45nm technologies Subvert a system to perform malicious functions or take it off-line Reprogramming with or without encryption can take the system down Authentication can solve this issue Attempt to force the device to execute an incorrect operation, or be left in a compromising state Altering input clock or voltage 29 30 5

Relay Attack Replay Attacker resends recorded protocol transaction data ex. impersonation of a participant in authentication protocol Authentication Key (un-encrypted) Cloning of bitstreams is the simplest form 31 32 Replay Replay Password Authenticate Yourself! Authenticate Yourself! Password Password 33 34 Bitstream Encryption Key Storage Key Management Problems Theft Deterrents PUFs VHDL '08 Protect DRM Defenses Bitstream Encryption Encrypt bitstream at end of design flow Decrypt it on the FPGA Cloning Reverse Engineering Tampering Bitstream produced Software requests key Encryption User 'programs' same key into FPGA Bitstream is downloaded, directed through decryption circuitry 35 36 6

Key Storage Keys must be present inside the device to decrypt Two storage devices Volatile SRAM Non-volatile Fuses Flash EEProm Key Management Encrypted Keys Xilinx: Triple DES, AES 256 Altera: Stratus II : AES 128 Stratus III: volatile & non volatile, AES 256 If encryption is used: Disable readback & partial configuration 37 38 Key Management Design Theft Deterrents Establishing Value Simple: One key Catastrophe if compromised More secure: One key per device Very costly If compromised, single stream is affected Database of keys is threat Vendors offer a few cloning deterrents that rely on secrecy of bitstream encoding Xilinx Spartan 3A Device DNA Challenge-response schemes 39 40 Watermarking and Fingerprinting Ongoing Research Passive Proves ownership Fingerprinting is a watermark used to identify specific end users Can be inserted: HDL Netlist Bitstream Do not prevent theft, but can provide proof in court of fraud Physically Unclonable Functions Bitstream Authentication FPGA Digital Rights Management 41 42 7

One-way functions PUFs Unique identities from physical properties PUFs cannot be reversed Very active research area Arbiter PUF Uses delay variations within paths PUFs Ring Oscillator Manufacturing creates different oscillation frequencies Initial State of SRAM Upon power on, an SRAM cell is more prone to settle at 0, or 1 Butterfly PUF 43 44 Bitstream Authentication Allows two major items: Sender verification Message integrity Sometimes considered more important than encryption Very complex methods have been devised Restrictions for bitstreams and cores from being used in unauthorized devices Pay-per-use VHDL 08 Protect `protect begin_protected protect directives and encoded encrypted information `protect end_protected Example: architecture RTL of accelerator is `protect begin_protected `protect encrypt_agent = "Encryptomatic" `protect encrypt_agent_info = "2.3.4a" `protect data_keyowner = "ACME IP User" `protect data_keyname = "ACME Sim Key" `protect data_method = "aes192-cbc" `protect encoding=(enctype="base64", line_length=40, bytes=4006) `protect data_block encoded cipher-text... `protect end_protected end architecture RTL; 45 46 Conclusion Security is ongoing. What is secure today, may be trivial to circumvent tomorrow. FPGA security (hardware in general) is a relatively new research area which is advancing rapidly Questions? 47 48 8

References Steve Trimberger, Trusted design in FPGAs, Proceedings of the 44th annual Design Automation Conference, June 04-08, 2007, San Diego, California A. Lesea. IP Security in FPGAs, White Paper WP 261. Technical report, XILINX, February 2007. M. Tehranipoor and C. Wang. Introduction to Hardware Security. Springer, pp. 195-229, 2012. 49 9