Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
ARC4.h
Go to the documentation of this file.
1
/*
2
* This file is part of Project SkyFire https://www.projectskyfire.org.
3
* See LICENSE.md file for Copyright information
4
*/
5
6
#ifndef _AUTH_SARC4_H
7
#define _AUTH_SARC4_H
8
9
#include "
Define.h
"
10
11
#include <array>
12
#include <openssl/evp.h>
13
14
namespace
SkyFire::Crypto
15
{
16
class
ARC4
17
{
18
public
:
19
ARC4
();
20
~ARC4
();
21
22
void
Init
(
uint8
const
* seed,
size_t
len);
23
template
<
typename
Container>
24
void
Init
(Container
const
& c) {
Init
(std::data(c), std::size(c)); }
25
26
void
UpdateData
(
uint8
* data,
size_t
len);
27
template
<
typename
Container>
28
void
UpdateData
(Container& c) {
UpdateData
(std::data(c), std::size(c)); }
29
private
:
30
EVP_CIPHER_CTX*
_ctx
;
31
};
32
}
33
34
#endif
35
Define.h
uint8
std::uint8_t uint8
Definition
Define.h:79
SkyFire::Crypto::ARC4::ARC4
ARC4()
Definition
ARC4.cpp:10
SkyFire::Crypto::ARC4::UpdateData
void UpdateData(Container &c)
Definition
ARC4.h:28
SkyFire::Crypto::ARC4::Init
void Init(uint8 const *seed, size_t len)
Definition
ARC4.cpp:24
SkyFire::Crypto::ARC4::_ctx
EVP_CIPHER_CTX * _ctx
Definition
ARC4.h:30
SkyFire::Crypto::ARC4::Init
void Init(Container const &c)
Definition
ARC4.h:24
SkyFire::Crypto::ARC4::~ARC4
~ARC4()
Definition
ARC4.cpp:19
SkyFire::Crypto::ARC4::UpdateData
void UpdateData(uint8 *data, size_t len)
Definition
ARC4.cpp:32
SkyFire::Crypto
Definition
ARC4.h:15
src
server
shared
Cryptography
ARC4.h
Generated on
for Project SkyFire Core by
1.17.0