magic-crypt 2.1.7

MagicCrypt is a Java/PHP/NodeJS/Rust library to encrypt/decrpyt strings, files, or data, using Data Encryption Standard(DES) or Advanced Encryption Standard(AES) algorithms. It supports CBC block cipher mode, PKCS5 padding and 64, 128, 192 or 256-bits key length. If the encrypted data is a string, it will be formatted automatically to Base64.
Documentation
/// This macro provides a convenient way to create a MagicCrypt instance.
#[macro_export]
macro_rules! new_magic_crypt {
    ($key:expr) => {{
        use magic_crypt::*;

        MagicCrypt::new($key, SecureBit::Bit128, None::<String>)
    }};
    ($key:expr,64) => {{
        use magic_crypt::*;

        MagicCrypt::new($key, SecureBit::Bit64, None::<String>)
    }};
    ($key:expr,128) => {{
        use magic_crypt::*;

        MagicCrypt::new($key, SecureBit::Bit128, None::<String>)
    }};
    ($key:expr,192) => {{
        use magic_crypt::*;

        MagicCrypt::new($key, SecureBit::Bit192, None::<String>)
    }};
    ($key:expr,256) => {{
        use magic_crypt::*;

        MagicCrypt::new($key, SecureBit::Bit256, None::<String>)
    }};
    ($key:expr,64) => {{
        use magic_crypt::*;

        MagicCrypt::new($key, SecureBit::Bit64, None::<String>)
    }};
    ($key:expr,64, $iv:expr) => {{
        use magic_crypt::*;

        MagicCrypt::new($key, SecureBit::Bit64, Some($iv))
    }};
    ($key:expr,128, $iv:expr) => {{
        use magic_crypt::*;

        MagicCrypt::new($key, SecureBit::Bit128, Some($iv))
    }};
    ($key:expr,192, $iv:expr) => {{
        use magic_crypt::*;

        MagicCrypt::new($key, SecureBit::Bit192, Some($iv))
    }};
    ($key:expr,256, $iv:expr) => {{
        use magic_crypt::*;

        MagicCrypt::new($key, SecureBit::Bit256, Some($iv))
    }};
}