#![no_std]
#![doc = include_str!("../README.md")]
#![doc(
html_logo_url = "https://raw.githubusercontent.com/RustCrypto/media/6ee8e381/logo.svg",
html_favicon_url = "https://raw.githubusercontent.com/RustCrypto/media/6ee8e381/logo.svg"
)]
#![cfg_attr(docsrs, feature(doc_cfg))]
#![warn(missing_docs, unreachable_pub)]
#![forbid(unsafe_code)]
pub use digest::{self, Digest};
pub mod block_api;
pub mod params;
use params::Gost94Params;
digest::buffer_fixed!(
pub struct Gost94<P: Gost94Params>(block_api::Gost94Core<P>);
impl: FixedHashTraits;
);
pub type Gost94CryptoPro = Gost94<params::CryptoProParam>;
pub type Gost94s2015 = Gost94<params::S2015Param>;
pub type Gost94Test = Gost94<params::TestParam>;
pub type Gost94UA = Gost94<params::GOST28147UAParam>;
#[cfg(feature = "oid")]
mod oids {
use digest::const_oid::{AssociatedOid, ObjectIdentifier};
impl AssociatedOid for super::Gost94CryptoPro {
const OID: ObjectIdentifier = ObjectIdentifier::new_unwrap("1.2.643.2.2.9");
}
impl AssociatedOid for super::Gost94UA {
const OID: ObjectIdentifier = ObjectIdentifier::new_unwrap("1.2.804.2.1.1.1.1.2.1");
}
}