3DES Encryption and Decryption

Overview

The Core3DES macro implements the Triple Data Encryption Standard (3DES or Triple DES), which provides a means of securing data. The Triple DES algorithm is described in the Federal Information Processing Standards (FIPS) Publication (PUB) 46-3, and is an extension of the DES (Data Encryption Standard) algorithm and also described in FIPS PUB 46-3. The Triple DES algorithm takes as inputs 64 bits of plaintext data and 192 bits of a cipher key, and after 48 cycles, produces a 64-bit ciphered version of the original plaintext data as output.1 The entire 168-bit cipher key consists of three sub-keys, denoted as K1, K2, and K3, representing the left third (MSB), the middle third, and the right third (LSB) of the cipher key, respectively.

Key Features

  • Implements triple DES to <a target="_blank" href="http://csrc.nist.gov/publications/fips/fips46-3/fips46-3.pdf" class="bodyA">NIST FIPS PUB 46-3</a>
  • Compliant with FIPS PUB 46-3
  • TECB (TDEA Electronic Codebook) Implementation per ANSI Standard X9.52
  • Example Source Code Provided for TCBC, TCFB, and TOFB Modes
  • 168-Bit Cipher Key (consisting of 56-bit cipher keys in 3 stages, with 24 additional parity bits)
  • Parity Checking Logic for Cipher Key
  • Encryption and Decryption Possible with Same Core
  • 48-Clock Cycle Operation to Encrypt or Decrypt 64 Bits of Data
  • Pause/Resume Functionality to Continue Encryption or Decryption at Will
  • Provides Data Security within a Secure Microsemi FPGA

Technical Specifications

×
Semiconductor IP