Fabcoin Core  0.16.2
P2P Digital Currency
Public Types | Public Member Functions | Private Attributes | List of all members
GF256 Class Reference

GF(256) with polynomial basis. More...

#include <gf256.h>

Public Types

typedef byte Element
 
typedef int RandomizationParameter
 

Public Member Functions

 GF256 (byte modulus)
 
Element RandomElement (RandomNumberGenerator &rng, int ignored=0) const
 
bool Equal (Element a, Element b) const
 
Element Zero () const
 
Element Add (Element a, Element b) const
 
ElementAccumulate (Element &a, Element b) const
 
Element Inverse (Element a) const
 
Element Subtract (Element a, Element b) const
 
ElementReduce (Element &a, Element b) const
 
Element Double (Element a) const
 
Element One () const
 
Element Multiply (Element a, Element b) const
 
Element Square (Element a) const
 
bool IsUnit (Element a) const
 
Element MultiplicativeInverse (Element a) const
 
Element Divide (Element a, Element b) const
 

Private Attributes

word m_modulus
 

Detailed Description

GF(256) with polynomial basis.

Definition at line 15 of file gf256.h.

Member Typedef Documentation

Definition at line 18 of file gf256.h.

Definition at line 19 of file gf256.h.

Constructor & Destructor Documentation

GF256::GF256 ( byte  modulus)
inline

Definition at line 21 of file gf256.h.

Member Function Documentation

Element& GF256::Accumulate ( Element a,
Element  b 
) const
inline

Definition at line 35 of file gf256.h.

Element GF256::Add ( Element  a,
Element  b 
) const
inline

Definition at line 32 of file gf256.h.

Element GF256::Divide ( Element  a,
Element  b 
) const
inline

Definition at line 63 of file gf256.h.

Here is the call graph for this function:

Element GF256::Double ( Element  a) const
inline

Definition at line 47 of file gf256.h.

bool GF256::Equal ( Element  a,
Element  b 
) const
inline

Definition at line 26 of file gf256.h.

Element GF256::Inverse ( Element  a) const
inline

Definition at line 38 of file gf256.h.

bool GF256::IsUnit ( Element  a) const
inline

Definition at line 58 of file gf256.h.

GF256::Element GF256::MultiplicativeInverse ( Element  a) const

Definition at line 26 of file gf256.cpp.

Here is the call graph for this function:

GF256::Element GF256::Multiply ( Element  a,
Element  b 
) const

Definition at line 8 of file gf256.cpp.

Here is the caller graph for this function:

Element GF256::One ( ) const
inline

Definition at line 50 of file gf256.h.

Here is the call graph for this function:

Element GF256::RandomElement ( RandomNumberGenerator rng,
int  ignored = 0 
) const
inline

Definition at line 23 of file gf256.h.

Here is the call graph for this function:

Element& GF256::Reduce ( Element a,
Element  b 
) const
inline

Definition at line 44 of file gf256.h.

Element GF256::Square ( Element  a) const
inline

Definition at line 55 of file gf256.h.

Here is the call graph for this function:

Here is the caller graph for this function:

Element GF256::Subtract ( Element  a,
Element  b 
) const
inline

Definition at line 41 of file gf256.h.

Element GF256::Zero ( ) const
inline

Definition at line 29 of file gf256.h.

Member Data Documentation

word GF256::m_modulus
private

Definition at line 67 of file gf256.h.


The documentation for this class was generated from the following files: