Tor
0.4.9.2-alpha-dev
Toggle main menu visibility
Main Page
Related Pages
Modules
Data Structures
Data Structures
Data Structure Index
Data Fields
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
Functions
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Enumerator
Files
File List
Globals
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
z
Functions
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Typedefs
b
c
d
f
g
h
l
m
n
o
p
r
s
v
Enumerations
a
b
c
d
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
Enumerator
a
b
c
d
e
g
h
i
m
n
o
p
q
r
s
t
v
w
Macros
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
x
•
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Modules
Pages
lib
defs
x25519_sizes.h
Go to the documentation of this file.
1
/* Copyright (c) 2001, Matej Pfajfar.
2
* Copyright (c) 2001-2004, Roger Dingledine.
3
* Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
4
* Copyright (c) 2007-2021, The Tor Project, Inc. */
5
/* See LICENSE for licensing information */
6
7
/**
8
* \file x25519_sizes.h
9
10
* \brief Definitions for sizes of x25519 keys and elements.
11
*
12
* Tor uses these definitions throughout its codebase, even in parts that
13
* don't actually do any x25519 calculations.
14
**/
15
16
#ifndef TOR_X25519_SIZES_H
17
#define TOR_X25519_SIZES_H
18
19
/** Length of a curve25519 public key when encoded. */
20
#define CURVE25519_PUBKEY_LEN 32
21
/** Length of a curve25519 secret key when encoded. */
22
#define CURVE25519_SECKEY_LEN 32
23
/** Length of the result of a curve25519 handshake. */
24
#define CURVE25519_OUTPUT_LEN 32
25
26
/** Length of an Ed25519 public key */
27
#define ED25519_PUBKEY_LEN 32
28
/** Length of an Ed25519 secret key */
29
#define ED25519_SECKEY_LEN 64
30
/** Length of the seed that is ordinarily expanded to an Ed25519 secret
31
* key. */
32
#define ED25519_SECKEY_SEED_LEN 32
33
/** Length of an Ed25519 signature. */
34
#define ED25519_SIG_LEN 64
35
36
/** Length of a Curve25519 key when encoded in base 64, with padding. */
37
#define CURVE25519_BASE64_PADDED_LEN 44
38
39
/** Length of a Curve25519 key when encoded in base 64, without padding. */
40
#define CURVE25519_BASE64_LEN 43
41
42
/** Length of a Ed25519 key when encoded in base 64, without padding. */
43
#define ED25519_BASE64_LEN 43
44
/** Length of a Ed25519 signature when encoded in base 64, without padding. */
45
#define ED25519_SIG_BASE64_LEN 86
46
47
#endif
/* !defined(TOR_X25519_SIZES_H) */
Generated by
1.9.4