Autostart PD-2.7 Guide de l'utilisateur Page 89

  • Télécharger
  • Ajouter à mon manuel
  • Imprimer
  • Page
    / 170
  • Table des matières
  • MARQUE LIVRES
  • Noté. / 5. Basé sur avis des utilisateurs
Vue de la page 88
Spartan-6 FPGA Configuration User Guide www.xilinx.com 89
UG380 (v2.7) October 29, 2014
Bitstream Encryption
Bitstream Encryption
The Spartan-6 6SLX75/T, 6SLX100/T, and 6SLX150/T devices have on-chip AES
decryption logic to provide a high degree of design security. Without knowledge of the
encryption key, potential pirates cannot analyze an externally intercepted bitstream to
understand or clone the design. Encrypted Spartan-6 FPGA designs cannot be copied or
reverse-engineered. Encryption is permitted in configuration modes of x1 and x8 data
widths (including JTAG). Encryption cannot be used in conjunction with bitstream
compression.
The Spartan-6 FPGA AES system consists of software-based bitstream encryption and
on-chip bitstream decryption with dedicated memory for storing the encryption key.
Using the ISE software, the user generates the encryption key and the encrypted bitstream.
Spartan-6 devices store the encryption key internally in either dedicated RAM, backed up
by a small externally connected battery, or the eFUSE. The encryption key can only be
programmed onto the device through the JTAG interface; once programmed and secured
with the Key Security bits, it is not possible to read the encryption key out of the device
through JTAG or any other means.
During configuration, the Spartan-6 device performs the reverse operation, decrypting the
incoming bitstream. The Spartan-6 FPGA AES encryption logic uses a 256-bit encryption
key.
The on-chip AES decryption logic cannot be used for any purpose other than bitstream
decryption; i.e., the AES decryption logic is not available to the user design and cannot be
used to decrypt any data other than the configuration bitstream.
Advanced Encryption Standard Overview
The Spartan-6 FPGA encryption system uses the AES encryption algorithm. AES is an
official standard supported by the National Institute of Standards and Technology (NIST)
and the U.S. Department of Commerce
(http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf)
.
The Spartan-6 FPGA AES encryption system uses a 256-bit encryption key (the alternate
key lengths of 128 and 192 bits described by NIST are not implemented) to encrypt or
decrypt blocks of 128 bits of data at a time. According to NIST, there are 1.1 x 10
77
possible
key combinations for a 256-bit key.
Symmetric encryption algorithms such as AES use the same key for encryption and
decryption. The security of the data is therefore dependent on the secrecy of the key.
Creating an Encrypted Bitstream
BitGen, provided with the ISE software, can generate encrypted as well as non-encrypted
bitstreams. For AES bitstream encryption, the user specifies a 256-bit key as an input to
BitGen. BitGen in turn generates an encrypted bitstream file (BIT) and an encryption key
file (NKY).
For specific BitGen commands and syntax, refer to UG628
, Command Line Tools User Guide.
Vue de la page 88
1 2 ... 84 85 86 87 88 89 90 91 92 93 94 ... 169 170

Commentaires sur ces manuels

Pas de commentaire