| // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. |
| // Copyright by contributors to this project. |
| // SPDX-License-Identifier: (Apache-2.0 OR MIT) |
| |
| pub(crate) use mls_rs_core::crypto::CipherSuiteProvider; |
| |
| pub use mls_rs_core::crypto::{ |
| HpkeCiphertext, HpkeContextR, HpkeContextS, HpkePublicKey, HpkeSecretKey, SignaturePublicKey, |
| SignatureSecretKey, |
| }; |
| |
| pub use mls_rs_core::secret::Secret; |
| |
| #[cfg(test)] |
| pub(crate) mod test_utils { |
| use cfg_if::cfg_if; |
| use mls_rs_core::crypto::CryptoProvider; |
| |
| cfg_if! { |
| if #[cfg(target_arch = "wasm32")] { |
| pub use mls_rs_crypto_webcrypto::WebCryptoProvider as TestCryptoProvider; |
| } else { |
| pub use mls_rs_crypto_openssl::OpensslCryptoProvider as TestCryptoProvider; |
| } |
| } |
| |
| use crate::cipher_suite::CipherSuite; |
| |
| pub fn test_cipher_suite_provider( |
| cipher_suite: CipherSuite, |
| ) -> <TestCryptoProvider as CryptoProvider>::CipherSuiteProvider { |
| TestCryptoProvider::new() |
| .cipher_suite_provider(cipher_suite) |
| .unwrap() |
| } |
| |
| #[allow(unused)] |
| pub fn try_test_cipher_suite_provider( |
| cipher_suite: u16, |
| ) -> Option<<TestCryptoProvider as CryptoProvider>::CipherSuiteProvider> { |
| TestCryptoProvider::new().cipher_suite_provider(CipherSuite::from(cipher_suite)) |
| } |
| } |