# IAX2Encryption Class Reference

`#include <remote.h>`

## Public Member Functions

| IAX2Encryption ()
void | SetEncryptionOn (PBoolean newState=true)
void | SetEncryptionKey (PString &newKey)
void | SetChallengeKey (PString &newKey)
const PString & | EncryptionKey () const
const PString & | ChallengeKey () const
PBoolean | IsEncrypted () const

## Protected Member Functions

void | CalculateAesKeys ()

## Protected Attributes

PString | encryptionKey
PString | challengeKey
PBoolean | encryptionEnabled

## Detailed Description

A class that holds the state variables on encryption - is it on, and the two keys.

## Constructor & Destructor Documentation

IAX2Encryption::IAX2Encryption | ( |  | ) |

Constructor, which sets encrytpion to the default value of "OFF"

## Member Function Documentation

void IAX2Encryption::CalculateAesKeys | ( |  | ) | `[protected]`

Do the calculation of the encrypt and decrypt AES 128 keys. If neither, or only 1 of the encrypt/challenge keys are defined, do nothing

const PString& IAX2Encryption::ChallengeKey | ( |  | ) | const

Get the value of the challenge key

const PString& IAX2Encryption::EncryptionKey | ( |  | ) | const

Get the value of the encrption key - or password key

PBoolean IAX2Encryption::IsEncrypted | ( |  | ) | const

Report if the encryption is enabled (or turned on)

void IAX2Encryption::SetChallengeKey | ( | PString & | newKey | ) |

Set the challenge used in encryption process

void IAX2Encryption::SetEncryptionKey | ( | PString & | newKey | ) |

Set the password/key used in encryption process

void IAX2Encryption::SetEncryptionOn | ( | PBoolean | newState = `true` | ) |

Set the flag that indicates this communication session is all encrypted..

## Field Documentation

PString IAX2Encryption::challengeKey `[protected]`

string to use for decryption/encryption of this frame

PBoolean IAX2Encryption::encryptionEnabled `[protected]`

Flag to specify if encryption is happening

PString IAX2Encryption::encryptionKey `[protected]`

string to use for decryption/encryption of this frame

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

- remote.h