Loading...
Searching...
No Matches
decaf Namespace Reference

Namespace for all C++ decaf objects. More...

## Classes

class | Block
| A reference to a block of data, which (when accessed through this base class) is const. More...
class | Buffer
| A reference to a writable block of data. More...
class | CryptoException
| An exception for when crypto (ie point decode) has failed. More...
struct | Ed448Goldilocks
| Ed448-Goldilocks/Decaf instantiation of group. More...
struct | EdDSA
| A public key for crypto over some Group. More...
struct | EdDSA< Ed448Goldilocks >
| A public key for crypto over Ed448-Goldilocks. More...
struct | EdDSA< Ristretto >
| A public key for crypto over Ristretto. More...
class | FixedArrayBuffer
| A fixed-size stack-allocated buffer (for DECAF_NOEXCEPT semantics) More...
class | FixedBlock
| A fixed-size block. More...
class | FixedBuffer
| A fixed-size block. More...
class | KeccakHash
| Hash function derived from Keccak FUTURE: throw ProtocolException when hash is misused by calling update() after output(). More...
class | LengthException
| An exception for when crypto (ie point decode) has failed. More...
struct | NOINIT
| Passed to constructors to avoid (conservative) initialization. More...
struct | Ristretto
| Curve25519/Decaf instantiation of group. More...
class | Rng
| Prototype of a random number generator. More...
class | SanitizingAllocator
| An allocator which zeros its memory on free. More...
class | Serializable
| Base class of objects which support serialization. More...
class | SHA3
| Fixed-output-length SHA3. More...
class | SHA512
| SHA512 wrapper function. More...
class | SHAKE
| Variable-output-length SHAKE. More...
class | SpongeRng
| Sponge-based random-number generator. More...

## Typedefs

typedef Ristretto | IsoEd25519
| Alternative name for Ristretto, for backwards compatibility.
typedef std::vector< unsigned char, SanitizingAllocator< unsigned char, 0 > > | SecureBuffer
| A variant of std::vector which securely zerozes its state when destructed.

## Enumerations

enum | Prehashed { PURE , PREHASHED }
| How signatures handle hashing. More...

## Functions

template<template< typename Group > class Run>
void | run_for_all_curves ()
| Given a template with a "run" function, run it for all curves.
template<class T , class U , class V , class W >
bool | memeq (const std::vector< T, U > &a, const std::vector< V, W > &b)
| Constant-time compare two buffers.

## Detailed Description

Namespace for all C++ decaf objects.

Namespace for all libdecaf C++ objects.

## Enumeration Type Documentation

## Prehashed

enum decaf::Prehashed

How signatures handle hashing.

Enumerator
PURE | Sign the message itself. This can't be done in one pass.
PREHASHED | Sign the hash of the message.