|
MagickCore 7.0.10
|
#include "wizard/studio.h"#include "wizard/chacha.h"#include "wizard/exception.h"#include "wizard/exception-private.h"#include "wizard/memory_.h"Go to the source code of this file.
Data Structures | |
| struct | _ChachaInfo |
Macros | |
| #define | ChachaBlocksize 64 |
| #define | PushChachaWord(p) |
| #define | ChachaAdd(v, w) ((unsigned int) ((v)+(w)) & 0xFFFFFFFFU) |
| #define | ChachaQuarterRound(a, b, c, d) |
| #define | ChachaRotate(v, n) (((unsigned int) ((v) << (n)) & 0xFFFFFFFFU) | ((v) >> (32-(n)))) |
| #define | PopChachaWord(p, v) |
Functions | |
| WizardExport ChachaInfo * | AcquireChachaInfo (void) |
| WizardExport void | DecipherChachaBlock (ChachaInfo *chacha_info, const unsigned char *ciphertext, unsigned char *plaintext) |
| WizardExport ChachaInfo * | DestroyChachaInfo (ChachaInfo *chacha_info) |
| WizardExport void | EncipherChachaBlock (ChachaInfo *chacha_info, const unsigned char *plaintext, unsigned char *ciphertext) |
| WizardExport unsigned int | GetChachaBlocksize (const ChachaInfo *chacha_info) |
| WizardExport void | SetChachaKey (ChachaInfo *chacha_info, const StringInfo *key) |
| WizardExport void | SetChachaNonce (ChachaInfo *chacha_info, const unsigned char *nonce, const unsigned char *counter) |
| #define ChachaAdd | ( | v, | |
| w | |||
| ) | ((unsigned int) ((v)+(w)) & 0xFFFFFFFFU) |
| #define ChachaQuarterRound | ( | a, | |
| b, | |||
| c, | |||
| d | |||
| ) |
| #define ChachaRotate | ( | v, | |
| n | |||
| ) | (((unsigned int) ((v) << (n)) & 0xFFFFFFFFU) | ((v) >> (32-(n)))) |
| #define PopChachaWord | ( | p, | |
| v | |||
| ) |
| #define PushChachaWord | ( | p | ) |
| WizardExport ChachaInfo * AcquireChachaInfo | ( | void | ) |
Definition at line 95 of file chacha.c.
References AcquireWizardMemory(), _ChachaInfo::blocksize, ChachaBlocksize, CipherDomain, MemoryError, _ChachaInfo::signature, ThrowWizardFatalError, _ChachaInfo::timestamp, and WizardSignature.
Referenced by AcquireCipherInfo().
| WizardExport void DecipherChachaBlock | ( | ChachaInfo * | chacha_info, |
| const unsigned char * | ciphertext, | ||
| unsigned char * | plaintext | ||
| ) |
Definition at line 138 of file chacha.c.
References EncipherChachaBlock().
Referenced by AcquireCipherInfo().
| WizardExport ChachaInfo * DestroyChachaInfo | ( | ChachaInfo * | chacha_info | ) |
Definition at line 166 of file chacha.c.
References CipherDomain, GetWizardModule, LogWizardEvent(), RelinquishWizardMemory(), _ChachaInfo::signature, TraceEvent, WizardAssert, and WizardSignature.
Referenced by DestroyCipherInfo().
| WizardExport void EncipherChachaBlock | ( | ChachaInfo * | chacha_info, |
| const unsigned char * | plaintext, | ||
| unsigned char * | ciphertext | ||
| ) |
Definition at line 203 of file chacha.c.
References ChachaAdd, ChachaQuarterRound, _ChachaInfo::key, PopChachaWord, and PushChachaWord.
Referenced by AcquireCipherInfo(), and DecipherChachaBlock().
| WizardExport unsigned int GetChachaBlocksize | ( | const ChachaInfo * | chacha_info | ) |
Definition at line 352 of file chacha.c.
References _ChachaInfo::blocksize, CipherDomain, GetWizardModule, LogWizardEvent(), _ChachaInfo::signature, TraceEvent, WizardAssert, and WizardSignature.
Referenced by AcquireCipherInfo().
| WizardExport void SetChachaKey | ( | ChachaInfo * | chacha_info, |
| const StringInfo * | key | ||
| ) |
Definition at line 386 of file chacha.c.
References CipherDomain, GetStringInfoDatum(), GetStringInfoLength(), GetWizardModule, _ChachaInfo::key, LogWizardEvent(), PushChachaWord, _ChachaInfo::signature, TraceEvent, WizardAssert, and WizardSignature.
Referenced by SetCipherKey().
| WizardExport void SetChachaNonce | ( | ChachaInfo * | chacha_info, |
| const unsigned char * | nonce, | ||
| const unsigned char * | counter | ||
| ) |
Definition at line 468 of file chacha.c.
References _ChachaInfo::key, and PushChachaWord.