1 // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
2 // Copyright by contributors to this project.
3 // SPDX-License-Identifier: (Apache-2.0 OR MIT)
4 
5 pub(crate) use mls_rs_core::crypto::CipherSuiteProvider;
6 
7 pub use mls_rs_core::crypto::{
8     HpkeCiphertext, HpkeContextR, HpkeContextS, HpkePublicKey, HpkeSecretKey, SignaturePublicKey,
9     SignatureSecretKey,
10 };
11 
12 pub use mls_rs_core::secret::Secret;
13 
14 #[cfg(test)]
15 pub(crate) mod test_utils {
16     use cfg_if::cfg_if;
17     use mls_rs_core::crypto::CryptoProvider;
18 
19     cfg_if! {
20         if #[cfg(target_arch = "wasm32")] {
21             pub use mls_rs_crypto_webcrypto::WebCryptoProvider as TestCryptoProvider;
22         } else {
23             pub use mls_rs_crypto_openssl::OpensslCryptoProvider as TestCryptoProvider;
24         }
25     }
26 
27     use crate::cipher_suite::CipherSuite;
28 
test_cipher_suite_provider( cipher_suite: CipherSuite, ) -> <TestCryptoProvider as CryptoProvider>::CipherSuiteProvider29     pub fn test_cipher_suite_provider(
30         cipher_suite: CipherSuite,
31     ) -> <TestCryptoProvider as CryptoProvider>::CipherSuiteProvider {
32         TestCryptoProvider::new()
33             .cipher_suite_provider(cipher_suite)
34             .unwrap()
35     }
36 
37     #[allow(unused)]
try_test_cipher_suite_provider( cipher_suite: u16, ) -> Option<<TestCryptoProvider as CryptoProvider>::CipherSuiteProvider>38     pub fn try_test_cipher_suite_provider(
39         cipher_suite: u16,
40     ) -> Option<<TestCryptoProvider as CryptoProvider>::CipherSuiteProvider> {
41         TestCryptoProvider::new().cipher_suite_provider(CipherSuite::from(cipher_suite))
42     }
43 }
44