1 /*
2  * CDDL HEADER START
3  *
4  * The contents of this file are subject to the terms of the
5  * Common Development and Distribution License (the "License").
6  * You may not use this file except in compliance with the License.
7  *
8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9  * or http://www.opensolaris.org/os/licensing.
10  * See the License for the specific language governing permissions
11  * and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL HEADER in each
14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15  * If applicable, add the following below this CDDL HEADER, with the
16  * fields enclosed by brackets "[]" replaced with your own identifying
17  * information: Portions Copyright [yyyy] [name of copyright owner]
18  *
19  * CDDL HEADER END
20  */
21 
22 /*
23  * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
24  */
25 
26 /** @file             KMSAgent.h
27  *  @defgroup         EncryptionAgent Encryption Agent API
28  *
29  * The Agent API is used to communicate with the KMS Appliance for the
30  * purpose of registering storage devices, obtaining device keys, and
31  * receiving notifications of storage device events such as destruction.
32  *
33  */
34 #ifndef KMS_AGENT_KNOWN_ANSWER_TESTS_H
35 #define KMS_AGENT_KNOWN_ANSWER_TESTS_H
36 
37 /**
38  *  This function exercises both <code>aes_key_wrap</code> and <code>aes_key_unwrap</code>
39  *  in order to satisfy a FIPS 140-2 requirement for a known answer test, aka KAT.  Test
40  *  vectors from RFC 3394 are used for this test.
41  *  @return 0 on success, non-zero otherwise
42  */
43 int KnownAnswerTestAESKeyWrap(void);
44 
45 /**
46  *  This function exercises both <code>rijndael_encrypt</code> and <code>rijndael_decrypt</code>
47  *  in order to satisfy a FIPS 140-2 requirement for a known answer test, aka KAT.  Test
48  *  vectors from Infoguard are used for this test.
49  *  @return 0 if KAT passed, non-zero otherwise
50  */
51 int KnownAnswerTestAESECB(void);
52 
53 /**
54  *  This function exercises  #HMACBuffers
55  *  in order to satisfy a FIPS 140-2 requirement for a known answer test, aka KAT.  Test
56  *  vectors from Infoguard are used for this test.
57  *  @return 0 if KAT passed, non-zero otherwise
58  */
59 int KnownAnswerTestHMACSHA1(void);
60 
61 #endif
62 
63 
64