Botan
3.7.1
Crypto and TLS for C&
Toggle main menu visibility
Main Page
Related Pages
Topics
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
z
Variables
Typedefs
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
Enumerations
a
c
d
e
f
g
h
k
l
m
n
o
p
r
s
t
u
v
w
Enumerator
c
d
f
i
m
n
r
s
t
Concepts
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
f
h
i
m
n
o
p
r
s
t
u
v
w
Enumerations
b
c
d
e
k
m
n
o
p
s
t
x
Enumerator
_
a
b
c
d
e
f
h
k
l
m
n
p
q
r
s
t
u
w
x
Related Symbols
b
c
d
e
f
k
o
p
s
t
x
Files
File List
File Members
All
_
a
b
c
d
e
f
i
k
m
n
o
p
q
s
t
u
w
x
y
z
Functions
b
c
Variables
Typedefs
b
c
e
p
t
Enumerations
Enumerator
b
c
d
e
k
n
Macros
_
a
b
c
f
m
n
q
s
t
w
src
lib
rng
jitter_rng
jitter_rng.h
Go to the documentation of this file.
1
/*
2
* CPU Jitter Random Number Generator
3
* (C) 2024 Planck Security S.A.
4
*
5
* Botan is released under the Simplified BSD License (see license.txt)
6
*/
7
8
#ifndef BOTAN_JITTER_RNG_H_
9
#define BOTAN_JITTER_RNG_H_
10
11
#include <botan/rng.h>
12
13
namespace
Botan
{
14
15
struct
Jitter_RNG_Internal;
16
17
/*
18
* RNG using libjitterentropy (https://github.com/smuellerDD/jitterentropy-library).
19
*/
20
class
BOTAN_PUBLIC_API
(3, 6)
Jitter_RNG
final
:
public
RandomNumberGenerator
{
21
public
:
22
Jitter_RNG
();
23
~Jitter_RNG
();
24
25
std::string
name
()
const override
{
return
"JitterRNG"
; }
26
27
bool
is_seeded
()
const override
{
return
true
; }
28
29
bool
accepts_input
()
const override
{
return
false
; }
30
31
void
clear()
override
;
32
33
private
:
34
void
fill_bytes_with_input(std::span<uint8_t> out, std::span<const uint8_t> in)
override
;
35
36
std::unique_ptr<Jitter_RNG_Internal> m_jitter;
37
};
20
class
BOTAN_PUBLIC_API
(3, 6)
Jitter_RNG
final
:
public
RandomNumberGenerator
{
…
};
38
}
// namespace Botan
39
40
#endif
BOTAN_PUBLIC_API
#define BOTAN_PUBLIC_API(maj, min)
Definition
api.h:19
Botan::Jitter_RNG
Definition
jitter_rng.h:20
Botan::Jitter_RNG::name
std::string name() const override
Definition
jitter_rng.h:25
Botan::Jitter_RNG::~Jitter_RNG
~Jitter_RNG()
Botan::Jitter_RNG::is_seeded
bool is_seeded() const override
Definition
jitter_rng.h:27
Botan::Jitter_RNG::accepts_input
bool accepts_input() const override
Definition
jitter_rng.h:29
Botan::RandomNumberGenerator
Definition
rng.h:31
final
int(* final)(unsigned char *, CTX *)
Definition
commoncrypto_hash.cpp:29
Botan
Definition
alg_id.cpp:13
Generated by
1.12.0