Pre-built, high-performance, fully verified FPGA Cores

Data Security and Authentication Cores

Data Security and Authentication is primary achieved through cryptography. Cryptography generally refers to encryption, which is the process of manipulating ordinary data into unintelligible gibberish, ciphertext. Alternatively, decryption transforms unintelligible ciphertext back into plaintext. Ciphers, such as AES or 3DES, contain a pair of algorithms which create the data encryption and the decryption. A cipher is controlled both by the algorithm and a key, which can be of varying lengths.

A cryptographic hash function is a deterministic procedure that takes an arbitrary block of data and returns a fixed-size bit string. The data to be encoded is often called the "message", and the hash value is sometimes called the message digest. Cryptographic hash functions have many information security applications, notably in digital signatures, message authentication codes (MACs), and other forms of authentication. They can also be used as ordinary hash functions, to index data in hash tables; as fingerprints, to detect duplicate data or uniquely identify files; or as checksums to detect accidental data corruption.

Example of Data Security and Authentication:
The Advanced Encryption Security (AES) is a block cipher adopted as an encryption standard by the U.S. government. AES, like many other ciphers, uses a fixed block size and uses a key size of 128, 192, or 256 bits. Concurrent EDA has created cores for each key size variant and algorithm function.


Concurrent EDA has the capability to rapidly create data security and authentication cores that can process data at 25 billion bits per second. The following are completed cores that implement data security and authentication and illustrate the types of cores that Concurrent EDA can create using our automation tools.

If you don't see the core you need, fill out the short Request a Core page and we will get back to you within 24 hours or just give us a call.


Core Name Description Performance and Area
AES-128 Encrypt Advanced Encryption Standard (AES) is a block cipher adopted as an encryption standard by the U.S. government. AES-128 has a fixed block size of 128 bits and encrypts with a key size of 128 bits.

Reference: Advanced Encryption Standard
  • 25 Giga-bits/sec
  • 200 MHz
  • 18,003 LUTs
  •  
  •  
AES-128 Decrypt Same as above but with Decrypt functionality utilizing a 128 bit key.
  • 25 Giga-bits/sec
  • 200 MHz
  • 18,225 LUTs
AES-128 Crypt Same as above but with both Encrypt and Decrypt functionality utilizing a 128 bit key.
  • 25 Giga-bits/sec
  • 200 MHz
  • 39,515 LUTs
AES-192 Encrypt Same as above but with Encrypt functionality utilizing a 192 bit key.
  • 25 Giga-bits/sec
  • 200 MHz
  • 22,694 LUTs
AES-192 Decrypt Same as above but with Decrypt functionality utilizing a 192 bit key.
  • 25 Giga-bits/sec
  • 200 MHz
  • 23,092 LUTs
AES-192 Crypt Same as above but with both Encrypt and Decrypt functionality utilizing a 192 bit key.
  • 25 Giga-bits/sec
  • 200 MHz
  • 49,456 LUTs
AES-256 Encrypt Same as above but with Encrypt functionality utilizing a 256 bit key.
  • 25 Giga-bits/sec
  • 200 MHz
  • 15,360 LUTs
AES-256 Decrypt Same as above but with Decrypt functionality utilizing a 256 bit key.
  • 25 Giga-bits/sec
  • 200 MHz
  • 15,360 LUTs
AES-256 Crypt Same as above but with both Encrypt and Decrypt functionality utilizing a 256 bit key.
  • 25 Giga-bits/sec
  • 200 MHz
  • 29,971 LUTs
3DES Encrypt The Triple Data Encryption Algorithm (Triple DES) applies the Data Encryption Standard (DES) cipher algorithm three times to each data block to encrypt ordinary data.

Reference: Triple DES
  • 25 Giga-bits/sec
  • 25 MHz
  • 19,076 LUTs
  •  
MD5 The MD5 (Message-Digest algorithm 5) is a widely used cryptographic hash function with a 128-bit hash value. As an Internet standard (RFC 1321), MD5 has been employed in a wide variety of security applications, and is also commonly used to check the integrity of files.

Reference: Message-Digest Algorithm 5
  • 25 Giga-bits/sec
  • 25 MHz
  • 36,090 LUTs
  •  
  •  
  •  
  •  
SHA-256 The Secure Hash Algorithm (SHA) hash functions are a set of cryptographic hash functions designed by the National Security Agency (NSA) and published by the NIST as a U.S. Federal Information Processing Standard. SHA-256 is a member of the SHA-2 family and uses a variable size digest.

Reference: SHA Hash Functions
  • 25 Giga-bits/sec
  • 25 MHz
  • 133,764 LUTs
  •  
  •  
  •  
  •  
SHA-512 Same as above but utilizing a 512 bit digest.
  • 25 Giga-bits/sec
  • 25 MHz
  • 172,484 LUTs




Get Started