tls13hkdf.h (1167B)
1 /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ 2 /* 3 * This file is PRIVATE to SSL. 4 * 5 * This Source Code Form is subject to the terms of the Mozilla Public 6 * License, v. 2.0. If a copy of the MPL was not distributed with this 7 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 8 9 #ifndef __tls13hkdf_h_ 10 #define __tls13hkdf_h_ 11 12 #include "keyhi.h" 13 #include "sslt.h" 14 15 #ifdef __cplusplus 16 extern "C" { 17 #endif 18 19 SECStatus tls13_HkdfExtract( 20 PK11SymKey *ikm1, PK11SymKey *ikm2, SSLHashType baseHash, 21 PK11SymKey **prkp); 22 SECStatus tls13_HkdfExpandLabelRaw( 23 PK11SymKey *prk, SSLHashType baseHash, 24 const PRUint8 *handshakeHash, unsigned int handshakeHashLen, 25 const char *label, unsigned int labelLen, 26 SSLProtocolVariant variant, unsigned char *output, 27 unsigned int outputLen); 28 SECStatus tls13_HkdfExpandLabel( 29 PK11SymKey *prk, SSLHashType baseHash, 30 const PRUint8 *handshakeHash, unsigned int handshakeHashLen, 31 const char *label, unsigned int labelLen, 32 CK_MECHANISM_TYPE algorithm, unsigned int keySize, 33 SSLProtocolVariant variant, PK11SymKey **keyp); 34 35 #ifdef __cplusplus 36 } 37 #endif 38 39 #endif