Question 158. What is ANSI X9.9?

ANSI X9.9 [ANS86a] is a United States national wholesale banking standard for authentication of financial transactions. ANSI X9.9 addresses two issues: message formatting and the particular message authentication algorithm. The algorithm defined by ANSI X9.9 is the so-called DES-MAC (see Question 102) based on DES (see Question 64) in either CBC or CFB modes (see Question 82 and Question 83). A more detailed standard for retail banking was published as X9.19 [ANS86b].

The equivalent international standards are ISO 8730 [ISO87] and ISO 8731 for ANSI X9.9, and ISO 9807 for ANSI X9.19. The ISO standards differ slightly in that they do not limit themselves to DES to obtain the message authentication code but allow the use of other message authentication codes and block ciphers.