Botan
1.10.9
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
src
pubkey
dlies
dlies.h
Go to the documentation of this file.
1
/*
2
* DLIES
3
* (C) 1999-2007 Jack Lloyd
4
*
5
* Distributed under the terms of the Botan license
6
*/
7
8
#ifndef BOTAN_DLIES_H__
9
#define BOTAN_DLIES_H__
10
11
#include <botan/pubkey.h>
12
#include <botan/mac.h>
13
#include <botan/kdf.h>
14
15
namespace
Botan
{
16
17
/**
18
* DLIES Encryption
19
*/
20
class
BOTAN_DLL
DLIES_Encryptor
:
public
PK_Encryptor
21
{
22
public
:
23
DLIES_Encryptor
(
const
PK_Key_Agreement_Key
&,
24
KDF
* kdf,
25
MessageAuthenticationCode
*
mac
,
26
size_t
mac_key_len = 20);
27
28
~
DLIES_Encryptor
();
29
30
void
set_other_key(
const
MemoryRegion<byte>
&);
31
private
:
32
SecureVector<byte>
enc(
const
byte
[],
size_t
,
33
RandomNumberGenerator
&)
const
;
34
size_t
maximum_input_size()
const
;
35
36
SecureVector<byte>
other_key, my_key;
37
38
PK_Key_Agreement
ka;
39
KDF
* kdf;
40
MessageAuthenticationCode
*
mac
;
41
size_t
mac_keylen;
42
};
43
44
/**
45
* DLIES Decryption
46
*/
47
class
BOTAN_DLL
DLIES_Decryptor
:
public
PK_Decryptor
48
{
49
public
:
50
DLIES_Decryptor
(
const
PK_Key_Agreement_Key
&,
51
KDF
* kdf,
52
MessageAuthenticationCode
*
mac
,
53
size_t
mac_key_len = 20);
54
55
~
DLIES_Decryptor
();
56
57
private
:
58
SecureVector<byte>
dec(
const
byte
[],
size_t
)
const
;
59
60
SecureVector<byte>
my_key;
61
62
PK_Key_Agreement
ka;
63
KDF
* kdf;
64
MessageAuthenticationCode
*
mac
;
65
size_t
mac_keylen;
66
};
67
68
}
69
70
#endif
Botan::RandomNumberGenerator
Definition:
rng.h:20
Botan::MessageAuthenticationCode
Definition:
mac.h:20
Botan::byte
unsigned char byte
Definition:
types.h:22
mac
MessageAuthenticationCode * mac
Definition:
fpe_fe1.cpp:94
Botan::MemoryRegion< byte >
Botan
Definition:
algo_base.h:14
Botan::DLIES_Encryptor
Definition:
dlies.h:20
Botan::PK_Key_Agreement
Definition:
pubkey.h:312
Botan::KDF
Definition:
kdf.h:20
Botan::PK_Key_Agreement_Key
Definition:
pk_keys.h:118
Botan::SecureVector< byte >
Botan::DLIES_Decryptor
Definition:
dlies.h:47
Botan::PK_Decryptor
Definition:
pubkey.h:85
Botan::PK_Encryptor
Definition:
pubkey.h:37
Generated on Sat Aug 20 2016 08:18:48 for Botan by
1.8.9.1