1
ABSTRACT
The National Institute of Standards and Technology (NIST) Triple Data Encryption Algorithm
(TDEA) Modes of Operation Validation System (TMOVS) specifies the procedures involved in
validating implementations of the Triple DES algorithm in FIPS PUB 46-3 Data Encryption
Standard (DES) (and ANSI X9.52 – 1998). The TMOVS is designed to perform automated
testing on Implementations Under Test (IUTs). This publication provides brief overviews of the
Triple DES algorithm and introduces the basic design and configuration of the TMOVS. Included
in this overview are the specifications for the two categories of tests that make up the TMOVS,
i.e., the Known Answer tests and the Monte Carlo tests. The requirements and administrative
procedures to be followed by those seeking formal NIST validation of an implementation of the
Triple DES algorithm are presented. The requirements described include the specific protocols for
communication between the IUT and the TMOVS, the types of tests which the IUT must pass for
formal NIST validation, and general instructions for accessing and interfacing with the TMOVS.
An appendix with tables of values and results for the Triple DES Known Answer tests is also
provided.
Key words: automated testing, computer security, cryptographic algorithms, cryptography, Triple
Data Encryption Algorithm (TDEA), Triple Data Encryption Standard (TDES), Federal
Information Processing Standard (FIPS), NVLAP, secret key cryptography, validation.
1. Introduction
1.1 Background
The publication specifies the tests required to validate Implementations Under Test (IUTs) for
conformance to the Triple DES algorithm (TDEA) as specified in ANSI X9.52, Triple Data
Encryption Algorithm Modes of Operation. When applied to IUTs that implement the TDEA, the
TDEA Modes of Operation Validation System (TMOVS) provides testing to determine the
correctness of the algorithm implementation. This involves both testing the specific components
of the algorithm, as well as, exercising the entire algorithm implementation. In addition to
determining conformance, the TMOVS is structured to detect implementation flaws including
pointer problems, insufficient allocation of space, improper error handling, and incorrect behavior
of the TDEA implementation.
The TMOVS is composed of two types of validation tests, the Known Answer tests and the
Monte Carlo tests. The validation tests are based on the standard DES test set and the Monte
Carlo test described in Special Publication 800-17, Modes of Operation Validation System
(MOVS): Requirements and Procedures. By applying the same framework specified in Special
Publication 800-17 to TDES, the TMOVS specifies how to validate implementations of the
TDEA in software, firmware, hardware, or any combination thereof.
The Known Answer tests are designed to verify the components of the DES algorithm in the IUT
(e.g., S boxes, permutation tables,…). The tests exercise each bit of every component of the