Crypto++ 8.8
Free C++ class library of cryptographic schemes
GF2_32 Class Reference

GF(2^32) with polynomial basis. More...

#include <gf2_32.h>

Public Types

typedef word32 Element
typedef int RandomizationParameter

Public Member Functions

 GF2_32 (word32 modulus=0x0000008D)
Element RandomElement (RandomNumberGenerator &rng, int ignored=0) const
bool Equal (Element a, Element b) const
Element Identity () const
Element Add (Element a, Element b) const
Element & Accumulate (Element &a, Element b) const
Element Inverse (Element a) const
Element Subtract (Element a, Element b) const
Element & Reduce (Element &a, Element b) const
Element Double (Element a) const
Element MultiplicativeIdentity () 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

Detailed Description

GF(2^32) with polynomial basis.

Definition at line 16 of file gf2_32.h.

Member Typedef Documentation

◆ Element

typedef word32 GF2_32::Element

Definition at line 19 of file gf2_32.h.

◆ RandomizationParameter

typedef int GF2_32::RandomizationParameter

Definition at line 20 of file gf2_32.h.

Constructor & Destructor Documentation

◆ GF2_32()

GF2_32::GF2_32 ( word32 modulus = 0x0000008D)
inline

Definition at line 22 of file gf2_32.h.

Member Function Documentation

◆ RandomElement()

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

Definition at line 24 of file gf2_32.h.

◆ Equal()

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

Definition at line 27 of file gf2_32.h.

◆ Identity()

Element GF2_32::Identity ( ) const
inline

Definition at line 30 of file gf2_32.h.

◆ Add()

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

Definition at line 33 of file gf2_32.h.

◆ Accumulate()

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

Definition at line 36 of file gf2_32.h.

◆ Inverse()

Element GF2_32::Inverse ( Element a) const
inline

Definition at line 39 of file gf2_32.h.

◆ Subtract()

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

Definition at line 42 of file gf2_32.h.

◆ Reduce()

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

Definition at line 45 of file gf2_32.h.

◆ Double()

Element GF2_32::Double ( Element a) const
inline

Definition at line 48 of file gf2_32.h.

◆ MultiplicativeIdentity()

Element GF2_32::MultiplicativeIdentity ( ) const
inline

Definition at line 51 of file gf2_32.h.

◆ Multiply()

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

Definition at line 9 of file gf2_32.cpp.

◆ Square()

Element GF2_32::Square ( Element a) const
inline

Definition at line 56 of file gf2_32.h.

◆ IsUnit()

bool GF2_32::IsUnit ( Element a) const
inline

Definition at line 59 of file gf2_32.h.

◆ MultiplicativeInverse()

GF2_32::Element GF2_32::MultiplicativeInverse ( Element a) const

Definition at line 46 of file gf2_32.cpp.

◆ Divide()

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

Definition at line 64 of file gf2_32.h.


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