4#ifndef _Stroika_Foundation_Cryptography_RC4_h_
5#define _Stroika_Foundation_Cryptography_RC4_h_ 1
7#include "Stroika/Foundation/StroikaPreComp.h"
9#include "Stroika/Foundation/Common/Common.h"
25namespace Stroika::Foundation::Cryptography::Encoding::Algorithm {
27#if qStroika_HasComponent_OpenSSL
30 Streams::InputStream::Ptr<byte> DecodeRC4 (
const Memory::BLOB& key,
const Streams::InputStream::Ptr<byte>& in);
31 Memory::BLOB DecodeRC4 (
const Memory::BLOB& key,
const Memory::BLOB& in);
34#if qStroika_HasComponent_OpenSSL
37 Streams::InputStream::Ptr<byte> EncodeRC4 (
const Memory::BLOB& key,
const Streams::InputStream::Ptr<byte>& in);
38 Memory::BLOB EncodeRC4 (
const Memory::BLOB& key,
const Memory::BLOB& in);
41#if qStroika_HasComponent_OpenSSL
44 Streams::OutputStream::Ptr<byte> RC4Decoder (
const Memory::BLOB& key,
const Streams::OutputStream::Ptr<byte>& out);
47#if qStroika_HasComponent_OpenSSL
50 Streams::OutputStream::Ptr<byte> RC4Encoder (
const Memory::BLOB& key,
const Streams::OutputStream::Ptr<byte>& out);