Introduction

This API Programmer’s Guide describes the sample code that demonstrates how to use the Intel® QuickAssist Technology (Intel® QAT) APIs.

Intended Audience

This document is intended to be used by software engineers who wish to develop application software that uses the Intel® QAT APIs to accelerate the supported workloads and/or services.

Using This Document

This document is structured as follows:

Code for all examples in this document is contained in the software package and, after installation, can be found in a sub-directory of the following directory: quickassist/lookaside/access_layer/src/sample_code/functional

Terminology

Term

Description

AAD

Additional Authenticated Data

AES

Advanced Encryption Standard

API

Application Programming Interface

asym

Asymmetric Cryptography

BDF

Bus Device Function

BOM

Bill of Materials

CBC

Cipher Block Chaining

CCM

Counter mode with Cipher-block chaining Message authentication code

CPM

Content Processing Module

cy

Cryptography

dc

Data Compression

DRBG

Deterministic Random Bit Generator

DSA

Digital Signature Algorithm

EC

Elliptic Curve

ECDH

Elliptic Diffie-Hellman

ESP

Encapsulating Security Payload

GCD

Greatest Common Divisor

GCM

Galois Counter Mode

GRUB

Grand Unified Bootloader

HKDF

HMAC Key Derivation Function

HMAC

Hashed Message Authenticate Code

ICV

Integrity Check Value

IPSec

Internet Protocol Security

MAC

Message Authentication Code

NRBG

Non-Deterministic Random Bit Generator

OS

Operating System

PCI

Peripheral Component Interconnect

PF

PCIe Physical Function

PKE

Public Key Encryption

PV

Public Value

Intel® QAT

Intel® QuickAssist Technology

RBG

Random Bit Generator

RSA

A public-key encryption algorithm created by Rivest, Shamir and Adleman

SKU

Stock Keeping Unit

SR-IOV

Single Root-I/O Virtualization

SSL

Secure Sockets Layer

TLS

Transport Layer Security (SSL successor)

VF

Virtual Function