1#[cfg(all(feature = "fips", not(target_arch = "wasm32")))]
20pub mod aws_lc_provider;
21#[cfg(all(feature = "cnsa", not(target_arch = "wasm32")))]
22pub mod cnsa_provider;
23pub mod did_key;
24pub mod error;
25pub mod hash256;
26pub mod key_material;
27pub mod key_ops;
28pub mod pkcs8;
29pub mod provider;
30#[cfg(all(feature = "native", not(target_arch = "wasm32")))]
31pub mod ring_provider;
32pub mod secret;
33pub mod ssh;
34#[cfg(feature = "wasm")]
35pub mod webcrypto_provider;
36
37#[cfg(all(feature = "fips", not(target_arch = "wasm32")))]
38pub use aws_lc_provider::AwsLcProvider;
39#[cfg(all(feature = "cnsa", not(target_arch = "wasm32")))]
40pub use cnsa_provider::CnsaProvider;
41pub use did_key::{
42 DecodedDidKey, DidKeyError, did_key_decode, did_key_to_p256, ed25519_pubkey_to_did_keri,
43};
44pub use error::AuthsErrorInfo;
45pub use hash256::Hash256;
46pub use key_material::{build_ed25519_pkcs8_v2, parse_ed25519_key_material, parse_ed25519_seed};
47pub use key_ops::{ParsedKey, TypedSeed, TypedSignerKey, normalize_verkey, parse_key_material};
48#[cfg(all(feature = "native", not(target_arch = "wasm32")))]
49pub use key_ops::{
50 generate as typed_generate, public_key as typed_public_key, sign as typed_sign,
51 verify as typed_verify,
52};
53pub use pkcs8::Pkcs8Der;
54#[cfg(all(feature = "native", not(target_arch = "wasm32")))]
55pub use provider::default_provider;
56pub use provider::{
57 CryptoError, CryptoProvider, CurveType, ED25519_PUBLIC_KEY_LEN, ED25519_SIGNATURE_LEN,
58 P256_PUBLIC_KEY_LEN, P256_SIGNATURE_LEN, ParseCurveError, SecureSeed, SeedDecodeError,
59 decode_seed_hex,
60};
61#[cfg(all(feature = "native", not(target_arch = "wasm32")))]
62pub use ring_provider::RingCryptoProvider;
63pub use secret::Secret;
64pub use ssh::{SshKeyError, openssh_pub_to_raw};
65#[cfg(all(any(test, feature = "test-utils"), not(target_arch = "wasm32")))]
66#[allow(clippy::unwrap_used, clippy::expect_used)]
67pub mod testing;
68
69#[cfg(feature = "wasm")]
70pub use webcrypto_provider::WebCryptoProvider;